feat(TX16S): User options for AUX1/AUX2 serial port power (ON/OFF)
User controllable serial port power for TX16S
This commit is contained in:
@@ -76,7 +76,7 @@ const YamlLookupTable serialPortLut = {
|
||||
const YamlLookupTable uartModeLut = {
|
||||
{ GeneralSettings::AUX_SERIAL_OFF, "NONE" },
|
||||
{ GeneralSettings::AUX_SERIAL_TELE_MIRROR, "TELEMETRY_MIRROR" },
|
||||
{ GeneralSettings::AUX_SERIAL_TELE_IN, "TELEMETRY" },
|
||||
{ GeneralSettings::AUX_SERIAL_TELE_IN, "TELEMETRY_IN" },
|
||||
{ GeneralSettings::AUX_SERIAL_SBUS_TRAINER, "SBUS_TRAINER" },
|
||||
{ GeneralSettings::AUX_SERIAL_LUA, "LUA" },
|
||||
{ GeneralSettings::AUX_SERIAL_CLI, "CLI" },
|
||||
@@ -214,9 +214,10 @@ Node convert<GeneralSettings>::encode(const GeneralSettings& rhs)
|
||||
|
||||
Node serialPort;
|
||||
for (int i = 0; i < GeneralSettings::SP_COUNT; i++) {
|
||||
if (rhs.serialPort[i] != UART_MODE_NONE) {
|
||||
if (rhs.serialPort[i] != GeneralSettings::AUX_SERIAL_OFF || rhs.serialPower[i]) {
|
||||
Node mode = uartModeLut << rhs.serialPort[i];
|
||||
serialPort[LookupValue(serialPortLut, i)]["mode"] = mode;
|
||||
serialPort[LookupValue(serialPortLut, i)]["power"] = (int)rhs.serialPower[i];
|
||||
}
|
||||
}
|
||||
if (serialPort && serialPort.IsMap())
|
||||
@@ -404,11 +405,13 @@ bool convert<GeneralSettings>::decode(const Node& node, GeneralSettings& rhs)
|
||||
node["varioRepeat"] >> rhs.varioRepeat;
|
||||
node["backgroundVolume"] >> ioffset_int(rhs.backgroundVolume, 2);
|
||||
|
||||
// depreciated v2.7 replaced by serialPort
|
||||
if (node["auxSerialMode"]) {
|
||||
node["auxSerialMode"] >> oldUartModeLut >>
|
||||
rhs.serialPort[GeneralSettings::SP_AUX1];
|
||||
}
|
||||
|
||||
// depreciated v2.7 replaced by serialPort
|
||||
if (node["aux2SerialMode"]) {
|
||||
node["aux2SerialMode"] >> oldUartModeLut >>
|
||||
rhs.serialPort[GeneralSettings::SP_AUX2];
|
||||
@@ -421,13 +424,23 @@ bool convert<GeneralSettings>::decode(const Node& node, GeneralSettings& rhs)
|
||||
YAML::Node port_nr = port.first >> serialPortLut;
|
||||
if (port_nr) {
|
||||
int p = port_nr.as<int>();
|
||||
if (p >= 0 && p < GeneralSettings::SP_COUNT && port.second.IsMap())
|
||||
if (p >= 0 && p < GeneralSettings::SP_COUNT && port.second.IsMap()) {
|
||||
port.second["mode"] >> uartModeLut >> rhs.serialPort[p];
|
||||
// introduced v2.8
|
||||
Node port_pwr = port.second["power"];
|
||||
if (port_pwr && port_pwr.IsScalar()) {
|
||||
try {
|
||||
int pwr = port_pwr.as<int>();
|
||||
if (pwr == 0 || pwr == 1)
|
||||
rhs.serialPower[p] = pwr;
|
||||
} catch(...) {}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
node["antennaMode"] >> antennaModeLut >> rhs.antennaMode;
|
||||
node["backlightColor"] >> rhs.backlightColor;
|
||||
node["pwrOnSpeed"] >> rhs.pwrOnSpeed;
|
||||
|
||||
@@ -168,7 +168,8 @@ enum Capability {
|
||||
TopBarZones,
|
||||
HasModelsList,
|
||||
HasFlySkyGimbals,
|
||||
RotaryEncoderNavigation
|
||||
RotaryEncoderNavigation,
|
||||
HasSoftwareSerialPower
|
||||
};
|
||||
|
||||
class EEPROMInterface
|
||||
|
||||
@@ -243,6 +243,7 @@ class GeneralSettings {
|
||||
unsigned int mavbaud;
|
||||
unsigned int switchUnlockStates;
|
||||
unsigned int serialPort[SP_COUNT];
|
||||
bool serialPower[SP_COUNT];
|
||||
int antennaMode;
|
||||
unsigned int backlightColor;
|
||||
CustomFunctionData customFn[CPN_MAX_SPECIAL_FUNCTIONS];
|
||||
|
||||
@@ -772,6 +772,8 @@ int OpenTxFirmware::getCapability(::Capability capability)
|
||||
IS_TARANIS_X9LITE(board) || IS_RADIOMASTER_TX12(board) ||
|
||||
IS_RADIOMASTER_ZORRO(board) || IS_RADIOMASTER_TX16S(board) ||
|
||||
IS_JUMPER_T18(board));
|
||||
case HasSoftwareSerialPower:
|
||||
return IS_RADIOMASTER_TX16S(board);
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -219,32 +219,46 @@ HardwarePanel::HardwarePanel(QWidget * parent, GeneralSettings & generalSettings
|
||||
ExclusiveComboGroup *exclGroup = new ExclusiveComboGroup(
|
||||
this, [=](const QVariant &value) { return value == 0; });
|
||||
|
||||
addSection(tr("Serial port"), row);
|
||||
|
||||
if (firmware->getCapability(HasAuxSerialMode)) {
|
||||
QString lbl = "Serial Port";
|
||||
if (IS_RADIOMASTER_TX16S(board))
|
||||
lbl.append(" (TTL)");
|
||||
QString lbl = "AUX1";
|
||||
addLabel(tr("%1").arg(lbl), row, 0);
|
||||
AutoComboBox *serialPortMode = new AutoComboBox(this);
|
||||
serialPortMode->setModel(editorItemModels->getItemModel(auxmodelid));
|
||||
serialPortMode->setField(generalSettings.serialPort[GeneralSettings::SP_AUX1]);
|
||||
exclGroup->addCombo(serialPortMode);
|
||||
addParams(row, serialPortMode);
|
||||
|
||||
AutoCheckBox *serialPortPower = new AutoCheckBox(this);
|
||||
serialPortPower->setField(generalSettings.serialPower[GeneralSettings::SP_AUX1], this);
|
||||
serialPortPower->setText(tr("Power"));
|
||||
|
||||
addParams(row, serialPortMode, serialPortPower);
|
||||
|
||||
if (!firmware->getCapability(HasSoftwareSerialPower))
|
||||
serialPortPower->setVisible(false);
|
||||
}
|
||||
|
||||
if (firmware->getCapability(HasAux2SerialMode)) {
|
||||
QString lbl = "Serial Port 2";
|
||||
if (IS_RADIOMASTER_TX16S(board))
|
||||
lbl.append(" (TTL)");
|
||||
QString lbl = "AUX2";
|
||||
addLabel(tr("%1").arg(lbl), row, 0);
|
||||
AutoComboBox *serialPortMode = new AutoComboBox(this);
|
||||
serialPortMode->setModel(editorItemModels->getItemModel(auxmodelid));
|
||||
serialPortMode->setField(generalSettings.serialPort[GeneralSettings::SP_AUX2]);
|
||||
exclGroup->addCombo(serialPortMode);
|
||||
addParams(row, serialPortMode);
|
||||
|
||||
AutoCheckBox *serialPortPower = new AutoCheckBox(this);
|
||||
serialPortPower->setField(generalSettings.serialPower[GeneralSettings::SP_AUX2], this);
|
||||
serialPortPower->setText(tr("Power"));
|
||||
|
||||
addParams(row, serialPortMode, serialPortPower);
|
||||
|
||||
if (!firmware->getCapability(HasSoftwareSerialPower))
|
||||
serialPortPower->setVisible(false);
|
||||
}
|
||||
|
||||
if (firmware->getCapability(HasVCPSerialMode)) {
|
||||
addLabel(tr("Serial Port VCP"), row, 0);
|
||||
addLabel(tr("VCP"), row, 0);
|
||||
AutoComboBox *serialPortMode = new AutoComboBox(this);
|
||||
serialPortMode->setModel(editorItemModels->getItemModel(vcpmodelid));
|
||||
serialPortMode->setField(generalSettings.serialPort[GeneralSettings::SP_VCP]);
|
||||
|
||||
@@ -116,33 +116,33 @@ static inline void check_struct()
|
||||
CHKSIZE(TrainerData, 16);
|
||||
|
||||
#if defined(PCBXLITES)
|
||||
CHKSIZE(RadioData, 859);
|
||||
CHKSIZE(RadioData, 861);
|
||||
CHKSIZE(ModelData, 6161);
|
||||
#elif defined(PCBXLITE)
|
||||
CHKSIZE(RadioData, 857);
|
||||
CHKSIZE(RadioData, 859);
|
||||
CHKSIZE(ModelData, 6161);
|
||||
#elif defined(RADIO_TPRO)
|
||||
CHKSIZE(RadioData, 840);
|
||||
CHKSIZE(RadioData, 842);
|
||||
CHKSIZE(ModelData, 6186);
|
||||
#elif defined(PCBX7)
|
||||
CHKSIZE(RadioData, 863);
|
||||
CHKSIZE(RadioData, 865);
|
||||
CHKSIZE(ModelData, 6161);
|
||||
#elif defined(PCBX9E)
|
||||
CHKSIZE(RadioData, 953);
|
||||
CHKSIZE(RadioData, 955);
|
||||
CHKSIZE(ModelData, 6613);
|
||||
#elif defined(PCBX9D) || defined(PCBX9DP)
|
||||
CHKSIZE(RadioData, 895);
|
||||
CHKSIZE(RadioData, 897);
|
||||
CHKSIZE(ModelData, 6605);
|
||||
#elif defined(PCBHORUS)
|
||||
#if defined(PCBX10)
|
||||
CHKSIZE(RadioData, 919);
|
||||
CHKSIZE(RadioData, 921);
|
||||
CHKSIZE(ModelData, 11025);
|
||||
#else
|
||||
CHKSIZE(RadioData, 901);
|
||||
CHKSIZE(RadioData, 903);
|
||||
CHKSIZE(ModelData, 11023);
|
||||
#endif
|
||||
#elif defined(PCBNV14)
|
||||
CHKSIZE(RadioData, 849);
|
||||
CHKSIZE(RadioData, 851);
|
||||
CHKSIZE(ModelData, 10839);
|
||||
#endif
|
||||
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "definitions.h"
|
||||
#include "opentx_types.h"
|
||||
#include "globals.h"
|
||||
#include "serial.h"
|
||||
|
||||
#if defined(PCBTARANIS)
|
||||
#define N_TARANIS_FIELD(x)
|
||||
@@ -902,7 +903,7 @@ PACK(struct RadioData {
|
||||
|
||||
CUST_ATTR(auxSerialMode, r_serialMode, nullptr);
|
||||
CUST_ATTR(aux2SerialMode, r_serialMode, nullptr);
|
||||
NOBACKUP(uint16_t serialPort ARRAY(STORAGE_SERIAL_PORTS,struct_serialConfig,nullptr));
|
||||
NOBACKUP(uint32_t serialPort ARRAY(SERIAL_CONF_BITS_PER_PORT,struct_serialConfig,nullptr));
|
||||
|
||||
EXTRA_GENERAL_FIELDS
|
||||
|
||||
|
||||
@@ -235,6 +235,22 @@ class SerialConfigWindow : public FormGroup
|
||||
aux->setAvailableHandler(
|
||||
[=](int value) { return isSerialModeAvailable(port_nr, value); });
|
||||
grid.nextLine();
|
||||
|
||||
#if defined(SWSERIALPOWER)
|
||||
if (port_nr < SP_VCP)
|
||||
{
|
||||
new StaticText(this, grid.getLabelSlot(true), STR_AUX_SERIAL_PORT_POWER, 0, COLOR_THEME_PRIMARY1);
|
||||
new CheckBox(
|
||||
this, grid.getFieldSlot(1, 0),
|
||||
[=] { return serialGetPower(port_nr); },
|
||||
[=](int8_t newValue) {
|
||||
serialSetPower(port_nr, (bool)newValue);
|
||||
SET_DIRTY();
|
||||
}
|
||||
);
|
||||
grid.nextLine();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
if (display_ttl_warning) {
|
||||
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
#include "serial_driver.h"
|
||||
|
||||
typedef void etx_pwr_driver;
|
||||
|
||||
typedef struct {
|
||||
const char* name;
|
||||
const etx_serial_driver_t* uart;
|
||||
|
||||
+53
-18
@@ -86,14 +86,27 @@ int8_t getSerialPortMode(uint8_t port_nr)
|
||||
#if !defined(BOOT)
|
||||
if (port_nr < MAX_SERIAL_PORTS) {
|
||||
auto cfg = g_eeGeneral.serialPort;
|
||||
cfg >>= port_nr * 4; // 4 bits per port
|
||||
return cfg & 0xF;
|
||||
cfg >>= port_nr * SERIAL_CONF_BITS_PER_PORT;
|
||||
return cfg & SERIAL_CONF_MODE_MASK;
|
||||
}
|
||||
#endif
|
||||
|
||||
return UART_MODE_NONE;
|
||||
}
|
||||
|
||||
static bool getSerialPower(uint8_t port_nr)
|
||||
{
|
||||
#if !defined(BOOT)
|
||||
if (port_nr < MAX_SERIAL_PORTS) {
|
||||
auto cfg = g_eeGeneral.serialPort;
|
||||
cfg >>= (port_nr * SERIAL_CONF_BITS_PER_PORT);
|
||||
return cfg & (1 << SERIAL_CONF_POWER_BIT);
|
||||
}
|
||||
#endif
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
struct SerialPortState
|
||||
{
|
||||
uint8_t mode;
|
||||
@@ -189,7 +202,7 @@ static void serialSetCallBacks(int mode, void* ctx, const etx_serial_port_t* por
|
||||
}
|
||||
}
|
||||
|
||||
static void serialSetupPort(int mode, etx_serial_init& params, bool& power_required)
|
||||
static void serialSetupPort(int mode, etx_serial_init& params)
|
||||
{
|
||||
switch (mode) {
|
||||
|
||||
@@ -203,7 +216,6 @@ static void serialSetupPort(int mode, etx_serial_init& params, bool& power_requi
|
||||
#if !defined(BOOT)
|
||||
case UART_MODE_TELEMETRY_MIRROR:
|
||||
// TODO: query telemetry baudrate / add setting for module
|
||||
power_required = true;
|
||||
#if defined(CROSSFIRE)
|
||||
if (modelTelemetryProtocol() == PROTOCOL_TELEMETRY_CROSSFIRE) {
|
||||
params.baudrate = CROSSFIRE_TELEM_MIRROR_BAUDRATE;
|
||||
@@ -217,7 +229,6 @@ static void serialSetupPort(int mode, etx_serial_init& params, bool& power_requi
|
||||
if (modelTelemetryProtocol() == PROTOCOL_TELEMETRY_FRSKY_D_SECONDARY) {
|
||||
params.baudrate = FRSKY_D_BAUDRATE;
|
||||
params.rx_enable = true;
|
||||
power_required = true;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -227,14 +238,12 @@ static void serialSetupPort(int mode, etx_serial_init& params, bool& power_requi
|
||||
params.parity = ETX_Parity_Even;
|
||||
params.stop_bits = ETX_StopBits_Two;
|
||||
params.rx_enable = true;
|
||||
power_required = true;
|
||||
break;
|
||||
|
||||
#if defined(LUA)
|
||||
case UART_MODE_LUA:
|
||||
params.baudrate = LUA_DEFAULT_BAUDRATE;
|
||||
params.rx_enable = true;
|
||||
power_required = true;
|
||||
break;
|
||||
#endif
|
||||
|
||||
@@ -242,7 +251,6 @@ static void serialSetupPort(int mode, etx_serial_init& params, bool& power_requi
|
||||
case UART_MODE_GPS:
|
||||
params.baudrate = GPS_USART_BAUDRATE;
|
||||
params.rx_enable = true;
|
||||
power_required = true;
|
||||
break;
|
||||
#endif
|
||||
#endif
|
||||
@@ -263,6 +271,26 @@ const etx_serial_port_t* serialGetPort(uint8_t port_nr)
|
||||
return port;
|
||||
}
|
||||
|
||||
static void serialSetPowerState(uint8_t port_nr)
|
||||
{
|
||||
const etx_serial_port_t* port = serialGetPort(port_nr);
|
||||
if (!port) return;
|
||||
|
||||
if (port->set_pwr) {
|
||||
port->set_pwr(getSerialPower(port_nr));
|
||||
}
|
||||
}
|
||||
|
||||
void serialSetPower(uint8_t port_nr, bool enabled)
|
||||
{
|
||||
if (port_nr >= MAX_SERIAL_PORTS) return;
|
||||
uint32_t pwr = (enabled ? 1 : 0) << SERIAL_CONF_POWER_BIT;
|
||||
uint32_t pwr_mask = (1 << SERIAL_CONF_POWER_BIT) << port_nr * SERIAL_CONF_BITS_PER_PORT;
|
||||
g_eeGeneral.serialPort = (g_eeGeneral.serialPort & ~pwr_mask) |
|
||||
(pwr << port_nr * SERIAL_CONF_BITS_PER_PORT);
|
||||
|
||||
serialSetPowerState(port_nr);
|
||||
}
|
||||
|
||||
void serialInit(uint8_t port_nr, int mode)
|
||||
{
|
||||
@@ -292,9 +320,14 @@ void serialInit(uint8_t port_nr, int mode)
|
||||
.rx_enable = false,
|
||||
};
|
||||
|
||||
bool power_required = false;
|
||||
serialSetupPort(mode, params, power_required);
|
||||
|
||||
serialSetupPort(mode, params);
|
||||
|
||||
#if defined(SWSERIALPOWER)
|
||||
// Set power on/off
|
||||
if (port_nr < SP_VCP)
|
||||
serialSetPowerState(port_nr);
|
||||
#endif
|
||||
|
||||
if (params.baudrate != 0) {
|
||||
state->mode = mode;
|
||||
state->port = port;
|
||||
@@ -302,11 +335,6 @@ void serialInit(uint8_t port_nr, int mode)
|
||||
if (port) {
|
||||
if (port->uart && port->uart->init)
|
||||
state->usart_ctx = port->uart->init(¶ms);
|
||||
|
||||
// Set power on/off
|
||||
if (port->set_pwr) {
|
||||
port->set_pwr(power_required);
|
||||
}
|
||||
}
|
||||
|
||||
// Update callbacks once the port is setup
|
||||
@@ -329,12 +357,19 @@ int serialGetMode(uint8_t port_nr)
|
||||
return getSerialPortMode(port_nr);
|
||||
}
|
||||
|
||||
bool serialGetPower(uint8_t port_nr)
|
||||
{
|
||||
return getSerialPower(port_nr);
|
||||
}
|
||||
|
||||
void serialSetMode(uint8_t port_nr, int mode)
|
||||
{
|
||||
if (port_nr >= MAX_SERIAL_PORTS) return;
|
||||
uint16_t m = mode & 0xF;
|
||||
uint16_t m = mode & SERIAL_CONF_MODE_MASK;
|
||||
g_eeGeneral.serialPort =
|
||||
(g_eeGeneral.serialPort & ~(0xF << port_nr * 4)) | (m << port_nr * 4);
|
||||
(g_eeGeneral.serialPort &
|
||||
~(SERIAL_CONF_MODE_MASK << port_nr * SERIAL_CONF_BITS_PER_PORT)) |
|
||||
(m << port_nr * SERIAL_CONF_BITS_PER_PORT);
|
||||
}
|
||||
|
||||
// uint8_t serialTracesEnabled(int port_nr)
|
||||
|
||||
@@ -25,9 +25,15 @@
|
||||
#include <stdint.h>
|
||||
#include "hal/serial_port.h"
|
||||
|
||||
#define SERIAL_CONF_BITS_PER_PORT 8 /* configuration uses 1 byte per serial port */
|
||||
#define SERIAL_CONF_MODE_MASK 0x0F /* lower 4 bits for mode */
|
||||
#define SERIAL_CONF_POWER_BIT 7 /* MSBit of the configuration byte */
|
||||
|
||||
const etx_serial_port_t* serialGetPort(uint8_t port_nr);
|
||||
int serialGetMode(uint8_t port_nr);
|
||||
void serialSetMode(uint8_t port_nr, int mode);
|
||||
bool serialGetPower(uint8_t port_nr);
|
||||
void serialSetPower(uint8_t port_nr, bool enabled);
|
||||
|
||||
void initSerialPorts();
|
||||
void serialInit(uint8_t port_nr, int mode);
|
||||
|
||||
@@ -1854,6 +1854,8 @@ static bool port_write(void* user, yaml_writer_func wf, void* opaque)
|
||||
static const struct YamlNode struct_serialConfig[] = {
|
||||
YAML_IDX_CUST( "port", port_read, port_write),
|
||||
YAML_ENUM( "mode", 4, enum_UartModes),
|
||||
YAML_PADDING( 3 ),
|
||||
YAML_UNSIGNED( "power", 1 ),
|
||||
YAML_END
|
||||
};
|
||||
|
||||
@@ -1876,6 +1878,7 @@ static void r_serialMode(void* user, uint8_t* data, uint32_t bitoffs,
|
||||
auto m = yaml_parse_enum(yaml_conv_220::enum_UartModes, val, val_len);
|
||||
if (!m) return;
|
||||
|
||||
auto serialPort = reinterpret_cast<uint16_t*>(data);
|
||||
*serialPort = (*serialPort & ~(0xF << port_nr * 4)) | (m << port_nr * 4);
|
||||
auto serialPort = reinterpret_cast<uint32_t*>(data);
|
||||
*serialPort = (*serialPort & ~(0xF << port_nr * SERIAL_CONF_BITS_PER_PORT)) |
|
||||
(m << port_nr * SERIAL_CONF_BITS_PER_PORT);
|
||||
}
|
||||
|
||||
@@ -423,7 +423,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 72, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, 4, struct_sticksConfig, stick_name_valid),
|
||||
YAML_ARRAY("switchConfig", 2, 16, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("potsConfig", 2, 8, struct_potConfig, nullptr),
|
||||
@@ -439,7 +439,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_UNSIGNED( "stickDeadZone", 3 ),
|
||||
YAML_PADDING( 2 ),
|
||||
YAML_PADDING( 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -394,7 +394,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -407,7 +407,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -394,7 +394,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -407,7 +407,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -394,7 +394,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -407,7 +407,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -402,7 +402,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -413,7 +413,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_PADDING( 144 ),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -394,7 +394,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -407,7 +407,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -444,7 +444,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 72, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, 4, struct_sticksConfig, stick_name_valid),
|
||||
YAML_ARRAY("switchConfig", 2, 16, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("potsConfig", 2, 8, struct_potConfig, nullptr),
|
||||
@@ -459,7 +459,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRUCT("themeData", 480, struct_OpenTxTheme__PersistentData, NULL),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -442,7 +442,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 72, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, 4, struct_sticksConfig, stick_name_valid),
|
||||
YAML_ARRAY("switchConfig", 2, 16, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("potsConfig", 2, 8, struct_potConfig, nullptr),
|
||||
@@ -457,7 +457,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRUCT("themeData", 480, struct_OpenTxTheme__PersistentData, NULL),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -394,7 +394,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -407,7 +407,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -401,7 +401,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -414,7 +414,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -440,7 +440,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -453,7 +453,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -381,7 +381,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -392,7 +392,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_PADDING( 120 ),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -389,7 +389,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -402,7 +402,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -386,7 +386,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -399,7 +399,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -388,7 +388,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -403,7 +403,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_SIGNED( "gyroMax", 8 ),
|
||||
YAML_SIGNED( "gyroOffset", 8 ),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -394,7 +394,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("customFn", 88, 64, struct_CustomFunctionData, cfn_is_active),
|
||||
YAML_CUSTOM("auxSerialMode",r_serialMode,nullptr),
|
||||
YAML_CUSTOM("aux2SerialMode",r_serialMode,nullptr),
|
||||
YAML_ARRAY("serialPort", 4, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("slidersConfig", 1, 4, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 4 ),
|
||||
YAML_ARRAY("potsConfig", 2, 4, struct_potConfig, nullptr),
|
||||
@@ -407,7 +407,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_STRING("bluetoothName", 10),
|
||||
YAML_STRING("ownerRegistrationID", 8),
|
||||
YAML_SIGNED( "uartSampleMode", 2 ),
|
||||
YAML_PADDING( 5 ),
|
||||
YAML_PADDING( 6 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_unsigned_8[] = {
|
||||
|
||||
@@ -219,6 +219,17 @@ int main()
|
||||
pwrInit();
|
||||
keysInit();
|
||||
|
||||
#if defined(SWSERIALPOWER)
|
||||
#if defined(AUX_SERIAL)
|
||||
void set_aux_pwr(uint8_t on);
|
||||
set_aux_pwr(0);
|
||||
#endif
|
||||
#if defined(AUX2_SERIAL)
|
||||
void set_aux2_pwr(uint8_t on);
|
||||
set_aux2_pwr(0);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// wait a bit for the inputs to stabilize...
|
||||
if (!WAS_RESET_BY_WATCHDOG_OR_SOFTWARE()) {
|
||||
for (uint32_t i = 0; i < 150000; i++) {
|
||||
|
||||
@@ -99,6 +99,7 @@ if (PCB STREQUAL X10)
|
||||
option(BLUETOOTH "Support for bluetooth module" OFF)
|
||||
option(INTERNAL_GPS "Support for internal ublox GPS" ON)
|
||||
set(HARDWARE_TOUCH YES)
|
||||
set(SWSERIALPOWER YES)
|
||||
set(USB_CHARGER YES)
|
||||
set(DEFAULT_THEME "DARKBLUE")
|
||||
add_definitions(-DMANUFACTURER_RADIOMASTER)
|
||||
@@ -233,6 +234,10 @@ if(HARDWARE_TOUCH)
|
||||
set(SOFTWARE_KEYBOARD ON)
|
||||
endif()
|
||||
|
||||
if(SWSERIALPOWER)
|
||||
add_definitions(-DSWSERIALPOWER)
|
||||
endif()
|
||||
|
||||
if(USB_CHARGER)
|
||||
set(FIRMWARE_TARGET_SRC ${FIRMWARE_TARGET_SRC} usb_charger_driver.cpp)
|
||||
add_definitions(-DUSB_CHARGER)
|
||||
|
||||
@@ -744,6 +744,7 @@ const char STR_SCALE[] = TR_SCALE;
|
||||
const char STR_VIEW_CHANNELS[] = TR_VIEW_CHANNELS;
|
||||
const char STR_AUX_SERIAL_MODE[] = TR_AUX_SERIAL_MODE;
|
||||
const char STR_AUX2_SERIAL_MODE[] = TR_AUX2_SERIAL_MODE;
|
||||
const char STR_AUX_SERIAL_PORT_POWER[] = TR_AUX_SERIAL_PORT_POWER;
|
||||
const char STR_THROTTLE_LABEL[] = TR_THROTTLE_LABEL;
|
||||
const char STR_SCRIPT[] = TR_SCRIPT;
|
||||
const char STR_INPUTS[] = TR_INPUTS;
|
||||
|
||||
@@ -115,7 +115,6 @@ extern const char STR_VTRIMINC[];
|
||||
extern const char STR_VDISPLAYTRIMS[];
|
||||
extern const char STR_RETA123[];
|
||||
|
||||
|
||||
extern const char STR_VBLMODE[];
|
||||
extern const char STR_VCURVEFUNC[];
|
||||
extern const char STR_VMLTPX[];
|
||||
@@ -240,7 +239,6 @@ extern const char STR_TTRIM_SW[];
|
||||
extern const char STR_BEEPCTR[];
|
||||
extern const char STR_USE_GLOBAL_FUNCS[];
|
||||
|
||||
|
||||
extern const char STR_PPMFRAME[];
|
||||
extern const char STR_REFRESHRATE[];
|
||||
extern const char STR_MS[];
|
||||
@@ -1089,6 +1087,7 @@ extern const char STR_VIEW_CHANNELS[];
|
||||
extern const char STR_POTWARNING[];
|
||||
extern const char STR_AUX_SERIAL_MODE[];
|
||||
extern const char STR_AUX2_SERIAL_MODE[];
|
||||
extern const char STR_AUX_SERIAL_PORT_POWER[];
|
||||
extern const char STR_THROTTLE_LABEL[];
|
||||
extern const char STR_SCRIPT[];
|
||||
extern const char STR_INPUTS[];
|
||||
|
||||
@@ -992,6 +992,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS 偏移量")
|
||||
#define TR_AUX_SERIAL_MODE "串口"
|
||||
#define TR_AUX2_SERIAL_MODE "串口 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "脚本"
|
||||
#define TR_INPUTS "输入"
|
||||
#define TR_OUTPUTS "输出"
|
||||
|
||||
@@ -1037,6 +1037,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS Ofset")
|
||||
#define TR_AUX_SERIAL_MODE "Seriový port"
|
||||
#define TR_AUX2_SERIAL_MODE "Seriový port 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Skript"
|
||||
#define TR_INPUTS "Vstupy"
|
||||
#define TR_OUTPUTS "Výstupy"
|
||||
|
||||
@@ -1043,6 +1043,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS-Ofs", INDENT "FAS-Offset")
|
||||
#define TR_AUX_SERIAL_MODE "Serieller Port"
|
||||
#define TR_AUX2_SERIAL_MODE "Serieller Port 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Versorgung"
|
||||
#define TR_SCRIPT "Lua-Skript"
|
||||
#define TR_INPUTS "Eingaben"
|
||||
#define TR_OUTPUTS "Ausgaben"
|
||||
|
||||
@@ -1043,6 +1043,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS offset")
|
||||
#define TR_AUX_SERIAL_MODE "Serial port"
|
||||
#define TR_AUX2_SERIAL_MODE "Serial port 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Script"
|
||||
#define TR_INPUTS "Inputs"
|
||||
#define TR_OUTPUTS "Outputs"
|
||||
|
||||
@@ -1044,6 +1044,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS Offset")
|
||||
#define TR_AUX_SERIAL_MODE "Puerto serie"
|
||||
#define TR_AUX2_SERIAL_MODE "Puerto serie 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Script"
|
||||
#define TR_INPUTS "Entradas"
|
||||
#define TR_OUTPUTS "Salidas"
|
||||
|
||||
@@ -1055,13 +1055,14 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS Offset")
|
||||
#define TR_AUX_SERIAL_MODE "Serial port"
|
||||
#define TR_AUX2_SERIAL_MODE "Serial port 2"
|
||||
#define TR_SCRIPT "Script"
|
||||
#define TR_INPUTS "Inputs"
|
||||
#define TR_OUTPUTS "Outputs"
|
||||
#define STR_EEBACKUP "Backup the EEPROM"
|
||||
#define STR_FACTORYRESET "Factory reset"
|
||||
#define TR_CONFIRMRESET "Erase ALL models and settings?"
|
||||
#define TR_TOO_MANY_LUA_SCRIPTS "Too many Lua scripts!"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Virta"
|
||||
#define TR_SCRIPT "Script"
|
||||
#define TR_INPUTS "Inputs"
|
||||
#define TR_OUTPUTS "Outputs"
|
||||
#define STR_EEBACKUP "Backup the EEPROM"
|
||||
#define STR_FACTORYRESET "Factory reset"
|
||||
#define TR_CONFIRMRESET "Erase ALL models and settings?"
|
||||
#define TR_TOO_MANY_LUA_SCRIPTS "Too many Lua scripts!"
|
||||
#define TR_SPORT_UPDATE_POWER_MODE "SP Power"
|
||||
#define LEN_SPORT_UPDATE_POWER_MODES "\004"
|
||||
#define TR_SPORT_UPDATE_POWER_MODES "AUTO""ON\0 "
|
||||
|
||||
@@ -1059,6 +1059,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "Corr FAS", INDENT "Correction FAS")
|
||||
#define TR_AUX_SERIAL_MODE "Port série"
|
||||
#define TR_AUX2_SERIAL_MODE "Port série 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Script"
|
||||
#define TR_INPUTS "Entrées"
|
||||
#define TR_OUTPUTS "Sorties"
|
||||
|
||||
@@ -1062,6 +1062,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS Offset")
|
||||
#define TR_AUX_SERIAL_MODE "Porta Seriale"
|
||||
#define TR_AUX2_SERIAL_MODE "Porta Seriale 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Script"
|
||||
#define TR_INPUTS "Ingresso"
|
||||
#define TR_OUTPUTS "Uscita"
|
||||
|
||||
@@ -67,7 +67,6 @@
|
||||
#define LEN_SWTYPES "\006"
|
||||
#define TR_SWTYPES "Geen\0 ""Wissel""2POS\0 ""3POS\0"
|
||||
|
||||
|
||||
#define LEN_POTTYPES TR("\013","\021")
|
||||
#define TR_POTTYPES TR("None\0 ""Pot w. det\0""Multipos\0 ""Pot\0 ", "Geen\0 ""Pot met Klik\0 ""Standenschakelaar""Pot zonder Klik\0 ")
|
||||
|
||||
@@ -1046,6 +1045,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS Offset")
|
||||
#define TR_AUX_SERIAL_MODE "Seriele poort"
|
||||
#define TR_AUX2_SERIAL_MODE "Seriele poort 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Script"
|
||||
#define TR_INPUTS "Inputs"
|
||||
#define TR_OUTPUTS "Outputs"
|
||||
|
||||
@@ -1058,6 +1058,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS Offset")
|
||||
#define TR_AUX_SERIAL_MODE "Port szreg."
|
||||
#define TR_AUX2_SERIAL_MODE "Port szreg. 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Skrypt"
|
||||
#define TR_INPUTS "Wejścia"
|
||||
#define TR_OUTPUTS "Wyjścia"
|
||||
|
||||
@@ -1066,6 +1066,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS Offset")
|
||||
#define TR_AUX_SERIAL_MODE "Serial port"
|
||||
#define TR_AUX2_SERIAL_MODE "Serial port 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Script"
|
||||
#define TR_INPUTS "Inputs"
|
||||
#define TR_OUTPUTS "Outputs"
|
||||
|
||||
@@ -1066,6 +1066,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS Offset")
|
||||
#define TR_AUX_SERIAL_MODE "Serieporten"
|
||||
#define TR_AUX2_SERIAL_MODE "Serieporten 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "Programkod"
|
||||
#define TR_INPUTS "Input"
|
||||
#define TR_OUTPUTS "Outputs"
|
||||
|
||||
@@ -992,6 +992,7 @@
|
||||
#define TR_FAS_OFFSET TR(INDENT "FAS Ofs", INDENT "FAS 偏移量")
|
||||
#define TR_AUX_SERIAL_MODE "端口"
|
||||
#define TR_AUX2_SERIAL_MODE "端口 2"
|
||||
#define TR_AUX_SERIAL_PORT_POWER "Port power"
|
||||
#define TR_SCRIPT "腳本"
|
||||
#define TR_INPUTS "輸入"
|
||||
#define TR_OUTPUTS "輸出"
|
||||
|
||||
Reference in New Issue
Block a user