[taranis] Telemetry
This commit is contained in:
+4
-4
@@ -181,9 +181,9 @@ void writeLogs()
|
||||
f_printf(&g_oLogFile, "%03d.%04d%c,", frskyData.hub.gpsLatitude_bp, frskyData.hub.gpsLatitude_ap,
|
||||
frskyData.hub.gpsLatitudeNS ? frskyData.hub.gpsLatitudeNS : '-');
|
||||
f_printf(&g_oLogFile, "%03d.%d,", frskyData.hub.gpsCourse_bp, frskyData.hub.gpsCourse_ap);
|
||||
f_printf(&g_oLogFile, "%d.%d,", frskyData.hub.gpsSpeed_bp, frskyData.hub.gpsSpeed_ap);
|
||||
f_printf(&g_oLogFile, "%03d.%d,", frskyData.hub.gpsAltitude_bp, frskyData.hub.gpsAltitude_ap);
|
||||
f_printf(&g_oLogFile, "%d.%d,", frskyData.hub.baroAltitude_bp, frskyData.hub.baroAltitude_ap);
|
||||
f_printf(&g_oLogFile, "%d.%d,", TELEMETRY_GPS_SPEED_BP, TELEMETRY_GPS_SPEED_AP);
|
||||
f_printf(&g_oLogFile, "%03d.%d,", TELEMETRY_GPS_ALT_BP, TELEMETRY_GPS_ALT_AP);
|
||||
f_printf(&g_oLogFile, "%d.%d,", TELEMETRY_ALT_BP, TELEMETRY_ALT_AP);
|
||||
f_printf(&g_oLogFile, "%d,%d,", frskyData.hub.temperature1, frskyData.hub.temperature2);
|
||||
f_printf(&g_oLogFile, "%d,", frskyData.hub.rpm);
|
||||
f_printf(&g_oLogFile, "%d,", frskyData.hub.fuelLevel);
|
||||
@@ -194,7 +194,7 @@ void writeLogs()
|
||||
|
||||
#if defined(WS_HOW_HIGH)
|
||||
if (g_model.frsky.usrProto == USR_PROTO_WS_HOW_HIGH) {
|
||||
f_printf(&g_oLogFile, "%d,", frskyData.hub.baroAltitude_bp);
|
||||
f_printf(&g_oLogFile, "%d,", TELEMETRY_GPS_ALT_BP);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
+7
-7
@@ -51,13 +51,14 @@ lcdint_t applyChannelRatio(uint8_t channel, lcdint_t val)
|
||||
#if defined(FRSKY_HUB) || defined(WS_HOW_HIGH)
|
||||
void checkMinMaxAltitude()
|
||||
{
|
||||
if (frskyData.hub.baroAltitude_bp > frskyData.hub.maxAltitude)
|
||||
frskyData.hub.maxAltitude = frskyData.hub.baroAltitude_bp;
|
||||
if (frskyData.hub.baroAltitude_bp < frskyData.hub.minAltitude)
|
||||
frskyData.hub.minAltitude = frskyData.hub.baroAltitude_bp;
|
||||
if (TELEMETRY_ALT_BP > frskyData.hub.maxAltitude)
|
||||
frskyData.hub.maxAltitude = TELEMETRY_ALT_BP;
|
||||
if (TELEMETRY_ALT_BP < frskyData.hub.minAltitude)
|
||||
frskyData.hub.minAltitude = TELEMETRY_ALT_BP;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(VARIO)
|
||||
#if defined(VARIO) && (defined(FRSKY_HUB) || defined(WS_HOW_HIGH))
|
||||
void evalVario(int16_t altitude_bp, uint16_t altitude_ap)
|
||||
{
|
||||
int32_t varioAltitude_cm = (int32_t)altitude_bp * 100 + (altitude_bp > 0 ? altitude_ap : -altitude_ap);
|
||||
@@ -73,7 +74,6 @@ void evalVario(int16_t altitude_bp, uint16_t altitude_ap)
|
||||
#else
|
||||
#define evalVario(...)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(FRSKY_HUB)
|
||||
void extractLatitudeLongitude(uint32_t * latitude, uint32_t * longitude)
|
||||
@@ -111,7 +111,7 @@ void getGpsDistance()
|
||||
dist = frskyData.hub.distFromEarthAxis * angle / 1000000;
|
||||
result += dist*dist;
|
||||
|
||||
dist = abs(frskyData.hub.baroAltitudeOffset ? frskyData.hub.baroAltitude_bp : frskyData.hub.gpsAltitude_bp);
|
||||
dist = abs(frskyData.hub.baroAltitudeOffset ? TELEMETRY_ALT_BP : TELEMETRY_GPS_ALT_BP);
|
||||
result += dist*dist;
|
||||
|
||||
frskyData.hub.gpsDistance = isqrt32(result);
|
||||
|
||||
+3
-3
@@ -887,16 +887,16 @@ int16_t getValue(uint8_t i)
|
||||
else if(i<MIXSRC_FIRST_TELEM-1+TELEM_RSSI_RX) return frskyData.rssi[0].value;
|
||||
else if(i<MIXSRC_FIRST_TELEM-1+TELEM_A2) return frskyData.analog[i+1-MIXSRC_FIRST_TELEM+1-TELEM_A1].value;
|
||||
#if defined(FRSKY_HUB) || defined(WS_HOW_HIGH)
|
||||
else if(i<MIXSRC_FIRST_TELEM-1+TELEM_ALT) return frskyData.hub.baroAltitude_bp;
|
||||
else if(i<MIXSRC_FIRST_TELEM-1+TELEM_ALT) return TELEMETRY_ALT_BP;
|
||||
#endif
|
||||
#if defined(FRSKY_HUB)
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_RPM) return frskyData.hub.rpm;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_FUEL) return frskyData.hub.fuelLevel;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_T1) return frskyData.hub.temperature1;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_T2) return frskyData.hub.temperature2;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_SPEED) return frskyData.hub.gpsSpeed_bp;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_SPEED) return TELEMETRY_GPS_SPEED_BP;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_DIST) return frskyData.hub.gpsDistance;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_GPSALT) return frskyData.hub.gpsAltitude_bp;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_GPSALT) return TELEMETRY_GPS_ALT_BP;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_CELL) return (int16_t)frskyData.hub.minCellVolts * 2;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_CELLS_SUM) return (int16_t)frskyData.hub.cellsSum;
|
||||
else if (i<MIXSRC_FIRST_TELEM-1+TELEM_VFAS) return (int16_t)frskyData.hub.vfas;
|
||||
|
||||
@@ -205,5 +205,12 @@ bool FRSKY_alarmRaised(uint8_t idx);
|
||||
|
||||
void resetTelemetry();
|
||||
|
||||
#define TELEMETRY_ALT_BP frskyData.hub.baroAltitude_bp
|
||||
#define TELEMETRY_ALT_AP frskyData.hub.baroAltitude_ap
|
||||
#define TELEMETRY_GPS_ALT_AP frskyData.hub.gpsAltitude_ap
|
||||
#define TELEMETRY_GPS_ALT_BP frskyData.hub.gpsAltitude_bp
|
||||
#define TELEMETRY_GPS_SPEED_BP frskyData.hub.gpsSpeed_bp
|
||||
#define TELEMETRY_GPS_SPEED_AP frskyData.hub.gpsSpeed_ap
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user