diff --git a/companion/src/constants.h b/companion/src/constants.h index 6898636a0..77d0989b8 100644 --- a/companion/src/constants.h +++ b/companion/src/constants.h @@ -42,7 +42,7 @@ #define CPN_MAX_SWITCHES_FUNCTION 8 #define CPN_MAX_SWITCHES_STD 20 #define CPN_MAX_SWITCHES (CPN_MAX_SWITCHES_STD + CPN_MAX_SWITCHES_FLEX + CPN_MAX_SWITCHES_FUNCTION) -#define CPN_MAX_SENSORS 60 +#define CPN_MAX_SENSORS 99 #define CPN_MAX_SCRIPTS 9 #define CPN_MAX_SCRIPT_INPUTS 10 #define CPN_MAX_SPACEMOUSE 6 diff --git a/companion/src/firmwares/opentx/opentxinterface.cpp b/companion/src/firmwares/opentx/opentxinterface.cpp index b296de4b2..56d9b5c5a 100644 --- a/companion/src/firmwares/opentx/opentxinterface.cpp +++ b/companion/src/firmwares/opentx/opentxinterface.cpp @@ -293,7 +293,9 @@ int OpenTxFirmware::getCapability(::Capability capability) case PwrButtonPress: return IS_HORUS_OR_TARANIS(board) && (board!=Board::BOARD_TARANIS_X9D) && (board!=Board::BOARD_TARANIS_X9DP); case Sensors: - if (IS_FAMILY_HORUS_OR_T16(board) || IS_TARANIS_X9(board)) + if (IS_STM32H7(board)) + return 99; + else if (IS_FAMILY_HORUS_OR_T16(board) || IS_TARANIS_X9(board)) return 60; else return 40; diff --git a/radio/src/dataconstants.h b/radio/src/dataconstants.h index c619d800e..fb804b815 100644 --- a/radio/src/dataconstants.h +++ b/radio/src/dataconstants.h @@ -53,7 +53,11 @@ #define MIN_TRAINER_CHANNELS 4 #define DEF_TRAINER_CHANNELS 8 #define MAX_TRAINER_CHANNELS 16 +#if defined(STM32H7) + #define MAX_TELEMETRY_SENSORS 99 +#else #define MAX_TELEMETRY_SENSORS 60 +#endif #define MAX_CUSTOM_SCREENS 10 #elif defined(PCBX9D) || defined(PCBX9DP) || defined(PCBX9E) #define MAX_MODELS 60 diff --git a/radio/src/datastructs.h b/radio/src/datastructs.h index 0715096e1..b9d9150fc 100644 --- a/radio/src/datastructs.h +++ b/radio/src/datastructs.h @@ -119,15 +119,15 @@ static inline void check_struct() CHKSIZE(ModelData, 27693); #endif #elif defined(PCBST16) - CHKSIZE(ModelData, 27911); + CHKSIZE(ModelData, 28457); #elif defined(PCBPA01) - CHKSIZE(ModelData, 27672); + CHKSIZE(ModelData, 28218); #elif defined(RADIO_T15) CHKSIZE(ModelData, 27683); #elif defined(RADIO_T15PRO) - CHKSIZE(ModelData, 27911); + CHKSIZE(ModelData, 28457); #elif defined(RADIO_TX15) - CHKSIZE(ModelData, 27911); + CHKSIZE(ModelData, 28457); #elif defined(RADIO_H7RS) // CHKSIZE() #elif defined(PCBHORUS) diff --git a/radio/src/storage/yaml/yaml_datastructs_pa01.cpp b/radio/src/storage/yaml/yaml_datastructs_pa01.cpp index af8b6ab38..ab465da0b 100644 --- a/radio/src/storage/yaml/yaml_datastructs_pa01.cpp +++ b/radio/src/storage/yaml/yaml_datastructs_pa01.cpp @@ -922,7 +922,7 @@ static const struct YamlNode struct_ModelData[] = { YAML_ARRAY("inputNames", 32, 32, struct_string_32, NULL), YAML_UNSIGNED( "potsWarnEnabled", 16 ), YAML_ARRAY("potsWarnPosition", 8, 16, struct_signed_8, NULL), - YAML_ARRAY("telemetrySensors", 112, 60, struct_TelemetrySensor, NULL), + YAML_ARRAY("telemetrySensors", 112, 99, struct_TelemetrySensor, NULL), YAML_ARRAY("screenData", 15776, 10, struct_CustomScreenData, NULL), YAML_STRUCT("topbarData", 7328, struct_TopBarPersistentData, NULL), YAML_ARRAY("topbarWidgetWidth", 8, 5, struct_unsigned_8, NULL), diff --git a/radio/src/storage/yaml/yaml_datastructs_st16.cpp b/radio/src/storage/yaml/yaml_datastructs_st16.cpp index 985f94be4..9733a5941 100644 --- a/radio/src/storage/yaml/yaml_datastructs_st16.cpp +++ b/radio/src/storage/yaml/yaml_datastructs_st16.cpp @@ -922,7 +922,7 @@ static const struct YamlNode struct_ModelData[] = { YAML_ARRAY("inputNames", 32, 32, struct_string_32, NULL), YAML_UNSIGNED( "potsWarnEnabled", 16 ), YAML_ARRAY("potsWarnPosition", 8, 16, struct_signed_8, NULL), - YAML_ARRAY("telemetrySensors", 112, 60, struct_TelemetrySensor, NULL), + YAML_ARRAY("telemetrySensors", 112, 99, struct_TelemetrySensor, NULL), YAML_ARRAY("screenData", 15776, 10, struct_CustomScreenData, NULL), YAML_STRUCT("topbarData", 8768, struct_TopBarPersistentData, NULL), YAML_ARRAY("topbarWidgetWidth", 8, 6, struct_unsigned_8, NULL), diff --git a/radio/src/storage/yaml/yaml_datastructs_t15pro.cpp b/radio/src/storage/yaml/yaml_datastructs_t15pro.cpp index 985f94be4..9733a5941 100644 --- a/radio/src/storage/yaml/yaml_datastructs_t15pro.cpp +++ b/radio/src/storage/yaml/yaml_datastructs_t15pro.cpp @@ -922,7 +922,7 @@ static const struct YamlNode struct_ModelData[] = { YAML_ARRAY("inputNames", 32, 32, struct_string_32, NULL), YAML_UNSIGNED( "potsWarnEnabled", 16 ), YAML_ARRAY("potsWarnPosition", 8, 16, struct_signed_8, NULL), - YAML_ARRAY("telemetrySensors", 112, 60, struct_TelemetrySensor, NULL), + YAML_ARRAY("telemetrySensors", 112, 99, struct_TelemetrySensor, NULL), YAML_ARRAY("screenData", 15776, 10, struct_CustomScreenData, NULL), YAML_STRUCT("topbarData", 8768, struct_TopBarPersistentData, NULL), YAML_ARRAY("topbarWidgetWidth", 8, 6, struct_unsigned_8, NULL), diff --git a/radio/src/storage/yaml/yaml_datastructs_tx15.cpp b/radio/src/storage/yaml/yaml_datastructs_tx15.cpp index 985f94be4..9733a5941 100644 --- a/radio/src/storage/yaml/yaml_datastructs_tx15.cpp +++ b/radio/src/storage/yaml/yaml_datastructs_tx15.cpp @@ -922,7 +922,7 @@ static const struct YamlNode struct_ModelData[] = { YAML_ARRAY("inputNames", 32, 32, struct_string_32, NULL), YAML_UNSIGNED( "potsWarnEnabled", 16 ), YAML_ARRAY("potsWarnPosition", 8, 16, struct_signed_8, NULL), - YAML_ARRAY("telemetrySensors", 112, 60, struct_TelemetrySensor, NULL), + YAML_ARRAY("telemetrySensors", 112, 99, struct_TelemetrySensor, NULL), YAML_ARRAY("screenData", 15776, 10, struct_CustomScreenData, NULL), YAML_STRUCT("topbarData", 8768, struct_TopBarPersistentData, NULL), YAML_ARRAY("topbarWidgetWidth", 8, 6, struct_unsigned_8, NULL),