Как правильно загрузить SPIFFS bin, используя mkspiffs и esptool - PullRequest
1 голос
/ 26 июня 2019

Я работаю над генератором приложений для устройств esp8266 и не могу правильно использовать инструменты mkspiffs и esptool.

Я прочитал доступную документацию для mkspiffs и esptool, также включил подробный вывод в Arduino IDE, чтобы увидеть, как Arduino IDE использует эти программы, но все еще не может заставить его работать должным образом.

В документации ESP Core есть некоторая информация о карте адресов (https://arduino -esp8266.readthedocs.io / en / latest / filesystem.html ), но я не уверен, как правильно установить построить параметры в соответствии с этим.

Моя цель - загрузить двоичный файл приложения и двоичный файл SPIFFS размером 1 МБ на устройство с флэш-памятью 4 МБ.

Вот где я сейчас нахожусь:

  • Я использую "arduino-cli compile" для сборки моего двоичного файла приложения. Есть выходной лоток, я могу загрузить его, и он, кажется, работает правильно. В fqbn я использую свойства, которые я скопировал из подробного вывода из IDE Arduino при создании приложения (также включена некоторая отладка).

  • Я использую mkspiffs для создания двоичного файла SPIFFS. Я не уверен, что это на 100% правильно, но есть выходной двоичный файл, который я могу перечислить и распаковать с помощью mkspiffs. Параметры размера, размера страницы и блока также взяты из подробного вывода Arduino IDE.

  • Я использую esptool для загрузки приложения и двоичного файла SPIFFS.

Все эти команды выполняются и возвращаются с 0, так что все в порядке.

  • Команда для сборки бина приложения: arduino-cli.exe compile --fqbn=esp8266:esp8266:d1_mini:xtal=80,vt=flash,exception=disabled,eesz=4M1M,ip=lm2f,dbg=Serial,lvl=COREWIFIHTTP_UPDATEUPDATEROTAOOM,wipe=none,baud=921600 C:\codefolder --build-path C:\app_output.bin

  • Команда для сборки двоичного файла SPIFFS: mkspiffs -c C:\datafolder -b 8192 -p 256 -s 0xFB000 C:\spiffs_output.bin

  • Команда для загрузки этих корзин: esptool.exe --port COM1 --baud 512000 write_flash 0x000000 app_output.bin 0x300000 spiffs_output.bin

Приложение на ESP8266 работает правильно, SPIFFS монтируется, но приложение, работающее на ESP8266, не обнаружило ни одного файла. Как я могу правильно сделать это?

...