Add support for CRSF bat% (#7377)

This commit is contained in:
3djc
2020-02-12 16:51:15 +01:00
committed by GitHub
parent a2599da189
commit 0cbb8107af
13 changed files with 40 additions and 25 deletions
+28 -25
View File
@@ -21,31 +21,32 @@
#include "opentx.h"
const CrossfireSensor crossfireSensors[] = {
{LINK_ID, 0, ZSTR_RX_RSSI1, UNIT_DB, 0},
{LINK_ID, 1, ZSTR_RX_RSSI2, UNIT_DB, 0},
{LINK_ID, 2, ZSTR_RX_QUALITY, UNIT_PERCENT, 0},
{LINK_ID, 3, ZSTR_RX_SNR, UNIT_DB, 0},
{LINK_ID, 4, ZSTR_ANTENNA, UNIT_RAW, 0},
{LINK_ID, 5, ZSTR_RF_MODE, UNIT_RAW, 0},
{LINK_ID, 6, ZSTR_TX_POWER, UNIT_MILLIWATTS, 0},
{LINK_ID, 7, ZSTR_TX_RSSI, UNIT_DB, 0},
{LINK_ID, 8, ZSTR_TX_QUALITY, UNIT_PERCENT, 0},
{LINK_ID, 9, ZSTR_TX_SNR, UNIT_DB, 0},
{BATTERY_ID, 0, ZSTR_BATT, UNIT_VOLTS, 1},
{BATTERY_ID, 1, ZSTR_CURR, UNIT_AMPS, 1},
{BATTERY_ID, 2, ZSTR_CAPACITY, UNIT_MAH, 0},
{GPS_ID, 0, ZSTR_GPS, UNIT_GPS_LATITUDE, 0},
{GPS_ID, 0, ZSTR_GPS, UNIT_GPS_LONGITUDE, 0},
{GPS_ID, 2, ZSTR_GSPD, UNIT_KMH, 1},
{GPS_ID, 3, ZSTR_HDG, UNIT_DEGREE, 3},
{GPS_ID, 4, ZSTR_ALT, UNIT_METERS, 0},
{GPS_ID, 5, ZSTR_SATELLITES, UNIT_RAW, 0},
{ATTITUDE_ID, 0, ZSTR_PITCH, UNIT_RADIANS, 3},
{ATTITUDE_ID, 1, ZSTR_ROLL, UNIT_RADIANS, 3},
{ATTITUDE_ID, 2, ZSTR_YAW, UNIT_RADIANS, 3},
{FLIGHT_MODE_ID, 0, ZSTR_FLIGHT_MODE, UNIT_TEXT, 0},
{CF_VARIO_ID, 0, ZSTR_VSPD, UNIT_METERS_PER_SECOND, 2},
{0, 0, "UNKNOWN", UNIT_RAW, 0},
{LINK_ID, 0, ZSTR_RX_RSSI1, UNIT_DB, 0},
{LINK_ID, 1, ZSTR_RX_RSSI2, UNIT_DB, 0},
{LINK_ID, 2, ZSTR_RX_QUALITY, UNIT_PERCENT, 0},
{LINK_ID, 3, ZSTR_RX_SNR, UNIT_DB, 0},
{LINK_ID, 4, ZSTR_ANTENNA, UNIT_RAW, 0},
{LINK_ID, 5, ZSTR_RF_MODE, UNIT_RAW, 0},
{LINK_ID, 6, ZSTR_TX_POWER, UNIT_MILLIWATTS, 0},
{LINK_ID, 7, ZSTR_TX_RSSI, UNIT_DB, 0},
{LINK_ID, 8, ZSTR_TX_QUALITY, UNIT_PERCENT, 0},
{LINK_ID, 9, ZSTR_TX_SNR, UNIT_DB, 0},
{BATTERY_ID, 0, ZSTR_BATT, UNIT_VOLTS, 1},
{BATTERY_ID, 1, ZSTR_CURR, UNIT_AMPS, 1},
{BATTERY_ID, 2, ZSTR_CAPACITY, UNIT_MAH, 0},
{BATTERY_ID, 3, ZSTR_BATT_PERCENT, UNIT_PERCENT, 0},
{GPS_ID, 0, ZSTR_GPS, UNIT_GPS_LATITUDE, 0},
{GPS_ID, 0, ZSTR_GPS, UNIT_GPS_LONGITUDE, 0},
{GPS_ID, 2, ZSTR_GSPD, UNIT_KMH, 1},
{GPS_ID, 3, ZSTR_HDG, UNIT_DEGREE, 3},
{GPS_ID, 4, ZSTR_ALT, UNIT_METERS, 0},
{GPS_ID, 5, ZSTR_SATELLITES, UNIT_RAW, 0},
{ATTITUDE_ID, 0, ZSTR_PITCH, UNIT_RADIANS, 3},
{ATTITUDE_ID, 1, ZSTR_ROLL, UNIT_RADIANS, 3},
{ATTITUDE_ID, 2, ZSTR_YAW, UNIT_RADIANS, 3},
{FLIGHT_MODE_ID, 0, ZSTR_FLIGHT_MODE, UNIT_TEXT, 0},
{CF_VARIO_ID, 0, ZSTR_VSPD, UNIT_METERS_PER_SECOND, 2},
{0, 0, "UNKNOWN", UNIT_RAW, 0},
};
const CrossfireSensor & getCrossfireSensor(uint8_t id, uint8_t subId)
@@ -157,6 +158,8 @@ void processCrossfireTelemetryFrame()
processCrossfireTelemetryValue(BATT_CURRENT_INDEX, value);
if (getCrossfireTelemetryValue<3>(7, value))
processCrossfireTelemetryValue(BATT_CAPACITY_INDEX, value);
if (getCrossfireTelemetryValue<1>(10, value))
processCrossfireTelemetryValue(BATT_REMAINING_INDEX, value);
break;
case ATTITUDE_ID:
+1
View File
@@ -64,6 +64,7 @@ enum CrossfireSensorIndexes {
BATT_VOLTAGE_INDEX,
BATT_CURRENT_INDEX,
BATT_CAPACITY_INDEX,
BATT_REMAINING_INDEX,
GPS_LATITUDE_INDEX,
GPS_LONGITUDE_INDEX,
GPS_GROUND_SPEED_INDEX,
+1
View File
@@ -1199,6 +1199,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1205,6 +1205,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1203,6 +1203,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1224,6 +1224,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1212,6 +1212,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1227,6 +1227,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1221,6 +1221,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1213,6 +1213,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1220,6 +1220,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1209,6 +1209,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"
+1
View File
@@ -1220,6 +1220,7 @@
#define ZSTR_CURR "Curr"
#define ZSTR_CAPACITY "Capa"
#define ZSTR_VFAS "VFAS"
#define ZSTR_BATT_PERCENT "Bat%"
#define ZSTR_ASPD "ASpd"
#define ZSTR_GSPD "GSpd"
#define ZSTR_HDG "Hdg"