• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

EEPROM и SPIFFS не работают на ESP-01S

Всем Привет! Я использую плату ESP-01S на основе ESP8266. Пробовал записывать данные в EEPROM с помощью скетча из примеров к этой плате, при повторном включении данные не сохраняются, при использовании EEPROM.commit() возвращает false. Попытался загрузить файл в ESP-01S через инструмент загрузки для ESP8266, появлялась ошибка. Позже оказалось, что SPIFFS даже не монтируется. Плату проверил, работает исправно. Могу приложить скетч для работы с SPIFFS:
C:
#include <FS.h>
String my_settings;
 
void setup() {
  Serial.begin(115200); // настраиваем скорость работы COM порта
  delay(5000);
  if (!SPIFFS.begin()){ // если не удалось монтировать SPIFFS память
    Serial.println("Ошибка при монтировании SPIFFS :(");
  } else {
    Serial.println("Монтирование SPIFFS прошло успешно!"); 
  }

  File settings = SPIFFS.open("/Settings.txt", "w"); // открываем файл с настройками для чтения
  if (!settings) { // если не удалось открыть файл с настройками
    Serial.println("Не удалось открыть файл с настройками для чтения :(");
    return; // выходим из функции
  } else {
    Serial.println("Файл с настройками успешно открыт для чтения!");
  }

  while (settings.available()) { // прочитываем данные из файла с настройками
    my_settings = settings.readString(); // записываем данные из файла с настройками
    Serial.println("Содержимое файла: " + String(my_settings));
  }
  settings.close(); // закрываем файл с настройками
}
 
void loop() {}
 

CodeNameHawk

Moderator
Команда форума
Позже оказалось, что SPIFFS даже не монтируется.
Её у вас пока нет.
Надо один раз выполнить SPIFFS.format() в отдельном скетче, это создаст файловую систему.

Можно проще, создать папку data в папке проекта(там где лежит скетч) и положить туда ваш файл настроек.
Потом загрузить файловую систему в есп из ардуиноиде Data upload.
 
Ели прочитал с помощью лупы надпись на соседнем чипе, поэтому она может быть неправильна. Вот, что на нём было написано: FT25H085, 1918X660. Отвечаю на комментарий CodeNameHawk: Как я писал выше, SPIFFS у меня не запускается, поэтому загрузить в неё файл я не могу. Тем более, команда SPIFFS.format() нужна вовсе не для создания SPIFFS, а для её очистки.
 

CodeNameHawk

Moderator
Команда форума
SPIFFS нужно монтировать, что у меня не получается.
SPIFFS.begin() это монтировать, но монтировать пока нечего, файловая система еще пока не создана.
Важно в настройках ардуиноиде выделить место для файловой системы.
1617633216404.png
Это там возле FS. А дальше форматировать или залить файловую систему, она сама сформатирует "диск".
Заливать это здесь.
1617633347164.png
 

CodeNameHawk

Moderator
Команда форума
Ну такую плату и выберите в настройках.
Показывайте все этапы скриншотами, а то не ясно, что не получается.

Если модуль у вас есп01 то выберите плату generic.
 
Сверху Снизу