Halcyon protocol removed. Halcyon vario added instead.
This commit is contained in:
+9
-7
@@ -258,7 +258,7 @@ void parseTelemHubByte(uint8_t byte)
|
||||
// First received barometer altitude => Altitude offset
|
||||
if (!frskyData.hub.baroAltitudeOffset)
|
||||
frskyData.hub.baroAltitudeOffset = -frskyData.hub.baroAltitude_bp;
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY_HUB && g_model.frsky.varioSource == VARIO_SOURCE_DATA) {
|
||||
if (g_model.frsky.varioSource == VARIO_SOURCE_DATA) {
|
||||
evalVario(frskyData.hub.baroAltitude_bp, 0);
|
||||
}
|
||||
frskyData.hub.baroAltitude_bp += frskyData.hub.baroAltitudeOffset;
|
||||
@@ -266,7 +266,7 @@ void parseTelemHubByte(uint8_t byte)
|
||||
break;
|
||||
|
||||
case offsetof(FrskyHubData, baroAltitude_ap):
|
||||
if (g_model.frsky.usrProto == USR_PROTO_HALCYON && g_model.frsky.varioSource == VARIO_SOURCE_DATA) {
|
||||
if (g_model.frsky.varioSource == VARIO_SOURCE_HALCYON) {
|
||||
evalVario(frskyData.hub.baroAltitude_bp-frskyData.hub.baroAltitudeOffset, frskyData.hub.baroAltitude_ap);
|
||||
}
|
||||
break;
|
||||
@@ -367,22 +367,24 @@ void processFrskyPacket(uint8_t *packet)
|
||||
switch (packet[0])
|
||||
{
|
||||
case LINKPKT: // A1/A2/RSSI values
|
||||
{
|
||||
link_counter += 32;
|
||||
frskyData.analog[0].set(packet[1], g_model.frsky.channels[0].type);
|
||||
frskyData.analog[1].set(packet[2], g_model.frsky.channels[1].type);
|
||||
frskyData.rssi[0].set(packet[3]);
|
||||
frskyData.rssi[1].set(packet[4] / 2);
|
||||
frskyStreaming = FRSKY_TIMEOUT10ms; // reset counter only if valid frsky packets are being detected
|
||||
if (g_model.frsky.varioSource >= VARIO_SOURCE_A1) {
|
||||
frskyData.varioSpeed = applyChannelRatio(g_model.frsky.varioSource - VARIO_SOURCE_A1, frskyData.analog[g_model.frsky.varioSource - VARIO_SOURCE_A1].value);
|
||||
}
|
||||
uint8_t varioSource = g_model.frsky.varioSource - VARIO_SOURCE_A1;
|
||||
if (varioSource < 2)
|
||||
frskyData.varioSpeed = applyChannelRatio(varioSource, frskyData.analog[varioSource].value);
|
||||
break;
|
||||
}
|
||||
#if defined(FRSKY_HUB) || defined (WS_HOW_HIGH)
|
||||
case USRPKT: // User Data packet
|
||||
uint8_t numBytes = 3 + (packet[1] & 0x07); // sanitize in case of data corruption leading to buffer overflow
|
||||
for (uint8_t i=3; i<numBytes; i++) {
|
||||
#if defined(FRSKY_HUB)
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY_HUB || g_model.frsky.usrProto == USR_PROTO_HALCYON)
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY)
|
||||
parseTelemHubByte(packet[i]);
|
||||
#endif
|
||||
#if defined(WS_HOW_HIGH)
|
||||
@@ -1444,7 +1446,7 @@ void menuTelemetryFrsky(uint8_t event)
|
||||
#if defined(FRSKY_HUB)
|
||||
else if (s_frsky_view == e_frsky_after_flight) {
|
||||
uint8_t line=1*FH+1;
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY_HUB || g_model.frsky.usrProto == USR_PROTO_HALCYON) {
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY) {
|
||||
// Latitude
|
||||
lcd_putsLeft(line, STR_LATITUDE);
|
||||
displayGpsCoord(line, frskyData.hub.gpsLatitudeNS, frskyData.hub.gpsLatitude_bp, frskyData.hub.gpsLatitude_ap);
|
||||
|
||||
+2
-2
@@ -102,7 +102,7 @@ const pm_char * openLogs()
|
||||
#endif
|
||||
|
||||
#if defined(FRSKY_HUB)
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY_HUB || g_model.frsky.usrProto == USR_PROTO_HALCYON)
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY)
|
||||
f_puts("GPS Date,GPS Time,Long,Lat,Course,GPS Speed,GPS Alt,Baro Alt,Temp1,Temp2,RPM,Fuel,Volts,AccelX,AccelY,AccelZ,", &g_oLogFile);
|
||||
#endif
|
||||
|
||||
@@ -171,7 +171,7 @@ void writeLogs()
|
||||
#endif
|
||||
|
||||
#if defined(FRSKY_HUB)
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY_HUB || g_model.frsky.usrProto == USR_PROTO_HALCYON) {
|
||||
if (g_model.frsky.usrProto == USR_PROTO_FRSKY) {
|
||||
f_printf(&g_oLogFile, "%4d-%02d-%02d,", frskyData.hub.year+2000, frskyData.hub.month, frskyData.hub.day);
|
||||
f_printf(&g_oLogFile, "%02d:%02d:%02d,", frskyData.hub.hour, frskyData.hub.min, frskyData.hub.sec);
|
||||
f_printf(&g_oLogFile, "%03d.%04d%c,", frskyData.hub.gpsLongitude_bp, frskyData.hub.gpsLongitude_ap,
|
||||
|
||||
+1
-1
@@ -3337,7 +3337,7 @@ void menuModelTelemetry(uint8_t event)
|
||||
case ITEM_TELEMETRY_USR_PROTO:
|
||||
lcd_putsLeft(y, STR_PROTO);
|
||||
lcd_putsiAtt(TELEM_COL2, y, STR_VTELPROTO, g_model.frsky.usrProto, attr);
|
||||
if (attr) CHECK_INCDEC_MODELVAR(event, g_model.frsky.usrProto, 0, 3);
|
||||
if (attr) CHECK_INCDEC_MODELVAR(event, g_model.frsky.usrProto, 0, USR_PROTO_LAST);
|
||||
break;
|
||||
|
||||
case ITEM_TELEMETRY_USR_BLADES:
|
||||
|
||||
+5
-10
@@ -122,12 +122,6 @@ enum BeeperMode {
|
||||
int8_t speakerVolume
|
||||
#endif
|
||||
|
||||
enum AdcInput {
|
||||
e_adc_single,
|
||||
e_adc_osmp,
|
||||
e_adc_filtered
|
||||
};
|
||||
|
||||
enum BacklightMode {
|
||||
e_backlight_mode_off = 0,
|
||||
e_backlight_mode_keys,
|
||||
@@ -172,7 +166,7 @@ PACK(typedef struct t_EEGeneral {
|
||||
uint8_t preBeep:1;
|
||||
SPLASH_MODE; /* 3bits */
|
||||
int8_t hapticMode:2; // -2=quiet, -1=only alarms, 0=no keys, 1=all
|
||||
uint8_t filterInput;
|
||||
uint8_t spare3;
|
||||
uint8_t lightAutoOff;
|
||||
uint8_t templateSetup; //RETA order according to chout_ar array
|
||||
int8_t PPM_Multiplier;
|
||||
@@ -458,7 +452,8 @@ enum VarioSource {
|
||||
VARIO_SOURCE_DATA = VARIO_SOURCE_FIRST,
|
||||
VARIO_SOURCE_A1,
|
||||
VARIO_SOURCE_A2,
|
||||
VARIO_SOURCE_LAST = VARIO_SOURCE_A2,
|
||||
VARIO_SOURCE_HALCYON,
|
||||
VARIO_SOURCE_LAST = VARIO_SOURCE_HALCYON,
|
||||
};
|
||||
|
||||
PACK(typedef struct t_FrSkyBarData {
|
||||
@@ -478,9 +473,9 @@ typedef union t_FrSkyScreenData {
|
||||
|
||||
enum FrskyUsrProtocols {
|
||||
USR_PROTO_NONE,
|
||||
USR_PROTO_FRSKY_HUB,
|
||||
USR_PROTO_FRSKY,
|
||||
USR_PROTO_WS_HOW_HIGH,
|
||||
USR_PROTO_HALCYON,
|
||||
USR_PROTO_LAST = USR_PROTO_WS_HOW_HIGH,
|
||||
};
|
||||
|
||||
enum FrskySource {
|
||||
|
||||
@@ -172,8 +172,8 @@
|
||||
#define LEN_VOLTSRC "\003"
|
||||
#define TR_VOLTSRC "---""A1\0""A2\0""FAS""Cel"
|
||||
|
||||
#define LEN_VARIOSRC "\004"
|
||||
#define TR_VARIOSRC "Data""A1\0 ""A2\0"
|
||||
#define LEN_VARIOSRC "\005"
|
||||
#define TR_VARIOSRC "FrSky\0 ""A1\0 ""A2\0 ""Halcyon"
|
||||
|
||||
#define LEN_VSCREEN "\010"
|
||||
#define TR_VSCREEN "Hodnota ""Ukazatel"
|
||||
|
||||
@@ -173,11 +173,11 @@
|
||||
#define LEN_VOLTSRC "\003"
|
||||
#define TR_VOLTSRC "---""A1\0""A2\0""FAS""Cel"
|
||||
|
||||
#define LEN_VARIOSRC "\005"
|
||||
#define TR_VARIOSRC "Daten""A1\0 ""A2\0 "
|
||||
#define LEN_VARIOSRC "\007"
|
||||
#define TR_VARIOSRC "FrSky\0 ""A1\0 ""A2\0 ""Halcyon"
|
||||
|
||||
#define LEN_VSCREEN "\004"
|
||||
#define TR_VSCREEN "Wert""Str."
|
||||
#define LEN_VSCREEN "\004"
|
||||
#define TR_VSCREEN "Wert""Str."
|
||||
|
||||
#define LEN_GPSFORMAT "\004"
|
||||
#define TR_GPSFORMAT "HMS NMEA"
|
||||
|
||||
@@ -182,13 +182,13 @@
|
||||
#define TR_VALARMFN "<>"
|
||||
|
||||
#define LEN_VTELPROTO "\007"
|
||||
#define TR_VTELPROTO "None\0 ""Hub\0 ""WSHHigh""Halcyon"
|
||||
#define TR_VTELPROTO "None\0 ""Hub\0 ""WSHHigh"
|
||||
|
||||
#define LEN_VOLTSRC "\003"
|
||||
#define TR_VOLTSRC "---""A1\0""A2\0""FAS""Cel"
|
||||
|
||||
#define LEN_VARIOSRC "\004"
|
||||
#define TR_VARIOSRC "Data""A1\0 ""A2\0"
|
||||
#define LEN_VARIOSRC "\007"
|
||||
#define TR_VARIOSRC "FrSky\0 ""A1\0 ""A2\0 ""Halcyon"
|
||||
|
||||
#define LEN_VSCREEN "\004"
|
||||
#define TR_VSCREEN "Nums""Bars"
|
||||
|
||||
@@ -165,8 +165,8 @@
|
||||
#define LEN_VOLTSRC "\003"
|
||||
#define TR_VOLTSRC "---""A1\0""A2\0""FAS""Cel"
|
||||
|
||||
#define LEN_VARIOSRC "\004"
|
||||
#define TR_VARIOSRC "Data""A1\0 ""A2\0"
|
||||
#define LEN_VARIOSRC "\007"
|
||||
#define TR_VARIOSRC "FrSky\0 ""A1\0 ""A2\0 ""Halcyon"
|
||||
|
||||
#define LEN_VSCREEN "\004"
|
||||
#define TR_VSCREEN "Nums""Bars"
|
||||
|
||||
@@ -173,8 +173,8 @@
|
||||
#define LEN_VOLTSRC "\003"
|
||||
#define TR_VOLTSRC "---""A1\0""A2\0""FAS""Cel"
|
||||
|
||||
#define LEN_VARIOSRC "\004"
|
||||
#define TR_VARIOSRC "Data""A1\0 ""A2\0"
|
||||
#define LEN_VARIOSRC "\007"
|
||||
#define TR_VARIOSRC "FrSky\0 ""A1\0 ""A2\0 ""Halcyon"
|
||||
|
||||
#define LEN_VSCREEN "\004"
|
||||
#define TR_VSCREEN "Val.""Bars"
|
||||
|
||||
@@ -171,8 +171,8 @@
|
||||
#define LEN_VOLTSRC "\003"
|
||||
#define TR_VOLTSRC "---""A1\0""A2\0""FAS""Cel"
|
||||
|
||||
#define LEN_VARIOSRC "\004"
|
||||
#define TR_VARIOSRC "Data""A1\0 ""A2\0"
|
||||
#define LEN_VARIOSRC "\007"
|
||||
#define TR_VARIOSRC "FrSky\0 ""A1\0 ""A2\0 ""Halcyon"
|
||||
|
||||
#define LEN_VSCREEN "\004"
|
||||
#define TR_VSCREEN "Nums""Bars"
|
||||
|
||||
@@ -173,8 +173,8 @@
|
||||
#define LEN_VOLTSRC "\003"
|
||||
#define TR_VOLTSRC "---""A1\0""A2\0""FAS""Cel"
|
||||
|
||||
#define LEN_VARIOSRC "\004"
|
||||
#define TR_VARIOSRC "Data""A1\0 ""A2\0"
|
||||
#define LEN_VARIOSRC "\007"
|
||||
#define TR_VARIOSRC "FrSky\0 ""A1\0 ""A2\0 ""Halcyon"
|
||||
|
||||
#define LEN_VSCREEN "\004"
|
||||
#define TR_VSCREEN "Nums""Bars"
|
||||
|
||||
@@ -173,8 +173,8 @@
|
||||
#define LEN_VOLTSRC "\003"
|
||||
#define TR_VOLTSRC "---""A1\0""A2\0""FAS""Cel"
|
||||
|
||||
#define LEN_VARIOSRC "\004"
|
||||
#define TR_VARIOSRC "Data""A1\0 ""A2\0"
|
||||
#define LEN_VARIOSRC "\007"
|
||||
#define TR_VARIOSRC "FrSky\0 ""A1\0 ""A2\0 ""Halcyon"
|
||||
|
||||
#define LEN_VSCREEN "\004"
|
||||
#define TR_VSCREEN "Nums""Bars"
|
||||
|
||||
Reference in New Issue
Block a user