1

Topic: Сохранение переменных в EEPROM

Хочу настроить сохранение переменных в EEPROM.
Написал код

#define REMOTEXY_MODE__ESP32CORE_BLE

#include <BLEDevice.h>
#include <EEPROM.h>

#define REMOTEXY_BLUETOOTH_NAME "RemoteXY_i36_wroom"
#define REMOTEXY_ACCESS_PASSWORD "123"


#include <RemoteXY.h>

#pragma pack(push, 1)  
uint8_t const PROGMEM RemoteXY_CONF_PROGMEM[] =   // 117 bytes V21 
  { 254,96,0,0,0,0,0,3,0,0,51,0,51,11,0,62,33,0,97,0,
  21,0,0,0,0,13,1,106,200,1,1,7,0,7,36,3,68,11,102,64,
  2,26,2,51,129,3,4,24,11,64,17,83,83,73,68,0,129,3,18,27,
  11,64,17,80,65,83,83,0,7,36,17,68,11,102,64,2,26,2,11,129,
  3,32,28,11,64,17,116,111,107,101,110,0,7,36,31,68,11,102,64,2,
  26,2,33,1,76,53,26,14,1,2,31,114,101,115,101,116,0 };
  
struct {

    // input variables
  char edit_ssid[51]; // string UTF8 end zero
  char edit_pass[11]; // string UTF8 end zero
  char edit_token[33]; // string UTF8 end zero
  uint8_t button_reset; // =1 если кнопка нажата, иначе =0, oт 0 до 1

} RemoteXY;   
#pragma pack(pop)
 

void setup() 
{
  RemoteXYEngine.addGui (RemoteXY_CONF_PROGMEM, &RemoteXY, REMOTEXY_ACCESS_PASSWORD)->addConnection (new CRemoteXYStream_BLEDevice (REMOTEXY_BLUETOOTH_NAME)) ;
  
EEPROM.begin(RemoteXYEngine.getEepromSize()); // init EEPROM
  
}

void loop() 
{ 
  RemoteXYEngine.handler ();   

  if (RemoteXY.button_reset == 1) {
    RemoteXY.button_reset = 0;
    Serial.println("Reset button pressed, restarting ESP32-C3...");

    delay(1000);
    ESP.restart();
  }
  

}

На ESP32 WROOM все отлично работает и сохраняет. Тот же код на ESP32C3 Super mini запускается, но ничего не сохраняет. После перезагрузки пусто