New protocol and telemetry: FlySky AFHDS2A (#3948)
* New protocol for multimode FlySky AFHDS2A * Also add AFHDS2A protocol to companion * fix compile error
This commit is contained in:
committed by
Bertrand Songis
parent
d218b33609
commit
92dde79dec
@@ -671,6 +671,9 @@ bool menuModelSetup(event_t event)
|
||||
case MM_RF_PROTO_HONTAI:
|
||||
lcdDrawTextAtIndex(MODEL_SETUP_4TH_COLUMN, y, STR_SUBTYPE_HONTAI, g_model.moduleData[EXTERNAL_MODULE].subType, menuHorizontalPosition==2 ? attr : 0);
|
||||
break;
|
||||
case MM_RF_PROTO_FS_AFHDS2A:
|
||||
lcdDrawTextAtIndex(MODEL_SETUP_4TH_COLUMN, y, STR_SUBTYPE_AFHDS2A , g_model.moduleData[EXTERNAL_MODULE].subType, menuHorizontalPosition==2 ? attr : 0);
|
||||
break;
|
||||
case MM_RF_CUSTOM_SELECTED:
|
||||
lcdDrawNumber(MODEL_SETUP_4TH_COLUMN, y, g_model.moduleData[EXTERNAL_MODULE].getMultiProtocol(false), menuHorizontalPosition==2 ? attr : 0, 2);
|
||||
lcdDrawNumber(MODEL_SETUP_4TH_COLUMN + MODEL_SETUP_BIND_OFS, y, g_model.moduleData[EXTERNAL_MODULE].subType, menuHorizontalPosition==3 ? attr : 0, 2);
|
||||
@@ -738,6 +741,7 @@ bool menuModelSetup(event_t event)
|
||||
case MM_RF_PROTO_MT99XX:
|
||||
case MM_RF_PROTO_FRSKY:
|
||||
case MM_RF_PROTO_DSM2:
|
||||
case MM_RF_PROTO_FS_AFHDS2A:
|
||||
CHECK_INCDEC_MODELVAR(event, g_model.moduleData[EXTERNAL_MODULE].subType, 0, 3);
|
||||
break;
|
||||
case MM_RF_PROTO_MJXQ:
|
||||
@@ -892,6 +896,8 @@ bool menuModelSetup(event_t event)
|
||||
}
|
||||
#if defined(MULTIMODULE)
|
||||
else if (IS_MODULE_MULTIMODULE(moduleIdx)) {
|
||||
int optionValue = g_model.moduleData[moduleIdx].multi.optionValue;
|
||||
|
||||
switch (g_model.moduleData[moduleIdx].getMultiProtocol(true))
|
||||
{
|
||||
case MM_RF_PROTO_FRSKY:
|
||||
@@ -901,13 +907,22 @@ bool menuModelSetup(event_t event)
|
||||
case MM_RF_PROTO_HUBSAN:
|
||||
lcdDrawText(MENUS_MARGIN_LEFT, y, STR_MULTI_VIDFREQ);
|
||||
break;
|
||||
case MM_RF_PROTO_FS_AFHDS2A:
|
||||
lcdDrawText(MENUS_MARGIN_LEFT, y, STR_MULTI_SERVOFREQ);
|
||||
optionValue = 50 + 5 * optionValue;
|
||||
break;
|
||||
default:
|
||||
lcdDrawText(MENUS_MARGIN_LEFT, y, STR_MULTI_OPTION);
|
||||
break;
|
||||
}
|
||||
lcdDrawNumber(MODEL_SETUP_2ND_COLUMN, y, g_model.moduleData[moduleIdx].multi.optionValue, LEFT | attr);
|
||||
if (attr)
|
||||
CHECK_INCDEC_MODELVAR(event, g_model.moduleData[moduleIdx].multi.optionValue, -128, 127);
|
||||
lcdDrawNumber(MODEL_SETUP_2ND_COLUMN, y, optionValue, LEFT | attr);
|
||||
if (attr) {
|
||||
if (g_model.moduleData[EXTERNAL_MODULE].getMultiProtocol(true) == MM_RF_PROTO_FS_AFHDS2A) {
|
||||
CHECK_INCDEC_MODELVAR(event, g_model.moduleData[moduleIdx].multi.optionValue, 0, 70);
|
||||
} else {
|
||||
CHECK_INCDEC_MODELVAR(event, g_model.moduleData[moduleIdx].multi.optionValue, -128, 127);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user