diff --git a/src/plugins/Display/Display.h b/src/plugins/Display/Display.h index 9903c4e3..8849f30e 100644 --- a/src/plugins/Display/Display.h +++ b/src/plugins/Display/Display.h @@ -23,6 +23,7 @@ class Display { mUtcTs = utcTs; mNewPayload = false; mLoopCnt = 0; + mVersion = version; if (mCfg->type == 0) { return; @@ -46,12 +47,12 @@ class Display { DisplayMono.enableScreensaver = mCfg->pxShift; DisplayMono.contrast = mCfg->contrast; - DisplayMono.init(mCfg->type, mCfg->disp_cs, mCfg->disp_dc, mCfg->disp_reset, mCfg->disp_busy, mCfg->disp_clk, mCfg->disp_data); + DisplayMono.init(mCfg->type, mCfg->disp_cs, mCfg->disp_dc, mCfg->disp_reset, mCfg->disp_busy, mCfg->disp_clk, mCfg->disp_data, mVersion); } else if (mCfg->type > 10) { DisplayEPaper.displayRotation = mCfg->rot; counterEPaper = 0; - DisplayEPaper.init(mCfg->type, mCfg->disp_cs, mCfg->disp_dc, mCfg->disp_reset, mCfg->disp_busy, mCfg->disp_clk, mCfg->disp_data); + DisplayEPaper.init(mCfg->type, mCfg->disp_cs, mCfg->disp_dc, mCfg->disp_reset, mCfg->disp_busy, mCfg->disp_clk, mCfg->disp_data, mVersion); } } @@ -116,6 +117,7 @@ class Display { bool mNewPayload; uint8_t mLoopCnt; uint32_t *mUtcTs; + const char *mVersion; display_t *mCfg; HMSYSTEM *mSys; uint16_t period = 10000; // Achtung, max 65535 diff --git a/src/plugins/Display/Display_Mono.cpp b/src/plugins/Display/Display_Mono.cpp index 23c6f0e3..d6caa1a0 100644 --- a/src/plugins/Display/Display_Mono.cpp +++ b/src/plugins/Display/Display_Mono.cpp @@ -63,7 +63,7 @@ void DisplayMonoClass::printText(const char* text, uint8_t line, uint8_t dispX = _display->drawStr(dispX, mLineOffsets[line], text); } -void DisplayMonoClass::init(uint8_t _type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI) { +void DisplayMonoClass::init(uint8_t _type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI, const char* version) { if (0 < _type < 4) { auto constructor = mono_types[_type]; _display = constructor(_RST, _SCK, _MOSI, _CS, _DC); @@ -77,7 +77,9 @@ void DisplayMonoClass::init(uint8_t _type, uint8_t _CS, uint8_t _DC, uint8_t _RS if (contrast < 255) { _display->setContrast(contrast); } - printText("OpenDTU!", 0); + printText("AHOY!", 0, 35); + printText("ahoydtu.de", 2, 20); + printText(version, 3, 46); _display->sendBuffer(); } } diff --git a/src/plugins/Display/Display_Mono.h b/src/plugins/Display/Display_Mono.h index eda23f05..b3307ef9 100644 --- a/src/plugins/Display/Display_Mono.h +++ b/src/plugins/Display/Display_Mono.h @@ -8,7 +8,7 @@ class DisplayMonoClass { DisplayMonoClass(); ~DisplayMonoClass(); - void init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI); + void init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI, const char* version); void loop(float totalPower, float totalYieldDay, float totalYieldTotal, uint8_t isprod); diff --git a/src/plugins/Display/Display_ePaper.cpp b/src/plugins/Display/Display_ePaper.cpp index 6e260ab1..01b641ba 100644 --- a/src/plugins/Display/Display_ePaper.cpp +++ b/src/plugins/Display/Display_ePaper.cpp @@ -9,7 +9,7 @@ static const uint32_t spiClk = 4000000; // 4 MHz SPIClass hspi(HSPI); #endif -std::map> _ePaperTypes = { +std::map> _ePaperTypes = { // DEPG0150BN 200x200, SSD1681, TTGO T5 V2.4.1 {11, [](uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY) { return new GxEPD2_BW(GxEPD2_150_BN(_CS, _DC, _RST, _BUSY)); }}, // GDEW027C44 2.7 " b/w/r 176x264, IL91874 @@ -24,7 +24,7 @@ DisplayEPaperClass::~DisplayEPaperClass() { delete _display; } //*************************************************************************** -void DisplayEPaperClass::init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI) { +void DisplayEPaperClass::init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI, const char *version) { if (type > 3) { Serial.begin(115200); auto constructor = _ePaperTypes[type]; diff --git a/src/plugins/Display/Display_ePaper.h b/src/plugins/Display/Display_ePaper.h index e404f565..ed8fb025 100644 --- a/src/plugins/Display/Display_ePaper.h +++ b/src/plugins/Display/Display_ePaper.h @@ -31,7 +31,7 @@ class DisplayEPaperClass { DisplayEPaperClass(); ~DisplayEPaperClass(); void fullRefresh(); - void init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI); + void init(uint8_t type, uint8_t _CS, uint8_t _DC, uint8_t _RST, uint8_t _BUSY, uint8_t _SCK, uint8_t _MOSI, const char* version); void loop(float totalPower, float totalYieldDay, float totalYieldTotal, uint8_t isprod); uint8_t displayRotation = 2;