Privatsphäre-Einstellungen
Diese Webseite verwendet Cookies. Mit einem Klick auf "Alle akzeptieren" akzeptieren Sie die Verwendung der Cookies. Die Daten, die durch die Cookies entstehen, werden für nicht personalisierte Analysen genutzt. Weitere Informationen finden Sie in den Einstellungen sowie in unseren Datenschutzhinweisen. Sie können die Verwendung von Cookies jederzeit über Ihre anpassen. Ihre Zustimmung können Sie jederzeit mit Wirkung für die Zukunft widerrufen.
Privatsphäre-Einstellungen
Um Ihnen eine optimale Funktion der Webseite zu bieten, setzen wir Cookies ein. Das sind kleine Textdateien, die auf Ihrem Computer gespeichert werden. Dazu zählen Cookies für den Betrieb und die Optimierung der Seite. Hier können Sie auswählen, welche Cookies Sie zulassen:
Privacy Icon
Erforderliche Cookies
Diese Cookies sind notwendig, damit Sie durch die Seiten navigieren und wesentliche Funktionen nutzen können. Dies umschließt die Reichweitenmessung durch INFOnline (IVW-Prüfung), die für den Betrieb des HaustechnikDialogs unerlässlich ist. Wir benutzen Analysecookies, um die Zahl der individuellen Besucher auf Basis anonymer und pseudonymer Informationen zu ermitteln. Ein unmittelbarer Rückschluss auf eine Person ist dabei nicht möglich.
Privacy Icon
Optionale analytische Cookies
Diese Cookies helfen uns, das Nutzungsverhalten besser zu verstehen.Sie ermöglichen die Erhebung von Nutzungs- und Erkennungsmöglichkeiten durch Erst- oder Drittanbieter, in so genannten pseudonymen Nutzungsprofilen. Wir benutzen beispielsweise Analysecookies, um die Zahl der individuellen Besucher einer Webseite oder eines Dienstes zu ermitteln oder um andere Statistiken im Hinblick auf den Betrieb unserer Webseite zu erheben, als auch das Nutzerverhalten auf Basis anonymer und pseudonymer Informationen zu analysieren, wie Besucher mit der Webseite interagieren. Ein unmittelbarer Rückschluss auf eine Person ist dabei nicht möglich.
Privacy Icon
Dienste von anderen Unternehmen (Google AdSense)
Beim akzeptieren dieser Option erlauben Sie unserer Webseite Google AdSense zu verwenden. Google AdSense verwendet Cookies, um Ihnen personalisierte Werbung anzuzeigen, die auf Ihren Interessen basieren können.Bitte beachten Sie, dass durch das Akzeptieren der entsprechenden Cookies Daten an Google LLC in den USA übermittelt und dort verarbeitet werden. Weitere Informationen entnehmen Sie bitte unserer Datenschutzerklärung.
Datenschutzhinweise

Intensishome-Wifi-Modul in Kombination mit der Panasonic WH-MDC05F3E5 (Geisha)
Verfasser:
WilliHH
Zeit: 14.12.2025 20:21:46
0
3908790
Hier hat er die Teile herstellen lassen. Die Platine selber kostet in der Herstellung 2€ ohne Bestückung zzgl. Versand.
Du kannst die auch bestücken lassen oder selber löten, was entsprechend kostet

https://jlcpcb.com/

Verfasser:
HeatPunk
Zeit: 15.12.2025 12:42:50
0
3908938
Zitat von WilliHH Beitrag anzeigen
Hier hat er die Teile herstellen lassen. Die Platine selber kostet in der Herstellung 2€ ohne Bestückung zzgl. Versand.
Du kannst die auch bestücken lassen oder selber löten, was entsprechend kostet

https://jlcpcb.com/


Sehr cool! Danke schön :)

Verfasser:
HeatPunk
Zeit: 01.01.2026 19:50:58
0
3914492
Zitat von WilliHH Beitrag anzeigen
Hier hat er die Teile herstellen lassen. Die Platine selber kostet in der Herstellung 2€ ohne Bestückung zzgl. Versand.
Du kannst die auch bestücken lassen oder selber löten, was entsprechend kostet

https://jlcpcb.com/


Nun, da ich alle Teile da habe, habe ich es vorgezogen es auf einem Breadboard nachzubauen, bevor ich es löte. Sieht eigentlich alles ganz gut aus, die Werte sind da, der RTS-Pin schaltet laut Log, Befehle erscheinen ebenso, werden aber nicht umgesetzt. Könntest du mir mal den entsprechenden Log-Output posten, wenn du eine Sollwertverschiebung machst oder schaltest? Danke :)

Verfasser:
WilliHH
Zeit: 01.01.2026 21:16:19
0
3914525
bei den Befehlen bekomme ich keine Logs im ESP-Home angezeigt.

Verfasser:
HeatPunk
Zeit: 01.01.2026 23:45:38
0
3914572
Zitat von WilliHH Beitrag anzeigen
bei den Befehlen bekomme ich keine Logs im ESP-Home angezeigt.


OK - stimmt. Im Original yaml ist das Debug nur auf WARN. Das geht nur mit

logger:
baud_rate: 0
level: DEBUG

Falls noch jemand von den Geeks mitliest: Im Log sieht es bei mir so aus:

