diff -r 9833fd86736b -r 1bc6e9263ada main/config.c --- a/main/config.c Thu Jun 17 13:58:13 2021 +0200 +++ b/main/config.c Sat Jun 19 20:46:42 2021 +0200 @@ -122,6 +122,9 @@ equipment.PID_kI = 2.0; equipment.PID_kD = 1.5; equipment.SampleTime = 3000; + equipment.Hendi = false; + equipment.RampPower = 100; + equipment.Max_watt = 3000; bytes = fwrite(dst, 1, sizeof(equipment), f); fclose(f); } else { @@ -136,34 +139,39 @@ fclose(f); return; } -#if 0 +#if 1 if (equipment_hdr.version < EQUIPMENT_VERSION) { + uint32_t oldsize = equipment_hdr.recsize; FILE *nf = fopen("/spiffs/etc/equipments.new", "w"); ESP_LOGW(TAG, "/spiffs/etc/equipments.conf version %d, new %d", equipment_hdr.version, EQUIPMENT_VERSION); dst = (uint8_t*)&equipment_hdr; memset(dst, 0, sizeof(equipment_hdr)); + // Update the header with new sizes equipment_hdr.version = EQUIPMENT_VERSION; equipment_hdr.hdrsize = sizeof(equipment_hdr); equipment_hdr.recsize = sizeof(equipment); bytes = fwrite(dst, 1, sizeof(equipment_hdr), nf); - fseek(f, 0, SEEK_SET); - dst = (uint8_t*)&recipe; - while ((bytes = fread(dst, 1, equipment_hdr.recsize, f))) { + dst = (uint8_t*)&equipment; + while ((bytes = fread(dst, 1, oldsize, f))) { // Upgrade data here + equipment.Hendi = false; + equipment.RampPower = equipment.BoilPower; + equipment.Max_watt = 3000; bytes = fwrite(dst, 1, sizeof(equipment), nf); if (bytes != sizeof(equipment)) { ESP_LOGE(TAG, "/spiffs/etc/equipments.new write data, %d/%d bytes", bytes, sizeof(equipment)); } } - // Update the header with new sizes fclose(nf); fclose(f); rename("/spiffs/etc/equipments.conf", "/spiffs/etc/equipments.old"); rename("/spiffs/etc/equipments.new", "/spiffs/etc/equipments.conf"); unlink("/spiffs/etc/equipments.old"); f = fopen("/spiffs/etc/equipments.conf", "r"); + dst = (uint8_t*)&equipment_hdr; + fread(dst, 1, sizeof(equipment_hdr), f); } #endif dst = (uint8_t*)&equipment;