diff --git a/src/main/drivers/max7456_symbols.h b/src/main/drivers/max7456_symbols.h index 184b645956..b66af675ca 100644 --- a/src/main/drivers/max7456_symbols.h +++ b/src/main/drivers/max7456_symbols.h @@ -109,6 +109,7 @@ #define SYM_GLAND 0xB7 #define SYM_GLAND1 0xB8 #define SYM_HOME_DIST 0xA0 +#define SYM_TRIP_DIST 0x22 // Gimbal active Mode #define SYM_GIMBAL 0x16 diff --git a/src/main/io/osd.c b/src/main/io/osd.c index 9ae527ca76..3425cbc90d 100755 --- a/src/main/io/osd.c +++ b/src/main/io/osd.c @@ -923,6 +923,11 @@ static bool osdDrawSingleElement(uint8_t item) } break; + case OSD_TRIP_DIST: + buff[0] = SYM_TRIP_DIST; + osdFormatDistanceSymbol(buff + 1, getTotalTravelDistance()); + break; + case OSD_HEADING: { int16_t h = DECIDEGREES_TO_DEGREES(attitude.values.yaw); @@ -1538,8 +1543,8 @@ static uint8_t osdIncElementIndex(uint8_t elementIndex) if (elementIndex == OSD_CURRENT_DRAW) { elementIndex = OSD_GPS_SPEED; } - if (elementIndex == OSD_EFFICIENCY_WH_PER_KM) { - STATIC_ASSERT(OSD_EFFICIENCY_WH_PER_KM == OSD_ITEM_COUNT - 1, OSD_EFFICIENCY_MWH_PER_KM_not_last_element); + if (elementIndex == OSD_TRIP_DIST) { + STATIC_ASSERT(OSD_TRIP_DIST == OSD_ITEM_COUNT - 1, OSD_TRIP_DIST_not_last_element); elementIndex = OSD_ITEM_COUNT; } } @@ -1553,8 +1558,8 @@ static uint8_t osdIncElementIndex(uint8_t elementIndex) if (elementIndex == OSD_GPS_HDOP) { elementIndex = OSD_MAIN_BATT_CELL_VOLTAGE; } - if (elementIndex == OSD_EFFICIENCY_WH_PER_KM) { - STATIC_ASSERT(OSD_EFFICIENCY_WH_PER_KM == OSD_ITEM_COUNT - 1, OSD_EFFICIENCY_MWH_PER_KM_not_last_element); + if (elementIndex == OSD_TRIP_DIST) { + STATIC_ASSERT(OSD_TRIP_DIST == OSD_ITEM_COUNT - 1, OSD_TRIP_DIST_not_last_element); elementIndex = OSD_ITEM_COUNT; } } @@ -1580,6 +1585,7 @@ void pgResetFn_osdConfig(osdConfig_t *osdConfig) osdConfig->item_pos[OSD_RSSI_VALUE] = OSD_POS(23, 0) | VISIBLE_FLAG; //line 2 osdConfig->item_pos[OSD_HOME_DIST] = OSD_POS(1, 1); + osdConfig->item_pos[OSD_TRIP_DIST] = OSD_POS(1, 2); osdConfig->item_pos[OSD_MAIN_BATT_CELL_VOLTAGE] = OSD_POS(12, 1); osdConfig->item_pos[OSD_GPS_SPEED] = OSD_POS(23, 1); diff --git a/src/main/io/osd.h b/src/main/io/osd.h index 0e54c1b1fb..9ced6104ff 100755 --- a/src/main/io/osd.h +++ b/src/main/io/osd.h @@ -66,6 +66,7 @@ typedef enum { OSD_BATTERY_REMAINING_CAPACITY, OSD_BATTERY_REMAINING_PERCENT, OSD_EFFICIENCY_WH_PER_KM, + OSD_TRIP_DIST, OSD_ITEM_COUNT // MUST BE LAST } osd_items_e;