[23:47:20.994][D][number:064]: 'Shift setpoint temperature': Setting value
[23:47:20.996][D][number:123]: New value: 2.000000
[23:47:20.999][D][aquarea:483]: ShiftSetpointTempNumber
[23:47:21.139][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[23:47:21.493][D][aquarea:300]: rts high
[23:47:21.495][D][aquarea:359]: send: 8a 2
[23:47:21.671][D][aquarea:288]: rts low, done after 176

Auch keine Missmatches - Sollte eigentlich funktionieren.

Gibt es irgendeine weitere Idee, warum meine Geisha die Steuerung verweigert? Vielleicht noch irgendwelche Einstellungen?

Verfasser:
WilliHH
Zeit: 02.01.2026 00:47:09
0
3914581
Danke für den Tipp mit dem Logger, anbei mein Log.
Zur Info: Die Einstellungen in der Kabelfernbedienungen bleiben immer unverändert, auch wenn Sollwert verändert ist. Die Daten werden im Gerät verarbeitet.


[00:42:59.650][D][number:064]: 'Shift setpoint temperature': Setting value
[00:42:59.653][D][number:123]: New value: -3.000000
[00:42:59.653][D][aquarea:447]: ShiftSetpointTempNumber
[00:42:59.660][D][aquarea:264]: rts high
[00:42:59.666][D][aquarea:323]: send: 8a fd
[00:42:59.775][D][aquarea:252]: rts low, done after 110
[00:42:59.781][D][number:034]: 'Shift setpoint temperature': Sending state -3.000000
[00:43:00.088][D][sensor:135]: 'Outside temperature': Sending state 2.00000 °C with 1 decimals of accuracy
[00:43:00.259][D][sensor:135]: 'Outlet temperature': Sending state 22.00000 °C with 1 decimals of accuracy
[00:43:00.442][D][text_sensor:097]: 'Error code': Sending state '0'
[00:43:00.526][W][aquarea:305]: Checksum mismatch 57 bf

Verfasser:
HeatPunk
Zeit: 02.01.2026 11:57:41
0
3914717
Zitat von WilliHH Beitrag anzeigen
Danke für den Tipp mit dem Logger, anbei mein Log.
Zur Info: Die Einstellungen in der Kabelfernbedienungen bleiben immer unverändert, auch wenn Sollwert verändert ist. Die Daten werden im Gerät verarbeitet.


[00:42:59.650][D][number:064]: 'Shift setpoint temperature':[...]



Danke! Sehr wertvoll!

Ich bekomme nämlich diese Zeile nicht danach, was wohl die letztendliche Bestätigung ist [00:42:59.781][D][number:034]: 'Shift setpoint temperature': Sending state -3.000000

Kommt dieser Status bei dir regelmäßig im Log, wie die anderen Werte, oder kam er nur da, bei der Veränderung?

Verfasser:
WilliHH
Zeit: 02.01.2026 22:00:44
1
3915010
Hier ein weiterer Log von allen Aktionen, die man überhaupt einstellen kannst.



[21:54:40.156][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:54:40.344][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:54:40.512][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:54:41.412][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:54:41.780][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:42.131][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:42.319][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:54:42.668][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:54:43.211][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:54:43.404][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:54:43.570][D][text_sensor:097]: 'Error code': Sending state '0'
[21:54:43.753][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:54:43.927][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:54:44.106][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:54:44.292][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:54:45.187][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:54:45.551][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:45.925][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:46.085][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:54:46.448][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:54:46.993][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:54:47.163][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:54:47.348][D][text_sensor:097]: 'Error code': Sending state '0'
[21:54:47.519][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:54:47.705][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:54:47.892][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:54:48.060][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:54:48.960][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:54:49.323][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:49.689][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:49.824][W][aquarea:305]: Checksum mismatch 86 55
[21:54:49.957][W][aquarea:305]: Checksum mismatch d0 ce
[21:54:50.221][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:54:50.766][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:54:50.936][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:54:51.122][D][text_sensor:097]: 'Error code': Sending state '0'
[21:54:51.295][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:54:51.482][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:54:51.668][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:54:51.838][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:54:52.738][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:54:53.102][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:53.464][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:53.636][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:54:54.000][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:54:54.542][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:54:54.714][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:54:54.902][D][text_sensor:097]: 'Error code': Sending state '0'
[21:54:55.071][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:54:55.258][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:54:55.429][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:54:55.616][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:54:56.515][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:54:56.880][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:57.229][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:54:57.414][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:54:57.764][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:54:58.309][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:54:58.497][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:54:58.666][D][text_sensor:097]: 'Error code': Sending state '0'
[21:54:58.770][W][aquarea:305]: Checksum mismatch ff bf
[21:54:58.856][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:54:59.026][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:54:59.210][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:54:59.397][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:00.294][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:00.643][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:01.006][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:01.195][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:01.540][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:01.857][W][aquarea:305]: Checksum mismatch bb fb
[21:55:02.088][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:02.259][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:02.443][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:02.629][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:02.798][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:02.985][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:55:03.072][W][aquarea:305]: Checksum mismatch 42 c2
[21:55:03.172][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:04.058][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:04.422][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:04.785][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:04.954][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:05.314][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:05.857][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:06.046][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:06.214][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:06.394][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:06.580][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:06.766][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:06.934][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:07.834][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:08.198][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:08.564][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:08.734][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:09.099][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:09.585][D][number:064]: 'Cool setpoint temperature': Setting value
[21:55:09.588][D][number:123]: New value: 18.000000
[21:55:09.588][D][aquarea:427]: CoolSetpointTempNumber
[21:55:09.634][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:09.819][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:09.989][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:10.177][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:10.362][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:10.534][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:10.718][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:11.618][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:11.968][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:12.331][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:12.516][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:12.879][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:13.227][D][aquarea:264]: rts high
[21:55:13.232][D][aquarea:323]: send: 88 12
[21:55:13.347][D][aquarea:252]: rts low, done after 113
[21:55:13.350][D][number:034]: 'Cool setpoint temperature': Sending state 18.000000
[21:55:13.350][W][component:490]: aquarea took a long time for an operation (118 ms)
[21:55:13.350][W][component:493]: Components should block for at most 30 ms
[21:55:13.643][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:13.825][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:14.010][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:14.113][W][aquarea:305]: Checksum mismatch bf ff
[21:55:14.183][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:14.369][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:14.555][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:14.584][D][number:064]: 'Heat off outside temperature': Setting value
[21:55:14.588][D][number:123]: New value: 13.000000
[21:55:14.588][D][aquarea:407]: HeatOffOutsideTempNumber
[21:55:14.727][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:15.628][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:15.991][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:16.342][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:16.524][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:16.891][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:17.238][D][aquarea:264]: rts high
[21:55:17.242][D][aquarea:323]: send: 86 d
[21:55:17.360][D][aquarea:252]: rts low, done after 118
[21:55:17.366][D][number:034]: 'Heat off outside temperature': Sending state 13.000000
[21:55:17.720][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:17.905][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:18.076][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:18.263][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:18.449][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:18.620][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:18.806][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:19.588][D][number:064]: 'Heater On outside temperature': Setting value
[21:55:19.591][D][number:123]: New value: -15.000000
[21:55:19.591][D][aquarea:417]: HeaterOnOutsideTempNumber
[21:55:19.707][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:20.057][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:20.420][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:20.608][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:20.957][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:21.320][D][aquarea:264]: rts high
[21:55:21.324][D][aquarea:323]: send: 87 f1
[21:55:21.434][D][aquarea:252]: rts low, done after 110
[21:55:21.438][D][number:034]: 'Heater On outside temperature': Sending state -15.000000
[21:55:21.695][W][aquarea:305]: Checksum mismatch fc bc
[21:55:21.798][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:21.983][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:22.152][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:22.337][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:22.522][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:22.695][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:22.879][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:23.780][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:24.046][W][aquarea:305]: Checksum mismatch ea ca
[21:55:24.132][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:24.498][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:24.590][D][number:064]: 'High heat outside temperature': Setting value
[21:55:24.595][D][number:123]: New value: 12.000000
[21:55:24.595][D][aquarea:377]: HeatOutsideTempHighNumber
[21:55:24.669][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:25.031][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:25.395][D][aquarea:264]: rts high
[21:55:25.400][D][aquarea:323]: send: 83 c
[21:55:25.510][D][aquarea:252]: rts low, done after 108
[21:55:25.513][D][number:034]: 'High heat outside temperature': Sending state 12.000000
[21:55:25.869][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:26.056][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:26.226][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:26.412][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:26.597][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:26.767][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:26.953][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:27.170][I][safe_mode:042]: Boot seems successful; resetting boot loop counter
[21:55:27.220][D][sensor:135]: 'Heatpump wifi RSSI': Sending state -50.00000 dBm with 0 decimals of accuracy
[21:55:27.846][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:28.186][D][sensor:135]: 'Heatpump uptime': Sending state 66.31400 s with 0 decimals of accuracy
[21:55:28.206][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:28.568][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:28.752][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:29.100][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:29.591][D][number:064]: 'Low heat outside temperature': Setting value
[21:55:29.594][D][number:123]: New value: -12.000000
[21:55:29.594][D][aquarea:367]: HeatOutsideTempLowNumber
[21:55:29.643][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:29.829][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:30.000][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:30.182][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:30.368][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:30.554][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:30.721][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:31.626][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:31.990][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:32.341][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:32.528][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:32.877][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:33.245][D][aquarea:264]: rts high
[21:55:33.267][D][aquarea:323]: send: 82 f4
[21:55:33.357][D][aquarea:252]: rts low, done after 115
[21:55:33.360][D][number:034]: 'Low heat outside temperature': Sending state -12.000000
[21:55:33.718][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:33.906][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:34.075][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:34.254][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:34.437][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:34.608][D][number:064]: 'Shift setpoint temperature': Setting value
[21:55:34.620][D][number:123]: New value: -1.000000
[21:55:34.620][D][aquarea:447]: ShiftSetpointTempNumber
[21:55:34.636][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:34.794][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:35.714][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:36.051][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:36.417][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:36.604][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:36.951][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:37.312][D][aquarea:264]: rts high
[21:55:37.316][D][aquarea:323]: send: 8a ff
[21:55:37.433][D][aquarea:252]: rts low, done after 116
[21:55:37.438][D][number:034]: 'Shift setpoint temperature': Sending state -1.000000
[21:55:37.793][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:37.981][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:38.150][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:38.333][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:38.521][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:38.692][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:55:38.875][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:39.600][D][number:064]: 'Tank setpoint temperature': Setting value
[21:55:39.603][D][number:123]: New value: 55.000000
[21:55:39.603][D][aquarea:437]: TankSetpointTempNumber
[21:55:39.782][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:40.134][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:40.497][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:40.668][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:41.032][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:41.382][D][aquarea:264]: rts high
[21:55:41.386][D][aquarea:323]: send: 89 37
[21:55:41.506][D][aquarea:252]: rts low, done after 120
[21:55:41.509][D][number:034]: 'Tank setpoint temperature': Sending state 55.000000
[21:55:41.770][W][aquarea:305]: Checksum mismatch cc bc
[21:55:41.870][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:42.058][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:42.228][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:42.416][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:42.586][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:42.772][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:42.942][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:43.851][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:44.200][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:44.563][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:44.596][D][number:064]: 'High heat water temperature': Setting value
[21:55:44.601][D][number:123]: New value: 25.000000
[21:55:44.601][D][aquarea:397]: HeatWaterTempHighNumber
[21:55:44.750][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:45.099][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:45.457][D][aquarea:264]: rts high
[21:55:45.461][D][aquarea:323]: send: 85 19
[21:55:45.583][D][aquarea:252]: rts low, done after 119
[21:55:45.594][D][number:034]: 'High heat water temperature': Sending state 25.000000
[21:55:45.942][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:46.127][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:46.311][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:46.481][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:46.672][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:46.839][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:47.026][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:47.920][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:48.287][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:48.638][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:48.823][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:49.185][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:49.600][D][number:064]: 'Low heat water temperature': Setting value
[21:55:49.605][D][number:123]: New value: 28.000000
[21:55:49.605][D][aquarea:387]: HeatWaterTempLowNumber
[21:55:49.630][W][aquarea:305]: Checksum mismatch c4 bc
[21:55:49.716][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:49.903][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:50.072][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:50.259][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:50.431][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:50.616][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:55:50.804][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:51.702][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:52.051][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:52.415][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:52.599][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:52.962][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:53.311][D][aquarea:264]: rts high
[21:55:53.315][D][aquarea:323]: send: 84 1c
[21:55:53.429][D][aquarea:252]: rts low, done after 115
[21:55:53.432][D][number:034]: 'Low heat water temperature': Sending state 28.000000
[21:55:53.792][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:53.977][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:54.149][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:54.334][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:54.519][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:54.688][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:55:54.879][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:55.778][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:56.128][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:56.495][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:55:56.665][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:55:57.029][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:55:57.573][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:55:57.743][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:55:57.921][D][text_sensor:097]: 'Error code': Sending state '0'
[21:55:58.105][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:55:58.292][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:55:58.463][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:55:58.648][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:55:59.547][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:55:59.860][W][aquarea:305]: Checksum mismatch 25 55
[21:56:00.268][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:56:00.437][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:56:00.801][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:56:01.343][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:56:01.531][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:56:01.701][D][text_sensor:097]: 'Error code': Sending state '0'
[21:56:01.888][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:56:02.061][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:56:02.250][D][sensor:135]: 'Heatpump compressor value': Sending state 27.00000 with 1 decimals of accuracy
[21:56:02.417][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:56:03.327][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:56:03.683][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:56:04.034][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:56:04.213][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:56:04.578][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[21:56:05.120][D][sensor:135]: 'Outside temperature': Sending state -2.00000 °C with 1 decimals of accuracy
[21:56:05.293][D][sensor:135]: 'Outlet temperature': Sending state 25.00000 °C with 1 decimals of accuracy
[21:56:05.477][D][text_sensor:097]: 'Error code': Sending state '0'
[21:56:05.664][D][sensor:135]: 'Inlet temperature': Sending state 23.00000 °C with 1 decimals of accuracy
[21:56:05.837][D][sensor:135]: 'Tank temperature': Sending state 38.00000 °C with 1 decimals of accuracy
[21:56:06.023][D][sensor:135]: 'Heatpump compressor value': Sending state 28.00000 with 1 decimals of accuracy
[21:56:06.193][D][text_sensor:097]: 'Last error code': Sending state '232'
[21:56:07.095][D][sensor:135]: 'Heat power': Sending state 725.00000 W with 1 decimals of accuracy
[21:56:07.461][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[21:56:07.810][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[21:56:07.913][W][aquarea:305]: Checksum mismatch d1 cd
[21:56:08.000][D][sensor:135]: 'Water pump speed': Sending state 2.00000 with 1 decimals of accuracy
[21:56:08.348][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'

Verfasser:
WilliHH
Zeit: 04.01.2026 09:26:46
0
3915480
funktioniert dein Board?

Verfasser:
HeatPunk
Zeit: 05.01.2026 01:26:04
0
3916001
Zitat von WilliHH Beitrag anzeigen
funktioniert dein Board?


Entschuldige bitte die späte Antwort - ich bekomme leider keine Benachrichtigungen bei Antworten hier.

Mein Board funktioniert prinzipiell. Mein Log sieht fast genau gleich aus wie deiner, bis auf die fehlende Empfangsbestätigung der Wärmepumpe nach rts high, Befehl, rts low, wie hier

[21:55:13.227][D][aquarea:264]: rts high
[21:55:13.232][D][aquarea:323]: send: 88 12
[21:55:13.347][D][aquarea:252]: rts low, done after 113
[21:55:13.350][D][number:034]: 'Cool setpoint temperature': Sending state 18.000000

Bei mir fehlt die letzte Zeile. Deshalb ist davon auszugehen, dass es an der Wärmepumpe liegt. Es liegt der Verdacht nahe, dass es am defekten Tanksensor liegen könnte, der die Logik blockiert. Diesbezüglich kommt eine Fehlermeldung, die unter Umständen die Quittierung verhindert. Er wird mit -128 Grad angezeigt. Der Sensor selbst ist es nicht. Den habe ich durchgemessen und auch testweise durch einen neuen ersetzt. Jetzt hätte ich heute Zeit gehabt, die Maschine wieder aufzumachen. Bei Schnee und -10 Grad, lass ich das aber lieber sein.

So sieht das bei mir aus

[01:23:16.641][D][sensor:135]: 'Inlet temperature': Sending state 31.00000 °C with 1 decimals of accuracy
[01:23:16.820][D][sensor:135]: 'Tank temperature': Sending state -128.00000 °C with 1 decimals of accuracy
[01:23:16.998][D][sensor:135]: 'Heatpump compressor value': Sending state 73.00000 with 1 decimals of accuracy
[01:23:17.178][D][text_sensor:097]: 'Last error code': Sending state '156'
[01:23:18.081][D][sensor:135]: 'Heat power': Sending state 4303.00000 W with 1 decimals of accuracy
[01:23:18.438][D][sensor:135]: 'Cool power': Sending state 0.00000 W with 1 decimals of accuracy
[01:23:18.792][D][number:064]: 'Shift setpoint temperature': Setting value
[01:23:18.793][D][number:123]: New value: 1.000000
[01:23:18.793][D][aquarea:483]: ShiftSetpointTempNumber
[01:23:18.801][D][sensor:135]: 'Tank power': Sending state 0.00000 W with 1 decimals of accuracy
[01:23:18.972][D][sensor:135]: 'Water pump speed': Sending state 7.00000 with 1 decimals of accuracy
[01:23:19.345][D][text_sensor:097]: 'Current operation mode': Sending state 'on heat'
[01:23:19.705][D][aquarea:300]: rts high
[01:23:19.706][D][aquarea:359]: send: 8a 1
[01:23:19.869][D][aquarea:288]: rts low, done after 168
[01:23:19.871][D][sensor:135]: 'Outside temperature': Sending state -10.00000 °C with 1 decimals of accuracy
[01:23:20.055][D][sensor:135]: 'Outlet temperature': Sending state 35.00000 °C with 1 decimals of accuracy
[01:23:20.234][D][text_sensor:097]: 'Error code': Sending state '0'
[01:23:20.414][D][sensor:135]: 'Inlet temperature': Sending state 31.00000 °C with 1 decimals of accuracy

Verfasser:
WilliHH
Zeit: 05.01.2026 18:41:47
0
3916394
Somit müsste die Kabelfernbedienung den gleichen Wert des Tanksensors anzeigen. Ich gehen davon aus, dass die Platine und Programmiert richtig ist.

Der User @lowenergy hatte damals ein ähnliches Problem. Jedoch war bei Ihm die Bus-Verdrahtung verkehrt angeschlossen.

Verfasser:
HeatPunk
Zeit: 10.01.2026 23:21:51
0
3918960
Zitat von WilliHH Beitrag anzeigen
Somit müsste die Kabelfernbedienung den gleichen Wert des Tanksensors anzeigen. Ich gehen davon aus, dass die Platine und Programmiert richtig ist.

Der User @lowenergy hatte damals ein ähnliches Problem. Jedoch war bei Ihm die Bus-Verdrahtung verkehrt angeschlossen.


Ja - in der Fernbedienung steht der gleiche Wert und die Busverdrahtung ist korrekt. Bei demWetter wird es etwas dauern, bis ich die WP wieder aufmachen kann :(

Verfasser:
HeatPunk
Zeit: 28.01.2026 01:17:39
0
3926737
Inzwischen konnte ich feststellen, dass ich den Fühler fürs Warmwasser nicht reparieren kann, weil es wohl an der Hauptplatine liegt. Alles überprüft bis zum Stecker auf der Hauptplatine.

Nun aber zur guten Nachricht: Das die WP den Befehl nicht übernehmen wollte war ein reines Hardware / Timing-Problem. Da ich eigentlich die Platine zur Steuerung, vom Entwickler nicht herbekommen habe, übrigens auch nicht über JCPCB, weil Teile fehlten, habe ich das Ganze erst mal nachgebaut mit einem ESP32 Node-MCU. Das hat natürlich den Vorteil, dass es sich wesentlich leichter flashen lässt und die Stromversorgung ebenso einfacher ist. Also habe ich nur den Pull-Up und Converter-Teil des Schaltplans mit dem RTS auf dem Breadboard nachgebaut. Wer nur die Werte abrufen möchte, kann sich das übrigen sparen, und einfach ein kleinen Low Level Logic Converter verwenden. Der von BerryBase für 90 Cent, hat bestens funktioniert.

Jetzt sieht mein log mit der Transistor-Schalte so aus:

00:39:36.043][D][text_sensor:119]: 'Current operation mode' >> 'on heat'
[00:39:36.587][D][sensor:129]: 'Outside temperature' >> 4.0 °C
[00:39:36.774][D][sensor:129]: 'Outlet temperature' >> 31.0 °C
[00:39:36.940][D][text_sensor:119]: 'Error code' >> '0'
[00:39:37.129][D][sensor:129]: 'Inlet temperature' >> 28.0 °C
[00:39:37.297][D][sensor:129]: 'Tank temperature' >> -128.0 °C
[00:39:37.391][D][number:064]: 'Shift setpoint temperature': Setting value
[00:39:37.394][D][number:123]: New value: 0.000000
[00:39:37.398][D][number:034]: 'Shift setpoint temperature' >> 0.00
[00:39:37.482][D][sensor:129]: 'Heatpump compressor value' >> 33.0
[00:39:37.524][D][aquarea:072]: !!! SENDE JETZT: Reg 8A Wert 00 !!!
[00:39:37.718][D][number:034]: 'Shift setpoint temperature' >> 0.00
[00:39:37.850][D][text_sensor:119]: 'Last error code' >> '156'
[00:39:38.742][D][sensor:129]: 'Heat power' >> 1846 W
[00:39:39.107][D][sensor:129]: 'Cool power' >> 0.0 W
[00:39:39.457][D][sensor:129]: 'Tank power' >> 0.0 W
[00:39:39.637][D][sensor:129]: 'Water pump speed' >> 7.0

Ich musste die aquarea.hpp letzendlich in zwei Bereichen anpassen. Beim Timing des Gates, dass das RTS öffnet und dem Zeitpunkt des Sendens. Dazu habe ich mich am "Urprojekt" im FHEM-Forum orientiert und das Register 18 verwendet. Leider musste ich eine weitere Erkenntnis mit ein paar Stunden Leidenszeit erkämpfen. Ich hatte versucht die Warmwasser-Funktion trotz defekten Fühlers in Betrieb zu setzen, weil ich ja jetzt theoretisch mit dem anderen Fühler an meiner UVR, die Anforderung OnTank hätte schicken können. Das Ergebnis war natürlich ein H72. Nachdem ich das zurückgesetzt hatte, initierte sich die Logik der Wärmepumpe wohl wieder neu, und das Senden ging nicht mehr. Mein ganzen Timing-Parameter waren wieder obsolet. Gut war, dass ich Einiges beim Debuggen mit Gemini gemacht hatte, so dass ich nachschauen konnte, was ich getan hatte bevor es ging, denn das Timing alleine war es nicht. Mir fiel auf , dass ich kurz einen Schalter hatte, um die Funktion generell zu prüfen, der das RTS für ein paar Sekunden dauerhaft auf high setzte um zu prüfen, ob nach dem Senden die Bestätigung mit 034 überhaupt kommt. Das war erfogreich, auch wenn die WP dann nach ein paar Sekunden auf H76 geht, konnte ich sehen, das Paket kommt zurück. Diesen Schalter habe ich mir wieder eingebaut und mir aus den Differenzen der Zeitstempel, wieder das neue Zeitfenster errechnet. Nebenher scheint dieser Schalter aber auch bei der WP das ESP als Bedienteil zu initieren. Ob ich das technisch richtig sehe, weiß ich nicht - es hat jedenfalls funktioniert. Jedenfalls muss das Zeitfenster genug lang öffnen um das Paket zu senden, anderseits rechtzeitig schließen, bevor der H76 kommt, der wenn zu lange offen, auch die erfolgreiche Bestätigung mit 034 der WP, wieder revidiert.

Dazu habe ich noch die Verbesserungen von Bjoemar eingebaut. Den "Bus-Sync-Schalter" habe ich auch drin gelassen, falls es jemand braucht. So kann man ganz schnell das eigene Timing fixen. Bei Bedarf poste ich gerne das yaml und das aquraea.hpp hier.

Verfasser:
WilliHH
Zeit: 28.01.2026 09:05:23
0
3926773
hört sich abenteuerlich an.
könntest du dein Script posten?

Verfasser:
HeatPunk
Zeit: 28.01.2026 11:48:48
0
3926842
Klar! Hier ist das yaml.


esphome:
name: heatpump
on_boot:
priority: -10
then:
- script.execute: restore_from_flash

esp32:
board: nodemcu-32s
framework:
type: arduino

# Enable logging
logger:
level: DEBUG

#Enable Home Assistant API
api:


ota:
- platform: esphome
password: ""

wifi:
# Priorisierte Liste Ihrer WLAN-Netzwerke
networks:
# 1. Haupt-WLAN
- ssid: ''
password: ''



# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Aquarea Fallback Hotspot"
password: "YYjYHIEMxT6q"

captive_portal:

external_components:
# 1. Lokale Aquarea Komponente
- source:
type: local
path: ../custom_components
components: [ aquarea ]

# === Globals für die Speicherung im Flash ===
globals:
- id: g_heat_out_temp_low
type: float
restore_value: true
initial_value: "-15"
- id: g_heat_out_temp_high
type: float
restore_value: true
initial_value: "5"
- id: g_heat_water_temp_low
type: float
restore_value: true
initial_value: "35"
- id: g_heat_water_temp_high
type: float
restore_value: true
initial_value: "27"
- id: g_heat_off_out_temp
type: float
restore_value: true
initial_value: "17"
- id: g_heater_on_out_temp
type: float
restore_value: true
initial_value: "-15"
- id: g_cool_setpoint_temp
type: float
restore_value: true
initial_value: "18"
- id: g_tank_setpoint_temp
type: float
restore_value: true
initial_value: "50"
- id: g_shift_setpoint_temp
type: float
restore_value: true
initial_value: "0"
- id: g_quiet_mode
type: int
restore_value: true
initial_value: "0"

sensor:
- platform: wifi_signal
name: 'Heatpump wifi RSSI'
- platform: uptime
name: "Heatpump uptime"
- platform: aquarea
outside_temperature:
name: "Outside temperature"
outlet_temperature:
name: "Outlet temperature"
inlet_temperature:
name: "Inlet temperature"
tank_temperature:
name: "Tank temperature"
compressor_value:
name: "Heatpump compressor value"
id: hp_compressor
heat_power:
name: "Heat power"
id: hp_heat_power
unit_of_measurement: "W"
accuracy_decimals: 0
filters:
- sliding_window_moving_average:
window_size: 5
send_every: 1
cool_power:
name: "Cool power"
id: hp_cool_power
tank_power:
name: "Tank power"
id: hp_tank_power
pump_speed:
name: "Water pump speed"

text_sensor:
- platform: aquarea
error_code:
name: "Error code"
last_error_code:
name: "Last error code"
current_mode:
name: "Current operation mode"
id: hp_current_mode

- platform: template
name: "Heizung Betriebsstatus"
id: heatpump_state_combined
icon: "mdi:heat-pump"
update_interval: 10s
lambda: |-
auto compressor = id(hp_compressor).state;
auto heat_pwr = id(hp_heat_power).state;
auto cool_pwr = id(hp_cool_power).state;
auto tank_pwr = id(hp_tank_power).state;
auto defrost_on = id(hp_defrost).state;
auto mode = id(hp_current_mode).state;

std::string status = "Unbekannt";

// 1. Basis-Zustand ermitteln
if (mode == "off heat") {
status = "Aus";
} else if (defrost_on) {
status = "Abtauen";
} else if (compressor == 0) {
if (heat_pwr > 20 || cool_pwr > 20) status = "Umwälzen";
else if (tank_pwr > 0) status = "Warten auf Tank";
else status = "Standby";
} else if (compressor > 0) {
if (heat_pwr > 0) status = "Heizen";
else if (cool_pwr > 0) status = "Kühlen";
else if (tank_pwr > 0) status = "Speicherladung";
}

// 2. Quiet-Zusatz anhängen, falls aktiv
if (mode.find("quiet") != std::string::npos) {
status += " (Leise)";
}

return status;

binary_sensor:
- platform: aquarea
booster:
name: "Booster heater active"
defrost:
name: "Defrost active"
id: hp_defrost

- platform: template
name: "Heat Mode Active"
lambda: 'return (id(hp_current_mode).state == "on heat" || id(hp_current_mode).state == "on heat tank");'

button:
- platform: restart
name: "Heatpump restart"
id: hp_restart
- platform: aquarea
reset_error:
name: "Reset errors"

switch:
- platform: aquarea
force:
name: "Force operation"

- platform: template
name: "Bus-Sync (F-Serie)"
id: manual_rts_override
icon: "mdi:sync"
turn_on_action:
- logger.log: "ERZWINGE SENDEBEREITSCHAFT (10 SEKUNDEN)..."
- lambda: |-
pinMode(32, OUTPUT);
digitalWrite(32, HIGH); // Aktiviert Q3 -> gibt Sendezweig frei
- delay: 10s
- lambda: |-
digitalWrite(32, LOW);
- logger.log: "ZURÜCK IN DEN LESEMODUS."
- switch.turn_off: manual_rts_override

- platform: template
name: "Heatpump Quiet Mode"
id: quiet_mode_switch
icon: "mdi:volume-mute"
# Der Schalter leuchtet blau, wenn "quiet" im Text vorkommt
lambda: 'return id(hp_current_mode).state.find("quiet") != std::string::npos;'

turn_on_action:
- lambda: |-
uint8_t current_val = 3; // Standard: ON + HEAT
// Wenn wir gerade im Tank-Modus sind (Bit 16), Wert anpassen
if (id(hp_current_mode).state.find("tank") != std::string::npos) {
current_val = 19; // ON + HEAT + TANK
}
id(aq).write_queue.push({144, (uint8_t)(current_val + 64)}); // +64 setzt das Quiet-Bit
id(g_quiet_mode) = 1;

turn_off_action:
- lambda: |-
uint8_t current_val = 3; // Standard: ON + HEAT
if (id(hp_current_mode).state.find("tank") != std::string::npos) {
current_val = 19;
}
id(aq).write_queue.push({144, current_val}); // Sende ohne das Quiet-Bit
id(g_quiet_mode) = 0;

number:
- platform: aquarea
heat_out_temp_low:
name: "Low heat outside temperature"
id: n_heat_out_low
initial_value: -15
on_value:
then:
- globals.set: {id: g_heat_out_temp_low, value: !lambda 'return x;'}
heat_out_temp_high:
name: "High heat outside temperature"
id: n_heat_out_high
initial_value: 5
on_value:
then:
- globals.set: {id: g_heat_out_temp_high, value: !lambda 'return x;'}
heat_water_temp_low:
name: "Low heat water temperature"
id: n_heat_water_low
initial_value: 35
on_value:
then:
- globals.set: {id: g_heat_water_temp_low, value: !lambda 'return x;'}
heat_water_temp_high:
name: "High heat water temperature"
id: n_heat_water_high
initial_value: 27
on_value:
then:
- globals.set: {id: g_heat_water_temp_high, value: !lambda 'return x;'}
heat_off_out_temp:
name: "Heat off outside temperature"
id: n_heat_off_temp
initial_value: 15
on_value:
then:
- globals.set: {id: g_heat_off_out_temp, value: !lambda 'return x;'}
heater_on_out_temp:
name: "Heater On outside temperature"
id: n_heater_on_temp
initial_value: -6
on_value:
then:
- globals.set: {id: g_heater_on_out_temp, value: !lambda 'return x;'}
cool_setpoint_temp:
name: "Cool setpoint temperature"
id: n_cool_setpoint
initial_value: 18
on_value:
then:
- globals.set: {id: g_cool_setpoint_temp, value: !lambda 'return x;'}
tank_setpoint_temp:
name: "Tank setpoint temperature"
id: n_tank_setpoint
initial_value: 50
on_value:
then:
- globals.set: {id: g_tank_setpoint_temp, value: !lambda 'return x;'}
shift_setpoint_temp:
name: "Shift setpoint temperature"
id: n_shift_setpoint
initial_value: 0
on_value:
then:
- globals.set: {id: g_shift_setpoint_temp, value: !lambda 'return x;'}

select:
- platform: aquarea
request_mode:
name: "Request mode"
options:
- "off heat"
- "on heat"
- "on cool"
- "on tank"
- "on heat tank"
- "on cool tank"

# === Wiederherstellungs-Script ===
script:
- id: restore_from_flash
then:
- delay: 8s
- logger.log: "--- START: Synchronisiere Werte mit Geisha ---"

- logger.log: "Setze Heizkurve..."
- number.set: {id: n_heat_out_low, value: !lambda 'return id(g_heat_out_temp_low);'}
- delay: 800ms
- number.set: {id: n_heat_out_high, value: !lambda 'return id(g_heat_out_temp_high);'}
- delay: 800ms

- logger.log: "Setze Wassertemperaturen..."
- number.set: {id: n_heat_water_low, value: !lambda 'return id(g_heat_water_temp_low);'}
- delay: 800ms
- number.set: {id: n_heat_water_high, value: !lambda 'return id(g_heat_water_temp_high);'}
- delay: 800ms

- logger.log: "Setze Off-Temp und Heater..."
- number.set: {id: n_heat_off_temp, value: !lambda 'return id(g_heat_off_out_temp);'}
- delay: 800ms
- number.set: {id: n_heater_on_temp, value: !lambda 'return id(g_heater_on_out_temp);'}
- delay: 800ms

- logger.log: "Setze Sollwerte (Tank/Cool/Shift)..."
- number.set: {id: n_cool_setpoint, value: !lambda 'return id(g_cool_setpoint_temp);'}
- delay: 800ms
- number.set: {id: n_tank_setpoint, value: !lambda 'return id(g_tank_setpoint_temp);'}
- delay: 800ms
- number.set: {id: n_shift_setpoint, value: !lambda 'return id(g_shift_setpoint_temp);'}

- logger.log: "--- SYNC BEENDET ---"

uart:
tx_pin:
number: GPIO27
rx_pin:
number: GPIO26
baud_rate: 960
data_bits: 8
stop_bits: 1
parity: EVEN
rx_buffer_size: 1024

aquarea:
id: aq
rts_pin: GPIO32

Verfasser:
HeatPunk
Zeit: 28.01.2026 11:50:32
0
3926843
und hier die aquarea.hpp


#pragma once

#include <array>
#include <functional>
#include <vector>
#include <cstdint>
#include <queue>
#include <algorithm>
#include "esphome/core/hal.h"
#include "esphome/core/gpio.h"
#include "esphome/core/component.h"
#include "esphome/core/log.h"
#include "esphome/components/sensor/sensor.h"
#include "esphome/components/text_sensor/text_sensor.h"
#include "esphome/components/binary_sensor/binary_sensor.h"
#include "esphome/components/button/button.h"
#include "esphome/components/switch/switch.h"
#include "esphome/components/number/number.h"
#include "esphome/components/select/select.h"
#include "esphome/components/uart/uart.h"

namespace esphome {
namespace aquarea {

enum Registers
{
Defrost = 17, OutsideTemp = 18, OutletTemp = 19, ErrorCode = 20,
InletTemp = 21, TankTemp = 22, Compressor = 23, LastErrorCode = 24,
Mode = 27, HeatLSB = 29, HeatMSB = 30, CoolLSB = 31, CoolMSB = 32,
TankLSB = 33, TankMSB = 34, PumpStage = 35, Force = 128, ResetError = 129,
HeatOutsideTempLow = 130, HeatOutsideTempHigh = 131, HeatWaterTempLow = 132,
HeatWaterTempHigh = 133, HeatOffOutsideTemp = 134, HeaterOnOutsideTemp = 135,
CoolSetpointTemp = 136, TankSetpointTemp = 137, ShiftSetpoint = 138,
ServiceMode = 142, ReqMode = 144, PumpSpeed = 147, Num
};

std::array<std::function<void(uint8_t value)>, (size_t)Registers::Num> registers;

class AquareaComponent : public Component, public uart::UARTDevice
{
public:
struct Power
{
void write_lb(long timestamp, uint8_t value) { valid = false; lb_timestamp = timestamp; power = value; }
void write_mb(long timestamp, uint8_t value) { power |= ((uint16_t)value) << 8; if ((timestamp - lb_timestamp) < 200) valid = true; }
bool is_valid() const { return valid; }
uint16_t get_power() const { return power; }
private:
long lb_timestamp = 0;
uint16_t power = 0u;
bool valid = false;
};

AquareaComponent() = delete;
AquareaComponent(InternalGPIOPin *rts_pin_) { rx_packet.reserve(4); rts_pin = rts_pin_; }

uint8_t heatpump_checksum(const std::vector<uint8_t>& packet) {
return (packet[0] + packet[1] + packet[2]) & 0xff;
}

void heatpump_write() {
if (write_queue.empty()) return;

std::vector<uint8_t> packet({0xAA, write_queue.front().first, write_queue.front().second});
packet.push_back(heatpump_checksum(packet));

rts_pin->digital_write(true);

// 156ms Hardware-Timing
delay(41);

ESP_LOGD("aquarea", "!!! SENDE JETZT: Reg %02X Wert %02X !!!", packet[1], packet[2]);
this->write_array(packet);
this->flush();

delay(110);

rts_pin->digital_write(false);
write_queue.pop();
}

bool heatpump_read() {
if (this->available()) {
rx_packet.push_back(this->read());
if ((rx_packet[0] == 0xAA || rx_packet[0] == 0x55)) {
if (rx_packet.size() == 4) {
if (heatpump_checksum(rx_packet) == rx_packet[3]) return true;
rx_packet.clear();
}
} else { rx_packet.clear(); }
}
return false;
}

void register_select_if_present(const Registers& reg, select::Select* select, std::function<std::string(uint8_t value)> modifier = {}) {
if (select) registers[reg] = [select, modifier](uint8_t value) { select->publish_state(modifier ? modifier(value) : std::to_string((uint32_t)value)); };
}

void register_text_sensor_if_present(const Registers& reg, text_sensor::TextSensor* text_sensor, std::function<std::string(uint8_t value)> modifier = {}) {
if (text_sensor) registers[reg] = [text_sensor, modifier](uint8_t value) { text_sensor->publish_state(modifier ? modifier(value) : std::to_string((uint32_t)value)); };
}

void register_binary_sensor_if_present(const Registers& reg, const std::vector<std::pair<binary_sensor::BinarySensor*, uint8_t>>& sensors) {
registers[reg] = [sensors](uint8_t value) { for (auto& s : sensors) if (s.first) s.first->publish_state(value & s.second); };
}

void register_sensor_if_present(const Registers& reg, sensor::Sensor* sensor, std::function<uint8_t(uint8_t value)> modifier = {}) {
if (sensor) registers[reg] = [sensor, modifier](uint8_t value) { int8_t final_val = modifier ? (int8_t)modifier(value) : (int8_t)value; sensor->publish_state(final_val); };
}

void register_power_sensor_if_present(const Registers& reg_lsb, const Registers& reg_msb, sensor::Sensor* sensor, Power& power_obj) {
if (sensor) {
registers[reg_lsb] = [&power_obj](uint8_t value) { power_obj.write_lb(millis(), value); };
registers[reg_msb] = [&power_obj, sensor](uint8_t value) { power_obj.write_mb(millis(), value); if (power_obj.is_valid()) sensor->publish_state(power_obj.get_power()); };
}
}

void register_switch_if_present(const Registers& reg, switch_::Switch* sw, std::function<bool(uint8_t value)> modifier = {}) {
if (sw) registers[reg] = [sw, modifier](uint8_t value) { sw->publish_state(modifier ? modifier(value) : (bool)value); };
}

void register_number_if_present(const Registers& reg, number::Number* number, std::function<uint8_t(uint8_t value)> modifier = {}) {
if (number) registers[reg] = [number, modifier](uint8_t value) { float final_val = modifier ? (float)modifier(value) : (float)*((int8_t*)&value); number->publish_state(final_val); };
}

std::string get_current_mode(uint8_t value) {
std::string mode(value & 1 ? "on" : "off");
if (value & 2) mode += " heat"; if (value & 4) mode += " cool";
if (value & 16) mode += " tank"; if (value & 32) mode += " auto";
if (value & 64) mode += " quiet"; if (value & 128) mode += " heater";
return mode;
}

void setup_registers_cbk() {
static const std::vector<std::pair<binary_sensor::BinarySensor*, uint8_t>> defrost_reg_sensors({{defrost_binary_sensor_, 64}, {booster_binary_sensor_, 2}});
register_binary_sensor_if_present(Registers::Defrost, defrost_reg_sensors);
register_sensor_if_present(Registers::OutsideTemp, outside_temperature_sensor_);
register_sensor_if_present(Registers::OutletTemp, outlet_temperature_sensor_);
register_sensor_if_present(Registers::InletTemp, inlet_temperature_sensor_);
register_sensor_if_present(Registers::TankTemp, tank_temperature_sensor_);
register_sensor_if_present(Registers::Compressor, compressor_value_sensor_);
register_power_sensor_if_present(Registers::HeatLSB, Registers::HeatMSB, heat_power_sensor_, heat_power);
register_power_sensor_if_present(Registers::CoolLSB, Registers::CoolMSB, cool_power_sensor_, cool_power);
register_power_sensor_if_present(Registers::TankLSB, Registers::TankMSB, tank_power_sensor_, tank_power);
register_sensor_if_present(Registers::PumpStage, pump_speed_sensor_, [](uint8_t value){ return value/16; });
register_text_sensor_if_present(Registers::ErrorCode, error_code_text_sensor_);
register_text_sensor_if_present(Registers::LastErrorCode, last_error_code_text_sensor_);
register_text_sensor_if_present(Registers::Mode, current_mode_text_sensor_, std::bind(&AquareaComponent::get_current_mode, this, std::placeholders::_1));
register_switch_if_present(Registers::Force, force_switch_, [](uint8_t value){ return (bool)(value & 0x40); });
register_number_if_present(Registers::HeatOutsideTempLow, heat_out_temp_low_number_);
register_number_if_present(Registers::HeatOutsideTempHigh, heat_out_temp_high_number_);
register_number_if_present(Registers::HeatWaterTempLow, heat_water_temp_low_number_);
register_number_if_present(Registers::HeatWaterTempHigh, heat_water_temp_high_number_);
register_number_if_present(Registers::HeatOffOutsideTemp, heat_off_out_temp_number_);
register_number_if_present(Registers::HeaterOnOutsideTemp, heater_on_out_temp_number_);
register_number_if_present(Registers::CoolSetpointTemp, cool_setpoint_temp_number_);
register_number_if_present(Registers::TankSetpointTemp, tank_setpoint_temp_number_);
register_number_if_present(Registers::ShiftSetpoint, shift_setpoint_temp_number_);
register_number_if_present(Registers::PumpSpeed, pump_speed_number_, [](uint8_t value){ return value*16; });
register_select_if_present(Registers::ReqMode, request_mode_select_, std::bind(&AquareaComponent::get_current_mode, this, std::placeholders::_1));
}

void setup() override { setup_registers_cbk(); rts_pin->digital_write(false); }

void loop() override {
if (heatpump_read()) {
if (rx_packet.size() >= 2 && rx_packet[0] == 0x55) {
if (registers[rx_packet[1]]) {
registers[rx_packet[1]](rx_packet[2]);
}
if (!write_queue.empty()) {
heatpump_write();
}
}
rx_packet.clear();
}
}

float get_setup_priority() const override { return setup_priority::BUS; }

Power heat_power, tank_power, cool_power;
InternalGPIOPin* rts_pin;
std::vector<uint8_t> rx_packet;
std::queue<std::pair<uint8_t, uint8_t>> write_queue;

protected:
SUB_BINARY_SENSOR(defrost); SUB_BINARY_SENSOR(booster);
SUB_SENSOR(outside_temperature); SUB_SENSOR(outlet_temperature);
SUB_SENSOR(inlet_temperature); SUB_SENSOR(tank_temperature);
SUB_SENSOR(compressor_value); SUB_SENSOR(heat_power);
SUB_SENSOR(cool_power); SUB_SENSOR(tank_power); SUB_SENSOR(pump_speed);
SUB_TEXT_SENSOR(error_code); SUB_TEXT_SENSOR(last_error_code);
SUB_TEXT_SENSOR(current_mode); SUB_BUTTON(reset_error);
SUB_SWITCH(force); SUB_NUMBER(heat_out_temp_low);
SUB_NUMBER(heat_out_temp_high); SUB_NUMBER(heat_water_temp_low);
SUB_NUMBER(heat_water_temp_high); SUB_NUMBER(heat_off_out_temp);
SUB_NUMBER(heater_on_out_temp); SUB_NUMBER(cool_setpoint_temp);
SUB_NUMBER(tank_setpoint_temp); SUB_NUMBER(shift_setpoint_temp);
SUB_NUMBER(pump_speed); SUB_SELECT(request_mode);
};

// Upgrade 2: Optimistische Klassen (publish_state)
class ResetErrorButton : public button::Button, public Parented<AquareaComponent> { protected: void press_action() override { parent_->write_queue.push({Registers::ResetError, 1}); } };
class ForceSwitch : public switch_::Switch, public Parented<AquareaComponent> { protected: void write_state(bool state) override { parent_->write_queue.push({Registers::Force, state ? 0x40 : 0x00}); this->publish_state(state); } };
class HeatOutsideTempLowNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::HeatOutsideTempLow, (uint8_t)value}); this->publish_state(value); } };
class HeatOutsideTempHighNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::HeatOutsideTempHigh, (uint8_t)value}); this->publish_state(value); } };
class HeatWaterTempLowNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::HeatWaterTempLow, (uint8_t)value}); this->publish_state(value); } };
class HeatWaterTempHighNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::HeatWaterTempHigh, (uint8_t)value}); this->publish_state(value); } };
class HeatOffOutsideTempNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::HeatOffOutsideTemp, (uint8_t)value}); this->publish_state(value); } };
class HeaterOnOutsideTempNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::HeaterOnOutsideTemp, (uint8_t)value}); this->publish_state(value); } };
class CoolSetpointTempNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::CoolSetpointTemp, (uint8_t)value}); this->publish_state(value); } };
class TankSetpointTempNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::TankSetpointTemp, (uint8_t)value}); this->publish_state(value); } };
class ShiftSetpointTempNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::ShiftSetpoint, (uint8_t)value}); this->publish_state(value); } };
class PumpSpeedNumber : public number::Number, public Parented<AquareaComponent> { protected: void control(float value) override { parent_->write_queue.push({Registers::PumpSpeed, (uint8_t)value}); this->publish_state(value); } };
class ReqModeSelect : public select::Select, public Parented<AquareaComponent> {
protected:
void control(const std::string& value) override {
uint8_t mode = 0u;
if(value.find("on") != std::string::npos) mode += 1;
if(value.find("heat") != std::string::npos) mode += 2;
if(value.find("cool") != std::string::npos) mode += 4;
if(value.find("tank") != std::string::npos) mode += 16;
if(value.find("auto") != std::string::npos) mode += 32;
if(value.find("quiet") != std::string::npos) mode += 64;
if(value.find("heater") != std::string::npos) mode += 128;
parent_->write_queue.push({Registers::ReqMode, mode});
this->publish_state(value);
}
};

} // namespace esphome
} // namespace aquarea

