diff --git a/radio/src/CMakeLists.txt b/radio/src/CMakeLists.txt index cba0c915d..f17b5252b 100644 --- a/radio/src/CMakeLists.txt +++ b/radio/src/CMakeLists.txt @@ -475,6 +475,7 @@ set(SRC trainer.cpp model_init.cpp serial.cpp + sbus.cpp ) if(GUI) diff --git a/radio/src/gui/gui_common.cpp b/radio/src/gui/gui_common.cpp index 19b4b7ca2..f90a638dd 100644 --- a/radio/src/gui/gui_common.cpp +++ b/radio/src/gui/gui_common.cpp @@ -789,8 +789,13 @@ bool isTrainerModeAvailable(int mode) } #endif - if (mode == TRAINER_MODE_MASTER_SERIAL) + if (mode == TRAINER_MODE_MASTER_SERIAL) { +#if defined(SBUS_TRAINER) return hasSerialMode(UART_MODE_SBUS_TRAINER) >= 0; +#else + return false; +#endif + } if ((mode == TRAINER_MODE_MASTER_BLUETOOTH || mode == TRAINER_MODE_SLAVE_BLUETOOTH) diff --git a/radio/src/targets/common/arm/CMakeLists.txt b/radio/src/targets/common/arm/CMakeLists.txt index 27fa71251..9570d6a95 100644 --- a/radio/src/targets/common/arm/CMakeLists.txt +++ b/radio/src/targets/common/arm/CMakeLists.txt @@ -268,6 +268,7 @@ add_definitions(-g) add_definitions(-DCPUARM) add_definitions(-DGPS) add_definitions(-DBATTGRAPH -DTHRTRACE) +add_definitions(-DSBUS_TRAINER) include_directories(${RTOS_DIR}/include) diff --git a/radio/src/targets/horus/CMakeLists.txt b/radio/src/targets/horus/CMakeLists.txt index 748745757..14f35e6f9 100644 --- a/radio/src/targets/horus/CMakeLists.txt +++ b/radio/src/targets/horus/CMakeLists.txt @@ -100,7 +100,6 @@ if (PCB STREQUAL X10) set(HARDWARE_TOUCH YES) set(USB_CHARGER YES) set(DEFAULT_THEME "DARKBLUE") - set(SBUS_TRAINER ON) add_definitions(-DMANUFACTURER_RADIOMASTER) if (NOT BLUETOOTH) set(AUX2_SERIAL ON) @@ -244,14 +243,6 @@ if(BLUETOOTH) add_definitions(-DHARDWARE_TRAINER_BLUETOOTH) endif() -if (SBUS_TRAINER) - add_definitions(-DSBUS_TRAINER) - set(SRC - ${SRC} - sbus.cpp - ) -endif() - set(FIRMWARE_TARGET_SRC ${FIRMWARE_TARGET_SRC} ${LCD_DRIVER} diff --git a/radio/src/targets/taranis/CMakeLists.txt b/radio/src/targets/taranis/CMakeLists.txt index 564ba8a9b..ec404803a 100644 --- a/radio/src/targets/taranis/CMakeLists.txt +++ b/radio/src/targets/taranis/CMakeLists.txt @@ -505,7 +505,6 @@ endif() add_definitions(-DPCBTARANIS) add_definitions(-DAUDIO -DVOICE -DRTCLOCK) -add_definitions(-DSBUS_TRAINER) set(SRC ${SRC} @@ -530,11 +529,6 @@ if(STATUS_LEDS) set(LED_DRIVER led_driver.cpp) endif() -set(SRC - ${SRC} - sbus.cpp - ) - set(FIRMWARE_TARGET_SRC ${FIRMWARE_TARGET_SRC} ${LED_DRIVER} diff --git a/radio/src/trainer.cpp b/radio/src/trainer.cpp index be7e568b0..caad8b088 100644 --- a/radio/src/trainer.cpp +++ b/radio/src/trainer.cpp @@ -61,9 +61,11 @@ void stopTrainer() stop_trainer_ppm(); break; +#if defined(SBUS_TRAINER) case TRAINER_MODE_MASTER_SERIAL: sbusSetGetByte(nullptr); break; +#endif #if defined(TRAINER_MODULE_CPPM) case TRAINER_MODE_MASTER_CPPM_EXTERNAL_MODULE: @@ -102,9 +104,11 @@ void checkTrainerSettings() init_trainer_ppm(); break; +#if defined(SBUS_TRAINER) case TRAINER_MODE_MASTER_SERIAL: sbusSetGetByte(sbusAuxGetByte); break; +#endif #if defined(TRAINER_MODULE_CPPM) case TRAINER_MODE_MASTER_CPPM_EXTERNAL_MODULE: