Brake temps & pressures, total distance

This commit is contained in:
Jasper Blanckenburg 2023-05-19 15:36:23 +02:00
parent 243577fdcc
commit c159d9bda9
27 changed files with 461 additions and 71 deletions

View File

@ -78,6 +78,11 @@ typedef struct {
float tire_rl;
float tire_rr;
float brake_fl;
float brake_fr;
float brake_rl;
float brake_rr;
float inv_l;
float inv_r;
float mot_l;
@ -134,6 +139,11 @@ typedef struct {
float ts_voltage_veh;
float speed;
float brake_press_f;
float brake_press_r;
float distance_total;
} VehicleState;
extern VehicleState vehicle_state;

View File

@ -15,7 +15,9 @@
#define CAN_ID_AMS_STATUS 0xA
#define CAN_ID_AMS_ERROR 0xC
#define CAN_ID_ABX_DRIVER 0x101
#define CAN_ID_ABX_BRAKE_T 0x105
#define CAN_ID_CS_INTERNAL 0x108
#define CAN_ID_ABX_MISC 0x109
#define CAN_ID_MISSION_SELECTED 0x400
#define CAN_ID_STW_BUTTONS 0x401
#define CAN_ID_STW_PARAM_SET 0x402
@ -28,16 +30,20 @@
#define CAN_AMS_STATUS_TEMP_FACTOR 0.0625
#define CAN_ABX_DRIVER_SPEED_FACTOR (0.2 * 3.6)
#define CAN_CS_INTERNAL_TEMP_FACTOR 0.01
#define CAN_ABX_MISC_DISTANCE_TOTAL_FACTOR 0.01
VehicleState vehicle_state = {0};
void vehicle_thread_entry(ULONG hfdcan_addr) {
memset(&vehicle_state, 0, sizeof(vehicle_state));
ftcan_init((void *)hfdcan_addr);
ftcan_add_filter(CAN_ID_AMS_SLAVE_PANIC, 0x7FF);
ftcan_add_filter(CAN_ID_AMS_STATUS, 0x7FF);
ftcan_add_filter(CAN_ID_AMS_ERROR, 0x7FF);
ftcan_add_filter(CAN_ID_ABX_DRIVER, 0x7FF);
ftcan_add_filter(CAN_ID_ABX_BRAKE_T, 0x7FF);
ftcan_add_filter(CAN_ID_CS_INTERNAL, 0x7FF);
ftcan_add_filter(CAN_ID_ABX_MISC, 0x7FF);
ftcan_add_filter(CAN_ID_AS_MISSION_FB, 0x7FF);
ftcan_add_filter(CAN_ID_STW_STATUS, 0x7FF);
ftcan_add_filter(CAN_ID_SHUNT_CURRENT, 0x7FF);
@ -91,8 +97,16 @@ void ftcan_msg_received_cb(uint16_t id, size_t datalen, const uint8_t *data) {
vehicle_state.last_ams_error.arg = data[1];
break;
case CAN_ID_ABX_DRIVER:
vehicle_state.brake_press_f = (data[1] | ((data[2] & 0x0F) << 4)) * 0.1;
vehicle_state.brake_press_r = ((data[2] >> 4) | (data[3] << 4)) * 0.1;
vehicle_state.speed = data[5] * CAN_ABX_DRIVER_SPEED_FACTOR;
break;
case CAN_ID_ABX_BRAKE_T:
vehicle_state.temps.brake_fl = (data[0] | (data[1] << 8)) * 0.01f;
vehicle_state.temps.brake_fr = (data[2] | (data[3] << 8)) * 0.01f;
vehicle_state.temps.brake_rl = (data[4] | (data[5] << 8)) * 0.01f;
vehicle_state.temps.brake_rr = (data[6] | (data[7] << 8)) * 0.01f;
break;
case CAN_ID_CS_INTERNAL:
vehicle_state.temps.inv_l =
(data[0] | (data[1] << 8)) * CAN_CS_INTERNAL_TEMP_FACTOR;
@ -104,6 +118,10 @@ void ftcan_msg_received_cb(uint16_t id, size_t datalen, const uint8_t *data) {
// vehicle_state.temps.mot_r =
// (data[6] | (data[7] << 8)) * CAN_CS_INTERNAL_TEMP_FACTOR;
break;
case CAN_ID_ABX_MISC:
vehicle_state.distance_total =
(data[3] | (data[4] << 8)) * CAN_ABX_MISC_DISTANCE_TOTAL_FACTOR;
break;
case CAN_ID_AS_MISSION_FB:
vehicle_state.active_mission = data[0] & 0b111;
break;

View File

@ -336,6 +336,7 @@ TouchGFX/generated/fonts/src/FontCache.cpp \
TouchGFX/generated/fonts/src/Font_CHINN____20_4bpp_0.cpp \
TouchGFX/generated/fonts/src/Font_CHINN____30_4bpp_0.cpp \
TouchGFX/generated/fonts/src/Font_CHINN____40_4bpp_0.cpp \
TouchGFX/generated/fonts/src/Font_lucon_TTF_33_4bpp_0.cpp \
TouchGFX/generated/fonts/src/Font_lucon_TTF_50_4bpp_0.cpp \
TouchGFX/generated/fonts/src/Font_verdana_20_4bpp_0.cpp \
TouchGFX/generated/fonts/src/Font_verdanab_20_4bpp_0.cpp \
@ -343,12 +344,14 @@ TouchGFX/generated/fonts/src/GeneratedFont.cpp \
TouchGFX/generated/fonts/src/Kerning_CHINN____20_4bpp.cpp \
TouchGFX/generated/fonts/src/Kerning_CHINN____30_4bpp.cpp \
TouchGFX/generated/fonts/src/Kerning_CHINN____40_4bpp.cpp \
TouchGFX/generated/fonts/src/Kerning_lucon_TTF_33_4bpp.cpp \
TouchGFX/generated/fonts/src/Kerning_lucon_TTF_50_4bpp.cpp \
TouchGFX/generated/fonts/src/Kerning_verdana_20_4bpp.cpp \
TouchGFX/generated/fonts/src/Kerning_verdanab_20_4bpp.cpp \
TouchGFX/generated/fonts/src/Table_CHINN____20_4bpp.cpp \
TouchGFX/generated/fonts/src/Table_CHINN____30_4bpp.cpp \
TouchGFX/generated/fonts/src/Table_CHINN____40_4bpp.cpp \
TouchGFX/generated/fonts/src/Table_lucon_TTF_33_4bpp.cpp \
TouchGFX/generated/fonts/src/Table_lucon_TTF_50_4bpp.cpp \
TouchGFX/generated/fonts/src/Table_verdana_20_4bpp.cpp \
TouchGFX/generated/fonts/src/Table_verdanab_20_4bpp.cpp \

View File

@ -16,6 +16,9 @@
<Text Id="DriverViewField_Title" Alignment="Center" TypographyId="Chinat_Small">
<Translation Language="GB">&lt;value&gt;</Translation>
</Text>
<Text Id="NumberSmallWildcard" Alignment="Left" TypographyId="Numbers_Smaller">
<Translation Language="GB" Alignment="Center">&lt;value&gt;</Translation>
</Text>
<Text Id="Field_BBal" Alignment="Center" TypographyId="Chinat_Small">
<Translation Language="GB">BBAL</Translation>
</Text>
@ -179,7 +182,7 @@
<Translation Language="GB">TS</Translation>
</Text>
<Text Id="__SingleUse_H6UX" Alignment="Center" TypographyId="Chinat_Small">
<Translation Language="GB">TIRES</Translation>
<Translation Language="GB">BRAKES</Translation>
</Text>
<Text Id="__SingleUse_20H3" Alignment="Center" TypographyId="Numbers">
<Translation Language="GB">&lt;value&gt;</Translation>
@ -202,5 +205,6 @@
<Typography Id="Chinat_Huge" Font="CHINN___.ttf" Size="40" Bpp="4" Direction="LTR" FallbackCharacter="?" />
<Typography Id="Numbers" Font="lucon.TTF" Size="50" Bpp="4" Direction="LTR" FallbackCharacter="?" WildcardCharacters=". ,-" WildcardCharacterRanges="0-9" />
<Typography Id="Default_Bold" Font="verdanab.ttf" Size="20" Bpp="4" Direction="LTR" FallbackCharacter="?" WildcardCharacters="! &quot;" WildcardCharacterRanges="#-~" />
<Typography Id="Numbers_Smaller" Font="lucon.TTF" Size="33" Bpp="4" Direction="LTR" FallbackCharacter="?" WildcardCharacters=".,-" WildcardCharacterRanges="0-9" />
</Typographies>
</TextDatabase>

View File

@ -0,0 +1,14 @@
44
45
46
48
49
50
51
52
53
54
55
56
57
63

View File

@ -1 +1 @@
{"typographies":[["Default","verdana.ttf",20,4],["Chinat_Large","CHINN___.ttf",30,4],["Chinat_Small","CHINN___.ttf",20,4],["Chinat_Huge","CHINN___.ttf",40,4],["Numbers","lucon.TTF",50,4],["Default_Bold","verdanab.ttf",20,4]],"generate_font_format":"0"}
{"typographies":[["Default","verdana.ttf",20,4],["Chinat_Large","CHINN___.ttf",30,4],["Chinat_Small","CHINN___.ttf",20,4],["Chinat_Huge","CHINN___.ttf",40,4],["Numbers","lucon.TTF",50,4],["Default_Bold","verdanab.ttf",20,4],["Numbers_Smaller","lucon.TTF",33,4]],"generate_font_format":"0"}

View File

@ -1 +1 @@
{"typographies":[["Default","verdana.ttf",20,4],["Chinat_Large","CHINN___.ttf",30,4],["Chinat_Small","CHINN___.ttf",20,4],["Chinat_Huge","CHINN___.ttf",40,4],["Numbers","lucon.TTF",50,4],["Default_Bold","verdanab.ttf",20,4]],"generate_font_format":"0"}
{"typographies":[["Default","verdana.ttf",20,4],["Chinat_Large","CHINN___.ttf",30,4],["Chinat_Small","CHINN___.ttf",20,4],["Chinat_Huge","CHINN___.ttf",40,4],["Numbers","lucon.TTF",50,4],["Default_Bold","verdanab.ttf",20,4],["Numbers_Smaller","lucon.TTF",33,4]],"generate_font_format":"0"}

View File

@ -0,0 +1,15 @@
AH:0 BA:1 FC:63 EC:0 FF:0 CF:1
44
45
46
48
49
50
51
52
53
54
55
56
57
63

View File

@ -1,4 +1,4 @@
AH:0 BA:1 FC:63 EC:0 FF:0 CF:1
AH:0 BA:1 FC:63 EC:0 FF:0 CF:0
32
44
45

View File

@ -19,17 +19,19 @@ struct Typography
static const touchgfx::FontId CHINAT_HUGE = 3;
static const touchgfx::FontId NUMBERS = 4;
static const touchgfx::FontId DEFAULT_BOLD = 5;
static const touchgfx::FontId NUMBERS_SMALLER = 6;
};
struct TypographyFontIndex
{
static const touchgfx::FontId DEFAULT = 0; // verdana_20_4bpp
static const touchgfx::FontId CHINAT_LARGE = 1; // CHINN____30_4bpp
static const touchgfx::FontId CHINAT_SMALL = 2; // CHINN____20_4bpp
static const touchgfx::FontId CHINAT_HUGE = 3; // CHINN____40_4bpp
static const touchgfx::FontId NUMBERS = 4; // lucon_TTF_50_4bpp
static const touchgfx::FontId DEFAULT_BOLD = 5; // verdanab_20_4bpp
static const uint16_t NUMBER_OF_FONTS = 6;
static const touchgfx::FontId DEFAULT = 0; // verdana_20_4bpp
static const touchgfx::FontId CHINAT_LARGE = 1; // CHINN____30_4bpp
static const touchgfx::FontId CHINAT_SMALL = 2; // CHINN____20_4bpp
static const touchgfx::FontId CHINAT_HUGE = 3; // CHINN____40_4bpp
static const touchgfx::FontId NUMBERS = 4; // lucon_TTF_50_4bpp
static const touchgfx::FontId DEFAULT_BOLD = 5; // verdanab_20_4bpp
static const touchgfx::FontId NUMBERS_SMALLER = 6; // lucon_TTF_33_4bpp
static const uint16_t NUMBER_OF_FONTS = 7;
};
class ApplicationFontProvider : public touchgfx::FontProvider

View File

@ -27,6 +27,9 @@ touchgfx::Font* ApplicationFontProvider::getFont(touchgfx::FontId typography)
case Typography::DEFAULT_BOLD:
// verdanab_20_4bpp
return const_cast<touchgfx::Font*>(TypedTextDatabase::getFonts()[5]);
case Typography::NUMBERS_SMALLER:
// lucon_TTF_33_4bpp
return const_cast<touchgfx::Font*>(TypedTextDatabase::getFonts()[6]);
default:
return 0;
}

View File

@ -0,0 +1,168 @@
#include <touchgfx/hal/Types.hpp>
FONT_GLYPH_LOCATION_FLASH_PRAGMA
KEEP extern const uint8_t unicodes_lucon_TTF_33_4bpp_0[] FONT_GLYPH_LOCATION_FLASH_ATTRIBUTE = {
// Unicode: [0x002C]
0xC5, 0xCC, 0x4C, 0xF7, 0xFF, 0x5F, 0xF7, 0xFF, 0x5F, 0xF7, 0xFF, 0x5F, 0xF7, 0xFF, 0x4F, 0x00,
0xF8, 0x2F, 0x00, 0xFA, 0x0E, 0x10, 0xFE, 0x08, 0xD3, 0xDF, 0x01, 0xE6, 0x19, 0x00,
// Unicode: [0x002D]
0x64, 0x66, 0x66, 0x66, 0x66, 0x66, 0x36, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x8F, 0xF9, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0x8F,
// Unicode: [0x002E]
0xC5, 0xCC, 0x4C, 0xF7, 0xFF, 0x5F, 0xF7, 0xFF, 0x5F, 0xF7, 0xFF, 0x5F, 0xF7, 0xFF, 0x5F,
// Unicode: [0x0030]
0x00, 0x00, 0x00, 0x30, 0x55, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xFE, 0xFF, 0xDF, 0x06,
0x00, 0x00, 0x00, 0x00, 0xFB, 0xFF, 0xFF, 0xFF, 0x9F, 0x00, 0x00, 0x00, 0x90, 0xFF, 0x5D, 0x11,
0xE6, 0xFF, 0x07, 0x00, 0x00, 0xF4, 0xEF, 0x02, 0x00, 0x30, 0xFF, 0x2F, 0x00, 0x00, 0xFC, 0x6F,
0x00, 0x00, 0x00, 0xF8, 0xAF, 0x00, 0x30, 0xFF, 0x1E, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x01, 0x80,
0xFF, 0x0B, 0x00, 0x00, 0x00, 0xD0, 0xFF, 0x06, 0xC0, 0xFF, 0x08, 0x00, 0x00, 0x00, 0x90, 0xFF,
0x0A, 0xE0, 0xFF, 0x06, 0x00, 0x00, 0x00, 0x70, 0xFF, 0x0C, 0xF1, 0xFF, 0x04, 0x00, 0x00, 0x00,
0x60, 0xFF, 0x0E, 0xF2, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x50, 0xFF, 0x0F, 0xF3, 0xFF, 0x03, 0x00,
0x00, 0x00, 0x50, 0xFF, 0x1F, 0xF3, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x40, 0xFF, 0x1F, 0xF2, 0xFF,
0x03, 0x00, 0x00, 0x00, 0x50, 0xFF, 0x0F, 0xF1, 0xFF, 0x04, 0x00, 0x00, 0x00, 0x60, 0xFF, 0x0E,
0xE0, 0xFF, 0x05, 0x00, 0x00, 0x00, 0x70, 0xFF, 0x0C, 0xC0, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x90,
0xFF, 0x0A, 0x80, 0xFF, 0x0A, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x06, 0x30, 0xFF, 0x0E, 0x00, 0x00,
0x00, 0xF1, 0xFF, 0x02, 0x00, 0xFD, 0x5F, 0x00, 0x00, 0x00, 0xF7, 0xBF, 0x00, 0x00, 0xF5, 0xDF,
0x01, 0x00, 0x20, 0xFE, 0x3F, 0x00, 0x00, 0xA0, 0xFF, 0x3C, 0x00, 0xD4, 0xFF, 0x09, 0x00, 0x00,
0x10, 0xFC, 0xFF, 0xEE, 0xFF, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFE, 0xFF, 0xEF, 0x07, 0x00,
0x00, 0x00, 0x00, 0x00, 0x51, 0x77, 0x15, 0x00, 0x00, 0x00,
// Unicode: [0x0031]
0x00, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0xEA, 0x8F, 0x00, 0x00, 0x00,
0x10, 0xA6, 0xFF, 0xFF, 0x8F, 0x00, 0x00, 0x00, 0xFB, 0xFF, 0xFF, 0xFF, 0x8F, 0x00, 0x00, 0x00,
0xFF, 0x9C, 0x25, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x8F, 0x00, 0x00, 0x00,
0x66, 0x66, 0x66, 0xFC, 0xBF, 0x66, 0x66, 0x56, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF,
// Unicode: [0x0032]
0x00, 0x00, 0x42, 0x66, 0x14, 0x00, 0x00, 0x00, 0x30, 0xD9, 0xFF, 0xFF, 0xFF, 0x4B, 0x00, 0x00,
0xB0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0xB0, 0xBF, 0x26, 0x10, 0xD5, 0xFF, 0x5F, 0x00,
0x50, 0x02, 0x00, 0x00, 0x10, 0xFD, 0xDF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xFF, 0x03,
0x00, 0x00, 0x00, 0x00, 0x00, 0xF1, 0xFF, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF1, 0xFF, 0x05,
0x00, 0x00, 0x00, 0x00, 0x00, 0xF3, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xDF, 0x00,
0x00, 0x00, 0x00, 0x00, 0x10, 0xFE, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0xFF, 0x0C, 0x00,
0x00, 0x00, 0x00, 0x00, 0xF7, 0xEF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x60, 0xFF, 0x3E, 0x00, 0x00,
0x00, 0x00, 0x00, 0xF5, 0xEF, 0x03, 0x00, 0x00, 0x00, 0x00, 0x50, 0xFF, 0x2D, 0x00, 0x00, 0x00,
0x00, 0x00, 0xF4, 0xEF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x20, 0xFE, 0x3E, 0x00, 0x00, 0x00, 0x00,
0x00, 0xD1, 0xFF, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00,
0x40, 0xFF, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0, 0xFF, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00,
0xF4, 0xFF, 0xCE, 0xCC, 0xCC, 0xCC, 0xCC, 0x03, 0xF4, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03,
0xF4, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03,
// Unicode: [0x0033]
0x00, 0x20, 0x54, 0x56, 0x03, 0x00, 0x00, 0x80, 0xFD, 0xFF, 0xFF, 0xEF, 0x18, 0x00, 0xD0, 0xFF,
0xFF, 0xFF, 0xFF, 0xCF, 0x01, 0xD0, 0x6B, 0x13, 0x31, 0xFA, 0xFF, 0x09, 0x10, 0x00, 0x00, 0x00,
0x90, 0xFF, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x20, 0xFF, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,
0x2F, 0x00, 0x00, 0x00, 0x00, 0x10, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x60, 0xFF, 0x0A, 0x00,
0x00, 0x00, 0x00, 0xE3, 0xEF, 0x02, 0x00, 0x00, 0x10, 0x73, 0xFE, 0x3E, 0x00, 0x00, 0xF0, 0xFF,
0xFF, 0x9F, 0x01, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xDF, 0x06, 0x00, 0x00, 0x40, 0x55, 0xC8, 0xFF,
0xBF, 0x01, 0x00, 0x00, 0x00, 0x00, 0xE4, 0xFF, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x40, 0xFF, 0x5F,
0x00, 0x00, 0x00, 0x00, 0x00, 0xFB, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xDF, 0x00, 0x00,
0x00, 0x00, 0x00, 0xF7, 0xEF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xCF, 0x00, 0x00, 0x00, 0x00,
0x00, 0xFD, 0x9F, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0x4F, 0xC3, 0x37, 0x00, 0x30, 0xFA, 0xFF,
0x0A, 0xF4, 0xFF, 0xEF, 0xFE, 0xFF, 0xAF, 0x00, 0xE3, 0xFF, 0xFF, 0xFF, 0xDF, 0x06, 0x00, 0x00,
0x52, 0x76, 0x57, 0x02, 0x00, 0x00,
// Unicode: [0x0034]
0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xFF, 0xBF,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD1, 0xFF, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA,
0xFF, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0xFF, 0xFC, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00,
0xE1, 0xDF, 0xF5, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x3F, 0xF4, 0xBF, 0x00, 0x00, 0x00,
0x00, 0x50, 0xFF, 0x08, 0xF4, 0xBF, 0x00, 0x00, 0x00, 0x00, 0xE1, 0xDF, 0x00, 0xF4, 0xBF, 0x00,
0x00, 0x00, 0x00, 0xFA, 0x3F, 0x00, 0xF4, 0xBF, 0x00, 0x00, 0x00, 0x60, 0xFF, 0x08, 0x00, 0xF4,
0xBF, 0x00, 0x00, 0x00, 0xE2, 0xCF, 0x00, 0x00, 0xF4, 0xBF, 0x00, 0x00, 0x00, 0xFB, 0x3F, 0x00,
0x00, 0xF4, 0xBF, 0x00, 0x00, 0x60, 0xFF, 0x07, 0x00, 0x00, 0xF4, 0xBF, 0x00, 0x00, 0xE1, 0xCF,
0x00, 0x00, 0x00, 0xF4, 0xBF, 0x00, 0x00, 0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0D,
0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0D, 0x61, 0x66, 0x66, 0x66, 0x66, 0xF8, 0xCF,
0x66, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF4, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xF4, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF4, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xF4, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF4, 0xBF, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xF4, 0xBF, 0x00, 0x00,
// Unicode: [0x0035]
0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xF3, 0xDF,
0xCC, 0xCC, 0xCC, 0xCC, 0x00, 0xF3, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x7F, 0x00, 0x00,
0x00, 0x00, 0x00, 0xF3, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x7F, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF3, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF3,
0xFF, 0xDE, 0x5A, 0x00, 0x00, 0x00, 0xF3, 0xFF, 0xFF, 0xFF, 0x5D, 0x00, 0x00, 0x61, 0x76, 0xC9,
0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xB3, 0xFF, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFB,
0xDF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF3, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0x07,
0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x08, 0x00, 0x00, 0x00, 0x00, 0xD0, 0xFF, 0x08, 0x00, 0x00,
0x00, 0x00, 0xF1, 0xFF, 0x06, 0x00, 0x00, 0x00, 0x00, 0xF6, 0xFF, 0x02, 0x00, 0x00, 0x00, 0x20,
0xFE, 0xBF, 0x00, 0x88, 0x14, 0x00, 0xD4, 0xFF, 0x2E, 0x00, 0xFA, 0xFF, 0xFE, 0xFF, 0xEF, 0x03,
0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0x2A, 0x00, 0x00, 0x10, 0x64, 0x77, 0x15, 0x00, 0x00, 0x00,
// Unicode: [0x0036]
0x00, 0x00, 0x00, 0x94, 0xED, 0xDE, 0x6A, 0x02, 0x00, 0x00, 0x00, 0xA1, 0xFF, 0xFF, 0xFF, 0xFF,
0x0C, 0x00, 0x00, 0x10, 0xFC, 0xFF, 0x7B, 0x97, 0xFD, 0x0C, 0x00, 0x00, 0xB0, 0xFF, 0x3D, 0x00,
0x00, 0x30, 0x07, 0x00, 0x00, 0xF5, 0xEF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFD, 0x6F,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xFF, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0,
0xFF, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0, 0xFF, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF1, 0xFF, 0x03, 0x10, 0x43, 0x03, 0x00, 0x00, 0x00, 0xF3, 0xFF, 0x11, 0xE9, 0xFF, 0xEF,
0x07, 0x00, 0x00, 0xF4, 0xFF, 0xD2, 0xFF, 0xFF, 0xFF, 0xBF, 0x01, 0x00, 0xF5, 0xFF, 0xFC, 0x39,
0x20, 0xF7, 0xFF, 0x09, 0x00, 0xF6, 0xFF, 0x7F, 0x00, 0x00, 0x50, 0xFF, 0x3F, 0x00, 0xF5, 0xFF,
0x0D, 0x00, 0x00, 0x00, 0xFA, 0xAF, 0x00, 0xF4, 0xFF, 0x08, 0x00, 0x00, 0x00, 0xF5, 0xEF, 0x00,
0xF3, 0xFF, 0x06, 0x00, 0x00, 0x00, 0xF1, 0xFF, 0x01, 0xF1, 0xFF, 0x05, 0x00, 0x00, 0x00, 0xF0,
0xFF, 0x01, 0xD0, 0xFF, 0x07, 0x00, 0x00, 0x00, 0xF1, 0xFF, 0x00, 0x90, 0xFF, 0x0A, 0x00, 0x00,
0x00, 0xF3, 0xCF, 0x00, 0x40, 0xFF, 0x1E, 0x00, 0x00, 0x00, 0xF8, 0x8F, 0x00, 0x00, 0xFC, 0xAF,
0x00, 0x00, 0x20, 0xFE, 0x2F, 0x00, 0x00, 0xF3, 0xFF, 0x2A, 0x00, 0xD4, 0xFF, 0x07, 0x00, 0x00,
0x60, 0xFF, 0xFF, 0xEE, 0xFF, 0x9F, 0x00, 0x00, 0x00, 0x00, 0xC4, 0xFF, 0xFF, 0xEF, 0x06, 0x00,
0x00, 0x00, 0x00, 0x00, 0x63, 0x67, 0x04, 0x00, 0x00, 0x00,
// Unicode: [0x0037]
0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x09, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x09,
0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xFF, 0x02,
0x00, 0x00, 0x00, 0x00, 0x00, 0xF4, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x1E, 0x00,
0x00, 0x00, 0x00, 0x00, 0x60, 0xFF, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD1, 0xCF, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xF8, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xFE, 0x0B, 0x00, 0x00,
0x00, 0x00, 0x00, 0x90, 0xFF, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF3, 0xBF, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xFB, 0x4F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0xFF, 0x0C, 0x00, 0x00, 0x00,
0x00, 0x00, 0xD0, 0xFF, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF6, 0xDF, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xFD, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00,
0x00, 0xE0, 0xFF, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xFF, 0x06, 0x00, 0x00, 0x00, 0x00,
0x00, 0xFB, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0xFF, 0xCF, 0x00, 0x00, 0x00, 0x00, 0x00,
0x30, 0xFF, 0x9F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xFF, 0x6F, 0x00, 0x00, 0x00, 0x00, 0x00,
// Unicode: [0x0038]
0x00, 0x00, 0x00, 0x52, 0x56, 0x03, 0x00, 0x00, 0x00, 0x00, 0xD6, 0xFF, 0xFF, 0xEF, 0x07, 0x00,
0x00, 0x90, 0xFF, 0xFF, 0xFF, 0xFF, 0xAF, 0x00, 0x00, 0xF6, 0xEF, 0x26, 0x31, 0xFA, 0xFF, 0x05,
0x00, 0xFD, 0x4F, 0x00, 0x00, 0xA0, 0xFF, 0x0A, 0x20, 0xFF, 0x0D, 0x00, 0x00, 0x30, 0xFF, 0x0C,
0x30, 0xFF, 0x0C, 0x00, 0x00, 0x20, 0xFF, 0x0B, 0x10, 0xFF, 0x2F, 0x00, 0x00, 0x40, 0xFF, 0x08,
0x00, 0xFC, 0xBF, 0x00, 0x00, 0xB0, 0xEF, 0x02, 0x00, 0xF5, 0xFF, 0x1A, 0x00, 0xF8, 0x6F, 0x00,
0x00, 0x90, 0xFF, 0xDF, 0x95, 0xFF, 0x07, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x4E, 0x00, 0x00,
0x00, 0x10, 0xFA, 0xFF, 0xFF, 0x9F, 0x01, 0x00, 0x00, 0xD2, 0xFF, 0x96, 0xFF, 0xFF, 0x2D, 0x00,
0x10, 0xFC, 0x6F, 0x00, 0xC3, 0xFF, 0xEF, 0x02, 0x80, 0xFF, 0x09, 0x00, 0x00, 0xF9, 0xFF, 0x0D,
0xE1, 0xFF, 0x02, 0x00, 0x00, 0x90, 0xFF, 0x5F, 0xF4, 0xCF, 0x00, 0x00, 0x00, 0x10, 0xFD, 0x9F,
0xF6, 0xBF, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xBF, 0xF6, 0xCF, 0x00, 0x00, 0x00, 0x00, 0xF7, 0xAF,
0xF4, 0xFF, 0x02, 0x00, 0x00, 0x00, 0xFA, 0x7F, 0xE0, 0xFF, 0x0B, 0x00, 0x00, 0x40, 0xFF, 0x2F,
0x60, 0xFF, 0xBF, 0x03, 0x10, 0xE7, 0xFF, 0x08, 0x00, 0xF8, 0xFF, 0xEF, 0xFE, 0xFF, 0x9F, 0x00,
0x00, 0x50, 0xFC, 0xFF, 0xFF, 0xCF, 0x05, 0x00, 0x00, 0x00, 0x30, 0x76, 0x67, 0x02, 0x00, 0x00,
// Unicode: [0x0039]
0x00, 0x00, 0x10, 0x64, 0x35, 0x00, 0x00, 0x00, 0x00, 0x10, 0xE9, 0xFF, 0xFF, 0x7E, 0x00, 0x00,
0x00, 0xD2, 0xFF, 0xFF, 0xFF, 0xFF, 0x1B, 0x00, 0x10, 0xFD, 0xAF, 0x02, 0x72, 0xFF, 0xAF, 0x00,
0x80, 0xFF, 0x0A, 0x00, 0x00, 0xF4, 0xFF, 0x04, 0xE1, 0xEF, 0x01, 0x00, 0x00, 0x90, 0xFF, 0x0B,
0xF4, 0xAF, 0x00, 0x00, 0x00, 0x30, 0xFF, 0x1F, 0xF7, 0x8F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x5F,
0xF8, 0x8F, 0x00, 0x00, 0x00, 0x00, 0xFD, 0x8F, 0xF8, 0x9F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xAF,
0xF6, 0xCF, 0x00, 0x00, 0x00, 0x10, 0xFF, 0xCF, 0xF3, 0xFF, 0x02, 0x00, 0x00, 0x50, 0xFF, 0xCF,
0xB0, 0xFF, 0x0B, 0x00, 0x00, 0xD1, 0xFF, 0xDF, 0x30, 0xFF, 0xCF, 0x14, 0x51, 0xFD, 0xFC, 0xCF,
0x00, 0xF5, 0xFF, 0xFF, 0xFF, 0x7F, 0xF8, 0xBF, 0x00, 0x30, 0xFB, 0xFF, 0xCF, 0x04, 0xF9, 0xAF,
0x00, 0x00, 0x10, 0x44, 0x02, 0x00, 0xFB, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x5F,
0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xFF, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0xFF, 0x0A,
0x00, 0x00, 0x00, 0x00, 0x00, 0xF2, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0x10, 0xFC, 0x9F, 0x00,
0x40, 0x6C, 0x02, 0x10, 0xD6, 0xFF, 0x1C, 0x00, 0x40, 0xFF, 0xEF, 0xFE, 0xFF, 0xCF, 0x01, 0x00,
0x30, 0xFD, 0xFF, 0xFF, 0xEF, 0x08, 0x00, 0x00, 0x00, 0x10, 0x64, 0x67, 0x04, 0x00, 0x00, 0x00,
// Unicode: [0x003F]
0x00, 0x10, 0x43, 0x65, 0x45, 0x01, 0x00, 0x00, 0xA3, 0xFD, 0xFF, 0xFF, 0xFF, 0xDF, 0x17, 0x00,
0xF5, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0x02, 0xF5, 0x6F, 0x13, 0x00, 0x52, 0xFA, 0xFF, 0x0D,
0xF5, 0x0F, 0x00, 0x00, 0x00, 0x70, 0xFF, 0x4F, 0xF5, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x7F,
0x31, 0x03, 0x00, 0x00, 0x00, 0x00, 0xFD, 0x6F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xFF, 0x3F,
0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xFF, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xEF, 0x01,
0x00, 0x00, 0x00, 0x00, 0xA1, 0xFF, 0x2D, 0x00, 0x00, 0x00, 0x00, 0x10, 0xFC, 0xCF, 0x02, 0x00,
0x00, 0x00, 0x00, 0xC1, 0xFF, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFA, 0xAF, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xFF, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0x08, 0x00, 0x00, 0x00,
0x00, 0x00, 0xB0, 0xFF, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x05, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0x44, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x92, 0x99, 0x06, 0x00, 0x00, 0x00,
0x00, 0x00, 0xF4, 0xFF, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF4, 0xFF, 0x0B, 0x00, 0x00, 0x00,
0x00, 0x00, 0xF4, 0xFF, 0x0B, 0x00, 0x00, 0x00
};

View File

@ -0,0 +1,6 @@
#include <touchgfx/Font.hpp>
FONT_KERNING_LOCATION_FLASH_PRAGMA
KEEP extern const touchgfx::KerningNode kerning_lucon_TTF_33_4bpp[] FONT_KERNING_LOCATION_FLASH_ATTRIBUTE = {
{ 0, 0 }
};

View File

@ -0,0 +1,40 @@
// Autogenerated, do not edit
#include <fonts/GeneratedFont.hpp>
FONT_TABLE_LOCATION_FLASH_PRAGMA
KEEP extern const touchgfx::GlyphNode glyphs_lucon_TTF_33_4bpp[] FONT_TABLE_LOCATION_FLASH_ATTRIBUTE = {
{ 0, 0x002C, 6, 10, 5, 7, 20, 0, 0, 0x00 },
{ 30, 0x002D, 14, 3, 12, 3, 20, 0, 0, 0x00 },
{ 51, 0x002E, 6, 5, 5, 7, 20, 0, 0, 0x00 },
{ 66, 0x0030, 18, 26, 25, 1, 20, 0, 0, 0x00 },
{ 300, 0x0031, 16, 25, 25, 3, 20, 0, 0, 0x00 },
{ 500, 0x0032, 15, 25, 25, 2, 20, 0, 0, 0x00 },
{ 700, 0x0033, 14, 26, 25, 3, 20, 0, 0, 0x00 },
{ 882, 0x0034, 17, 24, 24, 1, 20, 0, 0, 0x00 },
{ 1098, 0x0035, 13, 25, 24, 4, 20, 0, 0, 0x00 },
{ 1273, 0x0036, 17, 26, 25, 2, 20, 0, 0, 0x00 },
{ 1507, 0x0037, 15, 24, 24, 3, 20, 0, 0, 0x00 },
{ 1699, 0x0038, 16, 26, 25, 2, 20, 0, 0, 0x00 },
{ 1907, 0x0039, 16, 26, 25, 2, 20, 0, 0, 0x00 },
{ 2115, 0x003F, 16, 25, 25, 2, 20, 0, 0, 0x00 }
};
// lucon_TTF_33_4bpp
FONT_TABLE_LOCATION_FLASH_PRAGMA
KEEP extern const touchgfx::GlyphNode glyphs_lucon_TTF_33_4bpp[] FONT_TABLE_LOCATION_FLASH_ATTRIBUTE;
FONT_GLYPH_LOCATION_FLASH_PRAGMA
KEEP extern const uint8_t unicodes_lucon_TTF_33_4bpp_0[] FONT_GLYPH_LOCATION_FLASH_ATTRIBUTE;
FONT_SEARCHTABLE_LOCATION_FLASH_PRAGMA
KEEP extern const uint8_t* const unicodes_lucon_TTF_33_4bpp[] FONT_SEARCHTABLE_LOCATION_FLASH_ATTRIBUTE = {
unicodes_lucon_TTF_33_4bpp_0
};
FONT_KERNING_LOCATION_FLASH_PRAGMA
KEEP extern const touchgfx::KerningNode kerning_lucon_TTF_33_4bpp[] FONT_KERNING_LOCATION_FLASH_ATTRIBUTE;
touchgfx::GeneratedFont& getFont_lucon_TTF_33_4bpp();
touchgfx::GeneratedFont& getFont_lucon_TTF_33_4bpp()
{
static touchgfx::GeneratedFont lucon_TTF_33_4bpp(glyphs_lucon_TTF_33_4bpp, 14, 38, 33, 0, 0, 4, 1, 0, 0, unicodes_lucon_TTF_33_4bpp, kerning_lucon_TTF_33_4bpp, 63, 0, 0, 0);
return lucon_TTF_33_4bpp;
}

View File

@ -1 +1 @@
{"remap":"yes","language":"GB","language_index":0,"indices":[["128","T_ERROR_AMS"],["176","T_DEBUGVIEWFIELD_TITLE"],["176","T_DRIVERVIEWFIELD_TITLE"],["292","T_FIELD_BBAL"],["249","T_FIELD_TSVOLTVEH"],["242","T_FIELD_TSVOLTBAT"],["262","T_FIELD_LVSOC"],["286","T_FIELD_TSSOC"],["302","T_FIELD_MAXCELLTEMP"],["307","T_FIELD_TIREFL"],["312","T_FIELD_TIREFR"],["317","T_FIELD_TIRERL"],["322","T_FIELD_TIRERR"],["297","T_FIELD_LAPCOUNT"],["186","T_FIELD_INICHKSTATE"],["256","T_FIELD_ERR"],["340","T_FIELD_SDC"],["202","T_FIELD_INVRREADY"],["194","T_FIELD_INVLREADY"],["218","T_FIELD_R2DPROGRESS"],["210","T_FIELD_ACTIVEMISSION"],["178","T_FIELD_ASSTATE"],["234","T_FIELD_TSSTATE"],["176","T_NUMBERWILDCARD"],["176","T_DEFAULTWILDCARD_CENTERED"],["176","T_DEFAULTWILDCARD_RIGHTALIGNED"],["332","T_FIELD_TSCURRENT"],["327","T_FIELD_MINCELLVOLT"],["274","T_FIELD_SPEED"],["95","T_INSPECTION_HUGE"],["158","T_EBS_HUGE"],["117","T_TRACKDRIVE_HUGE"],["138","T_AUTOX_HUGE"],["226","T_SKIDPAD_HUGE"],["82","T_ACCEL_HUGE"],["34","T_INVALID_HUGE"],["67","T_MANUAL"],["95","T_INSPECTION"],["158","T_EBS"],["117","T_TRACKDRIVE"],["138","T_AUTOX"],["226","T_SKIDPAD"],["82","T_ACCEL"],["268","T___SINGLEUSE_JN2J"],["167","T___SINGLEUSE_ZP7N"],["176","T___SINGLEUSE_9L8R"],["16","T___SINGLEUSE_1NKF"],["176","T___SINGLEUSE_J5UH"],["336","T___SINGLEUSE_NGUK"],["176","T___SINGLEUSE_4E84"],["176","T___SINGLEUSE_YTAB"],["106","T___SINGLEUSE_RWCE"],["148","T___SINGLEUSE_HMH2"],["344","T___SINGLEUSE_4OBM"],["333","T___SINGLEUSE_PHFD"],["280","T___SINGLEUSE_H6UX"],["176","T___SINGLEUSE_20H3"],["17","T___SINGLEUSE_SDGP"],["51","T___SINGLEUSE_M5X7"],["0","T___SINGLEUSE_6GPV"]]}
{"remap":"yes","language":"GB","language_index":0,"indices":[["128","T_ERROR_AMS"],["176","T_DEBUGVIEWFIELD_TITLE"],["176","T_DRIVERVIEWFIELD_TITLE"],["176","T_NUMBERSMALLWILDCARD"],["293","T_FIELD_BBAL"],["256","T_FIELD_TSVOLTVEH"],["249","T_FIELD_TSVOLTBAT"],["269","T_FIELD_LVSOC"],["287","T_FIELD_TSSOC"],["303","T_FIELD_MAXCELLTEMP"],["308","T_FIELD_TIREFL"],["313","T_FIELD_TIREFR"],["318","T_FIELD_TIRERL"],["323","T_FIELD_TIRERR"],["298","T_FIELD_LAPCOUNT"],["186","T_FIELD_INICHKSTATE"],["263","T_FIELD_ERR"],["341","T_FIELD_SDC"],["202","T_FIELD_INVRREADY"],["194","T_FIELD_INVLREADY"],["218","T_FIELD_R2DPROGRESS"],["210","T_FIELD_ACTIVEMISSION"],["178","T_FIELD_ASSTATE"],["234","T_FIELD_TSSTATE"],["176","T_NUMBERWILDCARD"],["176","T_DEFAULTWILDCARD_CENTERED"],["176","T_DEFAULTWILDCARD_RIGHTALIGNED"],["333","T_FIELD_TSCURRENT"],["328","T_FIELD_MINCELLVOLT"],["281","T_FIELD_SPEED"],["95","T_INSPECTION_HUGE"],["158","T_EBS_HUGE"],["117","T_TRACKDRIVE_HUGE"],["138","T_AUTOX_HUGE"],["226","T_SKIDPAD_HUGE"],["82","T_ACCEL_HUGE"],["34","T_INVALID_HUGE"],["67","T_MANUAL"],["95","T_INSPECTION"],["158","T_EBS"],["117","T_TRACKDRIVE"],["138","T_AUTOX"],["226","T_SKIDPAD"],["82","T_ACCEL"],["275","T___SINGLEUSE_JN2J"],["167","T___SINGLEUSE_ZP7N"],["176","T___SINGLEUSE_9L8R"],["16","T___SINGLEUSE_1NKF"],["176","T___SINGLEUSE_J5UH"],["337","T___SINGLEUSE_NGUK"],["176","T___SINGLEUSE_4E84"],["176","T___SINGLEUSE_YTAB"],["106","T___SINGLEUSE_RWCE"],["148","T___SINGLEUSE_HMH2"],["345","T___SINGLEUSE_4OBM"],["334","T___SINGLEUSE_PHFD"],["242","T___SINGLEUSE_H6UX"],["176","T___SINGLEUSE_20H3"],["17","T___SINGLEUSE_SDGP"],["51","T___SINGLEUSE_M5X7"],["0","T___SINGLEUSE_6GPV"]]}

View File

@ -1 +1 @@
{"languages":["GB"],"textids":["T_ERROR_AMS","T_DEBUGVIEWFIELD_TITLE","T_DRIVERVIEWFIELD_TITLE","T_FIELD_BBAL","T_FIELD_TSVOLTVEH","T_FIELD_TSVOLTBAT","T_FIELD_LVSOC","T_FIELD_TSSOC","T_FIELD_MAXCELLTEMP","T_FIELD_TIREFL","T_FIELD_TIREFR","T_FIELD_TIRERL","T_FIELD_TIRERR","T_FIELD_LAPCOUNT","T_FIELD_INICHKSTATE","T_FIELD_ERR","T_FIELD_SDC","T_FIELD_INVRREADY","T_FIELD_INVLREADY","T_FIELD_R2DPROGRESS","T_FIELD_ACTIVEMISSION","T_FIELD_ASSTATE","T_FIELD_TSSTATE","T_NUMBERWILDCARD","T_DEFAULTWILDCARD_CENTERED","T_DEFAULTWILDCARD_RIGHTALIGNED","T_FIELD_TSCURRENT","T_FIELD_MINCELLVOLT","T_FIELD_SPEED","T_INSPECTION_HUGE","T_EBS_HUGE","T_TRACKDRIVE_HUGE","T_AUTOX_HUGE","T_SKIDPAD_HUGE","T_ACCEL_HUGE","T_INVALID_HUGE","T_MANUAL","T_INSPECTION","T_EBS","T_TRACKDRIVE","T_AUTOX","T_SKIDPAD","T_ACCEL","T___SINGLEUSE_JN2J","T___SINGLEUSE_ZP7N","T___SINGLEUSE_9L8R","T___SINGLEUSE_1NKF","T___SINGLEUSE_J5UH","T___SINGLEUSE_NGUK","T___SINGLEUSE_4E84","T___SINGLEUSE_YTAB","T___SINGLEUSE_RWCE","T___SINGLEUSE_HMH2","T___SINGLEUSE_4OBM","T___SINGLEUSE_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","T___SINGLEUSE_SDGP","T___SINGLEUSE_M5X7","T___SINGLEUSE_6GPV"]}
{"languages":["GB"],"textids":["T_ERROR_AMS","T_DEBUGVIEWFIELD_TITLE","T_DRIVERVIEWFIELD_TITLE","T_NUMBERSMALLWILDCARD","T_FIELD_BBAL","T_FIELD_TSVOLTVEH","T_FIELD_TSVOLTBAT","T_FIELD_LVSOC","T_FIELD_TSSOC","T_FIELD_MAXCELLTEMP","T_FIELD_TIREFL","T_FIELD_TIREFR","T_FIELD_TIRERL","T_FIELD_TIRERR","T_FIELD_LAPCOUNT","T_FIELD_INICHKSTATE","T_FIELD_ERR","T_FIELD_SDC","T_FIELD_INVRREADY","T_FIELD_INVLREADY","T_FIELD_R2DPROGRESS","T_FIELD_ACTIVEMISSION","T_FIELD_ASSTATE","T_FIELD_TSSTATE","T_NUMBERWILDCARD","T_DEFAULTWILDCARD_CENTERED","T_DEFAULTWILDCARD_RIGHTALIGNED","T_FIELD_TSCURRENT","T_FIELD_MINCELLVOLT","T_FIELD_SPEED","T_INSPECTION_HUGE","T_EBS_HUGE","T_TRACKDRIVE_HUGE","T_AUTOX_HUGE","T_SKIDPAD_HUGE","T_ACCEL_HUGE","T_INVALID_HUGE","T_MANUAL","T_INSPECTION","T_EBS","T_TRACKDRIVE","T_AUTOX","T_SKIDPAD","T_ACCEL","T___SINGLEUSE_JN2J","T___SINGLEUSE_ZP7N","T___SINGLEUSE_9L8R","T___SINGLEUSE_1NKF","T___SINGLEUSE_J5UH","T___SINGLEUSE_NGUK","T___SINGLEUSE_4E84","T___SINGLEUSE_YTAB","T___SINGLEUSE_RWCE","T___SINGLEUSE_HMH2","T___SINGLEUSE_4OBM","T___SINGLEUSE_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","T___SINGLEUSE_SDGP","T___SINGLEUSE_M5X7","T___SINGLEUSE_6GPV"]}

View File

@ -1 +1 @@
{"remap":"yes","languages":["Gb"],"characters":[67,104,111,111,115,101,32,97,32,109,105,115,115,105,111,110,0,67,117,114,114,101,110,116,32,77,105,115,115,105,111,110,58,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,33,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,0,77,97,110,117,97,108,32,68,114,105,118,105,110,103,0,65,99,99,101,108,101,114,97,116,105,111,110,0,73,110,115,112,101,99,116,105,111,110,0,80,65,82,65,77,69,84,69,82,83,0,84,114,97,99,107,100,114,105,118,101,0,65,77,83,32,69,114,114,79,114,0,65,117,116,111,99,114,111,115,115,0,80,82,69,67,72,65,82,71,69,0,69,66,83,32,84,101,115,116,0,73,78,86,69,82,84,69,82,0,2,0,65,83,83,84,65,84,69,0,73,67,83,84,65,84,69,0,73,78,86,76,82,68,89,0,73,78,86,82,82,68,89,0,77,73,83,83,73,79,78,0,82,50,68,80,82,79,71,0,83,107,105,100,112,97,100,0,84,83,83,84,65,84,69,0,84,83,86,66,65,84,0,84,83,86,86,69,72,0,69,82,82,79,82,0,76,86,83,79,67,0,77,79,84,79,82,0,83,80,69,69,68,0,84,73,82,69,83,0,84,83,83,79,67,0,66,66,65,76,0,76,65,80,83,0,84,77,65,88,0,84,84,70,76,0,84,84,70,82,0,84,84,82,76,0,84,84,82,82,0,86,77,73,78,0,73,84,83,0,82,50,68,0,83,68,67,0,76,86,0]}
{"remap":"yes","languages":["Gb"],"characters":[67,104,111,111,115,101,32,97,32,109,105,115,115,105,111,110,0,67,117,114,114,101,110,116,32,77,105,115,115,105,111,110,58,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,33,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,0,77,97,110,117,97,108,32,68,114,105,118,105,110,103,0,65,99,99,101,108,101,114,97,116,105,111,110,0,73,110,115,112,101,99,116,105,111,110,0,80,65,82,65,77,69,84,69,82,83,0,84,114,97,99,107,100,114,105,118,101,0,65,77,83,32,69,114,114,79,114,0,65,117,116,111,99,114,111,115,115,0,80,82,69,67,72,65,82,71,69,0,69,66,83,32,84,101,115,116,0,73,78,86,69,82,84,69,82,0,2,0,65,83,83,84,65,84,69,0,73,67,83,84,65,84,69,0,73,78,86,76,82,68,89,0,73,78,86,82,82,68,89,0,77,73,83,83,73,79,78,0,82,50,68,80,82,79,71,0,83,107,105,100,112,97,100,0,84,83,83,84,65,84,69,0,66,82,65,75,69,83,0,84,83,86,66,65,84,0,84,83,86,86,69,72,0,69,82,82,79,82,0,76,86,83,79,67,0,77,79,84,79,82,0,83,80,69,69,68,0,84,83,83,79,67,0,66,66,65,76,0,76,65,80,83,0,84,77,65,88,0,84,84,70,76,0,84,84,70,82,0,84,84,82,76,0,84,84,82,82,0,86,77,73,78,0,73,84,83,0,82,50,68,0,83,68,67,0,76,86,0]}

View File

@ -1 +1 @@
{"databases":{"DEFAULT":[[3,"CENTER","LTR"],[5,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[0,"CENTER","LTR"],[0,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[0,"LEFT","LTR"],[3,"CENTER","LTR"],[1,"RIGHT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]]},"database_list":["DEFAULT"],"fonts":{"getFont_verdana_20_4bpp":0,"getFont_CHINN____30_4bpp":1,"getFont_CHINN____20_4bpp":2,"getFont_CHINN____40_4bpp":3,"getFont_lucon_TTF_50_4bpp":4,"getFont_verdanab_20_4bpp":5},"generate_font_format":"0"}
{"databases":{"GB":[[3,"CENTER","LTR"],[5,"LEFT","LTR"],[2,"CENTER","LTR"],[6,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[0,"CENTER","LTR"],[0,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[0,"LEFT","LTR"],[3,"CENTER","LTR"],[1,"RIGHT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]],"DEFAULT":[[3,"CENTER","LTR"],[5,"LEFT","LTR"],[2,"CENTER","LTR"],[6,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[0,"CENTER","LTR"],[0,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[0,"LEFT","LTR"],[3,"CENTER","LTR"],[1,"RIGHT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]]},"database_list":["GB"],"fonts":{"getFont_verdana_20_4bpp":0,"getFont_CHINN____30_4bpp":1,"getFont_CHINN____20_4bpp":2,"getFont_CHINN____40_4bpp":3,"getFont_lucon_TTF_50_4bpp":4,"getFont_verdanab_20_4bpp":5,"getFont_lucon_TTF_33_4bpp":6},"generate_font_format":"0"}

View File

@ -15,6 +15,7 @@ enum TEXTS
T_ERROR_AMS,
T_DEBUGVIEWFIELD_TITLE,
T_DRIVERVIEWFIELD_TITLE,
T_NUMBERSMALLWILDCARD,
T_FIELD_BBAL,
T_FIELD_TSVOLTVEH,
T_FIELD_TSVOLTBAT,

View File

@ -13,20 +13,21 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
128, // T_ERROR_AMS: "AMS ErrOr"
176, // T_DEBUGVIEWFIELD_TITLE: "<>"
176, // T_DRIVERVIEWFIELD_TITLE: "<>"
292, // T_FIELD_BBAL: "BBAL"
249, // T_FIELD_TSVOLTVEH: "TSVVEH"
242, // T_FIELD_TSVOLTBAT: "TSVBAT"
262, // T_FIELD_LVSOC: "LVSOC"
286, // T_FIELD_TSSOC: "TSSOC"
302, // T_FIELD_MAXCELLTEMP: "TMAX"
307, // T_FIELD_TIREFL: "TTFL"
312, // T_FIELD_TIREFR: "TTFR"
317, // T_FIELD_TIRERL: "TTRL"
322, // T_FIELD_TIRERR: "TTRR"
297, // T_FIELD_LAPCOUNT: "LAPS"
176, // T_NUMBERSMALLWILDCARD: "<>"
293, // T_FIELD_BBAL: "BBAL"
256, // T_FIELD_TSVOLTVEH: "TSVVEH"
249, // T_FIELD_TSVOLTBAT: "TSVBAT"
269, // T_FIELD_LVSOC: "LVSOC"
287, // T_FIELD_TSSOC: "TSSOC"
303, // T_FIELD_MAXCELLTEMP: "TMAX"
308, // T_FIELD_TIREFL: "TTFL"
313, // T_FIELD_TIREFR: "TTFR"
318, // T_FIELD_TIRERL: "TTRL"
323, // T_FIELD_TIRERR: "TTRR"
298, // T_FIELD_LAPCOUNT: "LAPS"
186, // T_FIELD_INICHKSTATE: "ICSTATE"
256, // T_FIELD_ERR: "ERROR"
340, // T_FIELD_SDC: "SDC"
263, // T_FIELD_ERR: "ERROR"
341, // T_FIELD_SDC: "SDC"
202, // T_FIELD_INVRREADY: "INVRRDY"
194, // T_FIELD_INVLREADY: "INVLRDY"
218, // T_FIELD_R2DPROGRESS: "R2DPROG"
@ -36,9 +37,9 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
176, // T_NUMBERWILDCARD: "<>"
176, // T_DEFAULTWILDCARD_CENTERED: "<>"
176, // T_DEFAULTWILDCARD_RIGHTALIGNED: "<>"
332, // T_FIELD_TSCURRENT: "ITS"
327, // T_FIELD_MINCELLVOLT: "VMIN"
274, // T_FIELD_SPEED: "SPEED"
333, // T_FIELD_TSCURRENT: "ITS"
328, // T_FIELD_MINCELLVOLT: "VMIN"
281, // T_FIELD_SPEED: "SPEED"
95, // T_INSPECTION_HUGE: "Inspection"
158, // T_EBS_HUGE: "EBS Test"
117, // T_TRACKDRIVE_HUGE: "Trackdrive"
@ -53,19 +54,19 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
138, // T_AUTOX: "Autocross"
226, // T_SKIDPAD: "Skidpad"
82, // T_ACCEL: "Acceleration"
268, // T___SINGLEUSE_JN2J: "MOTOR"
275, // T___SINGLEUSE_JN2J: "MOTOR"
167, // T___SINGLEUSE_ZP7N: "INVERTER"
176, // T___SINGLEUSE_9L8R: "<>"
16, // T___SINGLEUSE_1NKF: ""
176, // T___SINGLEUSE_J5UH: "<>"
336, // T___SINGLEUSE_NGUK: "R2D"
337, // T___SINGLEUSE_NGUK: "R2D"
176, // T___SINGLEUSE_4E84: "<>"
176, // T___SINGLEUSE_YTAB: "<>"
106, // T___SINGLEUSE_RWCE: "PARAMETERS"
148, // T___SINGLEUSE_HMH2: "PRECHARGE"
344, // T___SINGLEUSE_4OBM: "LV"
333, // T___SINGLEUSE_PHFD: "TS"
280, // T___SINGLEUSE_H6UX: "TIRES"
345, // T___SINGLEUSE_4OBM: "LV"
334, // T___SINGLEUSE_PHFD: "TS"
242, // T___SINGLEUSE_H6UX: "BRAKES"
176, // T___SINGLEUSE_20H3: "<>"
17, // T___SINGLEUSE_SDGP: "Current Mission:"
51, // T___SINGLEUSE_M5X7: "Invalid Mission"

View File

@ -83,26 +83,26 @@ KEEP extern const touchgfx::Unicode::UnicodeChar texts_all_languages[] TEXT_LOCA
0x52, 0x32, 0x44, 0x50, 0x52, 0x4f, 0x47, 0x0, // @218 "R2DPROG"
0x53, 0x6b, 0x69, 0x64, 0x70, 0x61, 0x64, 0x0, // @226 "Skidpad"
0x54, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @234 "TSSTATE"
0x54, 0x53, 0x56, 0x42, 0x41, 0x54, 0x0, // @242 "TSVBAT"
0x54, 0x53, 0x56, 0x56, 0x45, 0x48, 0x0, // @249 "TSVVEH"
0x45, 0x52, 0x52, 0x4f, 0x52, 0x0, // @256 "ERROR"
0x4c, 0x56, 0x53, 0x4f, 0x43, 0x0, // @262 "LVSOC"
0x4d, 0x4f, 0x54, 0x4f, 0x52, 0x0, // @268 "MOTOR"
0x53, 0x50, 0x45, 0x45, 0x44, 0x0, // @274 "SPEED"
0x54, 0x49, 0x52, 0x45, 0x53, 0x0, // @280 "TIRES"
0x54, 0x53, 0x53, 0x4f, 0x43, 0x0, // @286 "TSSOC"
0x42, 0x42, 0x41, 0x4c, 0x0, // @292 "BBAL"
0x4c, 0x41, 0x50, 0x53, 0x0, // @297 "LAPS"
0x54, 0x4d, 0x41, 0x58, 0x0, // @302 "TMAX"
0x54, 0x54, 0x46, 0x4c, 0x0, // @307 "TTFL"
0x54, 0x54, 0x46, 0x52, 0x0, // @312 "TTFR"
0x54, 0x54, 0x52, 0x4c, 0x0, // @317 "TTRL"
0x54, 0x54, 0x52, 0x52, 0x0, // @322 "TTRR"
0x56, 0x4d, 0x49, 0x4e, 0x0, // @327 "VMIN"
0x49, 0x54, 0x53, 0x0, // @332 "ITS"
0x52, 0x32, 0x44, 0x0, // @336 "R2D"
0x53, 0x44, 0x43, 0x0, // @340 "SDC"
0x4c, 0x56, 0x0 // @344 "LV"
0x42, 0x52, 0x41, 0x4b, 0x45, 0x53, 0x0, // @242 "BRAKES"
0x54, 0x53, 0x56, 0x42, 0x41, 0x54, 0x0, // @249 "TSVBAT"
0x54, 0x53, 0x56, 0x56, 0x45, 0x48, 0x0, // @256 "TSVVEH"
0x45, 0x52, 0x52, 0x4f, 0x52, 0x0, // @263 "ERROR"
0x4c, 0x56, 0x53, 0x4f, 0x43, 0x0, // @269 "LVSOC"
0x4d, 0x4f, 0x54, 0x4f, 0x52, 0x0, // @275 "MOTOR"
0x53, 0x50, 0x45, 0x45, 0x44, 0x0, // @281 "SPEED"
0x54, 0x53, 0x53, 0x4f, 0x43, 0x0, // @287 "TSSOC"
0x42, 0x42, 0x41, 0x4c, 0x0, // @293 "BBAL"
0x4c, 0x41, 0x50, 0x53, 0x0, // @298 "LAPS"
0x54, 0x4d, 0x41, 0x58, 0x0, // @303 "TMAX"
0x54, 0x54, 0x46, 0x4c, 0x0, // @308 "TTFL"
0x54, 0x54, 0x46, 0x52, 0x0, // @313 "TTFR"
0x54, 0x54, 0x52, 0x4c, 0x0, // @318 "TTRL"
0x54, 0x54, 0x52, 0x52, 0x0, // @323 "TTRR"
0x56, 0x4d, 0x49, 0x4e, 0x0, // @328 "VMIN"
0x49, 0x54, 0x53, 0x0, // @333 "ITS"
0x52, 0x32, 0x44, 0x0, // @337 "R2D"
0x53, 0x44, 0x43, 0x0, // @341 "SDC"
0x4c, 0x56, 0x0 // @345 "LV"
};
TEXT_LOCATION_FLASH_PRAGMA

View File

@ -11,6 +11,7 @@ extern touchgfx::GeneratedFont& getFont_CHINN____20_4bpp();
extern touchgfx::GeneratedFont& getFont_CHINN____40_4bpp();
extern touchgfx::GeneratedFont& getFont_lucon_TTF_50_4bpp();
extern touchgfx::GeneratedFont& getFont_verdanab_20_4bpp();
extern touchgfx::GeneratedFont& getFont_lucon_TTF_33_4bpp();
const touchgfx::Font* touchgfx_fonts[] = {
&(getFont_verdana_20_4bpp()),
@ -18,17 +19,83 @@ const touchgfx::Font* touchgfx_fonts[] = {
&(getFont_CHINN____20_4bpp()),
&(getFont_CHINN____40_4bpp()),
&(getFont_lucon_TTF_50_4bpp()),
&(getFont_verdanab_20_4bpp())
&(getFont_verdanab_20_4bpp()),
&(getFont_lucon_TTF_33_4bpp())
};
extern const touchgfx::TypedText::TypedTextData typedText_database_DEFAULT[];
extern const touchgfx::TypedText::TypedTextData* const typedTextDatabaseArray[];
TEXT_LOCATION_FLASH_PRAGMA
const touchgfx::TypedText::TypedTextData typedText_database_GB[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 5, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 6, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 4, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 0, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 0, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 0, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 1, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
{ 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
{ 4, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
{ 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
{ 1, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 4, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR }
};
TEXT_LOCATION_FLASH_PRAGMA
const touchgfx::TypedText::TypedTextData typedText_database_DEFAULT[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 5, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 6, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
@ -90,7 +157,7 @@ const touchgfx::TypedText::TypedTextData typedText_database_DEFAULT[] TEXT_LOCAT
TEXT_LOCATION_FLASH_PRAGMA
const touchgfx::TypedText::TypedTextData* const typedTextDatabaseArray[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
typedText_database_DEFAULT
typedText_database_GB
};
namespace TypedTextDatabase
@ -139,6 +206,9 @@ void resetFont(touchgfx::FontId fontId)
case 5:
touchgfx_fonts[5] = &(getFont_verdanab_20_4bpp());
break;
case 6:
touchgfx_fonts[6] = &(getFont_lucon_TTF_33_4bpp());
break;
}
}
} // namespace TypedTextDatabase

View File

@ -13,7 +13,7 @@ CountedEnum(DataFieldType, size_t, DF_TSState, DF_ASState, DF_ActiveMission,
DF_IniChkState, DF_LapCount, DF_TireTempFL, DF_TireTempFR,
DF_TireTempRL, DF_TireTempRR, DF_MinCellVolt, DF_MaxCellTemp,
DF_TSSoC, DF_LVSoC, DF_TSCurrent, DF_TSVoltageBat, DF_TSVoltageVeh,
DF_Speed, DF_BBal);
DF_Speed, DF_BBal, DF_BPF, DF_BPR, DF_DistanceTotal);
enum class NamedFieldKind { Float, Bool, Text, Int };

View File

@ -19,11 +19,14 @@ public:
*/
void setTempThresholds(int *thresholds);
void setSmallText(bool small);
protected:
private:
int temp;
int tempThresholds[4];
Unicode::UnicodeChar valueBuffer[3];
Unicode::UnicodeChar valueBuffer[4];
bool small;
void updateValueBuffer();
};

View File

@ -270,6 +270,10 @@ NamedFieldDescription dataFieldDescs[] = {
VEH_FIELD(ts_voltage_veh)},
[DF_Speed] = {NamedFieldKind::Float, "SPEED", 3, 0, VEH_FIELD(speed)},
[DF_BBal] = {NamedFieldKind::Float, "BBAL", 3, 1, get_zero},
[DF_BPF] = {NamedFieldKind::Float, "BPF", 3, 1, VEH_FIELD(brake_press_f)},
[DF_BPR] = {NamedFieldKind::Float, "BPR", 3, 1, VEH_FIELD(brake_press_r)},
[DF_DistanceTotal] = {NamedFieldKind::Float, "DIST", 3, 1,
VEH_FIELD(distance_total)},
};
static_assert(sizeof(dataFieldDescs) / sizeof(dataFieldDescs[0]) ==

View File

@ -2,6 +2,7 @@
#include <cstring>
#include "texts/TextKeysAndLanguages.hpp"
#include "touchgfx/Color.hpp"
#include "touchgfx/Unicode.hpp"
@ -9,7 +10,10 @@ Temperature::Temperature() : temp{0}, tempThresholds{0, 0, 0, 0} {
updateValueBuffer();
}
void Temperature::initialize() { TemperatureBase::initialize(); }
void Temperature::initialize() {
TemperatureBase::initialize();
setSmallText(false);
}
void Temperature::setTemp(int temp_in_celsius) {
if (temp_in_celsius < 0) {
@ -42,10 +46,25 @@ void Temperature::setTempThresholds(int *thresholds) {
memcpy(tempThresholds, thresholds, sizeof(tempThresholds));
}
void Temperature::setSmallText(bool small_) {
this->small = small_;
if (small_) {
value.setTypedText(T_NUMBERSMALLWILDCARD);
value.setHeight(33);
value.setY(14);
} else {
value.setTypedText(T_NUMBERWILDCARD);
value.setHeight(50);
value.setY(0);
}
updateValueBuffer();
}
void Temperature::updateValueBuffer() {
// Unicode::utoa(temp, valueBuffer, 3, 10);
const char *format = small ? "%03d" : "%02d";
Unicode::snprintf(valueBuffer,
sizeof(valueBuffer) / sizeof(Unicode::UnicodeChar), "%02d",
sizeof(valueBuffer) / sizeof(Unicode::UnicodeChar), format,
temp);
value.setWildcard(valueBuffer);
}

View File

@ -17,11 +17,20 @@ void DriverViewView::setupScreen() {
getField(i).setType(fieldTypes[i]);
}
fieldTypeSelection.setNumberOfItems(DataFieldType_COUNT);
int tireThresholds[4] = {35, 40, 50, 60};
tireTempFL.setTempThresholds(tireThresholds);
tireTempFR.setTempThresholds(tireThresholds);
tireTempRL.setTempThresholds(tireThresholds);
tireTempRR.setTempThresholds(tireThresholds);
// int tireThresholds[4] = {35, 40, 50, 60};
// tireTempFL.setTempThresholds(tireThresholds);
// tireTempFR.setTempThresholds(tireThresholds);
// tireTempRL.setTempThresholds(tireThresholds);
// tireTempRR.setTempThresholds(tireThresholds);
int brakeThresholds[4] = {100, 150, 200, 250};
tireTempFL.setSmallText(true);
tireTempFL.setTempThresholds(brakeThresholds);
tireTempFR.setSmallText(true);
tireTempFR.setTempThresholds(brakeThresholds);
tireTempRL.setSmallText(true);
tireTempRL.setTempThresholds(brakeThresholds);
tireTempRR.setSmallText(true);
tireTempRR.setTempThresholds(brakeThresholds);
int invThresholds[4] = {30, 40, 50, 60};
invTempL.setTempThresholds(invThresholds);
invTempR.setTempThresholds(invThresholds);
@ -49,10 +58,10 @@ void DriverViewView::updateFieldValues() {
}
void DriverViewView::setTemps(const Temperatures &temps) {
tireTempFL.setTemp(roundf(temps.tire_fl));
tireTempFR.setTemp(roundf(temps.tire_fr));
tireTempRL.setTemp(roundf(temps.tire_rl));
tireTempRR.setTemp(roundf(temps.tire_rr));
tireTempFL.setTemp(roundf(temps.brake_fl));
tireTempFR.setTemp(roundf(temps.brake_fr));
tireTempRL.setTemp(roundf(temps.brake_rl));
tireTempRR.setTemp(roundf(temps.brake_rr));
invTempL.setTemp(roundf(temps.inv_l));
invTempR.setTemp(roundf(temps.inv_r));
motorTempL.setTemp(roundf(temps.mot_l));