diff --git a/.github/workflows/actions.yml b/.github/workflows/actions.yml index f6d13faa5e8..e5a50ee499d 100644 --- a/.github/workflows/actions.yml +++ b/.github/workflows/actions.yml @@ -101,7 +101,7 @@ jobs: - t12;t12max - t15;t16;t18 - t8;zorro;pocket;mt12;commando8 - - tlite;tpro;tprov2;lr3pro + - tlite;tpro;tprov2;tpros;lr3pro - t20;t20v2;t14 - tx12;tx12mk2;boxer - tx16s diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index f3dbd881ede..58341b7159f 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -21,7 +21,7 @@ jobs: - t12;t12max - t15,t16;t18 - t8;zorro;pocket;mt12;commando8 - - tlite;tpro;tprov2;lr3pro + - tlite;tpro;tprov2;tpros;lr3pro - t20;t20v2;t14 - tx12;tx12mk2;boxer - tx16s diff --git a/companion/src/companion.qrc b/companion/src/companion.qrc index 17c6a48cf64..96b96b0f0cc 100644 --- a/companion/src/companion.qrc +++ b/companion/src/companion.qrc @@ -212,6 +212,14 @@ images/simulator/JumperTPRO/left.png images/simulator/JumperTPRO/right.png images/simulator/JumperTPRO/top.png + images/simulator/JumperTPROS/bottom.png + images/simulator/JumperTPROS/left.png + images/simulator/JumperTPROS/right.png + images/simulator/JumperTPROS/right-ent.png + images/simulator/JumperTPROS/top.png + images/simulator/JumperTPROS/exit.png + images/simulator/JumperTPROS/menu.png + images/simulator/JumperTPROS/page.png images/simulator/TX12/left.png images/simulator/TX12/left-pageup.png images/simulator/TX12/left-pagedn.png diff --git a/companion/src/firmwares/boards.cpp b/companion/src/firmwares/boards.cpp index 70b488efe2b..78da4f3e1fa 100644 --- a/companion/src/firmwares/boards.cpp +++ b/companion/src/firmwares/boards.cpp @@ -192,6 +192,7 @@ int Boards::getEEpromSize(Board::Type board) case BOARD_JUMPER_TLITE_F4: case BOARD_JUMPER_TPRO: case BOARD_JUMPER_TPROV2: + case BOARD_JUMPER_TPROS: case BOARD_RADIOMASTER_TX12: case BOARD_RADIOMASTER_TX12_MK2: case BOARD_RADIOMASTER_T8: @@ -247,6 +248,7 @@ int Boards::getFlashSize(Type board) case BOARD_JUMPER_TLITE_F4: case BOARD_JUMPER_TPRO: case BOARD_JUMPER_TPROV2: + case BOARD_JUMPER_TPROS: case BOARD_RADIOMASTER_TX12: case BOARD_RADIOMASTER_TX12_MK2: case BOARD_RADIOMASTER_ZORRO: @@ -537,6 +539,8 @@ QString Boards::getBoardName(Board::Type board) return "Jumper T-Pro"; case BOARD_JUMPER_TPROV2: return "Jumper T-Pro V2"; + case BOARD_JUMPER_TPROS: + return "Jumper T-Pro S"; case BOARD_JUMPER_T12MAX: return "Jumper T12 MAX"; case BOARD_JUMPER_T14: @@ -687,6 +691,7 @@ int Boards::getDefaultInternalModules(Board::Type board) case BOARD_JUMPER_T14: case BOARD_JUMPER_T20: case BOARD_JUMPER_T20V2: + case BOARD_JUMPER_TPROS: case BOARD_JUMPER_T15: case BOARD_FATFISH_F16: return (int)MODULE_TYPE_CROSSFIRE; diff --git a/companion/src/firmwares/boards.h b/companion/src/firmwares/boards.h index 76efe82d36a..26e5d463f0c 100644 --- a/companion/src/firmwares/boards.h +++ b/companion/src/firmwares/boards.h @@ -82,6 +82,7 @@ namespace Board { BOARD_IFLIGHT_COMMANDO8, BOARD_FLYSKY_EL18, BOARD_JUMPER_TPROV2, + BOARD_JUMPER_TPROS, BOARD_RADIOMASTER_POCKET, BOARD_JUMPER_T20V2, BOARD_FATFISH_F16, @@ -425,7 +426,7 @@ inline bool IS_JUMPER_TLITE(Board::Type board) inline bool IS_JUMPER_TPRO(Board::Type board) { - return board == Board::BOARD_JUMPER_TPRO || board == Board::BOARD_JUMPER_TPROV2; + return board == Board::BOARD_JUMPER_TPRO || board == Board::BOARD_JUMPER_TPROV2 || board == Board::BOARD_JUMPER_TPROS; } inline bool IS_JUMPER_TPROV1(Board::Type board) @@ -438,6 +439,11 @@ inline bool IS_JUMPER_TPROV2(Board::Type board) return board == Board::BOARD_JUMPER_TPROV2; } +inline bool IS_JUMPER_TPROS(Board::Type board) +{ + return board == Board::BOARD_JUMPER_TPROS; +} + inline bool IS_JUMPER_T15(Board::Type board) { return board == Board::BOARD_JUMPER_T15; @@ -525,6 +531,7 @@ inline bool IS_FAMILY_T12(Board::Type board) board == Board::BOARD_JUMPER_TLITE_F4 || board == Board::BOARD_JUMPER_TPRO || board == Board::BOARD_JUMPER_TPROV2 || + board == Board::BOARD_JUMPER_TPROS || board == Board::BOARD_RADIOMASTER_TX12 || board == Board::BOARD_RADIOMASTER_TX12_MK2 || board == Board::BOARD_RADIOMASTER_ZORRO || diff --git a/companion/src/firmwares/opentx/opentxinterface.cpp b/companion/src/firmwares/opentx/opentxinterface.cpp index eaf718ebde7..99a88d331eb 100644 --- a/companion/src/firmwares/opentx/opentxinterface.cpp +++ b/companion/src/firmwares/opentx/opentxinterface.cpp @@ -68,6 +68,8 @@ const char * OpenTxEepromInterface::getName() return "EdgeTX for Jumper T-Pro"; case BOARD_JUMPER_TPROV2: return "EdgeTX for Jumper T-Pro V2"; + case BOARD_JUMPER_TPROS: + return "EdgeTX for Jumper T-Pro S"; case BOARD_JUMPER_T12MAX: return "EdgeTX for Jumper T12 MAX"; case BOARD_JUMPER_T14: @@ -1439,6 +1441,16 @@ void registerOpenTxFirmwares() registerOpenTxFirmware(firmware); addOpenTxRfOptions(firmware, FLEX); + /* Jumper T-Pro S board */ + firmware = new OpenTxFirmware(FIRMWAREID("tpros"), QCoreApplication::translate("Firmware", "Jumper T-Pro S"), BOARD_JUMPER_TPROS); + addOpenTxCommonOptions(firmware); + firmware->addOption("noheli", Firmware::tr("Disable HELI menu and cyclic mix support")); + firmware->addOption("nogvars", Firmware::tr("Disable Global variables")); + firmware->addOption("lua", Firmware::tr("Enable Lua custom scripts screen")); + addOpenTxFontOptions(firmware); + registerOpenTxFirmware(firmware); + addOpenTxRfOptions(firmware, FLEX); + /* Jumper T12 board */ firmware = new OpenTxFirmware(FIRMWAREID("t12"), QCoreApplication::translate("Firmware", "Jumper T12 / T12 Pro"), BOARD_JUMPER_T12); addOpenTxCommonOptions(firmware); diff --git a/companion/src/images/simulator/JumperTPROS/bottom.png b/companion/src/images/simulator/JumperTPROS/bottom.png new file mode 100644 index 00000000000..5878810b867 Binary files /dev/null and b/companion/src/images/simulator/JumperTPROS/bottom.png differ diff --git a/companion/src/images/simulator/JumperTPROS/exit.png b/companion/src/images/simulator/JumperTPROS/exit.png new file mode 100644 index 00000000000..ac187242f6e Binary files /dev/null and b/companion/src/images/simulator/JumperTPROS/exit.png differ diff --git a/companion/src/images/simulator/JumperTPROS/left.png b/companion/src/images/simulator/JumperTPROS/left.png new file mode 100644 index 00000000000..2ec9ade5b61 Binary files /dev/null and b/companion/src/images/simulator/JumperTPROS/left.png differ diff --git a/companion/src/images/simulator/JumperTPROS/menu.png b/companion/src/images/simulator/JumperTPROS/menu.png new file mode 100644 index 00000000000..18e807246b0 Binary files /dev/null and b/companion/src/images/simulator/JumperTPROS/menu.png differ diff --git a/companion/src/images/simulator/JumperTPROS/page.png b/companion/src/images/simulator/JumperTPROS/page.png new file mode 100644 index 00000000000..ee73613e613 Binary files /dev/null and b/companion/src/images/simulator/JumperTPROS/page.png differ diff --git a/companion/src/images/simulator/JumperTPROS/right-ent.png b/companion/src/images/simulator/JumperTPROS/right-ent.png new file mode 100644 index 00000000000..f2d9f077020 Binary files /dev/null and b/companion/src/images/simulator/JumperTPROS/right-ent.png differ diff --git a/companion/src/images/simulator/JumperTPROS/right.png b/companion/src/images/simulator/JumperTPROS/right.png new file mode 100644 index 00000000000..60eeaad79ea Binary files /dev/null and b/companion/src/images/simulator/JumperTPROS/right.png differ diff --git a/companion/src/images/simulator/JumperTPROS/top.png b/companion/src/images/simulator/JumperTPROS/top.png new file mode 100644 index 00000000000..eacf96a6546 Binary files /dev/null and b/companion/src/images/simulator/JumperTPROS/top.png differ diff --git a/companion/src/simulation/CMakeLists.txt b/companion/src/simulation/CMakeLists.txt index 3b7ddaacbb9..c53fff8813e 100644 --- a/companion/src/simulation/CMakeLists.txt +++ b/companion/src/simulation/CMakeLists.txt @@ -43,6 +43,7 @@ set(${PROJECT_NAME}_SRCS simulateduiwidgetJumperT20.cpp simulateduiwidgetJumperTLITE.cpp simulateduiwidgetJumperTPRO.cpp + simulateduiwidgetJumperTPROS.cpp simulateduiwidgetLR3PRO.cpp simulateduiwidgetNV14.cpp simulateduiwidgetPL18.cpp diff --git a/companion/src/simulation/simulateduiwidget.h b/companion/src/simulation/simulateduiwidget.h index 6d5a00e8574..c4f67808d58 100644 --- a/companion/src/simulation/simulateduiwidget.h +++ b/companion/src/simulation/simulateduiwidget.h @@ -116,6 +116,7 @@ namespace Ui { class SimulatedUIWidgetJumperT12; class SimulatedUIWidgetJumperTLITE; class SimulatedUIWidgetJumperTPRO; + class SimulatedUIWidgetJumperTPROS; class SimulatedUIWidgetJumperT12max; class SimulatedUIWidgetJumperT14; class SimulatedUIWidgetJumperT15; @@ -306,6 +307,18 @@ class SimulatedUIWidgetJumperTPRO: public SimulatedUIWidget Ui::SimulatedUIWidgetJumperTPRO * ui; }; +class SimulatedUIWidgetJumperTPROS: public SimulatedUIWidget +{ + Q_OBJECT + +public: + explicit SimulatedUIWidgetJumperTPROS(SimulatorInterface * simulator, QWidget * parent = NULL); + virtual ~SimulatedUIWidgetJumperTPROS(); + +private: + Ui::SimulatedUIWidgetJumperTPROS * ui; +}; + class SimulatedUIWidgetJumperT15: public SimulatedUIWidget { Q_OBJECT diff --git a/companion/src/simulation/simulateduiwidgetJumperTPROS.cpp b/companion/src/simulation/simulateduiwidgetJumperTPROS.cpp new file mode 100644 index 00000000000..7851999f3de --- /dev/null +++ b/companion/src/simulation/simulateduiwidgetJumperTPROS.cpp @@ -0,0 +1,57 @@ +#include "simulateduiwidget.h" +#include "ui_simulateduiwidgetJumperTPROS.h" +#include "eeprominterface.h" + +// NOTE: RadioUiAction(NUMBER,...): NUMBER relates to enum EnumKeys in the specific board.h + +SimulatedUIWidgetJumperTPROS::SimulatedUIWidgetJumperTPROS(SimulatorInterface *simulator, QWidget * parent): + SimulatedUIWidget(simulator, parent), + ui(new Ui::SimulatedUIWidgetJumperTPROS) +{ + RadioUiAction * act; + + ui->setupUi(this); + + act = new RadioUiAction(0, QList() << Qt::Key_PageUp << Qt::Key_Up, SIMU_STR_HLP_KEYS_GO_UP, SIMU_STR_HLP_ACT_MENU_ICN); + addRadioWidget(ui->leftbuttons->addArea(QRect(85, 85, 70, 70), "JumperTPROS/menu.png", act)); + + act = new RadioUiAction(3, QList() << Qt::Key_PageDown << Qt::Key_Down, SIMU_STR_HLP_KEYS_GO_DN, SIMU_STR_HLP_ACT_PAGE); + addRadioWidget(ui->leftbuttons->addArea(QRect(53, 160, 70, 70), "JumperTPROS/page.png", act)); + + act = new RadioUiAction(1, QList() << Qt::Key_Delete << Qt::Key_Escape << Qt::Key_Backspace, SIMU_STR_HLP_KEYS_EXIT, SIMU_STR_HLP_ACT_EXIT); + addRadioWidget(ui->leftbuttons->addArea(QRect(20, 230, 70, 70), "JumperTPROS/exit.png", act)); + + m_mouseMidClickAction = new RadioUiAction(2, QList() << Qt::Key_Enter << Qt::Key_Return, SIMU_STR_HLP_KEYS_ACTIVATE, SIMU_STR_HLP_ACT_ROT_DN); + addRadioWidget(ui->rightbuttons->addArea(QRect(10, 96, 200, 220), "JumperTPROS/right-ent.png", m_mouseMidClickAction)); + + //addRadioWidget(ui->leftbuttons->addArea(QRect(10, 65, 70, 50), "JumperTPROS/left_scrnshot.png", m_screenshotAction)); + + m_backlightColors << QColor(215, 243, 255); // X7 Blue + m_backlightColors << QColor(166,247,159); + m_backlightColors << QColor(247,159,166); + m_backlightColors << QColor(255,195,151); + m_backlightColors << QColor(247,242,159); + + if (getCurrentBoard() == Board::BOARD_JUMPER_TPROV2) { + ui->lcd->setBgDefaultColor(QColor(0, 0, 0)); + ui->lcd->setFgDefaultColor(QColor(255, 255, 255)); + } + + setLcd(ui->lcd); + + QString css = "#radioUiWidget {" + "background-color: rgb(167, 167, 167);" + "}"; + + QTimer * tim = new QTimer(this); + tim->setSingleShot(true); + connect(tim, &QTimer::timeout, [this, css]() { + emit customStyleRequest(css); + }); + tim->start(100); +} + +SimulatedUIWidgetJumperTPROS::~SimulatedUIWidgetJumperTPROS() +{ + delete ui; +} diff --git a/companion/src/simulation/simulateduiwidgetJumperTPROS.ui b/companion/src/simulation/simulateduiwidgetJumperTPROS.ui new file mode 100644 index 00000000000..1822ef1568c --- /dev/null +++ b/companion/src/simulation/simulateduiwidgetJumperTPROS.ui @@ -0,0 +1,211 @@ + + + SimulatedUIWidgetJumperTPROS + + + + 0 + 0 + 716 + 308 + + + + + 0 + 0 + + + + + 716 + 308 + + + + + 716 + 308 + + + + Jumper TPro S Simulator + + + background-color: qlineargradient(spread:reflect, x1:0, y1:0, x2:0, y2:1, stop:0 rgba(255, 255, 255, 255), stop:0.757062 rgba(241, 238, 238, 255), stop:1 rgba(247, 245, 245, 255)); + + + + + 0 + 0 + 230 + 308 + + + + + 0 + 0 + + + + + 230 + 308 + + + + + 230 + 308 + + + + background:url(:/images/simulator/JumperTPROS/left.png); + + + + + + 230 + 90 + 256 + 128 + + + + + 0 + 0 + + + + + 256 + 128 + + + + + 256 + 128 + + + + background-color: rgb(215, 243, 255); + + + + + + 485 + 0 + 230 + 308 + + + + + 0 + 0 + + + + + 230 + 308 + + + + + 230 + 308 + + + + background:url(:/images/simulator/JumperTPROS/right.png) + + + + + + 230 + 0 + 256 + 90 + + + + + 0 + 0 + + + + + 256 + 90 + + + + + 256 + 90 + + + + background:url(:/images/simulator/JumperTPROS/top.png) + + + + + + 230 + 218 + 256 + 90 + + + + + 0 + 0 + + + + + 256 + 90 + + + + + 256 + 90 + + + + background:url(:/images/simulator/JumperTPROS/bottom.png) + + + + + + LcdWidget + QWidget +
lcdwidget.h
+ 1 +
+ + ButtonsWidget + QWidget +
buttonswidget.h
+ 1 +
+
+ + + + +
\ No newline at end of file diff --git a/companion/src/simulation/simulatorwidget.cpp b/companion/src/simulation/simulatorwidget.cpp index cda17ac44f1..bdd308fc079 100644 --- a/companion/src/simulation/simulatorwidget.cpp +++ b/companion/src/simulation/simulatorwidget.cpp @@ -105,6 +105,9 @@ SimulatorWidget::SimulatorWidget(QWidget * parent, SimulatorInterface * simulato case Board::BOARD_JUMPER_TPROV2: radioUiWidget = new SimulatedUIWidgetJumperTPRO(simulator, this); break; + case Board::BOARD_JUMPER_TPROS: + radioUiWidget = new SimulatedUIWidgetJumperTPROS(simulator, this); + break; case Board::BOARD_JUMPER_T12MAX: radioUiWidget = new SimulatedUIWidgetJumperT12max(simulator, this); break; diff --git a/fw.json b/fw.json index 82b241863f7..75436a39067 100644 --- a/fw.json +++ b/fw.json @@ -28,6 +28,7 @@ ["Jumper T-Lite", "tlite-"], ["Jumper T-Pro", "tpro-"], ["Jumper T-Pro V2", "tprov2-"], + ["Jumper T-Pro S", "tpros-"], ["Jumper T20", "t20-"], ["Jumper T14", "t14-"], ["Jumper T15", "t15-"], diff --git a/radio/src/datastructs.h b/radio/src/datastructs.h index 063c3d628e7..0f4990ab84c 100644 --- a/radio/src/datastructs.h +++ b/radio/src/datastructs.h @@ -125,8 +125,6 @@ static inline void check_struct() #elif defined(RADIO_TPRO) CHKSIZE(RadioData, 869); CHKSIZE(ModelData, 6290); -#elif defined(RADIO_POCKET) - CHKSIZE(RadioData, 869); #elif defined(RADIO_TPROV2) CHKSIZE(RadioData, 869); CHKSIZE(ModelData, 6290); diff --git a/radio/src/simu.cpp b/radio/src/simu.cpp index e06ab5936ed..bd70dbd6909 100644 --- a/radio/src/simu.cpp +++ b/radio/src/simu.cpp @@ -445,7 +445,7 @@ void OpenTxSim::updateKeysAndSwitches(bool start) SWITCH_KEY(C, 2, 3); SWITCH_KEY(D, 3, 3); - #if defined(RADIO_TPRO) || defined(RADIO_TPROV2) + #if defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) SWITCH_KEY(1, 4, 2); SWITCH_KEY(2, 5, 2); SWITCH_KEY(3, 6, 2); diff --git a/radio/src/targets/taranis/CMakeLists.txt b/radio/src/targets/taranis/CMakeLists.txt index 2508b2929a0..96e29f96470 100644 --- a/radio/src/targets/taranis/CMakeLists.txt +++ b/radio/src/targets/taranis/CMakeLists.txt @@ -147,6 +147,17 @@ elseif(PCB STREQUAL X7) add_definitions(-DRADIO_TPROV2) add_definitions(-DMANUFACTURER_JUMPER) set(ENABLE_SERIAL_PASSTHROUGH ON CACHE BOOL "Enable serial passthrough") + elseif(PCBREV STREQUAL TPROS) + set(DEFAULT_INTERNAL_MODULE CROSSFIRE CACHE STRING "Default internal module") + set(INTERNAL_MODULE_SERIAL YES) + set(MODULE_SIZE_SML YES) + set(FLAVOUR tpros) + set(NAVIGATION_TYPE x7) + set(CPU_TYPE_FULL STM32F407xG) + set(ROTARY_ENCODER YES) + add_definitions(-DRADIO_TPROS) + add_definitions(-DMANUFACTURER_JUMPER) + set(ENABLE_SERIAL_PASSTHROUGH ON CACHE BOOL "Enable serial passthrough") elseif (PCBREV STREQUAL T14) set(DEFAULT_INTERNAL_MODULE CROSSFIRE CACHE STRING "Default internal module") set(INTERNAL_MODULE_SERIAL YES) diff --git a/radio/src/targets/taranis/board.h b/radio/src/targets/taranis/board.h index 423760b7850..7c5523cf384 100644 --- a/radio/src/targets/taranis/board.h +++ b/radio/src/targets/taranis/board.h @@ -418,7 +418,7 @@ void setTopBatteryValue(uint32_t volts); #if defined(RADIO_ZORRO) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_MT12) || defined(RADIO_POCKET) #define VOLTAGE_DROP 45 -#elif defined(RADIO_TPROV2) || defined(RADIO_FAMILY_T20) +#elif defined(RADIO_TPROV2) || defined(RADIO_TPROS) || defined(RADIO_FAMILY_T20) #define VOLTAGE_DROP 60 #else #define VOLTAGE_DROP 20 diff --git a/radio/src/targets/taranis/hal.h b/radio/src/targets/taranis/hal.h index 47cef2d9ad7..5b935072e1b 100644 --- a/radio/src/targets/taranis/hal.h +++ b/radio/src/targets/taranis/hal.h @@ -69,6 +69,15 @@ #define KEYS_GPIO_PIN_LEFT LL_GPIO_PIN_12 // PE.12 #define KEYS_GPIO_REG_RIGHT GPIOE #define KEYS_GPIO_PIN_RIGHT LL_GPIO_PIN_13 // PE.13 +#elif defined(RADIO_TPROS) + #define KEYS_GPIO_REG_PAGE GPIOD + #define KEYS_GPIO_PIN_PAGE LL_GPIO_PIN_3 // PD.03 + #define KEYS_GPIO_REG_MENU GPIOD + #define KEYS_GPIO_PIN_MENU LL_GPIO_PIN_7 // PD.07 + #define KEYS_GPIO_REG_EXIT GPIOD + #define KEYS_GPIO_PIN_EXIT LL_GPIO_PIN_2 // PD.02 + #define KEYS_GPIO_REG_ENTER GPIOA + #define KEYS_GPIO_PIN_ENTER LL_GPIO_PIN_13 // PA.13 #elif defined(RADIO_FAMILY_JUMPER_T12) && !defined(RADIO_TPRO) && !defined(RADIO_TPROV2) #define KEYS_GPIO_REG_EXIT GPIOD #define KEYS_GPIO_PIN_EXIT LL_GPIO_PIN_2 // PD.02 @@ -282,7 +291,7 @@ #define USE_EXTI15_10_IRQ #define EXTI15_10_IRQ_Priority 5 #endif -#elif defined(RADIO_TX12) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_ZORRO) || defined(RADIO_MT12) || defined(RADIO_POCKET) || defined(RADIO_T14) || defined(RADIO_T12MAX) +#elif defined(RADIO_TX12) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_ZORRO) || defined(RADIO_MT12) || defined(RADIO_POCKET) || defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) #define ROTARY_ENCODER_NAVIGATION #define ROTARY_ENCODER_GPIO GPIOE #define ROTARY_ENCODER_GPIO_PIN_A GPIO_Pin_9 // PE.09 @@ -303,7 +312,7 @@ #define USE_EXTI15_10_IRQ #define EXTI15_10_IRQ_Priority 5 #endif - #if defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_ZORRO) || defined(RADIO_MT12) || defined(RADIO_POCKET) || defined(RADIO_T14) + #if defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_ZORRO) || defined(RADIO_MT12) || defined(RADIO_POCKET) || defined(RADIO_T14) || defined(RADIO_TPROS) #define ROTARY_ENCODER_INVERTED #endif #endif @@ -422,6 +431,23 @@ #define TRIMS_GPIO_PIN_T5R LL_GPIO_PIN_15 // PE.15 #define TRIMS_GPIO_REG_T5L GPIOE #define TRIMS_GPIO_PIN_T5L LL_GPIO_PIN_14 // PE.14 +#elif defined(RADIO_TPROS) + #define TRIMS_GPIO_REG_LHL GPIOC + #define TRIMS_GPIO_PIN_LHL LL_GPIO_PIN_3 // PC.03 + #define TRIMS_GPIO_REG_LHR GPIOC + #define TRIMS_GPIO_PIN_LHR LL_GPIO_PIN_2 // PC.02 + #define TRIMS_GPIO_REG_LVD GPIOE + #define TRIMS_GPIO_PIN_LVD LL_GPIO_PIN_4 // PE.04 + #define TRIMS_GPIO_REG_LVU GPIOE + #define TRIMS_GPIO_PIN_LVU LL_GPIO_PIN_3 // PE.03 + #define TRIMS_GPIO_REG_RVD GPIOC + #define TRIMS_GPIO_PIN_RVD LL_GPIO_PIN_1 // PC.01 + #define TRIMS_GPIO_REG_RHL GPIOE + #define TRIMS_GPIO_PIN_RHL LL_GPIO_PIN_6 // PE.06 + #define TRIMS_GPIO_REG_RVU GPIOD + #define TRIMS_GPIO_PIN_RVU LL_GPIO_PIN_15 // PD.15 + #define TRIMS_GPIO_REG_RHR GPIOE + #define TRIMS_GPIO_PIN_RHR LL_GPIO_PIN_5 // PE.05 #elif defined(RADIO_T14) || defined(RADIO_T12MAX) #define TRIMS_GPIO_REG_LHL GPIOE #define TRIMS_GPIO_PIN_LHL LL_GPIO_PIN_3 // PE.03 @@ -569,6 +595,13 @@ #define SWITCHES_GPIO_PIN_A_L LL_GPIO_PIN_13 // PE.13 #define SWITCHES_GPIO_REG_A_H GPIOE #define SWITCHES_GPIO_PIN_A_H LL_GPIO_PIN_7 // PE.07 +#elif defined(RADIO_TPROS) + #define STORAGE_SWITCH_A + #define HARDWARE_SWITCH_A + #define SWITCHES_GPIO_REG_A_H GPIOE + #define SWITCHES_GPIO_PIN_A_H LL_GPIO_PIN_0 // PE.00 + #define SWITCHES_GPIO_REG_A_L GPIOD + #define SWITCHES_GPIO_PIN_A_L LL_GPIO_PIN_11 // PD.11 #elif defined(RADIO_FAMILY_T20) #define STORAGE_SWITCH_A #define HARDWARE_SWITCH_A @@ -626,6 +659,13 @@ #define SWITCHES_GPIO_PIN_B_L LL_GPIO_PIN_1 // PE.01 #define SWITCHES_GPIO_REG_B_H GPIOE #define SWITCHES_GPIO_PIN_B_H LL_GPIO_PIN_2 // PE.02 +#elif defined(RADIO_TPROS) + #define STORAGE_SWITCH_B + #define HARDWARE_SWITCH_B + #define SWITCHES_GPIO_REG_B_L GPIOA + #define SWITCHES_GPIO_PIN_B_L LL_GPIO_PIN_5 // PA.05 + #define SWITCHES_GPIO_REG_B_H GPIOE + #define SWITCHES_GPIO_PIN_B_H LL_GPIO_PIN_15 // PE.15 #elif defined(RADIO_FAMILY_T20) #define STORAGE_SWITCH_B #define HARDWARE_SWITCH_B @@ -740,6 +780,11 @@ #define HARDWARE_SWITCH_C #define SWITCHES_GPIO_REG_C GPIOE #define SWITCHES_GPIO_PIN_C LL_GPIO_PIN_14 // PE.14 +#elif defined(RADIO_TPROS) + #define STORAGE_SWITCH_C + #define HARDWARE_SWITCH_C + #define SWITCHES_GPIO_REG_C GPIOE + #define SWITCHES_GPIO_PIN_C LL_GPIO_PIN_8 // PE.08 #elif defined(RADIO_FAMILY_T20) #define STORAGE_SWITCH_C #define HARDWARE_SWITCH_C @@ -814,6 +859,11 @@ #define HARDWARE_SWITCH_D #define SWITCHES_GPIO_REG_D GPIOD #define SWITCHES_GPIO_PIN_D LL_GPIO_PIN_14 // PD.14 +#elif defined(RADIO_TPROS) + #define STORAGE_SWITCH_D + #define HARDWARE_SWITCH_D + #define SWITCHES_GPIO_REG_D GPIOC + #define SWITCHES_GPIO_PIN_D LL_GPIO_PIN_13// PC.13 #elif defined(RADIO_T14) || defined(RADIO_T12MAX) #define STORAGE_SWITCH_D #define HARDWARE_SWITCH_D @@ -905,6 +955,11 @@ #define SWITCHES_GPIO_PIN_E_H LL_GPIO_PIN_14 // PE.14 #define SWITCHES_GPIO_REG_E_L GPIOE #define SWITCHES_GPIO_PIN_E_L LL_GPIO_PIN_7 // PE.07 +#elif defined(RADIO_TPROS) + #define STORAGE_SWITCH_E + #define HARDWARE_SWITCH_E + #define SWITCHES_GPIO_REG_E GPIOC + #define SWITCHES_GPIO_PIN_E LL_GPIO_PIN_5 // PC.05 #elif defined(RADIO_TPROV2) #define STORAGE_SWITCH_E #define HARDWARE_SWITCH_E @@ -977,6 +1032,11 @@ #define SWITCHES_GPIO_PIN_F_L LL_GPIO_PIN_14 // PD.14 #define SWITCHES_GPIO_REG_F_H GPIOE #define SWITCHES_GPIO_PIN_F_H LL_GPIO_PIN_1 // PE.01 +#elif defined(RADIO_TPROS) + #define STORAGE_SWITCH_F + #define HARDWARE_SWITCH_F + #define SWITCHES_GPIO_REG_F GPIOE + #define SWITCHES_GPIO_PIN_F LL_GPIO_PIN_7 // PE.07 #elif defined(RADIO_TPROV2) #define STORAGE_SWITCH_F #define HARDWARE_SWITCH_F @@ -999,7 +1059,7 @@ #define SWITCHES_GPIO_PIN_F LL_GPIO_PIN_5 // PB.05 #elif defined(RADIO_MT12) // ADC based switch/pot -#elif defined(RADIO_T8) || defined(RADIO_TLITE) || defined(RADIO_TPROV2) || defined(RADIO_COMMANDO8) || defined(RADIO_LR3PRO) || defined(RADIO_POCKET) +#elif defined(RADIO_T8) || defined(RADIO_TLITE) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) || defined(RADIO_COMMANDO8) || defined(RADIO_LR3PRO) || defined(RADIO_POCKET) // no SWF #define STORAGE_SWITCH_F #elif defined(RADIO_T12) @@ -1053,7 +1113,7 @@ #define HARDWARE_SWITCH_G #define SWITCHES_GPIO_REG_G GPIOD #define SWITCHES_GPIO_PIN_G LL_GPIO_PIN_15 // PD.15 -#elif defined(PCBX7) || defined(PCBXLITE) || defined(PCBX9LITE) || defined(RADIO_T8) || defined(RADIO_COMMANDO8) || defined(RADIO_MT12) || defined(RADIO_POCKET) || defined(RADIO_T14) || defined(RADIO_T12MAX) +#elif defined(PCBX7) || defined(PCBXLITE) || defined(PCBX9LITE) || defined(RADIO_T8) || defined(RADIO_COMMANDO8) || defined(RADIO_MT12) || defined(RADIO_POCKET) || defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) // no SWG #else #define STORAGE_SWITCH_G @@ -1100,7 +1160,7 @@ #define HARDWARE_SWITCH_H #define SWITCHES_GPIO_REG_H GPIOF #define SWITCHES_GPIO_PIN_H LL_GPIO_PIN_0 // PF.00 -#elif defined(RADIO_TLITE) || defined(RADIO_TPROV2) || defined(RADIO_LR3PRO) +#elif defined(RADIO_TLITE) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) || defined(RADIO_LR3PRO) // no SWH #define STORAGE_SWITCH_H #elif defined(PCBX7) @@ -1151,7 +1211,7 @@ #define STORAGE_SWITCH_I // no SWJ #define STORAGE_SWITCH_J -#elif defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_T14) || defined(RADIO_T12MAX) +#elif defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) // No I/J #elif defined(RADIO_TPROV2) // SW1 @@ -1539,6 +1599,27 @@ #define ADC_CHANNEL_POT2 LL_ADC_CHANNEL_9 // ADC12_IN9 #define ADC_CHANNEL_BATT LL_ADC_CHANNEL_10 #define ADC_VREF_PREC2 330 +#elif defined(RADIO_TPROS) + #define HARDWARE_POT1 + #define HARDWARE_POT2 + #define ADC_GPIO_PIN_STICK_LV LL_GPIO_PIN_1 // PA.01 + #define ADC_GPIO_PIN_STICK_LH LL_GPIO_PIN_0 // PA.00 + #define ADC_GPIO_PIN_STICK_RV LL_GPIO_PIN_3 // PA.03 + #define ADC_GPIO_PIN_STICK_RH LL_GPIO_PIN_2 // PA.02 + #define ADC_CHANNEL_STICK_LV LL_ADC_CHANNEL_1 // ADC1_IN1 + #define ADC_CHANNEL_STICK_LH LL_ADC_CHANNEL_0 // ADC1_IN0 + #define ADC_CHANNEL_STICK_RV LL_ADC_CHANNEL_3 // ADC1_IN3 + #define ADC_CHANNEL_STICK_RH LL_ADC_CHANNEL_2 // ADC1_IN2 + #define ADC_GPIO_PIN_POT1 LL_GPIO_PIN_0 // PB.00 + #define ADC_GPIO_PIN_POT2 LL_GPIO_PIN_1 // PB.01 + #define ADC_GPIO_PIN_BATT LL_GPIO_PIN_0 // PC.00 + #define ADC_GPIOA_PINS (ADC_GPIO_PIN_STICK_RV | ADC_GPIO_PIN_STICK_RH | ADC_GPIO_PIN_STICK_LH | ADC_GPIO_PIN_STICK_LV) + #define ADC_GPIOB_PINS (ADC_GPIO_PIN_POT1 | ADC_GPIO_PIN_POT2) + #define ADC_GPIOC_PINS ADC_GPIO_PIN_BATT + #define ADC_CHANNEL_POT1 LL_ADC_CHANNEL_8 // ADC12_IN8 + #define ADC_CHANNEL_POT2 LL_ADC_CHANNEL_9 // ADC12_IN9 + #define ADC_CHANNEL_BATT LL_ADC_CHANNEL_10 + #define ADC_VREF_PREC2 300 #elif defined(RADIO_T12MAX) #define HARDWARE_POT1 #define HARDWARE_POT2 @@ -1734,9 +1815,9 @@ #define ADC_DIRECTION {-1, 1, 1, -1, -1, 1, 1, 1} #elif defined(RADIO_POCKET) #define ADC_DIRECTION {-1, 1, 1, -1, -1} -#elif defined(RADIO_TPRO) || defined(RADIO_TPROV2) +#elif defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) #define ADC_DIRECTION {1,-1,1,-1, 1,1, 1, 1} -#elif defined(RADIO_T14) +#elif defined(RADIO_T14) || defined(RADIO_TPROS) #define ADC_DIRECTION {1, -1, 1, -1, 1, 1, 1} #elif defined(RADIO_T12MAX) #define ADC_DIRECTION {-1, 1, -1, 1, 1, 1, 1} @@ -1844,7 +1925,7 @@ #define LED_RED_GPIO_PIN GPIO_Pin_13 // PE.13 #define LED_BLUE_GPIO GPIOA #define LED_BLUE_GPIO_PIN GPIO_Pin_7 // PA.07 -#elif defined(RADIO_T14) || defined(RADIO_T12MAX) +#elif defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) #define STATUS_LEDS #define GPIO_LED_GPIO_ON GPIO_SetBits #define GPIO_LED_GPIO_OFF GPIO_ResetBits @@ -1854,7 +1935,7 @@ #define LED_BLUE_GPIO_PIN GPIO_Pin_13 // PE.13 #define LED_GREEN_GPIO GPIOA #define LED_GREEN_GPIO_PIN GPIO_Pin_7 // PA.07 -#elif defined(RADIO_TLITE) || defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_TX12) +#elif defined(RADIO_TLITE) || defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) || defined(RADIO_TX12) #define STATUS_LEDS #define GPIO_LED_GPIO_ON GPIO_SetBits #define GPIO_LED_GPIO_OFF GPIO_ResetBits @@ -2029,7 +2110,7 @@ #define INTMODULE_DMA_STREAM_IRQHandler DMA2_Stream7_IRQHandler #define INTMODULE_DMA_FLAG_TC DMA_IT_TCIF7 #define INTMODULE_DMA_CHANNEL DMA_Channel_4 -#elif defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_MT12) || defined(RADIO_T20V2) || defined(RADIO_T14) || defined(RADIO_T12MAX) +#elif defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_MT12) || defined(RADIO_T20V2) || defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) #define INTMODULE_RCC_AHB1Periph (RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOB | RCC_AHB1Periph_DMA2) #define INTMODULE_PWR_GPIO GPIOC #if defined(RADIO_T20V2) @@ -2039,7 +2120,7 @@ #define INTMODULE_BOOTCMD_DEFAULT 0 // RESET #else #define INTMODULE_PWR_GPIO_PIN GPIO_Pin_4 // PC.04 -#if defined(RADIO_T14) || defined(RADIO_T12MAX) +#if defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) #define INTMODULE_BOOTCMD_GPIO GPIOE #define INTMODULE_BOOTCMD_GPIO_PIN GPIO_Pin_14 // PE.14 #else @@ -2085,7 +2166,7 @@ #define INTMODULE_TIMER_DMA_STREAM_IRQn DMA2_Stream5_IRQn #define INTMODULE_TIMER_DMA_IRQHandler DMA2_Stream5_IRQHandler #define INTMODULE_TIMER_FREQ (PERI2_FREQUENCY * TIMER_MULT_APB2) -#elif (defined(RADIO_FAMILY_JUMPER_T12) && defined(HARDWARE_INTERNAL_MODULE)) || defined(RADIO_TX12) || defined(RADIO_T8) || defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_T20) +#elif (defined(RADIO_FAMILY_JUMPER_T12) && defined(HARDWARE_INTERNAL_MODULE)) || defined(RADIO_TX12) || defined(RADIO_T8) || defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) || defined(RADIO_T20) #define INTMODULE_RCC_AHB1Periph (RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOB | RCC_AHB1Periph_GPIOF | RCC_AHB1Periph_DMA1) #define INTMODULE_PWR_GPIO GPIOC #define INTMODULE_PWR_GPIO_PIN GPIO_Pin_6 // PC.06 @@ -2108,7 +2189,7 @@ #define INTMODULE_BOOTCMD_GPIO_PIN GPIO_Pin_5 // PA.05 #define INTMODULE_BOOTCMD_DEFAULT 0 // RESET #define INIT_INTMODULE_BOOTCMD_PIN() GPIO_ResetBits(INTMODULE_BOOTCMD_GPIO, INTMODULE_BOOTCMD_GPIO_PIN); - #elif defined(RADIO_TPRO) || defined(RADIO_TPROV2) + #elif defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) #define INTMODULE_BOOTCMD_GPIO GPIOF #define INTMODULE_BOOTCMD_GPIO_PIN GPIO_Pin_11 // PF.11 #define INTMODULE_BOOTCMD_DEFAULT 0 // RESET @@ -2166,7 +2247,7 @@ // External Module #if defined(PCBXLITE) || defined(PCBX9LITE) || defined(RADIO_X9DP2019) || defined(PCBX7ACCESS) || defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_MT12) || defined(RADIO_T14) || defined(RADIO_T12MAX) - #if defined(RADIO_X9DP2019) || defined(RADIO_X7ACCESS) || defined(RADIO_ZORRO)|| defined(RADIO_POCKET) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_MT12)|| defined(RADIO_T14) || defined(RADIO_T12MAX) + #if defined(RADIO_X9DP2019) || defined(RADIO_X7ACCESS) || defined(RADIO_ZORRO)|| defined(RADIO_POCKET) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_MT12)|| defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) #define EXTMODULE_RCC_AHB1Periph (RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOD | RCC_AHB1Periph_DMA2) #define EXTMODULE_PWR_GPIO GPIOD #define EXTMODULE_PWR_GPIO_PIN GPIO_Pin_8 // PD.08 @@ -2594,7 +2675,7 @@ #define BACKLIGHT_CCMR1 TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_2 // Channel 1, PWM #define BACKLIGHT_CCER TIM_CCER_CC1E #define BACKLIGHT_COUNTER_REGISTER BACKLIGHT_TIMER->CCR1 -#elif defined(RADIO_T8) || defined(RADIO_TPROV2) || defined(RADIO_FAMILY_T20) || defined(RADIO_T14) +#elif defined(RADIO_T8) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) || defined(RADIO_FAMILY_T20) || defined(RADIO_T14) || defined(RADIO_TPROS) #define BACKLIGHT_RCC_AHB1Periph 0 #define BACKLIGHT_RCC_APB1Periph 0 #define BACKLIGHT_RCC_APB2Periph 0 @@ -2638,10 +2719,10 @@ #define KEYS_BACKLIGHT_RCC_AHB1Periph 0 // LCD driver -#if defined(RADIO_TX12) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_FAMILY_JUMPER_T12) || defined(RADIO_T8) || defined(RADIO_COMMANDO8) || defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_FAMILY_T20) || defined(RADIO_MT12) || defined(RADIO_T12MAX) +#if defined(RADIO_TX12) || defined(RADIO_TX12MK2) || defined(RADIO_BOXER) || defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_FAMILY_JUMPER_T12) || defined(RADIO_T8) || defined(RADIO_COMMANDO8) || defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) || defined(RADIO_FAMILY_T20) || defined(RADIO_MT12) || defined(RADIO_T12MAX) #define LCD_VERTICAL_INVERT #endif -#if defined(RADIO_LR3PRO) || defined(RADIO_TPROV2) || defined(RADIO_FAMILY_T20) || defined(RADIO_T14) +#if defined(RADIO_LR3PRO) || defined(RADIO_TPROV2) || defined(RADIO_TPROS) || defined(RADIO_FAMILY_T20) || defined(RADIO_T14) || defined(RADIO_TPROS) #define LCD_HORIZONTAL_INVERT #define OLED_SCREEN #endif @@ -2798,7 +2879,7 @@ #endif // SD - SPI2 -#if defined(RADIO_FAMILY_T20) || defined(RADIO_T14) || defined(RADIO_T12MAX) +#if defined(RADIO_FAMILY_T20) || defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) // Using chip, so no detect #else #define SD_PRESENT_GPIO GPIOD @@ -2872,7 +2953,7 @@ #endif // Haptic -#if defined(PCBXLITE) || defined(PCBX9LITE) || defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_TX12MK2)|| defined(RADIO_BOXER) || defined(RADIO_MT12) || defined(RADIO_T20V2) || defined(RADIO_T14) || defined(RADIO_T12MAX) +#if defined(PCBXLITE) || defined(PCBX9LITE) || defined(RADIO_ZORRO) || defined(RADIO_POCKET) || defined(RADIO_TX12MK2)|| defined(RADIO_BOXER) || defined(RADIO_MT12) || defined(RADIO_T20V2) || defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS) #define HAPTIC_PWM #define HAPTIC_RCC_AHB1Periph RCC_AHB1Periph_GPIOB #define HAPTIC_RCC_APB1Periph RCC_APB1Periph_TIM2 diff --git a/radio/src/targets/taranis/usb_descriptor.h b/radio/src/targets/taranis/usb_descriptor.h index d55e07910e5..7fa24e07d1d 100644 --- a/radio/src/targets/taranis/usb_descriptor.h +++ b/radio/src/targets/taranis/usb_descriptor.h @@ -66,6 +66,10 @@ #define USB_NAME "Jumper T12 MAX" #define USB_MANUFACTURER 'J', 'U', 'M', 'P', 'E', 'R', ' ', ' ' /* 8 bytes */ #define USB_PRODUCT 'T', '1', '2', ' ', 'M', 'A', 'X', ' ' /* 8 Bytes */ +#elif defined(RADIO_TPROS) + #define USB_NAME "Jumper T-Pro S" + #define USB_MANUFACTURER 'J', 'U', 'M', 'P', 'E', 'R', ' ', ' ' /* 8 bytes */ + #define USB_PRODUCT 'T', '-', 'P', 'r', 'o', ' ', 'S', ' ' /* 8 Bytes */ #elif defined(RADIO_T14) #define USB_NAME "Jumper T14" #define USB_MANUFACTURER 'J', 'U', 'M', 'P', 'E', 'R', ' ', ' ' /* 8 bytes */ diff --git a/radio/util/hw_defs/legacy_names.py b/radio/util/hw_defs/legacy_names.py index 32712cf4f77..5d47b4f478b 100644 --- a/radio/util/hw_defs/legacy_names.py +++ b/radio/util/hw_defs/legacy_names.py @@ -379,7 +379,7 @@ } }, { - "targets": {"t14", "t12max"}, + "targets": {"t14", "t12max","tpros"}, "inputs": { "LH": { "yaml": "Rud" @@ -415,7 +415,7 @@ "lr3pro", "nv14", "el18", "t8", "t12", - "tlite", "tlitef4", "tpro", "tprov2", + "tlite", "tlitef4", "tpro", "tprov2","tpros", "tx12", "tx12mk2", "x7", "x7access", "xlite", "xlites", diff --git a/radio/util/hw_defs/pot_config.py b/radio/util/hw_defs/pot_config.py index f25bfb5b527..084e7b2cbe6 100644 --- a/radio/util/hw_defs/pot_config.py +++ b/radio/util/hw_defs/pot_config.py @@ -46,6 +46,10 @@ "P1": {"default": "POT_CENTER"}, "P2": {"default": "POT_CENTER"} }, + "tpros": { + "P1": {"default": "POT_CENTER"}, + "P2": {"default": "POT_CENTER"} + }, "t20": { "P1": {"default": "POT_CENTER"}, "P2": {"default": "POT_CENTER"}, diff --git a/radio/util/hw_defs/switch_config.py b/radio/util/hw_defs/switch_config.py index f5635bcf7ec..3f91f36fe06 100644 --- a/radio/util/hw_defs/switch_config.py +++ b/radio/util/hw_defs/switch_config.py @@ -181,6 +181,16 @@ "SF": {"default": "2POS", "display": [1, 2]}, "SH": {"default": "NONE", "display": [1, 3]}, }, + "tpros": { + # left side + "SA": {"default": "3POS", "display": [0, 0]}, + "SC": {"default": "TOGGLE", "display": [0, 1]}, + "SE": {"default": "2POS", "display": [0, 2]}, + # right side + "SB": {"default": "3POS", "display": [1, 0]}, + "SD": {"default": "TOGGLE", "display": [1, 1]}, + "SF": {"default": "2POS", "display": [1, 2]}, + }, "t20": { # left side "SA": {"default": "2POS", "display": [0, 0]}, diff --git a/tools/build-companion.sh b/tools/build-companion.sh index dfea4c3b74d..54299572cf0 100755 --- a/tools/build-companion.sh +++ b/tools/build-companion.sh @@ -67,7 +67,7 @@ declare -a simulator_plugins=(x9lite x9lites x7 x7-access t8 t12 t12max tx12 tx12mk2 zorro commando8 boxer pocket - tlite tpro tprov2 lr3pro t14 + tlite tpro tprov2 tpros lr3pro t14 x9d x9dp x9dp2019 x9e xlite xlites nv14 el18 pl18 pl18ev @@ -128,6 +128,9 @@ do tprov2) BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=TPROV2" ;; + tpros) + BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=TPROS" + ;; t20) BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=T20" ;; diff --git a/tools/build-gh.sh b/tools/build-gh.sh index 5be3c4e883c..4c70606cfad 100755 --- a/tools/build-gh.sh +++ b/tools/build-gh.sh @@ -140,6 +140,9 @@ do tprov2) BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=TPROV2" ;; + tpros) + BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=TPROS" + ;; t20) BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=T20" ;; diff --git a/tools/generate-hw-defs.sh b/tools/generate-hw-defs.sh index 1d21f9ba940..ae2c2d4b69e 100755 --- a/tools/generate-hw-defs.sh +++ b/tools/generate-hw-defs.sh @@ -6,7 +6,7 @@ set -e : "${SRCDIR:=$(dirname "$(pwd)/$0")/..}" -: ${FLAVOR:="nv14;t12;t12max;t15;t16;t18;t8;zorro;pocket;commando8;tlite;tpro;tprov2;t20;t20v2;t14;lr3pro;mt12;tx12;tx12mk2;boxer;tx16s;x10;x10-access;x12s;x7;x7-access;x9d;x9dp;x9dp2019;x9e;x9lite;x9lites;xlite;xlites"} +: ${FLAVOR:="nv14;t12;t12max;t15;t16;t18;t8;zorro;pocket;commando8;tlite;tpro;tprov2;tpros;t20;t20v2;t14;lr3pro;mt12;tx12;tx12mk2;boxer;tx16s;x10;x10-access;x12s;x7;x7-access;x9d;x9dp;x9dp2019;x9e;x9lite;x9lites;xlite;xlites"} : ${COMMON_OPTIONS:="-DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_RULE_MESSAGES=OFF -Wno-dev -DCMAKE_MESSAGE_LOG_LEVEL=WARNING"} # wipe build directory clean @@ -69,6 +69,9 @@ do tprov2) BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=TPROV2" ;; + tpros) + BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=TPROS" + ;; t20) BUILD_OPTIONS+="-DPCB=X7 -DPCBREV=T20" ;;