Hi allemaal, op voorhand sorry voor dit lange bericht maar ben nieuw in deze wereld (en op dit forum) en ben al 2 dagen bezig om een probleem te tackelen met de aansturing van mijn tapwater vermwarming op basis van dynamische stroomprijzen.
Heb Claude gevraagd een en ander te verwoorden dus vandaar onderstaande opgemaakte info/vraag.
Gr,
Remco
Itho WPU 55CO + ithowifi/NRG.Watch add-on: A1-16-melding bij manual_control, terwijl fysieke HLT-schakeling dat nooit deed
Situatie
Ik heb een Itho Daalderop WPU 55CO ETECK (water/water, op een gedeeld Eteck-bronnennet), met een non-CVE Itho WiFi add-on (NRG.Watch, firmware 3.2.0, hardware "NON-CVE 1") aangesloten op de service-poort van de WPU. Doel: de tapwaterverwarming laten schakelen op basis van dynamische energieprijzen (Nordpool), via Home Assistant, in plaats van de vaste tijden van de bestaande Theben TR610 top2-schakelklok die al jaren op de HLT-ingang (Hoog/Laag Tarief) van de WPU is aangesloten.
Wat werkt
Via de add-on's POST /api/v2/wpu/manual_control kan ik het HLT/Tariff-veld (index 15, datatype 0) van de WPU aansturen:
JSON:
1
| {"index":15,"datatype":0,"value":1,"checked":1} |
Dit zet Tariff (status-index 15) daadwerkelijk op 1, en de WPU reageert er ook echt op: Status-veld gaat naar 3 (boiler-modus), de compressor slaat aan, en de tapwatertemperatuur stijgt — dus functioneel doet het wat het moet doen.
Het probleem
Zodra ik dit commando stuur, verschijnt storing
A1-16 ("Automatische functie gewijzigd naar handbediening") — zowel in de add-on's eigen statusvelden (Error_found, Fault highest priority = 16) als op de fysieke Autotemp-kamerthermostaat zelf ("A01 16" op het display).
Dit gebeurde
nooit met de oude Theben-timer, die al jaren dezelfde HLT-ingang fysiek schakelt — dat display heeft deze melding voor zover ik me kan herinneren nooit getoond vóór ik deze add-on erop aansloot.
Wat ik al heb uitgesloten
- Settings API stond standaard uit (Enable update settings API in de module's System settings) — zonder die aan te zetten geeft manual_control een misleidend HTTP 200 "success" terug terwijl er (bevestigd via Debug-syslog) helemaal geen I2C-schrijfactie plaatsvindt. Eenmaal aangezet, werkt schrijven wél.
- Settings-whitelist (Activate settings indexes) moest [4] bevatten om PUT /api/v2/settings voor index 4 te laten werken — dit is een aparte, losse index-ruimte van de 167-item Itho-instellingenlijst, niet dezelfde nummering als manual_control's indexen.
- datatype bleek per index specifiek te zijn (index 15 = datatype 0, niet 1 zoals het generieke voorbeeld in de officiële API-docs suggereert) — de GitHub-wiki-pagina "Itho WPU Heat pump support" (niet de in-app API-documentatie) heeft de juiste tabel.
- De melding is niet cosmetisch onschuldig in de zin van "kan genegeerd worden" — het blijft namelijk actief "vastzitten" totdat de instelling "Max manual operation time" (settings-index 4) verloopt. Bij de fabrieksinstelling (0) leek dit aanvankelijk "onbeperkt" te betekenen (zoals de docs voor 5G-modellen claimen), maar bleek in de praktijk niet betrouwbaar te zijn voor mijn eigen manual_control-commando's: bij waarde 0 viel mijn eigen value:1-commando na enige tijd spontaan terug naar 0, zonder dat ik iets stuurde. Bij waarde 30 (minuten) blijft de waarde wél precies staan tot ik 'm zelf verander, maar dan blijft de A1-16-vlag ook standaard 30 minuten actief per keer.
Aanvullend: wat de officiële wiki zegt (en waar dat niet klopt met wat ik zie)
Uit de GitHub-wiki (Itho WPU Heat pump support):
"Make sure you set the 'Max manual operation time' setting in the settings page. The itho unit will remain in manual mode until the timer expires. 0 means unlimited."
Dat is dus de officiële claim — maar in mijn eigen test vandaag (instelling op 0, automatisering aantoonbaar uitgeschakeld) viel mijn value:1-commando na een tijdje
vanzelf terug naar 0, zonder dat ik iets stuurde. Dat is het tegenovergestelde van "onbeperkt blijven staan".
Mogelijke verklaring: dezelfde wiki-pagina vermeldt onder
Requirements expliciet:
"A supported Itho heat pump, e.g. WPU 5G 5.5kW, WPU 4G. Other versions/prior generations may work but have not been tested yet." Mijn WPU 55CO ETECK valt dus buiten het geteste bereik — mogelijk verklaart dat waarom dit specifieke gedrag (0 = onbeperkt) bij mij niet lijkt te kloppen.
Wat ik niet begrijp / mijn eigenlijke vraag
- Waarom triggert manual_control deze melding, terwijl het fysieke HLT-contact van de Theben-timer dat kennelijk nooit deed? Beide sturen toch hetzelfde onderliggende Tariff-veld aan? Is er een principieel verschil tussen een write via manual_control (die de WPU blijkbaar altijd als "handbediening" classificeert, ongeacht welke waarde je stuurt) en een puur fysiek contact-signaal op de HLT-ingang?
- Is er een manier om het Tariff/HLT-veld te zetten zonder de "manual override"-classificatie te triggeren? Bijvoorbeeld een ander endpoint, een ander datatype, of een instelling die dit gedrag beïnvloedt?
- Wat doet "Max manual operation time" = 0 nu precies? Betekent 0 op deze (non-CVE, 3.2.0) firmware iets anders dan "onbeperkt" (zoals de documentatie voor 5G-modellen claimt)? Bij mij lijkt 0 eerder te betekenen "handmatige waarden worden niet vastgehouden", niet "voor altijd vastgehouden".
- Heeft iemand hetzelfde HLT/Tariff-veld via manual_control aangestuurd op een vergelijkbare (CO-serie) WPU, en zo ja: kreeg diegene ook deze A1-16-melding, of is dat bij mij iets anders?
Ik ben zelf tot de conclusie gekomen dat de meest praktische oplossing waarschijnlijk is: de fysieke Theben-timer's eigen schakelprogramma volledig leegmaken (zodat die nooit meer zelf schakelt), en alleen nog via manual_control sturen — en de A1-16-melding daarbij gewoon accepteren als bijverschijnsel. Maar voordat ik dat definitief zo bouw, hoor ik graag of iemand anders dit principieel beter begrijpt of al heeft opgelost.
Alvast bedankt voor het meedenken!
[
Voor 11% gewijzigd door
kruithre op 17-08-2026 09:07
. Reden: bijgewerkt ]