From 6df76451afc89f2689ac061ff25ad3ed6d7109f4 Mon Sep 17 00:00:00 2001 From: Bertrand Songis Date: Mon, 1 Apr 2019 12:02:35 +0200 Subject: [PATCH] 40 telemetry sensors instead of 32 --- radio/src/dataconstants.h | 4 ++-- radio/src/datastructs.h | 10 +++++----- radio/src/storage/conversions/conversions_218_219.cpp | 3 +-- radio/src/storage/conversions/datastructs_218.h | 9 +++++++++ 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/radio/src/dataconstants.h b/radio/src/dataconstants.h index 801bb752e..b8ac92e12 100644 --- a/radio/src/dataconstants.h +++ b/radio/src/dataconstants.h @@ -59,7 +59,7 @@ #define MAX_SCRIPTS 7 #define MAX_INPUTS 32 #define MAX_TRAINER_CHANNELS 16 - #define MAX_TELEMETRY_SENSORS 32 + #define MAX_TELEMETRY_SENSORS 40 #elif defined(PCBSKY9X) #define MAX_MODELS 60 #define MAX_OUTPUT_CHANNELS 32 // number of real output channels CH1-CH32 @@ -70,7 +70,7 @@ #define MAX_SPECIAL_FUNCTIONS 64 // number of functions assigned to switches #define MAX_INPUTS 32 #define MAX_TRAINER_CHANNELS 16 - #define MAX_TELEMETRY_SENSORS 32 + #define MAX_TELEMETRY_SENSORS 40 #else #warning "Unknown board!" #endif diff --git a/radio/src/datastructs.h b/radio/src/datastructs.h index 27d76cb4b..100104011 100644 --- a/radio/src/datastructs.h +++ b/radio/src/datastructs.h @@ -927,22 +927,22 @@ static inline void check_struct() #if defined(PCBXLITES) CHKSIZE(RadioData, 858); - CHKSIZE(ModelData, 5936); + CHKSIZE(ModelData, 6040); #elif defined(PCBXLITE) CHKSIZE(RadioData, 852); - CHKSIZE(ModelData, 5936); + CHKSIZE(ModelData, 6040); #elif defined(PCBX7) CHKSIZE(RadioData, 858); - CHKSIZE(ModelData, 5936); + CHKSIZE(ModelData, 6040); #elif defined(PCBX9E) CHKSIZE(RadioData, 960); CHKSIZE(ModelData, 6431); #elif defined(PCBX9D) || defined(PCBX9DP) CHKSIZE(RadioData, 880); - CHKSIZE(ModelData, 6418); + CHKSIZE(ModelData, 6522); #elif defined(PCBSKY9X) CHKSIZE(RadioData, 735); - CHKSIZE(ModelData, 5097); + CHKSIZE(ModelData, 5201); #elif defined(PCBHORUS) CHKSIZE(RadioData, 855); CHKSIZE(ModelData, 9761); diff --git a/radio/src/storage/conversions/conversions_218_219.cpp b/radio/src/storage/conversions/conversions_218_219.cpp index c92293e36..b4a9bf12a 100644 --- a/radio/src/storage/conversions/conversions_218_219.cpp +++ b/radio/src/storage/conversions/conversions_218_219.cpp @@ -34,8 +34,7 @@ typedef ModelData ModelData_v219; void convertModelData_218_to_219(ModelData &model) { - TRACE("TODO check what we do with model sizes %d %d", sizeof(ModelData_v218), sizeof(ModelData)); - // assert(sizeof(ModelData_v218) <= sizeof(ModelData)); + assert(sizeof(ModelData_v218) <= sizeof(ModelData)); ModelData_v218 oldModel; memcpy(&oldModel, &model, sizeof(oldModel)); diff --git a/radio/src/storage/conversions/datastructs_218.h b/radio/src/storage/conversions/datastructs_218.h index 4ba89d715..eb48e2a06 100644 --- a/radio/src/storage/conversions/datastructs_218.h +++ b/radio/src/storage/conversions/datastructs_218.h @@ -197,6 +197,9 @@ PACK(typedef struct { int16_t spare:7; uint8_t fadeIn; uint8_t fadeOut; +#if defined(PCBSKY9X) + int16_t rotaryEncoders[1]; +#endif gvar_t gvars[MAX_GVARS_218]; }) FlightModeData_v218; @@ -345,6 +348,12 @@ PACK(typedef struct { TelemetrySensor telemetrySensors[MAX_TELEMETRY_SENSORS_218]; TARANIS_PCBX9E_FIELD(uint8_t toplcdTimer) + +#if defined(PCBHORUS) + // TODO conversion for custom screens? +#else + uint8_t view; +#endif }) ModelData_v218; #define EXTRA_GENERAL_FIELDS_GENERAL_218 \