From 982a43b8d438e3d2926bd038f4c971139702b66b Mon Sep 17 00:00:00 2001 From: marcel Date: Sun, 26 Mar 2023 17:47:01 +0200 Subject: [PATCH 1/4] Fix Exhaust Temperature for Logano plus GB125 with Logamatic MC110. Exhaust Temperature was always zero prior to fix. On the setup - Logano plus GB125 with Logamatic MM110 (SW-Version 02.10) - Logamatic RC310 (SW-Version 74.03) - MM100 (SW-Version 24.05) the exhaust temperature ist found in telegram type 0xe4 at offset 31. The original location in telegram 0xe5, offset 6 is always zero. --- src/devices/boiler.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/devices/boiler.cpp b/src/devices/boiler.cpp index 488a7fcbf..87d9c232e 100644 --- a/src/devices/boiler.cpp +++ b/src/devices/boiler.cpp @@ -1032,6 +1032,8 @@ void Boiler::process_UBAMonitorFastPlus(std::shared_ptr telegram //has_update(telegram, temperatur_, 13); // unknown temperature //has_update(telegram, temperatur_, 27); // unknown temperature + has_update(telegram, exhaustTemp_, 31); + // read 3 char service code / installation status as appears on the display if ((telegram->message_length > 3) && (telegram->offset == 0)) { char serviceCode[4] = {0}; @@ -1096,7 +1098,7 @@ void Boiler::process_UBAMonitorSlowPlus(std::shared_ptr telegram has_bitupdate(telegram, ignWork_, 2, 3); has_bitupdate(telegram, heatingPump_, 2, 5); has_bitupdate(telegram, wwCirc_, 2, 7); - has_update(telegram, exhaustTemp_, 6); + //has_update(telegram, exhaustTemp_, 6); has_update(telegram, burnStarts_, 10, 3); // force to 3 bytes has_update(telegram, burnWorkMin_, 13, 3); // force to 3 bytes has_update(telegram, burn2WorkMin_, 16, 3); // force to 3 bytes From 1c10d8015c6709b84bbff9fdfc4f5716d73c0963 Mon Sep 17 00:00:00 2001 From: pswid <78219494+pswid@users.noreply.github.com> Date: Mon, 27 Mar 2023 09:55:30 +0200 Subject: [PATCH 2/4] fixed PL and NO translation of "haclimate" --- src/locale_translations.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/locale_translations.h b/src/locale_translations.h index 767e02532..9a9dc476f 100644 --- a/src/locale_translations.h +++ b/src/locale_translations.h @@ -252,9 +252,6 @@ MAKE_WORD_TRANSLATION(weather_compensated, "weather compensated", "Wetter kompen MAKE_WORD_TRANSLATION(outside_basepoint, "outside basepoint", "Basispunkt Außentemp.", "Buiten basispunt", "Utomhus baspunkt", "temp. zewn. z pkt. pocz.", "utendørs basispunkt", "point de base temp. ext.", "dış hava sıcaklığı taban noktası") MAKE_WORD_TRANSLATION(functioning_mode, "functioning mode", "Funktionsweise", "Functiemodus", "Driftläge", "tryb pracy", "driftsmodus", "mode de fonctionnement", "işletme konumu") -// MQTT Discovery - this is special device entity for 'climate' -MAKE_WORD_TRANSLATION(haclimate, "haclimate", "Discovery current room temperature", "Discovery Temperatur", "", "", "HA Avlest temp", "", "") // TODO translate - // mixer MAKE_WORD_TRANSLATION(stopped, "stopped", "gestoppt", "gestopt", "stoppad", "zatrzymany", "stoppet", "arrêté", "durdu") MAKE_WORD_TRANSLATION(opening, "opening", "öffnen", "openen", "öppnar", "otwieranie", "åpner", "ouverture", "açılıyor") @@ -267,6 +264,9 @@ MAKE_WORD_TRANSLATION(cyl1, "cyl 1", "Zyl_1", "Cil 1", "Cyl 1", "cyl 1", "cyl 1" MAKE_WORD_TRANSLATION(cyl2, "cyl 2", "Zyl_2", "Cil 2", "Cyl 2", "cyl 2", "cyl 2", "cyl 2", "cly 1") // Entity translations +// MQTT Discovery - this is special device entity for 'climate' +MAKE_TRANSLATION(haclimate, "haclimate", "Discovery current room temperature", "Discovery Temperatur", "", "", "termostat w HA", "HA Avlest temp", "", "") // TODO translate + // Boiler MAKE_TRANSLATION(wwtapactivated, "wwtapactivated", "turn on/off", "Durchlauferhitzer aktiv", "zet aan/uit", "på/av", "system przygotowywania", "Varmtvann active", "ecs activée", "") MAKE_TRANSLATION(reset, "reset", "Reset", "Reset", "Reset", "Nollställ", "kasowanie komunikatu", "nullstill", "reset", "") From 5c59a207147563a122a486f6ebdd74c091e0aa6c Mon Sep 17 00:00:00 2001 From: marcel Date: Mon, 27 Mar 2023 21:57:31 +0200 Subject: [PATCH 3/4] Accept exhaustTemp_ update from telegram 0xE5 if value is unequal zero. --- src/devices/boiler.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/devices/boiler.cpp b/src/devices/boiler.cpp index 87d9c232e..7f9d721a5 100644 --- a/src/devices/boiler.cpp +++ b/src/devices/boiler.cpp @@ -1098,7 +1098,13 @@ void Boiler::process_UBAMonitorSlowPlus(std::shared_ptr telegram has_bitupdate(telegram, ignWork_, 2, 3); has_bitupdate(telegram, heatingPump_, 2, 5); has_bitupdate(telegram, wwCirc_, 2, 7); - //has_update(telegram, exhaustTemp_, 6); + + /* Update exhaust temperature if it is unequal 0 */ + const uint8_t exhaustTempOffset{6}; + uint16_t exhaustTemp{0}; + if (telegram->read_value(exhaustTemp, exhaustTempOffset)) + has_update(telegram, exhaustTemp_, exhaustTempOffset); + has_update(telegram, burnStarts_, 10, 3); // force to 3 bytes has_update(telegram, burnWorkMin_, 13, 3); // force to 3 bytes has_update(telegram, burn2WorkMin_, 16, 3); // force to 3 bytes From e2fec03a2184de2fe2fed262dc7b003e660cb8f1 Mon Sep 17 00:00:00 2001 From: marcel Date: Sat, 1 Apr 2023 19:15:54 +0200 Subject: [PATCH 4/4] Use exhaust temperature from 0xe4, remove from 0xe5 until verified, closes #1147. --- src/devices/boiler.cpp | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/devices/boiler.cpp b/src/devices/boiler.cpp index 7f9d721a5..2d0cbb4bb 100644 --- a/src/devices/boiler.cpp +++ b/src/devices/boiler.cpp @@ -1098,13 +1098,7 @@ void Boiler::process_UBAMonitorSlowPlus(std::shared_ptr telegram has_bitupdate(telegram, ignWork_, 2, 3); has_bitupdate(telegram, heatingPump_, 2, 5); has_bitupdate(telegram, wwCirc_, 2, 7); - - /* Update exhaust temperature if it is unequal 0 */ - const uint8_t exhaustTempOffset{6}; - uint16_t exhaustTemp{0}; - if (telegram->read_value(exhaustTemp, exhaustTempOffset)) - has_update(telegram, exhaustTemp_, exhaustTempOffset); - + // has_update(telegram, exhaustTemp_, 6); // Disabled until verified as valid location, see #1147. has_update(telegram, burnStarts_, 10, 3); // force to 3 bytes has_update(telegram, burnWorkMin_, 13, 3); // force to 3 bytes has_update(telegram, burn2WorkMin_, 16, 3); // force to 3 bytes