diff --git a/src/main/io/displayport_msp_dji_compat.c b/src/main/io/displayport_msp_dji_compat.c index 74805fa0598..8daffbb4d15 100644 --- a/src/main/io/displayport_msp_dji_compat.c +++ b/src/main/io/displayport_msp_dji_compat.c @@ -27,10 +27,10 @@ #include // 0123456789 -static char *dji_logo = " DJI, FIX " - " THE OSD " - " FOR O3 " - " AND O4 "; +static char *dji_logo = " DJI, " + " PLEASE " + " FIX YOUR " + " OSD FONT "; uint8_t getDJICharacter(uint8_t ch, uint8_t page) { @@ -57,7 +57,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) return DJI_SYM_RSSI; case SYM_LQ: - return 'Q'; + return DJI_SYM_LINK_QUALITY; case SYM_LAT: return DJI_SYM_LAT; @@ -142,13 +142,13 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_MAH: return DJI_SYM_MAH; +/* + case SYM_AH_KM: // AH / KM + return '?'; - case SYM_AH_KM: - return 'K'; + case SYM_AH_MI: // AH / MI + return '?'; - case SYM_AH_MI: - return 'M'; -/* case SYM_VTX_POWER: return DJI_SYM_VTX_POWER; @@ -225,8 +225,9 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) return DJI_SYM_M; case SYM_TOTAL: - return DJI_SYM_FLY_H; -/* + return DJI_SYM_TOTAL_DISTANCE; + + /* case SYM_ALT_KM: return DJI_SYM_ALT_KM; @@ -249,20 +250,22 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_DIST_NM: return DJI_SYM_DIST_NM; */ + case SYM_M: return DJI_SYM_M; case SYM_KM: - return 'K'; + return DJI_SYM_KM; case SYM_MI: - return 'M'; + return DJI_SYM_MILES; + /* case SYM_NM: return DJI_SYM_NM; -*/ case SYM_WIND_HORIZONTAL: return 'W'; // W for wind + */ /* case SYM_WIND_VERTICAL: @@ -270,7 +273,8 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_3D_KT: return DJI_SYM_3D_KT; -*/ + */ +/* case SYM_AIR: return 'A'; // A for airspeed @@ -279,7 +283,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_3D_MPH: return DJI_SYM_MPH; - + */ case SYM_RPM: return DJI_SYM_RPM; @@ -288,7 +292,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) /* case SYM_100FTM: return DJI_SYM_100FTM; -*/ + */ case SYM_MS: return DJI_SYM_MPS; @@ -306,7 +310,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_MAH_MI_1: return DJI_SYM_MAH_MI_1; -*/ + */ case SYM_THR: return DJI_SYM_THR; @@ -319,11 +323,13 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_BLANK: return DJI_SYM_BLANK; +/* case SYM_ON_H: return DJI_SYM_ON_H; case SYM_FLY_H: return DJI_SYM_FLY_H; + */ case SYM_ON_M: return DJI_SYM_ON_M; @@ -345,7 +351,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_ZERO_HALF_LEADING_DOT: return DJI_SYM_ZERO_HALF_LEADING_DOT; -*/ + */ case SYM_AUTO_THR0: return 'A'; @@ -380,7 +386,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_GFORCE_Z: return DJI_SYM_GFORCE_Z; -*/ + */ case SYM_BARO_TEMP: return DJI_SYM_TEMPERATURE; @@ -401,7 +407,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case TEMP_SENSOR_SYM_COUNT: return DJI_TEMP_SENSOR_SYM_COUNT; -*/ + */ case SYM_HEADING_N: return DJI_SYM_HEADING_N; @@ -425,7 +431,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) /* case SYM_PROFILE: return DJI_SYM_PROFILE; -*/ + */ case SYM_SWITCH_INDICATOR_LOW: return DJI_SYM_STICK_OVERLAY_SPRITE_LOW; @@ -467,7 +473,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_CROSS_TRACK_ERROR: return DJI_SYM_CROSS_TRACK_ERROR; -*/ + */ case SYM_AH_LEFT: return DJI_SYM_AH_LEFT; @@ -477,16 +483,17 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) /* case SYM_AH_DECORATION_COUNT: return DJI_SYM_AH_DECORATION_COUNT; -*/ + */ + case SYM_AH_CH_LEFT: case SYM_AH_CH_AIRCRAFT1: - return DJI_SYM_CROSSHAIR_LEFT; + return DJI_SYM_AH_CENTER_LINE; case SYM_AH_CH_CENTER: case SYM_AH_CH_AIRCRAFT2: - return DJI_SYM_CROSSHAIR_CENTRE; + return DJI_SYM_AH_CENTER; case SYM_AH_CH_RIGHT: case SYM_AH_CH_AIRCRAFT3: - return DJI_SYM_CROSSHAIR_RIGHT; + return DJI_SYM_AH_CENTER_LINE_RIGHT; case SYM_AH_CH_AIRCRAFT0: case SYM_AH_CH_AIRCRAFT4: @@ -495,21 +502,21 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_AH_CH_TYPE3: return DJI_SYM_NONE; case (SYM_AH_CH_TYPE3+1): - return DJI_SYM_SMALL_CROSSHAIR; + return DJI_SYM_AH_CENTER; case (SYM_AH_CH_TYPE3+2): return DJI_SYM_NONE; case SYM_AH_CH_TYPE4: return DJI_SYM_HYPHEN; case (SYM_AH_CH_TYPE4+1): - return DJI_SYM_SMALL_CROSSHAIR; + return DJI_SYM_AH_CENTER; case (SYM_AH_CH_TYPE4+2): return DJI_SYM_HYPHEN; case SYM_AH_CH_TYPE5: return DJI_SYM_STICK_OVERLAY_HORIZONTAL; case (SYM_AH_CH_TYPE5+1): - return DJI_SYM_SMALL_CROSSHAIR; + return DJI_SYM_AH_CENTER; case (SYM_AH_CH_TYPE5+2): return DJI_SYM_STICK_OVERLAY_HORIZONTAL; @@ -523,14 +530,14 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_AH_CH_TYPE7: return DJI_SYM_ARROW_SMALL_LEFT; case (SYM_AH_CH_TYPE7+1): - return DJI_SYM_SMALL_CROSSHAIR; + return DJI_SYM_AH_CENTER; case (SYM_AH_CH_TYPE7+2): return DJI_SYM_ARROW_SMALL_RIGHT; case SYM_AH_CH_TYPE8: return DJI_SYM_AH_LEFT; case (SYM_AH_CH_TYPE8+1): - return DJI_SYM_SMALL_CROSSHAIR; + return DJI_SYM_AH_CENTER; case (SYM_AH_CH_TYPE8+2): return DJI_SYM_AH_RIGHT; @@ -690,7 +697,7 @@ uint8_t getDJICharacter(uint8_t ch, uint8_t page) case SYM_FLIGHT_DIST_REMAINING: return DJI_SYM_FLIGHT_DIST_REMAINING; -*/ + */ case SYM_HUD_ARROWS_L1: return DJI_SYM_ARROW_SMALL_LEFT; diff --git a/src/main/io/dji_osd_symbols.h b/src/main/io/dji_osd_symbols.h index 83ccad7c82d..7c63eedb645 100644 --- a/src/main/io/dji_osd_symbols.h +++ b/src/main/io/dji_osd_symbols.h @@ -38,21 +38,25 @@ #define DJI_SYM_LAT 0x89 #define DJI_SYM_LON 0x98 #define DJI_SYM_ALTITUDE 0x7F +#define DJI_SYM_TOTAL_DISTANCE 0x71 #define DJI_SYM_OVER_HOME 0x05 // RSSI #define DJI_SYM_RSSI 0x01 +#define DJI_SYM_LINK_QUALITY 0x7B // Throttle Position (%) #define DJI_SYM_THR 0x04 // Unit Icons (Metric) #define DJI_SYM_M 0x0C +#define DJI_SYM_KM 0x7D #define DJI_SYM_C 0x0E // Unit Icons (Imperial) -#define DJI_SYM_F 0x0D #define DJI_SYM_FT 0x0F +#define DJI_SYM_MILES 0x7E +#define DJI_SYM_F 0x0D // Heading Graphics #define DJI_SYM_HEADING_N 0x18 @@ -63,13 +67,12 @@ #define DJI_SYM_HEADING_LINE 0x1D // AH Center screen Graphics -#define DJI_SYM_CROSSHAIR_LEFT 0x72 -#define DJI_SYM_CROSSHAIR_CENTRE 0x73 -#define DJI_SYM_CROSSHAIR_RIGHT 0x74 +#define DJI_SYM_AH_CENTER_LINE 0x72 +#define DJI_SYM_AH_CENTER 0x73 +#define DJI_SYM_AH_CENTER_LINE_RIGHT 0x74 #define DJI_SYM_AH_RIGHT 0x02 #define DJI_SYM_AH_LEFT 0x03 #define DJI_SYM_AH_DECORATION 0x13 -#define DJI_SYM_SMALL_CROSSHAIR 0x7E // Satellite Graphics #define DJI_SYM_SAT_L 0x1E @@ -136,17 +139,19 @@ #define DJI_SYM_WATT 0x57 // 0x57 is 'W' // Time -#define DJI_SYM_ON_H 0x70 -#define DJI_SYM_FLY_H 0x71 #define DJI_SYM_ON_M 0x9B #define DJI_SYM_FLY_M 0x9C // Speed +#define DJI_SYM_SPEED 0x70 #define DJI_SYM_KPH 0x9E #define DJI_SYM_MPH 0x9D #define DJI_SYM_MPS 0x9F #define DJI_SYM_FTPS 0x99 +// Menu cursor +#define DJI_SYM_CURSOR DJI_SYM_AH_LEFT + // Stick overlays #define DJI_SYM_STICK_OVERLAY_SPRITE_HIGH 0x08 #define DJI_SYM_STICK_OVERLAY_SPRITE_MID 0x09