Страница 96 из 119

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 10:36 am
alexsis_76
это вообще у всех или это какая то экспериментальная версия?

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 10:37 am
Alex
только долго грузится, это и есть те самые тормоза?
Я об этом пытаюсь донести уже не первый месяц: система в принципе не может работать нормально, если контент (строки) отдаются в 300 (!!!) раз медленнее, чем положено.

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 10:40 am
alexsis_76
кеширование отсутствует, я думал что давно есть
грузит пакетами по 1460 что соответствует #define WIFICLIENT_MAX_PACKET_SIZE 1460
полная длинна 1514

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 10:45 am
dmw
вот тут написано что эксперименты с пакетами MTU показали эфективность если пакет будет больше 1460, а конкретно = 1760.
https://github.com/esp8266/Arduino/issues/1853

*** Сообщение запрещено. Сообщение похоже на спам. ***

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 10:48 am
Alex
кеширование отсутствует, я думал что давно есть
Не нужно путать кеширование и оптимизацию движка. До тех пор пока движок не будет летать — кеширование это хорошая мина при плохой игре.

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 2:02 pm
alexsis_76
нус еще пару дней уйдет на пережевывание кода, затем можно добавить работу с PCA9685 и с
PCF8574

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 2:17 pm
Alex
затем можно добавить работу с PCA9685 и с PCF8574
Не надо PCA9685 и PCF8574, надо просто (тупо) найти в коде где теряется время. Кстати очень часто встречается задержка в районе 200 мс, что наводит на мысли о каком-то таймауте.
нус еще пару дней уйдет на пережевывание кода,
Я облегчу вашу задачу: проблемный код находится в файле ClientContext.h и это функция

Код: Выделить всё

size_t write(const char* data, size_t size)
Сам код, который даёт задержку

Код: Выделить всё

            _send_waiting = true;
            delay(5000); // max send timeout
            _send_waiting = false;
Что полностью выносит мозг. Именно эти три строки дают задержку, но не 5000 мс, как можно было бы подумать, а 200-400 мс при передаче каждой строки. Можете сами замерить.

И что с этим делать?

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 2:47 pm
alexsis_76
а где вы нашли эти библиотекия в ардуине смотрел там они другие, а эти похоже из оригинального sdk,я такие видел в эклипсе

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 2:52 pm
Alex
«Нашёл» я их в официальных драйверах ESP8266 версии 2.0.0.

Re: Arduino Mega Server для esp8266

Добавлено: Ср сен 20, 2017 2:59 pm
alexsis_76
да это с SDK,у меня они тоже есть,но ардуина как я понял использует свои которые в папке WiFi
в папке ардуино таких нет