Установка загрузчика файловой системы LittleFS для ESP8266 NodeMCU в Arduino IDE

В этом руководстве вы узнаете, как установить плагин загрузки файловой системы ESP8266 LittleFS в вашу Arduino IDE для загрузки файлов в файловую систему ESP8266 NodeMCU.

Установка плагина загрузки файловой системы LittleFS в Arduino IDE ESP8266

Если вы хотите использовать LittleFS для ESP8266 с VS Code + PlatformIO, следуйте следующему руководству:

Вы используете Arduino IDE 2? Следуйте этому руководству: Arduino IDE 2: установка загрузчика LittleFS для ESP8266 NodeMCU (загрузка файлов в файловую систему).

Знакомство с LittleFS

LittleFS – это легковесная файловая система, созданная для микроконтроллеров, которая позволяет получать доступ к flash-памяти так же, как вы бы работали с обычной файловой системой на вашем компьютере, но она проще и более ограничена. Вы можете читать, записывать, закрывать и удалять файлы. Использование LittleFS на платах ESP8266 особенно полезно для:

Установка плагина загрузки файловой системы LittleFS

Вы можете создавать, сохранять и записывать файлы в файловую систему ESP8266, написав код самостоятельно в Arduino IDE. Это не очень удобно, потому что вам пришлось бы вводить содержимое файлов прямо в скетче Arduino.

К счастью, существует плагин для Arduino IDE, который позволяет загружать файлы непосредственно в файловую систему ESP8266 LittleFS из папки на вашем компьютере. Это делает работу с файлами простой и удобной.

SPIFFS в настоящее время устарела и может быть удалена в будущих версиях ядра ESP8266. Рекомендуется использовать LittleFS вместо нее. LittleFS находится в активной разработке, поддерживает каталоги и работает быстрее для большинства операций. Методы, используемые для SPIFFS, совместимы с LittleFS, поэтому мы можем просто использовать выражение LittleFS вместо SPIFFS в нашем коде.

Инструкции для Windows

Следуйте следующим шагам, чтобы установить загрузчик файловой системы, если вы используете Windows:

1) Перейдите на страницу релизов и нажмите на файл ESP8266LittleFS-X.zip, чтобы скачать его.

Скачивание ESP8266 LittleFS

2) Найдите расположение вашего Sketchbook. В Arduino IDE перейдите в File > Preferences и проверьте расположение Sketchbook. В моем случае путь следующий: C:\Users\sarin\Documents\Arduino.

Расположение Sketchbook в Arduino

3) Перейдите в расположение Sketchbook и создайте папку tools.

Создание папки tools в расположении Sketchbook SPIFFS

4) Распакуйте скачанный файл .zip. Откройте его и скопируйте папку *ESP8266LittleFS* в папку tools, которую вы создали на предыдущем шаге. У вас должна получиться похожая структура папок:

<Sketchbook-location>/tools/ESP8266FS/tool/esp8266fs.jar
Структура папок плагина файловой системы LittleFS ESP8266

5) Наконец, перезапустите Arduino IDE.

Чтобы проверить, что плагин успешно установлен, откройте Arduino IDE и выберите вашу плату ESP8266. В меню *Tools* проверьте, что у вас есть пункт «ESP8266 LittleFS Data Upload».

ESP8266 Tools LittleFS Data Upload Arduino IDE

Инструкции для Mac OS X

Следуйте следующим шагам, чтобы установить загрузчик файловой системы, если вы используете Mac OS X:

1) Перейдите на страницу релизов и нажмите на файл ESP8266LittleFS-X.zip, чтобы скачать его.

Скачивание ESP8266 LittleFS

2) Распакуйте файлы.

3) Создайте папку tools в /Documents/Arduino/.

4) Скопируйте распакованную папку *ESP8266LittleFS* в каталог tools. У вас должна получиться похожая структура папок.

Структура папок плагина файловой системы ESP8266 LittleFS Mac OS X
~Documents/Arduino/tools/ESP8266FS/tool/esp8266fs.jar

5) Наконец, перезапустите Arduino IDE.

Чтобы проверить, что плагин успешно установлен, откройте Arduino IDE. Выберите вашу плату ESP32, перейдите в Tools и проверьте, что у вас есть пункт «ESP8266 LittleFS Data Upload».

ESP8266 LittleFS Data Upload Mac OS X

Загрузка файлов в ESP8266 с помощью загрузчика файловой системы

Чтобы загрузить файлы в файловую систему ESP8266, следуйте приведенным ниже инструкциям.

1) Создайте скетч Arduino и сохраните его. В демонстрационных целях вы можете сохранить пустой скетч.

2) Затем откройте папку скетча. Вы можете перейти в Sketch > Show Sketch Folder. Должна открыться папка, в которой сохранен ваш скетч.

3) Внутри этой папки создайте новую папку с названием *data*.

Папка data в папке скетча Arduino

4) Внутри папки *data* нужно разместить файлы, которые вы хотите сохранить в файловой системе ESP8266. В качестве примера создайте файл .txt с каким-либо текстом и назовите его test_example.

Пример txt файла ESP8266

5) В Arduino IDE, в меню Tools, выберите нужный размер flash-памяти (это будет зависеть от размера ваших файлов).

ESP8266 выбор размера Flash в Arduino IDE

6) Затем, чтобы загрузить файлы в Arduino IDE, вам нужно перейти в Tools > ESP8266 LittleFS Data Upload.

Важно: убедитесь, что Serial Monitor закрыт. В противном случае загрузка завершится ошибкой.

ESP8266 Tools LittleFS Data Upload Arduino IDE

Через несколько секунд вы должны увидеть сообщение «LittleFS Image Uploaded». Файлы были успешно загружены в файловую систему ESP8266.

ESP8266 LittleFS образ успешно загружен

Тестирование загрузчика ESP8266 LittleFS

Теперь давайте проверим, был ли файл сохранен в файловой системе ESP8266. Загрузите следующий код на вашу плату ESP8266.

#include "LittleFS.h"

void setup() {
  Serial.begin(115200);

  if(!LittleFS.begin()){
    Serial.println("An Error has occurred while mounting LittleFS");
    return;
  }

  File file = LittleFS.open("/test_example.txt", "r");
  if(!file){
    Serial.println("Failed to open file for reading");
    return;
  }

  Serial.println("File Content:");
  while(file.available()){
    Serial.write(file.read());
  }
  file.close();
}

void loop() {

}

Посмотреть исходный код

После загрузки откройте Serial Monitor на скорости 115200 бод. Нажмите кнопку «RST» на плате ESP8266. В Serial Monitor должно отобразиться содержимое вашего файла .txt.

Тестирование ESP8266 LittleFS Serial Monitor

Вы успешно загрузили файлы в файловую систему ESP8266 с помощью плагина.

Заключение

Использование плагина загрузки файловой системы – один из самых простых способов загрузки файлов в файловую систему ESP8266. В этом руководстве мы показали вам, как загрузить файл .txt, но вы можете загружать файлы других форматов, например HTML, CSS и JavaScript файлы для создания веб-сервера, изображения или небольшие иконки, файлы конфигурации и т.д.

У нас есть пример проекта, в котором мы создаем веб-сервер с использованием HTML и CSS файлов, сохраненных в файловой системе (просто замените SPIFFS на LittleFS).

Если вы хотите узнать больше о ESP8266, ознакомьтесь с нашими ресурсами:

Спасибо за чтение.