feat: support for Jumper T-Pro S (#5326)
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -212,6 +212,14 @@
|
||||
<file>images/simulator/JumperTPRO/left.png</file>
|
||||
<file>images/simulator/JumperTPRO/right.png</file>
|
||||
<file>images/simulator/JumperTPRO/top.png</file>
|
||||
<file>images/simulator/JumperTPROS/bottom.png</file>
|
||||
<file>images/simulator/JumperTPROS/left.png</file>
|
||||
<file>images/simulator/JumperTPROS/right.png</file>
|
||||
<file>images/simulator/JumperTPROS/right-ent.png</file>
|
||||
<file>images/simulator/JumperTPROS/top.png</file>
|
||||
<file>images/simulator/JumperTPROS/exit.png</file>
|
||||
<file>images/simulator/JumperTPROS/menu.png</file>
|
||||
<file>images/simulator/JumperTPROS/page.png</file>
|
||||
<file>images/simulator/TX12/left.png</file>
|
||||
<file>images/simulator/TX12/left-pageup.png</file>
|
||||
<file>images/simulator/TX12/left-pagedn.png</file>
|
||||
|
||||
@@ -191,6 +191,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:
|
||||
@@ -246,6 +247,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:
|
||||
@@ -536,6 +538,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_T15:
|
||||
case BOARD_JUMPER_T20:
|
||||
case BOARD_JUMPER_T20V2:
|
||||
case BOARD_JUMPER_TPROS:
|
||||
case BOARD_FATFISH_F16:
|
||||
return (int)MODULE_TYPE_CROSSFIRE;
|
||||
|
||||
|
||||
@@ -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,
|
||||
@@ -424,7 +425,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)
|
||||
@@ -437,6 +438,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;
|
||||
@@ -523,6 +529,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 ||
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 10 KiB |
@@ -43,6 +43,7 @@ set(${PROJECT_NAME}_SRCS
|
||||
simulateduiwidgetJumperT20.cpp
|
||||
simulateduiwidgetJumperTLITE.cpp
|
||||
simulateduiwidgetJumperTPRO.cpp
|
||||
simulateduiwidgetJumperTPROS.cpp
|
||||
simulateduiwidgetLR3PRO.cpp
|
||||
simulateduiwidgetNV14.cpp
|
||||
simulateduiwidgetPL18.cpp
|
||||
|
||||
@@ -144,6 +144,7 @@ namespace Ui {
|
||||
class SimulatedUIWidgetJumperT12;
|
||||
class SimulatedUIWidgetJumperTLITE;
|
||||
class SimulatedUIWidgetJumperTPRO;
|
||||
class SimulatedUIWidgetJumperTPROS;
|
||||
class SimulatedUIWidgetJumperT12max;
|
||||
class SimulatedUIWidgetJumperT14;
|
||||
class SimulatedUIWidgetJumperT15;
|
||||
@@ -334,6 +335,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
|
||||
|
||||
@@ -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<int>() << 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<int>() << 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<int>() << 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<int>() << 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;
|
||||
}
|
||||
@@ -0,0 +1,211 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>SimulatedUIWidgetJumperTPROS</class>
|
||||
<widget class="QWidget" name="SimulatedUIWidgetJumperTPROS">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>716</width>
|
||||
<height>308</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>716</width>
|
||||
<height>308</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>716</width>
|
||||
<height>308</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string notr="true">Jumper TPro S Simulator</string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">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));</string>
|
||||
</property>
|
||||
<widget class="ButtonsWidget" name="leftbuttons" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>230</width>
|
||||
<height>308</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>230</width>
|
||||
<height>308</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>230</width>
|
||||
<height>308</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background:url(:/images/simulator/JumperTPROS/left.png);</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="LcdWidget" name="lcd" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>230</x>
|
||||
<y>90</y>
|
||||
<width>256</width>
|
||||
<height>128</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>256</width>
|
||||
<height>128</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>256</width>
|
||||
<height>128</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background-color: rgb(215, 243, 255);</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="ButtonsWidget" name="rightbuttons" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>485</x>
|
||||
<y>0</y>
|
||||
<width>230</width>
|
||||
<height>308</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>230</width>
|
||||
<height>308</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>230</width>
|
||||
<height>308</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background:url(:/images/simulator/JumperTPROS/right.png)</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="top" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>230</x>
|
||||
<y>0</y>
|
||||
<width>256</width>
|
||||
<height>90</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>256</width>
|
||||
<height>90</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>256</width>
|
||||
<height>90</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background:url(:/images/simulator/JumperTPROS/top.png)</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QWidget" name="bottom" native="true">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>230</x>
|
||||
<y>218</y>
|
||||
<width>256</width>
|
||||
<height>90</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>256</width>
|
||||
<height>90</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>256</width>
|
||||
<height>90</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">background:url(:/images/simulator/JumperTPROS/bottom.png)</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
<class>LcdWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
<header>lcdwidget.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>ButtonsWidget</class>
|
||||
<extends>QWidget</extends>
|
||||
<header>buttonswidget.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources>
|
||||
<include location="../companion.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
||||
@@ -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;
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
["Jumper T-Lite", "tlite-"],
|
||||
["Jumper T-Pro", "tpro-"],
|
||||
["Jumper T-Pro V2", "tprov2-"],
|
||||
["Jumper T-Pro S", "tpros-"],
|
||||
["RadioMaster Boxer", "boxer-"],
|
||||
["RadioMaster MT12","mt12-"],
|
||||
["RadioMaster Pocket", "pocket-"],
|
||||
|
||||
@@ -92,6 +92,9 @@ static inline void check_struct()
|
||||
|
||||
#if defined(RADIO_TPRO) || defined(RADIO_TPROV2)
|
||||
CHKSIZE(ModelData, 6354);
|
||||
#elif defined(RADIO_T14) || defined(RADIO_T12MAX)
|
||||
CHKSIZE(RadioData, 869);
|
||||
CHKSIZE(ModelData, 6329);
|
||||
#elif defined(RADIO_FAMILY_T20)
|
||||
CHKSIZE(ModelData, 6390);
|
||||
#elif defined(PCBX9E)
|
||||
|
||||
@@ -440,7 +440,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);
|
||||
|
||||
@@ -143,6 +143,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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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_PAGEDN GPIOD
|
||||
#define KEYS_GPIO_PIN_PAGEDN 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 LL_GPIO_PIN_9 // PE.9
|
||||
@@ -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
|
||||
@@ -419,6 +428,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
|
||||
@@ -566,6 +592,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
|
||||
@@ -623,6 +656,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
|
||||
@@ -737,6 +777,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
|
||||
@@ -811,6 +856,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
|
||||
@@ -902,6 +952,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
|
||||
@@ -974,6 +1029,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
|
||||
@@ -996,7 +1056,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)
|
||||
@@ -1050,7 +1110,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
|
||||
@@ -1097,7 +1157,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)
|
||||
@@ -1148,7 +1208,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
|
||||
@@ -1536,6 +1596,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
|
||||
@@ -1731,9 +1812,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}
|
||||
@@ -1813,14 +1894,14 @@
|
||||
#define LED_GREEN_GPIO GPIO_PIN(GPIOE, 2) // PE.02
|
||||
#define LED_RED_GPIO GPIO_PIN(GPIOE, 13) // PE.13
|
||||
#define LED_BLUE_GPIO GPIO_PIN(GPIOA, 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_set
|
||||
#define GPIO_LED_GPIO_OFF gpio_clear
|
||||
#define LED_RED_GPIO GPIO_PIN(GPIOE, 2) // PE.02
|
||||
#define LED_BLUE_GPIO GPIO_PIN(GPIOE, 13) // PE.13
|
||||
#define LED_GREEN_GPIO GPIO_PIN(GPIOA, 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_set
|
||||
#define GPIO_LED_GPIO_OFF gpio_clear
|
||||
@@ -1961,12 +2042,12 @@
|
||||
#define INTMODULE_DMA_STREAM_IRQ DMA2_Stream7_IRQn
|
||||
#define INTMODULE_DMA_STREAM_IRQHandler DMA2_Stream7_IRQHandler
|
||||
#define INTMODULE_DMA_CHANNEL LL_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)
|
||||
#if defined(RADIO_T20V2)
|
||||
#define INTMODULE_BOOTCMD_GPIO GPIO_PIN(GPIOE, 4) // PE.04
|
||||
#define INTMODULE_PWR_GPIO GPIO_PIN(GPIOC, 6) // PC.06
|
||||
#else
|
||||
#if defined(RADIO_T14) || defined(RADIO_T12MAX)
|
||||
#if defined(RADIO_T14) || defined(RADIO_T12MAX) || defined(RADIO_TPROS)
|
||||
#define INTMODULE_BOOTCMD_GPIO GPIO_PIN(GPIOE, 14) // PE.14
|
||||
#else
|
||||
#define INTMODULE_BOOTCMD_GPIO GPIO_PIN(GPIOB, 1) // PB.01
|
||||
@@ -2001,7 +2082,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_PWR_GPIO GPIO_PIN(GPIOC, 6) // PC.06
|
||||
#define INTMODULE_TX_GPIO GPIO_PIN(GPIOB, 10) // PB.10
|
||||
#define INTMODULE_RX_GPIO GPIO_PIN(GPIOB, 11) // PB.11
|
||||
@@ -2017,7 +2098,7 @@
|
||||
#if defined(RADIO_TLITE)
|
||||
#define INTMODULE_BOOTCMD_GPIO GPIO_PIN(GPIOA, 5) // PA.05
|
||||
#define INTMODULE_BOOTCMD_DEFAULT 0 // RESET
|
||||
#elif defined(RADIO_TPRO) || defined(RADIO_TPROV2)
|
||||
#elif defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_TPROS)
|
||||
#define INTMODULE_BOOTCMD_GPIO GPIO_PIN(GPIOF, 11) // PF.11
|
||||
#define INTMODULE_BOOTCMD_DEFAULT 0 // RESET
|
||||
#elif defined(RADIO_FAMILY_T20)
|
||||
@@ -2055,7 +2136,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_PWR_GPIO GPIO_PIN(GPIOD, 8) // PD.08
|
||||
#elif defined(PCBX9LITE)
|
||||
#define EXTMODULE_PWR_GPIO GPIO_PIN(GPIOA, 8) // PA.08
|
||||
@@ -2373,7 +2454,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)
|
||||
// No backlight: OLED display
|
||||
#elif defined(RADIO_COMMANDO8)
|
||||
#define BACKLIGHT_TIMER_FREQ (PERI1_FREQUENCY * TIMER_MULT_APB1)
|
||||
@@ -2399,10 +2480,10 @@
|
||||
#endif
|
||||
|
||||
// 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
|
||||
@@ -2527,7 +2608,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
|
||||
@@ -2588,7 +2669,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_GPIO GPIO_PIN(GPIOB, 3) // PB.03
|
||||
#define HAPTIC_GPIO_AF GPIO_AF1
|
||||
|
||||
@@ -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 */
|
||||
|
||||
@@ -387,7 +387,7 @@ LEGACY_NAMES = [
|
||||
}
|
||||
},
|
||||
{
|
||||
"targets": {"t14", "t12max"},
|
||||
"targets": {"t14", "t12max", "tpros"},
|
||||
"inputs": {
|
||||
"LH": {
|
||||
"yaml": "Rud",
|
||||
@@ -431,7 +431,7 @@ LEGACY_NAMES = [
|
||||
"lr3pro",
|
||||
"nv14", "el18",
|
||||
"t8", "t12",
|
||||
"tlite", "tlitef4", "tpro", "tprov2",
|
||||
"tlite", "tlitef4", "tpro", "tprov2", "tpros",
|
||||
"tx12", "tx12mk2",
|
||||
"x7", "x7access",
|
||||
"xlite", "xlites",
|
||||
|
||||
@@ -46,6 +46,10 @@ POT_CONFIG = {
|
||||
"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"},
|
||||
|
||||
@@ -181,6 +181,16 @@ SWITCH_CONFIG = {
|
||||
"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]},
|
||||
|
||||
@@ -67,7 +67,7 @@ declare -a simulator_plugins=(x9lite x9lites
|
||||
x7 x7access
|
||||
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"
|
||||
;;
|
||||
|
||||
@@ -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"
|
||||
;;
|
||||
|
||||
@@ -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;x10express;x12s;x7;x7access;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;x10express;x12s;x7;x7access;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"
|
||||
;;
|
||||
|
||||