internal module continued

This commit is contained in:
3djc
2019-08-29 16:03:31 +02:00
parent 1c8e98f7ce
commit 340dfbc538
17 changed files with 47 additions and 3 deletions
+4
View File
@@ -269,7 +269,11 @@ PACK(struct ScriptData {
*/
PACK(struct RssiAlarmData {
int8_t disabled:1;
#if defined (PCBNV14)
uint8_t flysky_telemetry:1; // if set for FlySky receivers use native RSSI values instead of rescaled ones
#else
int8_t spare:1;
#endif
int8_t warning:6;
int8_t spare2:2;
int8_t critical:6;
+19 -2
View File
@@ -497,7 +497,7 @@ class ModuleWindow : public Window {
// Module Type
new StaticText(this, grid.getLabelSlot(true), STR_MODE);
moduleChoice = new Choice(this, grid.getFieldSlot(2, 0), STR_INTERNAL_MODULE_PROTOCOLS,
moduleChoice = new Choice(this, grid.getFieldSlot(), STR_INTERNAL_MODULE_PROTOCOLS,
MODULE_TYPE_NONE, MODULE_TYPE_COUNT - 1,
GET_DEFAULT(g_model.moduleData[moduleIdx].type),
[=](int32_t newValue) {
@@ -513,7 +513,24 @@ class ModuleWindow : public Window {
FormField::link(previousField, moduleChoice);
// Module parameters
if (isModuleXJT(moduleIdx)) {
if (isModuleFlysky(moduleIdx)) {
grid.nextLine();
rfChoice = new Choice(this, grid.getFieldSlot(), STR_FLYSKY_PROTOCOLS, 0, 3,
GET_DEFAULT(g_model.moduleData[moduleIdx].flysky.mode),
[=](int32_t newValue) -> void {
g_model.moduleData[moduleIdx].flysky.mode = newValue;
SET_DIRTY();
//TODO moduleFlagBackNormal(moduleIdx);
//TODO onFlySkyReceiverSetPulse(INTERNAL_MODULE, newValue);
});
#if defined (PCBNV14)
grid.nextLine();
new StaticText(this, grid.getLabelSlot(true), STR_FLYSKY_TELEMETRY);
new CheckBox(this, grid.getFieldSlot(), GET_SET_DEFAULT(g_model.rssiAlarms.flysky_telemetry));
#endif
}
else if (isModuleXJT(moduleIdx)) {
auto xjtChoice = new Choice(this, grid.getFieldSlot(2, 1), STR_XJT_ACCST_RF_PROTOCOLS, MODULE_SUBTYPE_PXX1_OFF, MODULE_SUBTYPE_PXX1_ACCST_LR12,
GET_SET_DEFAULT(g_model.moduleData[moduleIdx].rfProtocol));
xjtChoice->setAvailableHandler([](int index) {
+5
View File
@@ -568,6 +568,11 @@ bool isInternalModuleAvailable(int moduleType)
if (moduleType == MODULE_TYPE_NONE)
return true;
#if defined(PCBNV14)
if (moduleType == MODULE_TYPE_FLYSKY)
return true;
#endif
if (moduleType == MODULE_TYPE_XJT_PXX1) {
#if defined(PXX1) && defined(INTERNAL_MODULE_PXX1)
return !isModuleUsingSport(EXTERNAL_MODULE, g_model.moduleData[EXTERNAL_MODULE].type);
+2
View File
@@ -58,6 +58,7 @@ ISTR(USBMODES);
ISTR(JACKMODES);
ISTR(VFAILSAFE);
ISTR(VTRAINERMODES);
ISTR(FLYSKY_PROTOCOLS);
ISTR(EXTERNAL_MODULE_PROTOCOLS);
ISTR(INTERNAL_MODULE_PROTOCOLS);
ISTR(R9M_REGION);
@@ -628,6 +629,7 @@ const char STR_ADJUST_RTC[] = TR_ADJUST_RTC;
const char STR_GPS[] = TR_GPS;
const char STR_GPSCOORD[] = TR_GPSCOORD;
const char STR_VARIO[] = TR_VARIO;
const char STR_FLYSKY_TELEMETRY[] = TR_FLYSKY_TELEMETRY;
const char STR_PITCH_AT_ZERO[] = TR_PITCH_AT_ZERO;
const char STR_PITCH_AT_MAX[] = TR_PITCH_AT_MAX;
const char STR_REPEAT_AT_ZERO[] = TR_REPEAT_AT_ZERO;
+2
View File
@@ -164,6 +164,7 @@ extern const char STR_XJT_ACCST_RF_PROTOCOLS[];
extern const char STR_ISRM_RF_PROTOCOLS[];
extern const char STR_R9M_PXX2_RF_PROTOCOLS[];
extern const char STR_DSM_PROTOCOLS[];
extern const char STR_FLYSKY_PROTOCOLS[];
#if defined(MULTIMODULE)
extern const char STR_MULTI_PROTOCOLS[];
@@ -315,6 +316,7 @@ extern const char STR_ADJUST_RTC[];
extern const char STR_GPS[];
extern const char STR_GPSCOORD[];
extern const char STR_VARIO[];
extern const char STR_FLYSKY_TELEMETRY[];
extern const char STR_PITCH_AT_ZERO[];
extern const char STR_PITCH_AT_MAX[];
extern const char STR_REPEAT_AT_ZERO[];
+1
View File
@@ -685,6 +685,7 @@
#define TR_SYNCMENU "[Sync]"
#define TR_LIMIT INDENT"Limit"
#define TR_MINRSSI "Min Rssi"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Zem. šířka"
#define TR_LONGITUDE "Zem. délka"
#define TR_GPSCOORD "GPS souřadnice"
+1
View File
@@ -549,6 +549,7 @@
#define TR_MEMORYWARNING INDENT "Speicher voll"
#define TR_ALARMWARNING TR(INDENT "Alle Töne aus?", INDENT "Alle Töne ganz aus?")
#define TR_RSSISHUTDOWNALARM TR(INDENT "Rssi-Chk bei aus", INDENT "Prüfe RSSI bei Ausschalten")
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_MODEL_STILL_POWERED "Model still powered"
#define TR_MODEL_SHUTDOWN "Shutdown ?"
#define TR_PRESS_ENTER_TO_CONFIRM "Press enter to confirm"
+1
View File
@@ -692,6 +692,7 @@
#define TR_SYNCMENU "[Sync]"
#define TR_LIMIT INDENT "Limit"
#define TR_MINRSSI "Min Rssi"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Latitude"
#define TR_LONGITUDE "Longitude"
#define TR_GPSCOORD TR("GPS Coords", INDENT "Coordinate format")
+1
View File
@@ -717,6 +717,7 @@
#define TR_SYNCMENU "Sync " TR_ENTER
#define TR_LIMIT INDENT"Limite"
#define TR_MINRSSI "Min Rssi"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Latitud"
#define TR_LONGITUDE "Longitud"
#define TR_GPSCOORD TR("GPS Coords", "GPS formato coordenadas")
+1
View File
@@ -710,6 +710,7 @@
#define TR_SYNCMENU "[Sync]"
#define TR_LIMIT INDENT"Limit"
#define TR_MINRSSI "Min Rssi"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Latitude"
#define TR_LONGITUDE "Longitude"
#define TR_GPSCOORD TR("GPS Coords", "GPS coordinate format")
+1
View File
@@ -558,6 +558,7 @@
#define TR_MEMORYWARNING INDENT "Mémoire pleine"
#define TR_ALARMWARNING TR(INDENT "Silence", INDENT "Sons désactivés")
#define TR_RSSISHUTDOWNALARM TR(INDENT "RSSI extinct.", INDENT "Vérif RSSI à l'extinction")
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_MODEL_STILL_POWERED TR("Modèle allumé", "Modèle encore allumé")
#define TR_MODEL_SHUTDOWN "Eteindre ?"
#define TR_PRESS_ENTER_TO_CONFIRM "Presser [Enter] pour confirmer"
+1
View File
@@ -714,6 +714,7 @@
#define TR_SYNCMENU "[Sync]"
#define TR_LIMIT INDENT "Limiti"
#define TR_MINRSSI "Min Rssi"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Latitud."
#define TR_LONGITUDE "Longitud."
#define TR_GPSCOORD TR("GPS Coords", INDENT "Formato Coordinate")
+1
View File
@@ -699,6 +699,7 @@ TR_GYR_VSRCRAW
#define TR_SYNCMENU "Sync [MENU]"
#define TR_LIMIT INDENT "Grenzen"
#define TR_MINRSSI "Min. RSSI"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Latitude"
#define TR_LONGITUDE "Longitude"
#define TR_GPSCOORD TR("GPS-coord.", "GPS-coordinaten format")
+1
View File
@@ -711,6 +711,7 @@
#define TR_SYNCMENU "[Synch]"
#define TR_LIMIT INDENT "Limit"
#define TR_MINRSSI "Min Rssi"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Szer. geo."
#define TR_LONGITUDE "Dł. geo."
#define TR_GPSCOORD TR("Koord.GPS","Typ koordynat GPS")
+1
View File
@@ -701,6 +701,7 @@
#define TR_MULTI_SERVOFREQ TR("Servo rate", "Servo update rate")
#define TR_LIMIT INDENT"Limite"
#define TR_MINRSSI "Min Rssi"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Latitude"
#define TR_LONGITUDE "Longitude"
#define TR_GPSCOORD "Gps Coords"
+1
View File
@@ -710,6 +710,7 @@
#define TR_MULTI_SERVOFREQ TR("Servo rate", "Servo update rate")
#define TR_LIMIT INDENT "Nivå"
#define TR_MINRSSI "Min Rssi"
#define TR_FLYSKY_TELEMETRY TR("FlySky RSSI #", "Use FlySky RSSI value without rescalling")
#define TR_LATITUDE "Breddgrad"
#define TR_LONGITUDE "Längdgrad"
#define TR_GPSCOORD TR("GPS-Koordinater", "GPS-koordinatsystem")
+4 -1
View File
@@ -95,7 +95,10 @@
#endif
#define LEN_EXTERNAL_MODULE_PROTOCOLS "\014"
#define TR_EXTERNAL_MODULE_PROTOCOLS "OFF\0 ""PPM\0 ""XJT\0 ""ISRM\0 ""DSM2\0 ""CRSF\0 ""MULT\0 ""R9M\0 ""R9M ACCESS\0 " TR_MODULE_R9M_LITE "R9ML ACCESS\0""R9MLP\0 ""R9MLP ACCESS""SBUS\0 ""XJT Lite"
#define TR_EXTERNAL_MODULE_PROTOCOLS "OFF\0 ""PPM\0 ""XJT\0 ""ISRM\0 ""DSM2\0 ""CRSF\0 ""MULT\0 ""R9M\0 ""R9M ACCESS\0 " TR_MODULE_R9M_LITE "R9ML ACCESS\0""R9MLP\0 ""R9MLP ACCESS""SBUS\0 ""XJT Lite\0 ""FLYSKY "
#define LEN_FLYSKY_PROTOCOLS "\006"
#define TR_FLYSKY_PROTOCOLS " PWM+i"" PWM+s"" PPM+i"" PPM+s"
#define LEN_INTERNAL_MODULE_PROTOCOLS LEN_EXTERNAL_MODULE_PROTOCOLS
#define TR_INTERNAL_MODULE_PROTOCOLS TR_EXTERNAL_MODULE_PROTOCOLS