Arduino Mega Server

Модератор: Alex

serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Попробовал оптимизатор в деле и сразу уперся в две очень неприятные вещи-
1. Так-как скорость выросла до 250 000 в стандартный сериал выводится каша(максимум 115 000). То что АМС работает
вижу только по экрану.
2.Ввиду увеличения буфера обмена в IDE до 1 килобайта у Меги не остается памяти для работы.
Если отключить главный пожиратель оперативы модуль электро-останется 3 килобайта-работать
можно,но мерить температуру такой ценой?
3. У дуи проблем с оперативой нет,но мне пока не удалось добиться заливки файлов.
Выводы. Прога отличная, но надо очень подробную инструкцию по инсталяции и изменений всех файлов!
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: Arduino Mega Server

Сообщение alexsis_76 »

А на меге работает?
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Мегу трогать не могу,но на выходных попробую.(осталась одна сетевуха на 2 контроллера)
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: Arduino Mega Server

Сообщение alexsis_76 »

следующий ход , увеличения буферов для загрузки графических изображений файл server.ino буферы вынесены в локальные переменные , размер увеличен
// send web page to client пишем файл
if (webFile) {
uint16_t rsize;
uint8_t buff[MAX_BUFFER_SIZE+1];
while(webFile.available()){
rsize = webFile.read(buff,MAX_BUFFER_SIZE);

if (allowMarkers) {
markersWorks(0, sclient,buff,rsize);
} else {
sclient.write(buff, rsize);
}
в функции
int sendDelta(int startPos, int endPos,EthernetClient cl,uint8_t*buff) {
int count=0;
uint8_t Buf[MAX_BUFFER_SIZE+1];
for (int i = startPos; i < endPos; i++) {
if(count<=MAX_BUFFER_SIZE){
Buf[count]=buff;
count++;
}else{
cl.write(Buf,count);
count=0;

}

}
cl.write(Buf,count);
}
байтовое чтение заменено на блочное.
в файле server_marker увеличен размер буфера , буфер перенесен из глобальной переменной в локальную
if (tempFile) {
// Buffer for markers works
uint16_t rsize2;
uint8_t buff2[513];
while(tempFile.available()) {
rsize2 = tempFile.read(buff2, 512);
cl.write(buff2, rsize2);
}
tempFile.close();
}
пока вроде все , ниже полный код ams, там все увидите
вообщем что то разогнать удалось но немного, сегодня посмотрел, по загружал , по моему эффект в основном психологический (в циферках), большие задежки в устройстве, многопоточность браузера сдесь никакого эффекта не дает, поскольку сама мега не поддерживает многопоточность, я думаю очередным шагом будет ревизия файловой системы,вообщем компилируйте, прошивайте, о результатах пишите ;).
Вложения
arduino_mega_server.rar
(35.24 КБ) 192 скачивания
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Ну ребята-это СКАЗКА!!! Правда вопросов больше чем звезд на небе! Но со временем разберёмся.
Не удержался-взял чистую карту,фат32,вставил в шилд,загрузил скетч(только поправил подсеть)
Ide 1.7.8,с 12 пинка увидел порт,залил скетч.......
Я понимаю,что в файлах переделывал все для себя и возможно нарушил что то.
Вечером проверю на настроенной Ide. Теперь надо собрать все переделки в одну кучу и попробовать еще раз
установить...
А на дуе так и не компилится...........
Вложения
CD_karta.png
CD_karta.png (93.93 КБ) 12053 просмотра
AMS.png
AMS.png (88.06 КБ) 12053 просмотра
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: Arduino Mega Server

Сообщение alexsis_76 »

Получилось. как впечатления?,ошибки записи имеются?удобства использования программы?
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Я пока в диком шоке от увиденного и еще не осознаю всех перспектив)))) Файлы заливал 2 раза разные-записало с заменой.
не сообразил проверить картинки на большом компе-мега занята работой и отвлекать её нельзя))) С разбегу только скажу,
что опера ругается на долгое ожидание свободного сокета и наверное поэтому не отображает цифры.
Вечером отпишусь о результатах подробнее.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: Arduino Mega Server

Сообщение alexsis_76 »

Я пока в диком шоке от увиденного
это как?
С разбегу только скажу,
что опера ругается на долгое ожидание свободного сокета и наверное поэтому не отображает цифры
это наверное от того что пакетами в 1 байт, попробуйте последние оптимизации, у меня не ругается, правда опера старая.
Ну раз получилось будем писать инструкции. ;)
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Первый раз такое состояние было лет 30 назад когда я спаял ZX spectrum на 130 корпусах с 512 килобайтами оперативы
и СР-М80 на борту,год бился с запуском,а оказалось битой микруха памяти)) Другой раз когда 2 месяца бился головой в монитор с пустыми HTML страницами у 013 АМС ,пока не понял,что XP с хромом не дружат с проектом.7 винда и опера решили проблему. ну и теперь сейчас. Что такое CSS я узнал месяц назад.А сейчас вернул на "историческую родину" напряжение на даш-панель и обалденные картинки в полноэкранных демках.Как сверх задачу для себя пытаюсь вывести и полноэкранный счетчик киловатт-часов.А для этого надо постоянно играть с фаилами на карте-достало уже вытаскивать и заливать отдельно.
А тут оптом загнал-не получилось-вернул обратно. Кстати "починил" свои сд карты-теперь можно посмотреть разницу у производителей.Остальные вопросы вечером-уже дома.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: Arduino Mega Server

Сообщение alexsis_76 »

ну почему обязательно оптом, Вы ведь меняете один или два файла, закинул в отдельную папку и заливай, не обязательно все.
Ответить