Added support for Lemon-Rx DSMP
This commit is contained in:
committed by
Raphael Coeffic
parent
f09c10b49d
commit
9d5cd1876c
@@ -259,7 +259,8 @@ enum TelemetryProtocol
|
||||
PROTOCOL_TELEMETRY_AFHDS3,
|
||||
PROTOCOL_TELEMETRY_GHOST,
|
||||
PROTOCOL_TELEMETRY_FLYSKY_NV14,
|
||||
PROTOCOL_TELEMETRY_LAST=PROTOCOL_TELEMETRY_FLYSKY_NV14,
|
||||
PROTOCOL_TELEMETRY_DSMP,
|
||||
PROTOCOL_TELEMETRY_LAST=PROTOCOL_TELEMETRY_DSMP,
|
||||
PROTOCOL_TELEMETRY_LUA
|
||||
};
|
||||
|
||||
|
||||
@@ -532,6 +532,9 @@ PACK(struct ModuleData {
|
||||
NOBACKUP(struct {
|
||||
uint8_t telemetryBaudrate:3;
|
||||
} crsf);
|
||||
NOBACKUP(struct {
|
||||
uint8_t flags;
|
||||
} dsmp);
|
||||
} NAME(mod) FUNC(select_mod_type);
|
||||
|
||||
NOBACKUP(inline uint8_t getChannelsCount() const
|
||||
|
||||
@@ -1078,7 +1078,7 @@ void menuModelSetup(event_t event)
|
||||
if (attr) {
|
||||
moduleData.crsf.telemetryBaudrate =CROSSFIRE_INDEX_TO_STORE(checkIncDecModel(event,CROSSFIRE_STORE_TO_INDEX(moduleData.crsf.telemetryBaudrate),0, DIM(CROSSFIRE_BAUDRATES) - 1));
|
||||
if (checkIncDec_Ret) {
|
||||
restartExternalModule();
|
||||
restartModule(moduleIdx);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1088,7 +1088,7 @@ void menuModelSetup(event_t event)
|
||||
if (attr) {
|
||||
moduleData.ghost.telemetryBaudrate = CROSSFIRE_INDEX_TO_STORE(checkIncDecModel(event,CROSSFIRE_STORE_TO_INDEX(moduleData.ghost.telemetryBaudrate),0, 1));
|
||||
if (checkIncDec_Ret) {
|
||||
restartExternalModule();
|
||||
restartModule(moduleIdx);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1045,7 +1045,7 @@ void menuModelSetup(event_t event)
|
||||
if (attr) {
|
||||
moduleData.crsf.telemetryBaudrate =CROSSFIRE_INDEX_TO_STORE(checkIncDecModel(event,CROSSFIRE_STORE_TO_INDEX(moduleData.crsf.telemetryBaudrate),0, DIM(CROSSFIRE_BAUDRATES) - 1));
|
||||
if (checkIncDec_Ret) {
|
||||
restartExternalModule();
|
||||
restartModule(EXTERNAL_MODULE);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1056,7 +1056,7 @@ void menuModelSetup(event_t event)
|
||||
if (attr) {
|
||||
moduleData.ghost.telemetryBaudrate = CROSSFIRE_INDEX_TO_STORE(checkIncDecModel(event,CROSSFIRE_STORE_TO_INDEX(moduleData.ghost.telemetryBaudrate),0, 1));
|
||||
if (checkIncDec_Ret) {
|
||||
restartExternalModule();
|
||||
restartModule(EXTERNAL_MODULE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -622,7 +622,7 @@ class ModuleWindow : public FormGroup {
|
||||
[=](int newValue) {
|
||||
g_model.moduleData[moduleIdx].crsf.telemetryBaudrate = CROSSFIRE_INDEX_TO_STORE(newValue);
|
||||
SET_DIRTY();
|
||||
restartExternalModule();
|
||||
restartModule(moduleIdx);
|
||||
});
|
||||
}
|
||||
if (isModuleCrossfire(moduleIdx)) {
|
||||
@@ -1089,6 +1089,7 @@ class ModuleWindow : public FormGroup {
|
||||
#if defined(AFHDS2)
|
||||
if (isModuleFlySky(moduleIdx)) resetPulsesAFHDS2();
|
||||
#endif
|
||||
if (isModuleDSMP(moduleIdx)) restartModule(moduleIdx);
|
||||
return 0;
|
||||
} else {
|
||||
if (isModuleR9MNonAccess(moduleIdx) || isModuleD16(moduleIdx) ||
|
||||
|
||||
@@ -293,7 +293,7 @@ class InternalModuleWindow : public FormGroup {
|
||||
[=](int newValue) {
|
||||
g_eeGeneral.internalModuleBaudrate = CROSSFIRE_INDEX_TO_STORE(newValue);
|
||||
SET_DIRTY();
|
||||
restartInternalModule();
|
||||
restartModule(INTERNAL_MODULE);
|
||||
});
|
||||
grid.nextLine();
|
||||
}
|
||||
|
||||
@@ -543,7 +543,7 @@ void menuRadioHardware(event_t event)
|
||||
if (attr) {
|
||||
g_eeGeneral.internalModuleBaudrate = CROSSFIRE_INDEX_TO_STORE(checkIncDecModel(event, CROSSFIRE_STORE_TO_INDEX(g_eeGeneral.internalModuleBaudrate), 0, CROSSFIRE_MAX_INTERNAL_BAUDRATE));
|
||||
if (checkIncDec_Ret) {
|
||||
restartInternalModule();
|
||||
restartModule(INTERNAL_MODULE);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -552,7 +552,7 @@ void menuRadioHardware(event_t event)
|
||||
case ITEM_RADIO_HARDWARE_SERIAL_SAMPLE_MODE:
|
||||
g_eeGeneral.uartSampleMode = editChoice(HW_SETTINGS_COLUMN2, y, STR_SAMPLE_MODE, STR_SAMPLE_MODES, g_eeGeneral.uartSampleMode, 0, UART_SAMPLE_MODE_MAX, attr, event);
|
||||
if (attr && checkIncDec_Ret) {
|
||||
restartExternalModule();
|
||||
restartModule(EXTERNAL_MODULE);
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
|
||||
@@ -39,7 +39,8 @@ enum ChannelsProtocols {
|
||||
PROTOCOL_CHANNELS_PXX2_HIGHSPEED,
|
||||
PROTOCOL_CHANNELS_AFHDS2A,
|
||||
PROTOCOL_CHANNELS_AFHDS3,
|
||||
PROTOCOL_CHANNELS_GHOST
|
||||
PROTOCOL_CHANNELS_GHOST,
|
||||
PROTOCOL_CHANNELS_DSMP
|
||||
};
|
||||
|
||||
struct etx_module_driver_t {
|
||||
|
||||
+114
-9
@@ -33,29 +33,40 @@
|
||||
|
||||
#define BITLEN_DSM2 (8*2) //125000 Baud => 8uS per bit
|
||||
|
||||
void _send_1(uint8_t v)
|
||||
static void reset_dsm2_buffer()
|
||||
{
|
||||
extmodulePulsesData.dsm2.index = 0;
|
||||
extmodulePulsesData.dsm2.ptr = extmodulePulsesData.dsm2.pulses;
|
||||
}
|
||||
|
||||
static void _send_1(uint8_t v)
|
||||
{
|
||||
*extmodulePulsesData.dsm2.ptr++ = v - 1;
|
||||
extmodulePulsesData.dsm2.index += 1;
|
||||
}
|
||||
|
||||
void sendByteDsm2(uint8_t b) // max 10 changes 0 10 10 10 10 1
|
||||
static void _sendByte(uint8_t b, uint8_t bit_len) // max 10 changes 0 10 10 10 10 1
|
||||
{
|
||||
bool lev = 0;
|
||||
uint8_t len = BITLEN_DSM2; // max val: 9*16 < 256
|
||||
uint8_t len = bit_len; // max val: 9*16 < 256
|
||||
for (uint8_t i=0; i<=8; i++) { // 8Bits + Stop=1
|
||||
bool nlev = b & 1; // lsb first
|
||||
if (lev == nlev) {
|
||||
len += BITLEN_DSM2;
|
||||
len += bit_len;
|
||||
}
|
||||
else {
|
||||
_send_1(len);
|
||||
len = BITLEN_DSM2;
|
||||
len = bit_len;
|
||||
lev = nlev;
|
||||
}
|
||||
b = (b>>1) | 0x80; // shift in stop bit
|
||||
}
|
||||
_send_1(len); // stop bit (len is already BITLEN_DSM2)
|
||||
_send_1(len); // stop bit (len is already bit_len)
|
||||
}
|
||||
|
||||
static void sendByteDsm2(uint8_t b)
|
||||
{
|
||||
_sendByte(b, BITLEN_DSM2);
|
||||
}
|
||||
|
||||
void putDsm2Flush()
|
||||
@@ -73,9 +84,7 @@ void setupPulsesDSM2()
|
||||
{
|
||||
uint8_t dsmDat[14];
|
||||
|
||||
extmodulePulsesData.dsm2.index = 0;
|
||||
|
||||
extmodulePulsesData.dsm2.ptr = extmodulePulsesData.dsm2.pulses;
|
||||
reset_dsm2_buffer();
|
||||
|
||||
switch (moduleState[EXTERNAL_MODULE].protocol) {
|
||||
case PROTOCOL_CHANNELS_DSM2_LP45:
|
||||
@@ -112,3 +121,99 @@ void setupPulsesDSM2()
|
||||
|
||||
putDsm2Flush();
|
||||
}
|
||||
|
||||
#define BITLEN_DSMP (17)
|
||||
|
||||
static void sendByteDSMP(uint8_t b)
|
||||
{
|
||||
_sendByte(b, BITLEN_DSMP);
|
||||
}
|
||||
|
||||
void setupPulsesLemonDSMP()
|
||||
{
|
||||
static uint8_t pass = 0;
|
||||
|
||||
reset_dsm2_buffer();
|
||||
|
||||
const auto& md = g_model.moduleData[EXTERNAL_MODULE];
|
||||
// TODO: sanetize 'channels'
|
||||
auto channels = md.getChannelsCount();
|
||||
auto flags = md.dsmp.flags;
|
||||
|
||||
// Force setup packet in Bind mode.
|
||||
auto module_mode = getModuleMode(EXTERNAL_MODULE);
|
||||
|
||||
sendByteDSMP( 0xAA );
|
||||
sendByteDSMP( pass );
|
||||
|
||||
// Setup packet
|
||||
if (pass == 0) {
|
||||
|
||||
if (module_mode == MODULE_MODE_BIND) {
|
||||
flags = DSM2_SEND_BIND | (1 << 6 /* AUTO */);
|
||||
channels = 12;
|
||||
}
|
||||
sendByteDSMP( flags );
|
||||
|
||||
uint8_t pwr = 7;
|
||||
if (module_mode == MODULE_MODE_RANGECHECK) {
|
||||
pwr = 4;
|
||||
}
|
||||
sendByteDSMP( pwr );
|
||||
sendByteDSMP( channels );
|
||||
|
||||
// Model number
|
||||
sendByteDSMP( 1 );
|
||||
|
||||
// Send only 1 single Setup packet
|
||||
pass = 1;
|
||||
|
||||
} else {
|
||||
|
||||
uint8_t start_channel = 0;
|
||||
if (pass == 2) {
|
||||
start_channel += 7;
|
||||
}
|
||||
|
||||
// Send channels
|
||||
for (int i=0; i<7; i++) {
|
||||
|
||||
uint8_t channel = start_channel + i;
|
||||
if (channel < channels) {
|
||||
|
||||
int value = channelOutputs[channel] + 2*PPM_CH_CENTER(channel) - 2*PPM_CENTER;
|
||||
uint16_t pulse;
|
||||
|
||||
// Use 11-bit ?
|
||||
if (flags & (1 << 2)) {
|
||||
pulse = limit(0, ((value*349)>>9)+1024, 2047) | (channel << 11);
|
||||
} else {
|
||||
pulse = limit(0, ((value*13)>>5)+512, 1023) | (channel << 10);
|
||||
}
|
||||
|
||||
sendByteDSMP( pulse >> 8 );
|
||||
sendByteDSMP( pulse & 0xFF );
|
||||
} else {
|
||||
// Outside of announced number of channels:
|
||||
// -> send invalid values
|
||||
sendByteDSMP( 0xFF );
|
||||
sendByteDSMP( 0xFF );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
putDsm2Flush();
|
||||
|
||||
if (++pass > 2) pass = 1;
|
||||
if (channels < 8) pass = 1;
|
||||
|
||||
if (module_mode == MODULE_MODE_BIND) {
|
||||
// bind packet is setup
|
||||
pass = 0;
|
||||
}
|
||||
else if (--moduleState[EXTERNAL_MODULE].counter == 0) {
|
||||
// every 100th packet is setup
|
||||
pass = 0;
|
||||
moduleState[EXTERNAL_MODULE].counter = 100;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,11 +36,12 @@ enum ModuleType {
|
||||
MODULE_TYPE_R9M_PXX2, // R9M ACCESS
|
||||
MODULE_TYPE_R9M_LITE_PXX1, //R9MLite
|
||||
MODULE_TYPE_R9M_LITE_PXX2, //R9MLP
|
||||
MODULE_TYPE_GHOST, // Replaces MODULE_TYPE_R9M_LITE_PRO_PXX1 which doesn't exist
|
||||
MODULE_TYPE_GHOST,
|
||||
MODULE_TYPE_R9M_LITE_PRO_PXX2,
|
||||
MODULE_TYPE_SBUS,
|
||||
MODULE_TYPE_XJT_LITE_PXX2,
|
||||
MODULE_TYPE_FLYSKY, //no more protocols possible because of 4 bits value
|
||||
MODULE_TYPE_FLYSKY,
|
||||
MODULE_TYPE_LEMON_DSMP,
|
||||
MODULE_TYPE_COUNT SKIP,
|
||||
MODULE_TYPE_MAX SKIP = MODULE_TYPE_COUNT - 1
|
||||
};
|
||||
|
||||
@@ -410,6 +410,11 @@ inline bool isModuleAFHDS3(uint8_t idx)
|
||||
&& (g_model.moduleData[idx].subType == FLYSKY_SUBTYPE_AFHDS3);
|
||||
}
|
||||
|
||||
inline bool isModuleDSMP(uint8_t idx)
|
||||
{
|
||||
return g_model.moduleData[idx].type == MODULE_TYPE_LEMON_DSMP;
|
||||
}
|
||||
|
||||
// See enum ModuleType in modules_constant.h
|
||||
// relative to 8!
|
||||
static const int8_t maxChannelsModules_M8[] = {
|
||||
@@ -429,6 +434,7 @@ static const int8_t maxChannelsModules_M8[] = {
|
||||
8, // MODULE_TYPE_SBUS
|
||||
0, // MODULE_TYPE_XJT_LITE_PXX2: index NOT USED
|
||||
6, // MODULE_TYPE_FLYSKY: 14 channels for AFHDS2A, AFHDS3 special cased
|
||||
4, // MODULE_TYPE_LEMON_DSMP: 12 channels for DSMX
|
||||
};
|
||||
|
||||
static_assert(MODULE_TYPE_COUNT == sizeof(maxChannelsModules_M8),
|
||||
@@ -616,7 +622,7 @@ inline bool isModuleBindRangeAvailable(uint8_t moduleIdx)
|
||||
{
|
||||
return isModulePXX2(moduleIdx) || isModulePXX1(moduleIdx) ||
|
||||
isModuleDSM2(moduleIdx) || isModuleMultimodule(moduleIdx) ||
|
||||
isModuleFlySky(moduleIdx);
|
||||
isModuleFlySky(moduleIdx) || isModuleDSMP(moduleIdx);
|
||||
}
|
||||
|
||||
inline uint32_t getNV14RfFwVersion()
|
||||
|
||||
+45
-33
@@ -55,6 +55,32 @@ InternalModulePulsesData intmodulePulsesData __DMA;
|
||||
ExternalModulePulsesData extmodulePulsesData __DMA;
|
||||
TrainerPulsesData trainerPulsesData __DMA;
|
||||
|
||||
void restartModule(uint8_t idx)
|
||||
{
|
||||
if (idx == INTERNAL_MODULE) {
|
||||
if (!IS_INTERNAL_MODULE_ON()) return;
|
||||
} else if (idx == EXTERNAL_MODULE){
|
||||
if (!IS_EXTERNAL_MODULE_ON()) return;
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
|
||||
pauseMixerCalculations();
|
||||
pausePulses();
|
||||
|
||||
if (idx == INTERNAL_MODULE) INTERNAL_MODULE_OFF();
|
||||
else EXTERNAL_MODULE_OFF();
|
||||
|
||||
RTOS_WAIT_MS(20); // 20ms so that the pulses interrupt will reinit the frame rate
|
||||
telemetryProtocol = 255; // force telemetry port + module reinitialization
|
||||
|
||||
if (idx == INTERNAL_MODULE) INTERNAL_MODULE_ON();
|
||||
else EXTERNAL_MODULE_ON();
|
||||
|
||||
resumePulses();
|
||||
resumeMixerCalculations();
|
||||
}
|
||||
|
||||
// use only for PXX
|
||||
void ModuleState::startBind(BindInformation* destination,
|
||||
ModuleCallback bindCallback)
|
||||
@@ -69,39 +95,6 @@ void ModuleState::startBind(BindInformation* destination,
|
||||
#endif
|
||||
}
|
||||
|
||||
#if defined(HARDWARE_INTERNAL_MODULE)
|
||||
void restartInternalModule()
|
||||
{
|
||||
if (!IS_INTERNAL_MODULE_ON()) {
|
||||
return;
|
||||
}
|
||||
pauseMixerCalculations();
|
||||
pausePulses();
|
||||
INTERNAL_MODULE_OFF();
|
||||
RTOS_WAIT_MS(20); // 20ms so that the pulses interrupt will reinit the frame rate
|
||||
telemetryProtocol = 255; // force telemetry port + module reinitialization
|
||||
INTERNAL_MODULE_ON();
|
||||
resumePulses();
|
||||
resumeMixerCalculations();
|
||||
}
|
||||
#endif
|
||||
#if defined(HARDWARE_EXTERNAL_MODULE)
|
||||
void restartExternalModule()
|
||||
{
|
||||
if (!IS_EXTERNAL_MODULE_ON()) {
|
||||
return;
|
||||
}
|
||||
pauseMixerCalculations();
|
||||
pausePulses();
|
||||
EXTERNAL_MODULE_OFF();
|
||||
RTOS_WAIT_MS(20); // 20ms so that the pulses interrupt will reinit the frame rate
|
||||
telemetryProtocol = 255; // force telemetry port + module reinitialization
|
||||
EXTERNAL_MODULE_ON();
|
||||
resumePulses();
|
||||
resumeMixerCalculations();
|
||||
}
|
||||
#endif
|
||||
|
||||
void ModuleState::readModuleInformation(ModuleInformation* destination,
|
||||
int8_t first, int8_t last)
|
||||
{
|
||||
@@ -305,6 +298,10 @@ uint8_t getRequiredProtocol(uint8_t module)
|
||||
break;
|
||||
#endif
|
||||
|
||||
case MODULE_TYPE_LEMON_DSMP:
|
||||
protocol = PROTOCOL_CHANNELS_DSMP;
|
||||
break;
|
||||
|
||||
default:
|
||||
protocol = PROTOCOL_CHANNELS_NONE;
|
||||
break;
|
||||
@@ -589,6 +586,11 @@ void enablePulsesExternalModule(uint8_t protocol)
|
||||
break;
|
||||
#endif
|
||||
|
||||
case PROTOCOL_CHANNELS_DSMP:
|
||||
extmoduleSerialStart();
|
||||
mixerSchedulerSetPeriod(EXTERNAL_MODULE, 11 * 1000 /* 11ms in us */);
|
||||
break;
|
||||
|
||||
default:
|
||||
// external module stopped, use default mixer period
|
||||
mixerSchedulerSetPeriod(EXTERNAL_MODULE, 0);
|
||||
@@ -670,6 +672,10 @@ bool setupPulsesExternalModule(uint8_t protocol)
|
||||
return true;
|
||||
#endif
|
||||
|
||||
case PROTOCOL_CHANNELS_DSMP:
|
||||
setupPulsesLemonDSMP();
|
||||
return true;
|
||||
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
@@ -730,6 +736,12 @@ void extmoduleSendNextFrame()
|
||||
extmodulePulsesData.dsm2.ptr - extmodulePulsesData.dsm2.pulses);
|
||||
break;
|
||||
#endif
|
||||
case PROTOCOL_CHANNELS_DSMP:
|
||||
extmoduleSendNextFrameSoftSerial(
|
||||
extmodulePulsesData.dsm2.pulses,
|
||||
extmodulePulsesData.dsm2.ptr - extmodulePulsesData.dsm2.pulses,
|
||||
true);
|
||||
break;
|
||||
|
||||
#if defined(GHOST)
|
||||
case PROTOCOL_CHANNELS_GHOST:
|
||||
|
||||
@@ -67,10 +67,10 @@ extern uint8_t s_pulses_paused;
|
||||
typedef void (* ModuleCallback)();
|
||||
|
||||
PACK(struct ModuleState {
|
||||
uint8_t protocol:4;
|
||||
uint8_t protocol;
|
||||
uint8_t mode:4;
|
||||
uint8_t paused:1;
|
||||
uint8_t spare:7;
|
||||
uint8_t spare:3;
|
||||
uint16_t counter;
|
||||
|
||||
// PXX specific items
|
||||
@@ -233,7 +233,9 @@ bool setupPulsesExternalModule();
|
||||
void stopPulsesExternalModule();
|
||||
void extmoduleSendNextFrame();
|
||||
#endif
|
||||
void restartModule(uint8_t idx);
|
||||
void setupPulsesDSM2();
|
||||
void setupPulsesLemonDSMP();
|
||||
void setupPulsesCrossfire(uint8_t idx);
|
||||
void setupPulsesGhost();
|
||||
void setupPulsesMultiExternalModule();
|
||||
@@ -242,9 +244,7 @@ void setupPulsesSbus();
|
||||
void setupPulsesPPMInternalModule();
|
||||
void setupPulsesPPMExternalModule();
|
||||
void setupPulsesPPMTrainer();
|
||||
void sendByteDsm2(uint8_t b);
|
||||
void putDsm2Flush();
|
||||
void putDsm2SerialBit(uint8_t bit);
|
||||
void sendByteSbus(uint8_t b);
|
||||
void intmodulePpmStart();
|
||||
void intmodulePxx1PulsesStart();
|
||||
@@ -254,8 +254,6 @@ void extmodulePxx1SerialStart();
|
||||
void extmodulePpmStart();
|
||||
void intmoduleStop();
|
||||
void extmoduleStop();
|
||||
void restartInternalModule();
|
||||
void restartExternalModule();
|
||||
void getModuleStatusString(uint8_t moduleIdx, char * statusText);
|
||||
void getModuleSyncStatusString(uint8_t moduleIdx, char * statusText);
|
||||
#if defined(AFHDS3)
|
||||
|
||||
@@ -467,6 +467,8 @@ static uint8_t select_mod_type(void* user, uint8_t* data, uint32_t bitoffs)
|
||||
return 8;
|
||||
case MODULE_TYPE_CROSSFIRE:
|
||||
return 9;
|
||||
case MODULE_TYPE_LEMON_DSMP:
|
||||
return 10;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -673,6 +674,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -684,6 +689,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -729,61 +735,61 @@ static const struct YamlNode struct_string_32[] = {
|
||||
YAML_STRING("val", 4),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -796,7 +802,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_WidgetPersistentData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -641,6 +642,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -652,6 +657,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -692,61 +698,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -759,7 +765,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -641,6 +642,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -652,6 +657,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -692,61 +698,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -759,7 +765,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -641,6 +642,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -652,6 +657,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -692,61 +698,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -759,7 +765,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -647,6 +648,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -658,6 +663,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -698,61 +704,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -765,7 +771,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -641,6 +642,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -652,6 +657,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -692,61 +698,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -759,7 +765,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -694,6 +695,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -705,6 +710,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -750,61 +756,61 @@ static const struct YamlNode struct_string_32[] = {
|
||||
YAML_STRING("val", 4),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -817,7 +823,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_WidgetPersistentData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -692,6 +693,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -703,6 +708,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -748,61 +754,61 @@ static const struct YamlNode struct_string_32[] = {
|
||||
YAML_STRING("val", 4),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -815,7 +821,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_WidgetPersistentData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -641,6 +642,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -652,6 +657,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -692,61 +698,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -759,7 +765,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -649,6 +650,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -660,6 +665,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -705,61 +711,61 @@ static const struct YamlNode struct_string_32[] = {
|
||||
YAML_STRING("val", 4),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -772,7 +778,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -688,6 +689,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -699,6 +704,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -744,61 +750,61 @@ static const struct YamlNode struct_string_32[] = {
|
||||
YAML_STRING("val", 4),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -811,7 +817,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -626,6 +627,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -637,6 +642,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -677,61 +683,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -744,7 +750,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -636,6 +637,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -647,6 +652,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -687,61 +693,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -754,7 +760,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -633,6 +634,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -644,6 +649,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -684,61 +690,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -751,7 +757,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -637,6 +638,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -648,6 +653,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -688,61 +694,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -755,7 +761,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -36,6 +36,7 @@ const struct YamlIdStr enum_ModuleType[] = {
|
||||
{ MODULE_TYPE_SBUS, "TYPE_SBUS" },
|
||||
{ MODULE_TYPE_XJT_LITE_PXX2, "TYPE_XJT_LITE_PXX2" },
|
||||
{ MODULE_TYPE_FLYSKY, "TYPE_FLYSKY" },
|
||||
{ MODULE_TYPE_LEMON_DSMP, "TYPE_LEMON_DSMP" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
const struct YamlIdStr enum_TrainerMultiplex[] = {
|
||||
@@ -641,6 +642,10 @@ static const struct YamlNode struct_anonymous_13[] = {
|
||||
YAML_UNSIGNED( "telemetryBaudrate", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_14[] = {
|
||||
YAML_UNSIGNED( "flags", 8 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_ARRAY("raw", 8, 25, struct_unsigned_8, NULL),
|
||||
YAML_STRUCT("ppm", 16, struct_anonymous_5, NULL),
|
||||
@@ -652,6 +657,7 @@ static const struct YamlNode union_anonymous_4_elmts[] = {
|
||||
YAML_STRUCT("afhds3", 64, struct_anonymous_11, NULL),
|
||||
YAML_STRUCT("ghost", 8, struct_anonymous_12, NULL),
|
||||
YAML_STRUCT("crsf", 8, struct_anonymous_13, NULL),
|
||||
YAML_STRUCT("dsmp", 8, struct_anonymous_14, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_ModuleData[] = {
|
||||
@@ -692,61 +698,61 @@ static const struct YamlNode struct_ScriptData[] = {
|
||||
YAML_ARRAY("inputs", 16, 6, union_ScriptDataInput, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_14_elmts[] = {
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_UNSIGNED( "id", 16 ),
|
||||
YAML_UNSIGNED( "persistentValue", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_16[] = {
|
||||
static const struct YamlNode struct_anonymous_17[] = {
|
||||
YAML_UNSIGNED( "physID", 5 ),
|
||||
YAML_UNSIGNED( "rxIndex", 3 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_15_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_16, NULL),
|
||||
static const struct YamlNode union_anonymous_16_elmts[] = {
|
||||
YAML_STRUCT("frskyInstance", 8, struct_anonymous_17, NULL),
|
||||
YAML_UNSIGNED( "instance", 8 ),
|
||||
YAML_ENUM("formula", 8, enum_TelemetrySensorFormula),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_18[] = {
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
YAML_UNSIGNED( "ratio", 16 ),
|
||||
YAML_SIGNED( "offset", 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_19[] = {
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_UNSIGNED( "index", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_20[] = {
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
YAML_ARRAY("sources", 8, 4, struct_signed_8, NULL),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_21[] = {
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
YAML_UNSIGNED( "source", 8 ),
|
||||
YAML_PADDING( 24 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_anonymous_22[] = {
|
||||
static const struct YamlNode struct_anonymous_23[] = {
|
||||
YAML_UNSIGNED( "gps", 8 ),
|
||||
YAML_UNSIGNED( "alt", 8 ),
|
||||
YAML_PADDING( 16 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode union_anonymous_17_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_18, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_22, NULL),
|
||||
static const struct YamlNode union_anonymous_18_elmts[] = {
|
||||
YAML_STRUCT("custom", 32, struct_anonymous_19, NULL),
|
||||
YAML_STRUCT("cell", 32, struct_anonymous_20, NULL),
|
||||
YAML_STRUCT("calc", 32, struct_anonymous_21, NULL),
|
||||
YAML_STRUCT("consumption", 32, struct_anonymous_22, NULL),
|
||||
YAML_STRUCT("dist", 32, struct_anonymous_23, NULL),
|
||||
YAML_UNSIGNED( "param", 32 ),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_IDX,
|
||||
YAML_UNION("id1", 16, union_anonymous_14_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_15_elmts, select_id2),
|
||||
YAML_UNION("id1", 16, union_anonymous_15_elmts, select_id1),
|
||||
YAML_UNION("id2", 8, union_anonymous_16_elmts, select_id2),
|
||||
YAML_STRING("label", 4),
|
||||
YAML_UNSIGNED( "subId", 8 ),
|
||||
YAML_ENUM("type", 1, enum_TelemetrySensorType),
|
||||
@@ -759,7 +765,7 @@ static const struct YamlNode struct_TelemetrySensor[] = {
|
||||
YAML_UNSIGNED( "persistent", 1 ),
|
||||
YAML_UNSIGNED( "onlyPositive", 1 ),
|
||||
YAML_PADDING( 1 ),
|
||||
YAML_UNION("cfg", 32, union_anonymous_17_elmts, select_sensor_cfg),
|
||||
YAML_UNION("cfg", 32, union_anonymous_18_elmts, select_sensor_cfg),
|
||||
YAML_END
|
||||
};
|
||||
static const struct YamlNode struct_FrSkyBarData[] = {
|
||||
|
||||
@@ -182,6 +182,10 @@ void telemetryPortInvertedInit(uint32_t baudrate)
|
||||
probeTimeFromStartBit = 3000000/baudrate;
|
||||
}
|
||||
|
||||
#if defined(PCBX12S)
|
||||
telemetryFifoMode = TELEMETRY_SERIAL_WITHOUT_DMA;
|
||||
#endif
|
||||
|
||||
// configure bit sample timer
|
||||
TELEMETRY_TIMER->PSC = (PERI2_FREQUENCY * TIMER_MULT_APB2) / 2000000 - 1; // 0.5uS
|
||||
TELEMETRY_TIMER->CCER = 0;
|
||||
|
||||
+2
-33
@@ -66,48 +66,17 @@ bool isForcePowerOffRequested()
|
||||
return false;
|
||||
}
|
||||
|
||||
// TODO: remove this!!!
|
||||
bool isModuleSynchronous(uint8_t moduleIdx)
|
||||
{
|
||||
switch(moduleState[moduleIdx].protocol) {
|
||||
case PROTOCOL_CHANNELS_PXX2_HIGHSPEED:
|
||||
case PROTOCOL_CHANNELS_PXX2_LOWSPEED:
|
||||
case PROTOCOL_CHANNELS_CROSSFIRE:
|
||||
case PROTOCOL_CHANNELS_GHOST:
|
||||
case PROTOCOL_CHANNELS_AFHDS3:
|
||||
case PROTOCOL_CHANNELS_AFHDS2A:
|
||||
case PROTOCOL_CHANNELS_NONE:
|
||||
|
||||
#if defined(MULTIMODULE)
|
||||
case PROTOCOL_CHANNELS_MULTIMODULE:
|
||||
#endif
|
||||
#if defined(INTMODULE_USART) || defined(EXTMODULE_USART)
|
||||
case PROTOCOL_CHANNELS_PXX1_SERIAL:
|
||||
#endif
|
||||
case PROTOCOL_CHANNELS_PPM:
|
||||
case PROTOCOL_CHANNELS_PXX1_PULSES:
|
||||
#if defined(DSM2)
|
||||
case PROTOCOL_CHANNELS_SBUS:
|
||||
case PROTOCOL_CHANNELS_DSM2_LP45:
|
||||
case PROTOCOL_CHANNELS_DSM2_DSM2:
|
||||
case PROTOCOL_CHANNELS_DSM2_DSMX:
|
||||
#endif
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void sendSynchronousPulses(uint8_t runMask)
|
||||
{
|
||||
#if defined(HARDWARE_INTERNAL_MODULE)
|
||||
if ((runMask & (1 << INTERNAL_MODULE)) && isModuleSynchronous(INTERNAL_MODULE)) {
|
||||
if (runMask & (1 << INTERNAL_MODULE)) {
|
||||
if (setupPulsesInternalModule())
|
||||
intmoduleSendNextFrame();
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(HARDWARE_EXTERNAL_MODULE)
|
||||
if ((runMask & (1 << EXTERNAL_MODULE)) && isModuleSynchronous(EXTERNAL_MODULE)) {
|
||||
if (runMask & (1 << EXTERNAL_MODULE)) {
|
||||
if (setupPulsesExternalModule())
|
||||
extmoduleSendNextFrame();
|
||||
}
|
||||
|
||||
@@ -504,7 +504,28 @@ void processSpektrumPacket(const uint8_t *packet)
|
||||
void processDSMBindPacket(uint8_t module, const uint8_t *packet)
|
||||
{
|
||||
uint32_t debugval;
|
||||
if (g_model.moduleData[module].type == MODULE_TYPE_MULTIMODULE && g_model.moduleData[module].multi.rfProtocol == MODULE_SUBTYPE_MULTI_DSM2 && g_model.moduleData[module].subType == MM_RF_DSM2_SUBTYPE_AUTO) {
|
||||
|
||||
if (g_model.moduleData[module].type == MODULE_TYPE_LEMON_DSMP) {
|
||||
|
||||
// save flags
|
||||
g_model.moduleData[module].dsmp.flags = packet[0] & 0x3F;
|
||||
|
||||
// save number of channels
|
||||
uint8_t channels = packet[2];
|
||||
if (channels > 12) { channels = 12; }
|
||||
g_model.moduleData[module].channelsCount = channels - 8;
|
||||
|
||||
TRACE("[SPK] DSMP bind packet: 0x%X / %i",
|
||||
packet[0] & 0x3F, packet[2]);
|
||||
|
||||
storageDirty(EE_MODEL);
|
||||
restartModule(EXTERNAL_MODULE);
|
||||
|
||||
} else if (g_model.moduleData[module].type == MODULE_TYPE_MULTIMODULE &&
|
||||
g_model.moduleData[module].multi.rfProtocol ==
|
||||
MODULE_SUBTYPE_MULTI_DSM2 &&
|
||||
g_model.moduleData[module].subType == MM_RF_DSM2_SUBTYPE_AUTO) {
|
||||
|
||||
// Only sets channel etc when in DSM/AUTO mode
|
||||
int channels = packet[5];
|
||||
if (channels > 12) {
|
||||
@@ -548,12 +569,20 @@ void processDSMBindPacket(uint8_t module, const uint8_t *packet)
|
||||
setTelemetryValue(PROTOCOL_TELEMETRY_SPEKTRUM, (I2C_PSEUDO_TX << 8) + 4, 0, 0, debugval, UNIT_RAW, 0);
|
||||
|
||||
/* Finally stop binding as the rx just told us that it is bound */
|
||||
if (g_model.moduleData[module].type == MODULE_TYPE_MULTIMODULE && g_model.moduleData[module].multi.rfProtocol == MODULE_SUBTYPE_MULTI_DSM2 && moduleState[module].mode == MODULE_MODE_BIND) {
|
||||
setMultiBindStatus(module, MULTI_BIND_FINISHED);
|
||||
if (getModuleMode(module) == MODULE_MODE_BIND) {
|
||||
auto module_type = g_model.moduleData[module].type;
|
||||
if (module_type == MODULE_TYPE_MULTIMODULE &&
|
||||
g_model.moduleData[module].multi.rfProtocol ==
|
||||
MODULE_SUBTYPE_MULTI_DSM2) {
|
||||
setMultiBindStatus(module, MULTI_BIND_FINISHED);
|
||||
} else if (module_type == MODULE_TYPE_LEMON_DSMP) {
|
||||
setModuleMode(module, MODULE_MODE_NORMAL);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void processSpektrumTelemetryData(uint8_t module, uint8_t data, uint8_t* rxBuffer, uint8_t& rxBufferCount)
|
||||
|
||||
void processSpektrumTelemetryData(uint8_t module, uint8_t data,
|
||||
uint8_t *rxBuffer, uint8_t &rxBufferCount)
|
||||
{
|
||||
if (rxBufferCount == 0 && data != 0xAA) {
|
||||
TRACE("[SPK] invalid start byte 0x%02X", data);
|
||||
|
||||
@@ -122,11 +122,14 @@ void processTelemetryData(uint8_t data)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(MULTIMODULE)
|
||||
if (telemetryProtocol == PROTOCOL_TELEMETRY_SPEKTRUM) {
|
||||
processSpektrumTelemetryData(EXTERNAL_MODULE, data, telemetryRxBuffer, telemetryRxBufferCount);
|
||||
if (telemetryProtocol == PROTOCOL_TELEMETRY_SPEKTRUM ||
|
||||
telemetryProtocol == PROTOCOL_TELEMETRY_DSMP) {
|
||||
processSpektrumTelemetryData(EXTERNAL_MODULE, data, telemetryRxBuffer,
|
||||
telemetryRxBufferCount);
|
||||
return;
|
||||
}
|
||||
|
||||
#if defined(MULTIMODULE)
|
||||
if (telemetryProtocol == PROTOCOL_TELEMETRY_FLYSKY_IBUS) {
|
||||
processFlySkyTelemetryData(data, telemetryRxBuffer, telemetryRxBufferCount);
|
||||
return;
|
||||
@@ -489,7 +492,10 @@ void telemetryInit(uint8_t protocol)
|
||||
telemetryPortSetDirectionInput();
|
||||
}
|
||||
#endif
|
||||
|
||||
else if (protocol == PROTOCOL_TELEMETRY_DSMP) {
|
||||
// soft serial
|
||||
telemetryPortInvertedInit(115200);
|
||||
}
|
||||
else {
|
||||
telemetryPortInit(FRSKY_SPORT_BAUDRATE, TELEMETRY_SERIAL_WITHOUT_DMA);
|
||||
#if defined(LUA)
|
||||
|
||||
@@ -198,6 +198,10 @@ inline uint8_t modelTelemetryProtocol()
|
||||
}
|
||||
#endif
|
||||
|
||||
if (isModuleDSMP(EXTERNAL_MODULE)) {
|
||||
return PROTOCOL_TELEMETRY_DSMP;
|
||||
}
|
||||
|
||||
// default choice
|
||||
return PROTOCOL_TELEMETRY_FRSKY_SPORT;
|
||||
}
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
#endif
|
||||
|
||||
#define LEN_EXTERNAL_MODULE_PROTOCOLS "\014"
|
||||
#define TR_EXTERNAL_MODULE_PROTOCOLS "OFF\0 ""PPM\0 ""XJT\0 ""ISRM\0 ""DSM2\0 ""CRSF\0 ""MULTI\0 ""R9M\0 ""R9M ACCESS\0 " TR_MODULE_R9M_LITE "R9ML ACCESS\0""GHST\0 ""R9MLP ACCESS""SBUS\0 ""XJT Lite\0 ""FLYSKY\0 "
|
||||
#define TR_EXTERNAL_MODULE_PROTOCOLS "OFF\0 ""PPM\0 ""XJT\0 ""ISRM\0 ""DSM2\0 ""CRSF\0 ""MULTI\0 ""R9M\0 ""R9M ACCESS\0 " TR_MODULE_R9M_LITE "R9ML ACCESS\0""GHST\0 ""R9MLP ACCESS""SBUS\0 ""XJT Lite\0 ""FLYSKY\0 ""LemonRx DSMP"
|
||||
|
||||
#define LEN_FLYSKY_PROTOCOLS "\007"
|
||||
#define TR_FLYSKY_PROTOCOLS "AFHDS3\0""AFHDS2A"
|
||||
|
||||
Reference in New Issue
Block a user