diff --git a/src/main/osd/osd.c b/src/main/osd/osd.c index c23538a472..b5143f700d 100644 --- a/src/main/osd/osd.c +++ b/src/main/osd/osd.c @@ -93,7 +93,8 @@ const char * const osdTimerSourceNames[] = { "ON TIME ", "TOTAL ARM", - "LAST ARM " + "LAST ARM ", + "ON/ARM " }; // Things in both OSD and CMS diff --git a/src/main/osd/osd.h b/src/main/osd/osd.h index c3eb690fe3..fe9607a6b1 100644 --- a/src/main/osd/osd.h +++ b/src/main/osd/osd.h @@ -26,7 +26,7 @@ #include "sensors/esc_sensor.h" -#define OSD_NUM_TIMER_TYPES 3 +#define OSD_NUM_TIMER_TYPES 4 extern const char * const osdTimerSourceNames[OSD_NUM_TIMER_TYPES]; #define OSD_ELEMENT_BUFFER_LENGTH 32 @@ -180,6 +180,7 @@ typedef enum { OSD_TIMER_SRC_ON, OSD_TIMER_SRC_TOTAL_ARMED, OSD_TIMER_SRC_LAST_ARMED, + OSD_TIMER_SRC_ON_OR_ARMED, OSD_TIMER_SRC_COUNT } osd_timer_source_e; diff --git a/src/main/osd/osd_elements.c b/src/main/osd/osd_elements.c index 5eaf582321..5b17fa536c 100644 --- a/src/main/osd/osd_elements.c +++ b/src/main/osd/osd_elements.c @@ -296,6 +296,8 @@ static char osdGetTimerSymbol(osd_timer_source_e src) case OSD_TIMER_SRC_TOTAL_ARMED: case OSD_TIMER_SRC_LAST_ARMED: return SYM_FLY_M; + case OSD_TIMER_SRC_ON_OR_ARMED: + return ARMING_FLAG(ARMED) ? SYM_FLY_M : SYM_ON_M; default: return ' '; } @@ -312,6 +314,8 @@ static timeUs_t osdGetTimerValue(osd_timer_source_e src) statistic_t *stats = osdGetStats(); return stats->armed_time; } + case OSD_TIMER_SRC_ON_OR_ARMED: + return ARMING_FLAG(ARMED) ? osdFlyTime : micros(); default: return 0; }