OpenWarmte – open-source besturing voor de DeWarmte Pomp MP en Pomp T
Projectstatus
OpenWarmte is een open-sourceproject op best-effortbasis. Het draait sinds kort bij mij thuis en is tot nu toe op één installatie getest. Er is geen officiële support en het project staat los van DeWarmte. Bugs en ideeën kun je melden als GitHub-issue, verbeteringen zijn welkom als pull request, en ervaringen en discussie horen in dit topic.
Wat is OpenWarmte?
OpenWarmte is een open-source controller voor de DeWarmte Pomp MP (de monobloc) en de Pomp T (de booster voor warm tapwater). Het draait op de Raspberry Pi naast de warmtepomp en neemt daar de besturing over: één Go-programma onder systemd, te installeren als Debian-pakket.Elke 20 seconden leest het de zeven Modbus-apparaten op de RS-485-bus uit (monobloc, Pomp T, drie kWh-meters en twee warmtemeters), past het de regels toe, schrijft het alleen de registers die moeten veranderen en stuurt het alle metingen via MQTT naar Home Assistant. Ook de bediening loopt via Home Assistant. Er komt geen cloud aan te pas.
/f/image/sqzXYeDR4udhOghyEKvEa8jD.png?f=fotoalbum_large)
Het meegeleverde Home Assistant-dashboard tijdens een verwarmingsrun.
Wat kan het?
- Verwarmen en koelen via een climate-entiteit in Home Assistant, met een stooklijn (standaard 25 °C aanvoer bij 15 °C buiten tot 45 °C bij −10 °C) of een vaste aanvoertemperatuur, altijd begrensd op 45 °C
- Warm tapwater met de Pomp T als water_heater-entiteit, met wekelijkse legionelladesinfectie: het eigen programma van de Pomp T, met een geforceerde run als die langer dan 7 dagen uitblijft, en een knop om direct te desinfecteren
- Bronhulp: de monobloc warmt de bron van de Pomp T op als die te koud is
- Stille modus, maximale compressorfrequentie en de punten van de stooklijn instellen vanuit Home Assistant
- Automatisch herstel na een P01-storing (flowfout), hooguit één keer per uur, plus een resetknop
- Een sensor voor elke meting: temperaturen, drukken, flow, compressor, ventilator, vermogen, energie, COP en storingscodes met omschrijving
- Een kant-en-klaar Home Assistant-dashboard met vier views
- Valt een apparaat weg of meldt een sensor een storing, dan negeert de regeling die waarden; de monobloc houdt zijn laatste opdracht en zijn eigen beveiligingen
Wat heb je nodig?
- Een DeWarmte Pomp MP, met of zonder Pomp T
- De Raspberry Pi met RS-485-adapter die de warmtepomp aanstuurt (er zijn pakketten voor armhf en arm64)
- Home Assistant met een MQTT-broker
Belangrijk om te weten
- OpenWarmte is een onafhankelijk project. Het wordt niet gemaakt, ondersteund of goedgekeurd door DeWarmte.
- Het neemt de besturing van je warmtepomp over. Een fout in de configuratie, de code of de bedrading kan je huis zonder verwarming of warm water zetten, de legionelladesinfectie laten overslaan of de installatie beschadigen, en kan gevolgen hebben voor je garantie of servicecontract. Overleg eerst met je installateur.
- Gebruik is op eigen risico. De software is getest op één installatie en komt zonder enige garantie (GPL-3.0).
- Terugdraaien is één commando: sudo dpkg -r openwarmte zet de vorige besturing binnen enkele seconden terug.
Meedoen: pull requests welkom!
OpenWarmte is net open source gemaakt en ik zoek mensen die willen meebouwen. Heb je zelf een DeWarmte-installatie, ervaring met Go, Modbus of Home Assistant, of gewoon goede ideeën? Pull requests zijn van harte welkom. Bijvoorbeeld:- testen op andere installaties (een andere stooklijn, zonder Pomp T, met koeling) en melden wat je tegenkomt
- bugfixes en verbeteringen aan de regeling
- ondersteuning voor andere DeWarmte-opstellingen
- betere documentatie, bijvoorbeeld een Nederlandstalige installatiehandleiding
- uitbreidingen van het Home Assistant-dashboard
Fork de repo, maak een branch en open een pull request. Bij grotere wijzigingen graag eerst een issue, zodat we vooraf kunnen overleggen.
Links
Screenshots
/f/image/9k3Kgtc75KzEKkkERTUH4Xig.png?f=fotoalbum_tile)
Koudemiddel en hydrauliek, diagnose en instellingen, en de eerste verwarmingsrun in de historie van Home Assistant: ongeveer 7,5 kW warmte bij een COP van 6 tot 8.