Verfasser:
HeatPunk
Zeit: 28.01.2026 12:05:33
0
3926848
Der Quiet Mode lässt sich bisher einschalten, aber noch nicht ausschalten - da bin ich noch dran. War etwas Aufwand, aber da gerade noch in Reha, war das ein spannendes Lernprojekt. Mein erstes ESP-Projekt. Jahrelange Erfahrungen in der Webentwicklung helfen da aber ganz gut.


Verfasser:
WilliHH
Zeit: 29.01.2026 07:32:21
0
3927190
schaut aufwendig aus - wäre nichts für mich :-D
Den Silentmode habe in den ganzen 8 Jahren nur 1-2x benutzt. Aufgrund dessen taut die Anlage auch öfters auf. In dem Script vom Entwickler fehlt die Funktion ebenfalls.
Würde mich dennoch interessieren, wie man es einfach ergänzt.

Verfasser:
HeatPunk
Zeit: 02.02.2026 01:59:30
0
3928783
Nun, ich hatte viel Zeit und es hat Spaß gemacht was Neues zu lernen. Der Quiet-Mode ist bei mir in der Übergangszeit ganz praktisch. Sonst bräuchte ich ihn auch nicht.

Die größte Erkenntnis für mich ist aber auch, dass die Sensoren der WP nicht umsonst gerne als "Schätzeisen" bezeichnet werden. DIe VL Temp ist bei mir 1,5 zu niedrig und der RL 0,5 zu hoch. Ich messe mit dem FTS der TA den Volumenstrom und die Temperaturen. Fühler sind kalibriert.

Verfasser:
HeatPunk
Zeit: 07.02.2026 01:30:06
0
3930905
Nach einer kleinen Anpassung der Schaltung, bin ich wieder zurück zur aquarea.hpp des Original-Projekts. Funktioniert jetzt, und besser. Jetzt werde ich das auf eine Platine löten und somit erst mal abschließen.

Aktuelle Forenbeiträge
Redaktion HTD schrieb: Im Mannheimer Wohnquartier Aubuckel werden sozialer Wohnungsbau...
elg73732 schrieb: Hallo Profis, brauche Eure Meinung. Hier geht es nur um die...
ANZEIGE
Hersteller-Anzeigen
Hersteller von Armaturen
und Ventilen
Website-Statistik