• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Результаты поиска

  1. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Может быть. Для меня это развлекуха в первую очередь. Хобби. Все наработки пытаюсь впихнуть в проект.
  2. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Так это ж не простыней написано. Функциями. Поэтому и писал универсально, чтоб на все случаи жизни. Создал черз браузер условную задачку на одном из модулей, что скажем при достижении уровня сигнала на такой-то ноге, отправить такую-то команду на такой-то модуль. И все. Причем повторюсь, модули...
  3. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Управление сетью модулей (их выводами) в зависимости от каких-либо событий (уровня сигнала, пинга, по времени, показаний температуры, влажности). При возможной отправкой e-mail о происшедших событиях. Рисуются графики состояний любых перечисленных показателей. При этом все универсально - все...
  4. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Что непонятного я сказал? Скетч-проект состоит из 5-ти ino-файлов, суммарно 6200 строк. Комментариев от силы 20 строк на все. bin-файл с прошивкой весит 496 Кб. Если версия ESP8266 4МБ (3+1 на спиф), то по ОТА она могла обновляться, а вот при версии 1МБ обновление не могло быть. Сейчас же я могу...
  5. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Мне не в падлу вставить одну строчку в файл. Тем более, что я подхожу с правилом советского инженера "Работает - не трожь".
  6. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Нет понятия первого и второго скетчей. Есть понятие новой версии скетча, который суммарно "весит" 496 Кб.
  7. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Скетч около 6200 строк (если смотреть в текстовом редакторе все ino-файлы в проекте). НА SPIFFS эще 6-7 htm и js -файлов по 15-30Кб. А вот перечень подгружаемых библиотек: #include <ESP8266WiFi.h> #include <ESP8266WebServer.h> #include <EEPROM.h> #include <FS.h> #include <Ticker.h> #include...
  8. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Проверил все работает. Теперь бы еще научиться схранять все нужные фалы из SPIFFS (а не по одному через edit.htm) нажатием одной кнопки перед обновлением и такую же загрузку после обновления... По кране мере этот способ дает возможность удаленного обновления больших скетчей при мало памяти, не...
  9. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Вопрос решен. Файл Updater.cpp модифицирован. Можно писать bin-файл с прошивкой с адреса расположения SPIFFS (понятно, что SPIFFS затирается), поэтому после перезагрузки модуля сразу же накатывается bin-файл со SPIFFS) Либо второй вариант - файл с прошивкой сразу писать с 0-го адреса. Какой...
  10. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Риск есть, но если файл с прошивкой лежит в SPIFFS, то это практически в той же флэш памяти. И хотелось бы сразу файл из SPIFFS писать не в область OTA-обновлений, а на место прошивки.
  11. P

    Делюсь опытом Если при отправке e-mail через WiFiClientSecure часто наступает wdt.reset...

    Если раньше при отправке ~50 обязательно происходила перезагрузка на этапе коннектинга к хосту, то сейчас уже работает 3 часа, отправлено более 150 сообщений и все ОК.
  12. P

    Делюсь опытом Если при отправке e-mail через WiFiClientSecure часто наступает wdt.reset...

    В файле WiFiClientSecure.cpp необходимо произвести изменения: 1. _timeout = 5000 (вместо 15000) в двух местах (может это и не надо, а установить client.setTimeout(5000), но у меня это не приносило плоды, возможно из-за ошибки, изложенной в п.2) 2. заменить функцию int...
  13. P

    Решено Как отправить от HTTP сервера (Web server на ESP8266) html-ответ в браузер компьютера файлом?

    Вот окончательно сделал замену вечно лагающему .streamFile size_t server_sendfile(String fn) { if(!fn.startsWith("/")) fn="/"+fn; File f=SPIFFS.open(fn, "r"); if(f) { char buf[2048]; size_t sent = 0; int siz = f.size(); String S="HTTP/1.1 200\r\nContent-Type: "+...
  14. P

    Решено Как отправить от HTTP сервера (Web server на ESP8266) html-ответ в браузер компьютера файлом?

    size_t server_sendfile(const String& fn) { File f=SPIFFS.open(fn, "r"); if(f) { char buf[1024]; size_t sent = 0; int siz = f.size(); Serial.println("\nSend file "+fn+" size="+String(siz)); while(siz > 0) { size_t len = std::min((int)(sizeof(buf) - 1)...
  15. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Попутно поделюсь опытом как одновременно обновлять прошивку и SPIFFS через bin-файлы, получаемые при компиляции в Arduino IDE. В bin-файле SPIFFS должно присутствовать "spiffs". Добавил в файл уважаемого Гуру. const char* serverIndex = "<form method='POST' action='/update'...
  16. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Короче, этот метод хоть и позволяет обновлять прошивку из файла в SPIFFS, но пишет ее в ту же область для OTA-обновлений. Которой если нет, то и не пишет, выдает ERROR[4]: Not Enough Space. Можно как-то модифицировать Update.write, чтобы писать сразу на место прошивки? Или там на уровне ядра все...
  17. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Я тут почитал ваши посты в теме про многопоточность у ESP8266. Никакой конкретики, одно словоблудие. А конкретика вот: Update firmware from SD or spiffs - Everything ESP8266
  18. P

    Решено Изменить удаленно размер SPIFFS, чтобы по OTA обновить скетч.

    Не понял... Это как? Допустим, у меня в SPIFFS лежит файл 1.bin с компилированным скетчем. Что надо сделать, чтобы он прошился?
Сверху Снизу