mirror of
https://github.com/lumapu/ahoy.git
synced 2025-04-29 18:26:21 +02:00
- define display defaults
- adjust font sizes and positions
This commit is contained in:
parent
a9e2fc9aeb
commit
e04f3ff948
1 changed files with 18 additions and 15 deletions
|
@ -10,8 +10,8 @@ class DisplayMono64X48 : public DisplayMono {
|
|||
public:
|
||||
DisplayMono64X48() : DisplayMono() {
|
||||
mEnPowerSafe = true;
|
||||
mEnScreenSaver = true;
|
||||
mLuminance = 50;
|
||||
mEnScreenSaver = false;
|
||||
mLuminance = 20;
|
||||
mExtra = 0;
|
||||
mDispY = 0;
|
||||
mTimeout = DISP_DEFAULT_TIMEOUT; // interval at which to power save (milliseconds)
|
||||
|
@ -36,8 +36,8 @@ class DisplayMono64X48 : public DisplayMono {
|
|||
mDisplay->setContrast(mLuminance);
|
||||
|
||||
printText("AHOY!", 0);
|
||||
printText("ahoydtu.de", 2);
|
||||
printText(version, 3);
|
||||
printText("ahoydtu.de", 1);
|
||||
printText(version, 2);
|
||||
mDisplay->sendBuffer();
|
||||
}
|
||||
|
||||
|
@ -77,24 +77,24 @@ class DisplayMono64X48 : public DisplayMono {
|
|||
mDisplay->setPowerSave(mEnPowerSafe);
|
||||
}
|
||||
|
||||
snprintf(mFmtText, DISP_FMT_TEXT_LEN, "today: %4.0f Wh", totalYieldDay);
|
||||
snprintf(mFmtText, DISP_FMT_TEXT_LEN, "D: %4.0f Wh", totalYieldDay);
|
||||
printText(mFmtText, 1);
|
||||
|
||||
snprintf(mFmtText, DISP_FMT_TEXT_LEN, "total: %.1f kWh", totalYieldTotal);
|
||||
snprintf(mFmtText, DISP_FMT_TEXT_LEN, "T: %.1f kWh", totalYieldTotal);
|
||||
printText(mFmtText, 2);
|
||||
|
||||
IPAddress ip = WiFi.localIP();
|
||||
if (!(mExtra % 10) && (ip))
|
||||
printText(ip.toString().c_str(), 3);
|
||||
else if (!(mExtra % 5)) {
|
||||
snprintf(mFmtText, DISP_FMT_TEXT_LEN, "%d Inverter on", isprod);
|
||||
snprintf(mFmtText, DISP_FMT_TEXT_LEN, "active Inv: %d", isprod);
|
||||
printText(mFmtText, 3);
|
||||
} else if (NULL != mUtcTs)
|
||||
printText(ah::getTimeStr(gTimezone.toLocal(*mUtcTs)).c_str(), 3);
|
||||
|
||||
mDisplay->sendBuffer();
|
||||
|
||||
mExtra = 1;
|
||||
mExtra++;
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -110,22 +110,25 @@ class DisplayMono64X48 : public DisplayMono {
|
|||
inline void setFont(uint8_t line) {
|
||||
switch (line) {
|
||||
case 0:
|
||||
mDisplay->setFont(u8g2_font_logisoso16_tr);
|
||||
mDisplay->setFont(u8g2_font_fur11_tf);
|
||||
break;
|
||||
case 1:
|
||||
case 2:
|
||||
mDisplay->setFont(u8g2_font_6x10_tf);
|
||||
break;
|
||||
case 3:
|
||||
mDisplay->setFont(u8g2_font_5x8_tr);
|
||||
mDisplay->setFont(u8g2_font_4x6_tr);
|
||||
break;
|
||||
default:
|
||||
mDisplay->setFont(u8g2_font_5x8_tr);
|
||||
case 4:
|
||||
mDisplay->setFont(u8g2_font_4x6_tr);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void printText(const char *text, uint8_t line) {
|
||||
uint8_t dispX = (line == 0) ? 10 : 5;
|
||||
uint8_t dispX = 0; //small display, use all we have
|
||||
dispX += (mEnScreenSaver) ? (mExtra % 4) : 0;
|
||||
setFont(line);
|
||||
|
||||
dispX += (mEnScreenSaver) ? (mExtra % 7) : 0;
|
||||
mDisplay->drawStr(dispX, mLineYOffsets[line], text);
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue