From d3af7fca5d9625e5beffc8edd14cdcf63cdb1f06 Mon Sep 17 00:00:00 2001 From: Bertrand Songis Date: Tue, 12 Mar 2019 18:20:55 +0100 Subject: [PATCH] [Pulses] PXX2 Probe warning --- radio/src/gui/gui_common_arm.cpp | 4 ++-- .../arm/stm32/intmodule_serial_driver.cpp | 1 + radio/src/targets/horus/board.cpp | 8 ++++--- radio/src/targets/horus/board.h | 6 +---- radio/src/targets/taranis/board.cpp | 5 ++++ radio/src/targets/taranis/board.h | 24 ++++++++++--------- 6 files changed, 27 insertions(+), 21 deletions(-) diff --git a/radio/src/gui/gui_common_arm.cpp b/radio/src/gui/gui_common_arm.cpp index 8e076a050..4dcc5bfd3 100644 --- a/radio/src/gui/gui_common_arm.cpp +++ b/radio/src/gui/gui_common_arm.cpp @@ -532,12 +532,12 @@ bool isInternalModuleAvailable(int module) #if defined(PXX1) if (module == MODULE_TYPE_XJT) - return !isModulePXX(EXTERNAL_MODULE); + return !IS_PXX2_INTERNAL_ENABLED() && !isModulePXX(EXTERNAL_MODULE); #endif #if defined(PXX2) if (module == MODULE_TYPE_XJT2) - return true; + return IS_PXX2_INTERNAL_ENABLED(); #endif return false; diff --git a/radio/src/targets/common/arm/stm32/intmodule_serial_driver.cpp b/radio/src/targets/common/arm/stm32/intmodule_serial_driver.cpp index 15d1f2f13..54b0ad1e8 100755 --- a/radio/src/targets/common/arm/stm32/intmodule_serial_driver.cpp +++ b/radio/src/targets/common/arm/stm32/intmodule_serial_driver.cpp @@ -85,6 +85,7 @@ extern "C" void INTMODULE_USART_IRQHandler(void) intmoduleFifo.errors++; } else { + hardwareOptions.pxx2Enabled = true; intmoduleFifo.push(data); } status = INTMODULE_USART->SR; diff --git a/radio/src/targets/horus/board.cpp b/radio/src/targets/horus/board.cpp index 046e8e065..1ab46c814 100644 --- a/radio/src/targets/horus/board.cpp +++ b/radio/src/targets/horus/board.cpp @@ -182,9 +182,6 @@ void boardInit() pwrInit(); delaysInit(); - // FrSky removed the volume chip in latest board, that's why it doesn't answer! - // i2cInit(); - #if defined(DEBUG) serial2Init(0, 0); // default serial mode (None if DEBUG not defined) #endif @@ -194,6 +191,11 @@ void boardInit() TRACE("\nHorus board started :)"); TRACE("RCC->CSR = %08x", RCC->CSR); +#if defined(PXX2) + #warning "PXX2 probe is not implemented" + hardwareOptions.pxx2Enabled = true; +#endif + audioInit(); // we need to initialize g_FATFS_Obj here, because it is in .ram section (because of DMA access) diff --git a/radio/src/targets/horus/board.h b/radio/src/targets/horus/board.h index 4cb9c7a6e..6de854c8a 100644 --- a/radio/src/targets/horus/board.h +++ b/radio/src/targets/horus/board.h @@ -199,11 +199,7 @@ PACK(typedef struct { extern HardwareOptions hardwareOptions; -#if defined(PCBX10) - #define IS_PXX2_INTERNAL_ENABLED() (true) -#else - #define IS_PXX2_INTERNAL_ENABLED() (hardwareOptions.pxx2Enabled) -#endif +#define IS_PXX2_INTERNAL_ENABLED() (hardwareOptions.pxx2Enabled) void init_ppm(uint8_t module); void disable_ppm(uint8_t module); diff --git a/radio/src/targets/taranis/board.cpp b/radio/src/targets/taranis/board.cpp index 26c963ec9..4a9b60f38 100644 --- a/radio/src/targets/taranis/board.cpp +++ b/radio/src/targets/taranis/board.cpp @@ -169,6 +169,11 @@ void boardInit() bluetoothInit(BLUETOOTH_DEFAULT_BAUDRATE); #endif +#if !defined(PCBXLITES) && !defined(PCBX3) && defined(PXX2) + #warning "PXX2 probe is not implemented" + hardwareOptions.pxx2Enabled = true; +#endif + #if !defined(PCBX9E) // some X9E boards need that the pwrInit() is moved a little bit later pwrInit(); diff --git a/radio/src/targets/taranis/board.h b/radio/src/targets/taranis/board.h index 5150e1f89..22cb8d710 100644 --- a/radio/src/targets/taranis/board.h +++ b/radio/src/targets/taranis/board.h @@ -462,15 +462,6 @@ enum Analogs { #define NUM_MOUSE_ANALOGS 0 #define NUM_DUMMY_ANAS 0 -PACK(typedef struct { -#if defined(STICKS_PWM) - uint8_t sticksPwmDisabled:1; -#endif - uint8_t pxx2Enabled:1; -}) HardwareOptions; - -extern HardwareOptions hardwareOptions; - #if defined(STICKS_PWM) #define NUM_PWMSTICKS 4 #define STICKS_PWM_ENABLED() (!hardwareOptions.sticksPwmDisabled) @@ -482,10 +473,21 @@ extern HardwareOptions hardwareOptions; #define NUM_TRIMS_KEYS 8 #endif -#if defined(PCBXLITES) || defined(DEBUG) +PACK(typedef struct { +#if NUM_PWMSTICKS > 0 + uint8_t sticksPwmDisabled:1; +#endif + uint8_t pxx2Enabled:1; +}) HardwareOptions; + +extern HardwareOptions hardwareOptions; + +#if !defined(PXX2) + #define IS_PXX2_INTERNAL_ENABLED() (false) +#elif defined(PCBXLITES) || defined(PCBX3) || defined(SIMU) #define IS_PXX2_INTERNAL_ENABLED() (true) #else - #define IS_PXX2_INTERNAL_ENABLED() (hardwareOptions.pxx2Enabled) + #define IS_PXX2_INTERNAL_ENABLED() (hardwareOptions.pxx2Enabled) #endif enum CalibratedAnalogs {