Browse Source

Reworked config reset code to avoid static init that eats SRAM

tags/v1.2.0
Bertrand Lemasle 6 years ago
parent
commit
4a94de3800
1 changed files with 16 additions and 21 deletions
  1. +16
    -21
      GpsTracker/Config.cpp

+ 16
- 21
GpsTracker/Config.cpp View File

@@ -30,12 +30,12 @@ namespace config {
//};
//value.network = c;
#endif
/*strcpy(value.version, VERSION);
/*strcpy_P(value.version, PSTR(VERSION));
value.alertBatteryLevel1 = CONFIG_DEFAULT_BATTERY_ALERT_LEVEL1;
value.alertBatteryLevel2 = CONFIG_DEFAULT_BATTERY_ALERT_LEVEL2;
value.alertBatteryLevelClear = CONFIG_DEFAULT_BATTERY_ALERT_CLEAR;
value.activeAlerts = CONFIG_DEFAULT_ACTIVE_ALERTS;
strcpy(value.contactPhone, CONFIG_DEFAULT_CONTACT_PHONE);*/
strcpy_P(config.contactPhone, PSTR(CONFIG_DEFAULT_CONTACT_PHONE));*/
}

void write() {
@@ -61,27 +61,22 @@ namespace config {
void reset() {
VERBOSE("reset");

config_t config = {
CONFIG_SEED,
VERSION,
0xFFFF,
0xFFFF,
config_t config = {};
config.seed = CONFIG_SEED;
strcpy_P(config.version, PSTR(VERSION));
config.firstEntry = config.lastEntry = 0xFFFF;
config.alertBatteryLevel1 = CONFIG_DEFAULT_BATTERY_ALERT_LEVEL1;
config.alertBatteryLevel2 = CONFIG_DEFAULT_BATTERY_ALERT_LEVEL2;
config.alertBatteryLevelClear = CONFIG_DEFAULT_BATTERY_ALERT_CLEAR;
config.activeAlerts = CONFIG_DEFAULT_ACTIVE_ALERTS;
strcpy_P(config.contactPhone, PSTR(CONFIG_DEFAULT_CONTACT_PHONE));

#if BACKUP_ENABLE_NETWORK
{
POSITIONS_CONFIG_NET_DEFAULT_SAVE_THRESHOLD,
0xFFFF,
POSITIONS_CONFIG_NET_DEFAULT_APN,
POSITIONS_CONFIG_NET_DEFAULT_URL,
},
#else
"",
config.network.saveThreshold = POSITIONS_CONFIG_NET_DEFAULT_SAVE_THRESHOLD;
config.network.lastSavedEntry = 0xFFFF;
strcpy_P(config.network.apn, PSTR(POSITIONS_CONFIG_NET_DEFAULT_APN));
strcpy_P(config.network.url, PSTR(POSITIONS_CONFIG_NET_DEFAULT_URL));
#endif
CONFIG_DEFAULT_BATTERY_ALERT_LEVEL1,
CONFIG_DEFAULT_BATTERY_ALERT_LEVEL2,
CONFIG_DEFAULT_BATTERY_ALERT_CLEAR,
CONFIG_DEFAULT_ACTIVE_ALERTS,
CONFIG_DEFAULT_CONTACT_PHONE
};

value = config;
save();


Loading…
Cancel
Save