diff --git a/radio/src/storage/conversions/conversions_218_219.cpp b/radio/src/storage/conversions/conversions_218_219.cpp index 6fb9c2fa4..6db35fddc 100644 --- a/radio/src/storage/conversions/conversions_218_219.cpp +++ b/radio/src/storage/conversions/conversions_218_219.cpp @@ -22,12 +22,12 @@ #include "datastructs_218.h" /* - * PCBHORUS: 64 telemetry sensors instead of 32 + * 60 (Horus / X9) / 40 (others) telemetry sensors instead of 32 * ALL: ReceiverData array added * ALL: registrationId added * ALL: failsafeChannels moved from ModuleData to ModelData * ALL: ModuleData / TrainerModuleData modified - * + * PCBX9 : 6 chars for expos / mixes names instead of 8 */ typedef ModelData ModelData_v219; @@ -40,12 +40,73 @@ void convertModelData_218_to_219(ModelData &model) memcpy(&oldModel, &model, sizeof(oldModel)); ModelData_v219 & newModel = (ModelData_v219 &) model; - memset(&newModel.rssiAlarms + sizeof(RssiAlarmData), 0, sizeof(ModelData_v219) - offsetof(ModelData_v219, rssiAlarms) - sizeof(RssiAlarmData)); + memclear(newModel.mixData, sizeof(ModelData_v219) - offsetof(ModelData_v219, mixData)); char name[LEN_MODEL_NAME+1]; zchar2str(name, oldModel.header.name, LEN_MODEL_NAME); TRACE("Model %s conversion from v218 to v219", name); + for (uint8_t i=0; i