fixed hud

This commit is contained in:
Lubos Petrovic
2020-11-25 22:09:20 +01:00
parent c3090a0be6
commit e68b68b52b
2 changed files with 35 additions and 30 deletions

View File

@@ -34,7 +34,9 @@ Others
## Quick installation with ESP32 flash tool ## Quick installation with ESP32 flash tool
Guide is here M5STACK (Many thanks to DimZen)
https://docs.google.com/document/d/17vJmeveNfN0exQy9wKC-5igU8zzNjsuOn1DPuPV_yJA/edit?usp=sharing
TTGO-T4 (older)
https://docs.google.com/document/d/1nEezrtXY-8X6mQ1hiZVWDjBVse1sXQg1SlnizaRmJwU/edit?usp=sharing https://docs.google.com/document/d/1nEezrtXY-8X6mQ1hiZVWDjBVse1sXQg1SlnizaRmJwU/edit?usp=sharing
## Screens and shortcuts ## Screens and shortcuts

View File

@@ -27,7 +27,7 @@
<= 0°C BMS allows max 40A <= 0°C BMS allows max 40A
*/ */
#define APP_VERSION "v1.8.2" #define APP_VERSION "v1.8.2b"
#include "SPI.h" #include "SPI.h"
#include "TFT_eSPI.h" #include "TFT_eSPI.h"
@@ -541,37 +541,38 @@ bool drawSceneSpeed() {
if (displayScreenSpeedHud) { if (displayScreenSpeedHud) {
// Change rotation to vertical & mirror // Change rotation to vertical & mirror
if (spr.getRotation() != 6) if (tft.getRotation() != 6) {
spr.setRotation(6); tft.setRotation(6);
}
spr.fillRect(0, 0, 240, 320, TFT_BLACK); tft.fillScreen(TFT_BLACK);
spr.setTextDatum(TR_DATUM); // top-right alignment tft.setTextDatum(TR_DATUM); // top-right alignment
spr.setTextColor(TFT_WHITE, TFT_BLACK); // foreground, background text color tft.setTextColor(TFT_WHITE, TFT_BLACK); // foreground, background text color
// Draw speed // Draw speed
spr.setTextSize((params.speedKmh > 99) ? 1 : 2); tft.setTextSize((params.speedKmh > 99) ? 1 : 2);
sprintf(tmpStr3, "0"); sprintf(tmpStr3, "0");
if (params.speedKmh > 10) if (params.speedKmh > 10)
sprintf(tmpStr3, "%01.00f", km2distance(params.speedKmh)); sprintf(tmpStr3, "%01.00f", km2distance(params.speedKmh));
spr.drawString(tmpStr3, 240, 0, 8); tft.drawString(tmpStr3, 240, 0, 8);
// Draw power kWh/100km (>25kmh) else kW // Draw power kWh/100km (>25kmh) else kW
spr.setTextSize(1); tft.setTextSize(1);
if (params.speedKmh > 25 && params.batPowerKw < 0) if (params.speedKmh > 25 && params.batPowerKw < 0)
sprintf(tmpStr3, "%01.01f", km2distance(params.batPowerKwh100)); sprintf(tmpStr3, "%01.01f", km2distance(params.batPowerKwh100));
else else
sprintf(tmpStr3, "%01.01f", params.batPowerKw); sprintf(tmpStr3, "%01.01f", params.batPowerKw);
spr.drawString(tmpStr3, 240, 150, 8); tft.drawString(tmpStr3, 240, 150, 8);
// Draw soc% // Draw soc%
sprintf(tmpStr3, "%01.00f", params.socPerc); sprintf(tmpStr3, "%01.00f", params.socPerc);
spr.drawString(tmpStr3, 240 , 230, 8); tft.drawString(tmpStr3, 240 , 230, 8);
// Cold gate cirlce // Cold gate cirlce
spr.fillCircle(30, 280, 25, (params.batTempC >= 15) ? ((params.batTempC >= 25) ? TFT_DARKGREEN2 : TFT_BLUE) : TFT_RED); tft.fillCircle(30, 280, 25, (params.batTempC >= 15) ? ((params.batTempC >= 25) ? TFT_DARKGREEN2 : TFT_BLUE) : TFT_RED);
// Brake lights // Brake lights
spr.fillRect(0, 310, 240, 10, (params.brakeLights) ? TFT_RED : TFT_BLACK); tft.fillRect(0, 310, 240, 10, (params.brakeLights) ? TFT_RED : TFT_BLACK);
return true; return true;
} }
@@ -1392,6 +1393,7 @@ bool redrawScreen() {
drawSceneDebug(); drawSceneDebug();
} }
if (!displayScreenSpeedHud) {
// BLE not connected // BLE not connected
if (!bleConnected && bleConnect) { if (!bleConnected && bleConnect) {
// Print message // Print message
@@ -1404,6 +1406,7 @@ bool redrawScreen() {
} }
spr.pushSprite(0, 0); spr.pushSprite(0, 0);
}
return true; return true;
} }