From d39c35439a223c1da8e3d5e54f59487dee22d584 Mon Sep 17 00:00:00 2001 From: bsongis Date: Fri, 27 Apr 2012 11:05:10 +0000 Subject: [PATCH] EEPROM version 208: 12bits for storing FrSky A1/A2 offset --- src/model_menus.cpp | 6 +++--- src/myeeprom.h | 7 ++++--- src/translations/en.h | 2 +- src/translations/fr.h | 2 +- src/translations/se.h | 2 +- 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/model_menus.cpp b/src/model_menus.cpp index 5d8bf3c10..b0a3e8a79 100644 --- a/src/model_menus.cpp +++ b/src/model_menus.cpp @@ -2125,7 +2125,7 @@ void menuProcFunctionSwitches(uint8_t event) } #ifdef FRSKY -#define TELEM_COL2 (9*FW+2) +#define TELEM_COL2 (8*FW-2) void menuProcTelemetry(uint8_t event) { #if defined(FRSKY_HUB) || defined(WS_HOW_HIGH) @@ -2191,7 +2191,7 @@ void menuProcTelemetry(uint8_t event) y=(subN-s_pgOfs)*FH; lcd_puts(4, y, STR_OFFSET); putsTelemetryChannel(TELEM_COL2, y, i+MAX_TIMERS, 0, (sub==subN ? blink:0)|LEFT); - if(sub==subN) CHECK_INCDEC_MODELVAR(event, g_model.frsky.channels[i].offset, -128, 127); + if(sub==subN) g_model.frsky.channels[i].offset = checkIncDec(event, g_model.frsky.channels[i].offset, -256, 256, EE_MODEL); } subN++; @@ -2320,7 +2320,7 @@ void menuProcTelemetry(uint8_t event) y = (subN-s_pgOfs)*FH; lcd_putsiAtt(4, y, STR_VTELEMCHNS, barSource, (sub==subN && m_posHorz==0) ? blink : 0); if (barSource) { - putsTelemetryChannel(TELEM_COL2-3*FW, y, barSource-1, convertTelemValue(barSource, g_model.frsky.bars[j].barMin*5), (sub==subN && m_posHorz==1 ? blink : 0) | LEFT); + putsTelemetryChannel(56-3*FW, y, barSource-1, convertTelemValue(barSource, g_model.frsky.bars[j].barMin*5), (sub==subN && m_posHorz==1 ? blink : 0) | LEFT); putsTelemetryChannel(14*FW-3, y, barSource-1, convertTelemValue(barSource, (51-g_model.frsky.bars[j].barMax)*5), (sub==subN && m_posHorz==2 ? blink : 0) | LEFT); } else { diff --git a/src/myeeprom.h b/src/myeeprom.h index c2a53140b..afa2daed0 100644 --- a/src/myeeprom.h +++ b/src/myeeprom.h @@ -53,7 +53,7 @@ #elif defined(PCBV4) #define EEPROM_VER 208 #else -#define EEPROM_VER 205 +#define EEPROM_VER 208 #endif #ifndef PACK @@ -311,6 +311,7 @@ PACK(typedef struct t_FuncSwData { // Function Switches data enum TelemetryUnit { UNIT_VOLTS, UNIT_AMPS, + UNIT_METERS_PER_SECOND, UNIT_RAW, UNIT_KMH, UNIT_KTS = UNIT_KMH, @@ -324,12 +325,12 @@ enum TelemetryUnit { PACK(typedef struct t_FrSkyChannelData { uint8_t ratio; // 0.0 means not used, 0.1V steps EG. 6.6 Volts = 66. 25.1V = 251, etc. - uint8_t type; // channel unit (0=volts, ...) + int16_t offset:12; + uint16_t type:4; // channel unit (0=volts, ...) uint8_t alarms_value[2]; // 0.1V steps EG. 6.6 Volts = 66. 25.1V = 251, etc. uint8_t alarms_level:4; uint8_t alarms_greater:2; // 0=LT(<), 1=GT(>) uint8_t multiplier:2; // 0=no multiplier, 1=*2 multiplier - int8_t offset; }) FrSkyChannelData; enum TelemetrySource { diff --git a/src/translations/en.h b/src/translations/en.h index 4be0e6af0..0ab8848c6 100644 --- a/src/translations/en.h +++ b/src/translations/en.h @@ -124,7 +124,7 @@ #endif #define LEN_VTELEMUNIT "\003" -#define TR_VTELEMUNIT "v\0 ""A\0 ""-\0 " SPEED_UNIT LENGTH_UNIT "@\0 ""%\0 ""mA\0" +#define TR_VTELEMUNIT "v\0 ""A\0 ""m/s""-\0 " SPEED_UNIT LENGTH_UNIT "@\0 ""%\0 ""mA\0" #define STR_V (STR_VTELEMUNIT+1) #define STR_A (STR_VTELEMUNIT+4) diff --git a/src/translations/fr.h b/src/translations/fr.h index 09db9336d..a3e641a16 100644 --- a/src/translations/fr.h +++ b/src/translations/fr.h @@ -124,7 +124,7 @@ #endif #define LEN_VTELEMUNIT "\003" -#define TR_VTELEMUNIT "v\0 ""A\0 ""-\0 " SPEED_UNIT LENGTH_UNIT "@\0 ""%\0 ""mA\0" +#define TR_VTELEMUNIT "v\0 ""A\0 ""m/s""-\0 " SPEED_UNIT LENGTH_UNIT "@\0 ""%\0 ""mA\0" #define STR_V (STR_VTELEMUNIT+1) #define STR_A (STR_VTELEMUNIT+4) diff --git a/src/translations/se.h b/src/translations/se.h index 3a8830697..7d8d49af4 100644 --- a/src/translations/se.h +++ b/src/translations/se.h @@ -124,7 +124,7 @@ #endif #define LEN_VTELEMUNIT "\003" -#define TR_VTELEMUNIT "v\0 ""A\0 ""-\0 " SPEED_UNIT LENGTH_UNIT "@\0 ""%\0 ""mA\0" +#define TR_VTELEMUNIT "v\0 ""A\0 ""m/s""-\0 " SPEED_UNIT LENGTH_UNIT "@\0 ""%\0 ""mA\0" #define STR_V (STR_VTELEMUNIT+1) #define STR_A (STR_VTELEMUNIT+4)