diff --git a/src/model_menus.cpp b/src/model_menus.cpp index 08a442f79..568c4c079 100644 --- a/src/model_menus.cpp +++ b/src/model_menus.cpp @@ -2881,7 +2881,7 @@ void menuProcTelemetry(uint8_t event) } } else { - CHECK_INCDEC_MODELVAR(event, channel.type, 0, UNIT_MAX-1); + CHECK_INCDEC_MODELVAR(event, channel.type, 0, UNIT_A1A2_MAX); } } break; diff --git a/src/myeeprom.h b/src/myeeprom.h index 6b3af9848..10cab953d 100644 --- a/src/myeeprom.h +++ b/src/myeeprom.h @@ -387,14 +387,17 @@ enum TelemetryUnit { UNIT_DEGREES, UNIT_PERCENT, UNIT_MILLIAMPS, + UNIT_A1A2_MAX = UNIT_MILLIAMPS, UNIT_MAH, UNIT_WATTS, - UNIT_MAX, + UNIT_DB, UNIT_FEET, UNIT_KTS, UNIT_HOURS, UNIT_MINUTES, - UNIT_SECONDS + UNIT_SECONDS, + UNIT_RPMS, + UNIT_G, }; PACK(typedef struct t_FrSkyChannelData { diff --git a/src/open9x.cpp b/src/open9x.cpp index c134cf174..93a5e398c 100644 --- a/src/open9x.cpp +++ b/src/open9x.cpp @@ -1675,9 +1675,13 @@ PLAY_FUNCTION(playValue, uint8_t idx) PLAY_DURATION(val); break; #if defined(FRSKY) + case NUM_XCHNRAW+TELEM_RSSI_TX-1: + case NUM_XCHNRAW+TELEM_RSSI_RX-1: + PLAY_NUMBER(val, 1+UNIT_DB, 0); + break; case NUM_XCHNRAW+TELEM_MIN_A1-1: case NUM_XCHNRAW+TELEM_MIN_A2-1: - idx -= TELEM_MIN_A1-1-MAX_TIMERS; + idx -= TELEM_MIN_A1-TELEM_A1; // no break case NUM_XCHNRAW+TELEM_A1-1: case NUM_XCHNRAW+TELEM_A2-1: @@ -1698,7 +1702,7 @@ PLAY_FUNCTION(playValue, uint8_t idx) att |= PREC1; } } - PLAY_NUMBER(converted_value, 1+UNIT_VOLTS, att); + PLAY_NUMBER(converted_value, 1+g_model.frsky.channels[idx].type, att); break; } @@ -1719,8 +1723,11 @@ PLAY_FUNCTION(playValue, uint8_t idx) case NUM_XCHNRAW+TELEM_ACCx-1: case NUM_XCHNRAW+TELEM_ACCy-1: case NUM_XCHNRAW+TELEM_ACCz-1: + PLAY_NUMBER(val, 1+UNIT_G, PREC2); + break; + case NUM_XCHNRAW+TELEM_VSPD-1: - PLAY_NUMBER(val, 0, PREC2); + PLAY_NUMBER(val, 1+UNIT_METERS_PER_SECOND, PREC2); break; case NUM_XCHNRAW+TELEM_CONSUMPTION-1: @@ -1731,21 +1738,25 @@ PLAY_FUNCTION(playValue, uint8_t idx) PLAY_NUMBER(val, 1+UNIT_WATTS, 0); break; - case NUM_XCHNRAW+TELEM_RSSI_TX-1: - case NUM_XCHNRAW+TELEM_RSSI_RX-1: - PLAY_NUMBER(val, 0, 0); - break; - -#if defined(IMPERIAL_UNITS) case NUM_XCHNRAW+TELEM_ALT-1: case NUM_XCHNRAW+TELEM_MIN_ALT-1: case NUM_XCHNRAW+TELEM_MAX_ALT-1: - if (g_model.frsky.usrProto == USR_PROTO_WS_HOW_HIGH) { +#if defined(IMPERIAL_UNITS) + if (g_model.frsky.usrProto == USR_PROTO_WS_HOW_HIGH) PLAY_NUMBER(val, 1+UNIT_FEET, 0); - break; - } - // no break + else #endif + PLAY_NUMBER(val, 1+UNIT_METERS, 0); + break; + + case NUM_XCHNRAW+TELEM_RPM-1: + case NUM_XCHNRAW+TELEM_MAX_RPM-1: + PLAY_NUMBER(val, 1+UNIT_RPMS, 0); + break; + + case NUM_XCHNRAW+TELEM_HDG-1: + PLAY_NUMBER(val, 1+UNIT_DEGREES, 0); + break; default: { diff --git a/src/stock/voice.h b/src/stock/voice.h index 4a4eef6e1..afc53ab0d 100644 --- a/src/stock/voice.h +++ b/src/stock/voice.h @@ -128,4 +128,3 @@ inline bool isPlaying() #define PLAY_DURATION(d) playDuration((d)) #define IS_PLAYING(id) isPlaying() #define PLAY_VALUE(v, id) playValue((v)) -#define PLAY_FILE(f, id) audioQueue.playFile((f)) diff --git a/util/tts.py b/util/tts.py index 26664bf29..9269985eb 100644 --- a/util/tts.py +++ b/util/tts.py @@ -144,7 +144,7 @@ if __name__ == "__main__": systemSounds.extend(generate("thousand", 29)) for i, s in enumerate(["hour", "hours", "minute", "minutes", "second", "seconds", "", "and", "minus"]): systemSounds.extend(generate(s, 40+i)) - for i, s in enumerate(["volts", "amps", "meters per second", "", "km per hour", "meters", "degrees", "percent", "milliamps", "milliamps per hour", "watts", "", "feet", "knots"]): + for i, s in enumerate(["volts", "amps", "meters per second", "", "km per hour", "meters", "degrees", "percent", "milliamps", "milliamps per hour", "watts", "db", "feet", "knots", "hour", "minute", "second", "r p m", "g"]): systemSounds.extend(generate(s, 50+i)) for s, f, a in [(u"trim center", "midtrim", 244), (u"maximum trim reached", "endtrim", 0), @@ -213,7 +213,7 @@ if __name__ == "__main__": "total lipo", "tension", "courant", "consommation", "puissance", u"accelération X", u"accelération Y", u"accelération Z", "orientation", "vario"]): systemSounds.extend(generate(s, 146+i)) - for i, s in enumerate(["volts", u"ampères", u"mètres seconde", "", "km heure", u"mètres", u"degrés", "pourcents", u"milli ampères", u"milli ampères / heure", "watt", "", "pieds", "knotts", "heure", "minute", "seconde"]): + for i, s in enumerate(["volts", u"ampères", u"mètres seconde", "", "km heure", u"mètres", u"degrés", "pourcents", u"milli ampères", u"milli ampères / heure", "watt", "db", "pieds", "knotts", "heure", "minute", "seconde", "tours par minute", "g"]): systemSounds.extend(generate(s, 125+i)) for i, (s, f) in enumerate([ (u"train rentré", "gearup"), @@ -243,7 +243,7 @@ if __name__ == "__main__": systemSounds.extend(generate("mille", 102)) for i, s in enumerate(["virgola", "un", "e", "meno", "ora", "ore", "minuto", "minuti", "secondo", "secondi"]): systemSounds.extend(generate(s, 103+i)) - for i, s in enumerate(["volt", "amper", "meetri per secondo", "", "chilomeetri ora", "meetri", "gradi", "percento", "milliamper", "milliamper ora", "watt", "", "piedi", "nodi"]): + for i, s in enumerate(["volt", "amper", "meetri per secondo", "", "chilomeetri ora", "meetri", "gradi", "percento", "milliamper", "milliamper ora", "watt", "db", "piedi", "nodi", "ore", "minuti", "secondi", "touri per minuti", "g"]): systemSounds.extend(generate(s, 113+i)) for s, f, a in [(u"radio inattiva controllare", "inactiv", 230), (u"batteria della radio scarica", "lowbatt", 231),