Vrijstaande woning, dubbel glas, veel ramen, alles open verbonden, ca 300m3, geen extra isolatie, vvw in de woonkamer, rest type 10 zonder boosters, T6 op 20°C & 19,5°C nacht, 4,5kW Quatt, Intergas Xtreme36, 6MWh Wp, Warmteverl. (-10°C) 7kW bij max 15°C
Ik zou zoals in het voorbeeld de temp rising en temp falling worden gemaakt een spike up en spike down makenverguldebarman schreef op donderdag 8 februari 2024 @ 09:59:
Ik probeer met HA een sensor te bouwen die de spikes van de T6 kan detecteren. Mocht je hier ook last van hebben en voldoende kennis hebben van HA, dan kan ik wel wat extra denkkracht gebruiken.....
Ik maak gebruik van een zg. Trend Sensor (https://www.home-assistant.io/integrations/trend/) om de volgende afwijking te kunnen detecteren:
- een afwijking van meer dan 0,4 graden
- in 5 minuten
- over een periode van 60 minuten
Als ik de documentatie goed begrijp dan moet ik de volgende waardes gebruiken in de sensor:
sample_duration: 3600 (=60 * 60)
max_samples: 60
min_samples:
min_gradient: 0,001333333 (=0,4 / (60 * 5)
Dat leidt dan tot de volgende sensor:
code:
1 2 3 4 5 6 7 8 9 binary_sensor: - platform: trend sensors: t6_spike: entity_id: sensor.heatpump_thermostat_room_temperature sample_duration: 3600 max_samples: 60 min_samples: 10 min_gradient: 0,001333333
Wie wil eens meedenken/testen?
/f/image/6qzqhFMIvvPhGEcqvxBfHspJ.png?f=fotoalbum_large)
[ Voor 12% gewijzigd door TeslaNerd op 08-02-2024 10:21 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Eens, dat is ook mijn plan. Ik dacht alleen eerst even deze proberen weekend te krijgen. Een inverse maken is super simpel....TeslaNerd schreef op donderdag 8 februari 2024 @ 10:20:
[...]
Ik zou zoals in het voorbeeld de temp rising en temp falling worden gemaakt een spike up en spike down maken
[Afbeelding]
Het gaat me meer om de gehanteerde waardes. Klinkt dat een beetje logisch en klopt het ook?
Vrijstaande woning, dubbel glas, veel ramen, alles open verbonden, ca 300m3, geen extra isolatie, vvw in de woonkamer, rest type 10 zonder boosters, T6 op 20°C & 19,5°C nacht, 4,5kW Quatt, Intergas Xtreme36, 6MWh Wp, Warmteverl. (-10°C) 7kW bij max 15°C
Ja, ik zou dat ook zo overnemen (als ik een T6 had ;-))verguldebarman schreef op donderdag 8 februari 2024 @ 10:27:
[...]
Eens, dat is ook mijn plan. Ik dacht alleen eerst even deze proberen weekend te krijgen. Een inverse maken is super simpel....
Het gaat me meer om de gehanteerde waardes. Klinkt dat een beetje logisch en klopt het ook?
Voor een eerste versie gewoon zo doen en kijken hoe jouw nieuwe sensor wel/niet meeknippert met de spikes in de T6
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Vaillant ecotec plus. Ik heb daarin wel de OT module geplaatst, maar volgens de techneuten van Quatt werkt dat niet goed samen met de CiC. De ketel wordt door de CiC daarom aan/uit aangestuurd.TeslaNerd schreef op donderdag 8 februari 2024 @ 09:33:
[...]
Welke ketel heb jij? Met mijn Intergas wordt de maximale watertemperatuur die ik op mijn Intergas instel via opentherm overgenomen door mijn Honeywell thermostaat. Maar dat kan ook via een gateway en een HA automation
Hmmm, dat brengt me op het idee om de gateway eventueel tussen de CiC en de ketel te plaatsen.
Ik vermoed dat het sneller zal zijn als ik dat zelf uitvogel in plaats van te wachten op Quatt om dit te implementeren.Het is voor een CiC ingesteld op “bestuurd op watertemperatuur” wel essentieel dat de maximale watertemperatuur niet te hoog oploopt. Je kan ook aan Quatt vragen of ze een setting in de app maken om zelf een maximale watertemperatuur in te stellen 😜
Heb je zelf de ketel al eens via OT aangesloten op de CiC? Als je die aan/uit laat dan ziet een gateway ook niets tussen ketel en CiCjk-d schreef op donderdag 8 februari 2024 @ 10:50:
[...]
Vaillant ecotec plus. Ik heb daarin wel de OT module geplaatst, maar volgens de techneuten van Quatt werkt dat niet goed samen met de CiC. De ketel wordt door de CiC daarom aan/uit aangestuurd.
Hmmm, dat brengt me op het idee om de gateway eventueel tussen de CiC en de ketel te plaatsen.
[...]
Ik vermoed dat het sneller zal zijn als ik dat zelf uitvogel in plaats van te wachten op Quatt om dit te implementeren.
[ Voor 5% gewijzigd door TeslaNerd op 08-02-2024 11:03 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Ik ben nog niet zo lang bezig met HA maar ben lerende.
Wellicht een Noob vraag maar hoe update ik de quatt integratie in HA? Ik maak gebruik van HACS.
vrijstaand 1924 200m2, zuid limburg, quatt 4.5 kw, 5.8 warmteverlies Remeha avanta 35c, lyric t6, 60m2 vwv droogbouw, radiators, speedcomfort, isolatie kan beter,5300kw zonnepanelen
In het linker menu 'HACS' selecteren. Als er een update is, zie je dat boven de integraties. Je kunt dan op Update drukken en daarna HA restarten.berrieberrie schreef op donderdag 8 februari 2024 @ 12:31:
Hallo,
Ik ben nog niet zo lang bezig met HA maar ben lerende.
Wellicht een Noob vraag maar hoe update ik de quatt integratie in HA? Ik maak gebruik van HACS.
/f/image/nXVQ3URJo7L2v6s31zdh35re.png?f=fotoalbum_large)
Ik zie dan een notificatie met en een oranje bolletje in de linker menukolom.berrieberrie schreef op donderdag 8 februari 2024 @ 12:31:
Hallo,
Ik ben nog niet zo lang bezig met HA maar ben lerende.
Wellicht een Noob vraag maar hoe update ik de quatt integratie in HA? Ik maak gebruik van HACS.
Je kan ook via settings > devices & services > integrations en dan in de lijst de Quatt integration zoeken en daar kijken of een update klaar staat.
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Is er al zicht op een structurele oplossing? Ik heb Quatt al gevraagd of ik terug kan naar de vorige versie.
Ik durf dat eigenlijk niet, een plug ertussen. Ben bang dat ik de CiC helemaal om zeep help.Lasoul schreef op donderdag 8 februari 2024 @ 17:32:
Sinds de CiC 2.10 update ook hier het probleem dat de CiC webserver na verloop van tijd vastloopt en de json pagina niet meer teruggeeft. Ik heb er een zigbee schakelaar tussen gezet zodat ik hem (automatisch) kan herstarten.
Is er al zicht op een structurele oplossing? Ik heb Quatt al gevraagd of ik terug kan naar de vorige versie.
Ik had vandaag antwoord op mijn melding: ze weten mijn gegevens nog niet en kunen daarom niet antwoorden. Blijkbaar geeft de chat in de Quatt app dat niet even door

Quatt reageert snel op feedback vanuit de beta testers. Dat is mooi.
Haha, dat ticketportal is echt dramatisch. Ik heb dat in december toen ik mijn Quatt net had ook al doorgegeven dat bij de chat/ticket uit de app het Quattnummer niet wordt doorgegeven.jk-d schreef op donderdag 8 februari 2024 @ 17:50:
[...]
Ik durf dat eigenlijk niet, een plug ertussen. Ben bang dat ik de CiC helemaal om zeep help.
Ik had vandaag antwoord op mijn melding: ze weten mijn gegevens nog niet en kunen daarom niet antwoorden. Blijkbaar geeft de chat in de Quatt app dat niet even door.
Prutsers!
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Ok, klinkt als je Quatt verwijderen uit de app en opnieuw toevoegen?bestel2k schreef op donderdag 8 februari 2024 @ 17:57:
Beta 2.11. Vanochtend contact gehad met Quatt vlgs hun zou eea nog moeten werken als voorheen. Er is vandaag iets aangepast door Quatt waarbij ze ook een ander vervallen geregistreerd wifi toegang (van mij) hebben verwijderd en sinds vanochtend kan ik alles weer uitlezen in HA en werkt dit dus weer.
Quatt reageert snel op feedback vanuit de beta testers. Dat is mooi.
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Ik heb niets gedaan. Het verwijderen van de Quatt uit de app helpt daar niet bij want die inhoud wel alle eerdere inloggegevens van je wifi netwerk als je weer de zelfde Quatt aanmeld. Ik gok zo dat je wifi gegevens op de CiC of ieder geval binnen de app opgeslagen worden.TeslaNerd schreef op donderdag 8 februari 2024 @ 18:15:
[...]
Ok, klinkt als je Quatt verwijderen uit de app en opnieuw toevoegen?
Ik heb Quatt gevraagd of zei verder nog iets hebben aangepast waardoor het nu wel weer werkt.
Beta tester hier. Sinds gisteren op versie 2.1.1.0.verguldebarman schreef op woensdag 7 februari 2024 @ 19:46:
[...]
Kan je nog wel via een browser bij de JSON file van de CIC komen?
http://<IP address CIC>:8080/beta/feed/data.json
@marcoboers94 , wellicht is het een idee om een oproep te doen om beta testers in jouw GitHub. Een aantal personen heeft een invite van Quatt ontvangen om beta updates van de CIC te ontvangen. Lijkt me goed dat iemand met kennis van HA integratie én beta tester jou helpt met testen? Ik zou het wel willen, maar ik ben helaas geen beta tester voor de CIC......
Geen data meer in HA. Quart integratie geupdate naar 0.5.1. Geen verschil.
Ben dit weekend helaas niet thuis om te zien of de webserver van de cic eruit ligt. Zoals in dit forum al aangegeven. Dus vermoed dat het eerder daaraan ligt dan aan de integratie van @marcoboers94 . Maar mocht je een gebruiker zoeken voor test doeleinden dan hoor ik het wel.
ZH, 2 onder 1 kap bj.1900, enkelsteens, 95m2. 12 radiatoren (2 wk met speedcomforts). Dak-/vloerisolatie, HR+(+), 4,5kW Quatt, Lyric T6, 9x Yingli 245
Beta 2.11.0 tester. Sinds de aanpassing door Quatt werkt de integratie weer. Zover ik weet heeft Quatt alleen gezorgd dat de CiC met het juiste wifi netwerk verbinding maakt. Sindsdien werk HA weer en kan ik de CiC weer uitlezen via http en via de integratie 0.5.1. Ik heb wel gevraagd of Quatt nog meer heeft aangepast echter heb ik daar helaas geen terugkoppeling op gekregen. Mocht ik iets kunnen testen of kan laten weten dan hoor ik het wel ondanks dat ik niet erg bekend ben met HA.clubeddie schreef op vrijdag 9 februari 2024 @ 10:35:
[...]
Beta tester hier. Sinds gisteren op versie 2.1.1.0.
Geen data meer in HA. Quart integratie geupdate naar 0.5.1. Geen verschil.
Ben dit weekend helaas niet thuis om te zien of de webserver van de cic eruit ligt. Zoals in dit forum al aangegeven. Dus vermoed dat het eerder daaraan ligt dan aan de integratie van @marcoboers94 . Maar mocht je een gebruiker zoeken voor test doeleinden dan hoor ik het wel.
Zie wel dat er regelmatig wat data over een aantal seconde weg valt. Dit was me eerder niet opgevallen. Vanochtend was het veelvuldig echter sinds vanmiddag is het een weer stabiel. Geen idee of dat in de CiC of in m’n HA/netwerk/pi4 zit. Na een onderbreking loopt eea wel weer vanzelf door.
![]() | ![]() |
Welke aanpassing door Quatt? Hier is het juist mis gegaan nadat de bèta release op de cic is gezet.bestel2k schreef op vrijdag 9 februari 2024 @ 17:08:
[...]
Beta 2.11.0 tester. Sinds de aanpassing door Quatt werkt de integratie weer. Zover ik weet heeft Quatt alleen gezorgd dat de CiC met het juiste wifi netwerk verbinding maakt. Sindsdien werk HA weer en kan ik de CiC weer uitlezen via http en via de integratie 0.5.1. Ik heb wel gevraagd of Quatt nog meer heeft aangepast echter heb ik daar helaas geen terugkoppeling op gekregen. Mocht ik iets kunnen testen of kan laten weten dan hoor ik het wel ondanks dat ik niet erg bekend ben met HA.
Zie wel dat er regelmatig wat data over een aantal seconde weg valt. Dit was me eerder niet opgevallen. Vanochtend was het veelvuldig echter sinds vanmiddag is het een weer stabiel. Geen idee of dat in de CiC of in m’n HA/netwerk/pi4 zit. Na een onderbreking loopt eea wel weer vanzelf door.
[Afbeelding] [Afbeelding]
ZH, 2 onder 1 kap bj.1900, enkelsteens, 95m2. 12 radiatoren (2 wk met speedcomforts). Dak-/vloerisolatie, HR+(+), 4,5kW Quatt, Lyric T6, 9x Yingli 245
Na de beta installatie had ik eerst ook geen contact meer met de CiC. Blijkbaar zat de cic op mijn 2de wifi acces point ingelogd die ik niet meer gebruik. Deze 2de hebben ze verwijderd waardoor hij weer met het juiste wifi acces point verbinding maakte. Zover ze me verteld hebben was dat het enige wat ze aangepast hadden. Of ze meer hebben aangepast heb ik dus niet meer van ze gehoord.clubeddie schreef op vrijdag 9 februari 2024 @ 17:17:
[...]
Welke aanpassing door Quatt? Hier is het juist mis gegaan nadat de bèta release op de cic is gezet.
Hier heb ik geen contact gehad maar er komt toch weer data binnen. Ik heb zelf ook niets kunnen doen omdat ik niet thuis ben. Denk toch dat ze iets vanaf afstand aangepast hebben na feedback van bèta gebruikers dat hun webserver niet goed meer functioneerde.bestel2k schreef op vrijdag 9 februari 2024 @ 18:57:
[...]
Na de beta installatie had ik eerst ook geen contact meer met de CiC. Blijkbaar zat de cic op mijn 2de wifi acces point ingelogd die ik niet meer gebruik. Deze 2de hebben ze verwijderd waardoor hij weer met het juiste wifi acces point verbinding maakte. Zover ze me verteld hebben was dat het enige wat ze aangepast hadden. Of ze meer hebben aangepast heb ik dus niet meer van ze gehoord.
ZH, 2 onder 1 kap bj.1900, enkelsteens, 95m2. 12 radiatoren (2 wk met speedcomforts). Dak-/vloerisolatie, HR+(+), 4,5kW Quatt, Lyric T6, 9x Yingli 245
De quatt app zelf bleef wel gewoon de juiste data doorgeven.
CiC zit op het zolder accespoint; via een powerline adapter is die gekoppeld met de modem beneden. Mijn HA draait op een Pi die via WiFi met de modem verbonden is (moet ooit nog eens naar de meterkast verhuizen - maarja, het werkt zo ook best goed
Quatt in hoekhuis (130m2) met radiatoren, 3680Wp PV zie https://ei.tigoenergy.com/p/wouterb
Ja, heb ik 2 maanden gedaan. Uiteindelijk is de CiC vervangen omdat de verbinding niet jofel bleek na een paar mislukte CiC-updatepogingen.jk-d schreef op zaterdag 10 februari 2024 @ 13:47:
Zijn er meer mensen die de CiC automatisch uit en aanschakelen bij verlies van de CiC webserver? Gaat de CiC dat op langere termijn overleven?
Ik denk dat de CiC er wel tegen kan, maar het zou niet moeten gebeuren. Het probleem van een steeds wegvallende internetverbinding los je er niet mee op, intern zit er iets niet goed. Overigens lijkt een LAN-verbinding wat stabieler dan de WiFi.
Quatt - Tado - Nefit Trendline - 50 W/m2(@-10C)
Voor feedback is er een separaat kanaal beschikbaar. Vooraf wordt je geïnformeerd via de mail dat er een beta update aankomt met informatie wat er aangepast wordt. Je kan een formulier invullen op een web pagina van Quatt met je ervaringen en daar je positieve bevindingen en evt problemen melden. Het gaat dus niet via het normale ticket systeem. Reactie via het reactie formulier kwam ook binnen een dag.Onno ! schreef op zaterdag 10 februari 2024 @ 12:19:
Klinkt als een normale beta software procedure dan toch? Is er een feedback kanaal in de lucht tussen de beta testers en Quatt? Want nu lijkt het alsof het via het normale ticket systeem+GoT te lopen.
Dit probleem heb ik ook, maar dit ook al in versie 2.9.0. Zie ook mijn post inLasoul schreef op donderdag 8 februari 2024 @ 17:32:
Sinds de CiC 2.10 update ook hier het probleem dat de CiC webserver na verloop van tijd vastloopt en de json pagina niet meer teruggeeft. Ik heb er een zigbee schakelaar tussen gezet zodat ik hem (automatisch) kan herstarten.
Is er al zicht op een structurele oplossing? Ik heb Quatt al gevraagd of ik terug kan naar de vorige versie.
https://gathering.tweaker...message/77906192#77906192
Gisteren weer een uitval (2.10.0) waarbij de cic nog wel te pingen was, maar geen webserver meer.
Ook deze keer weer proberen te wisselen tussen wifi netwerk. De CIC had er erge moeite mee om te connecten. CIC power cycle heeft het 'opgelost'
De app geeft nu 'Something is wrong' aan, maar de webserver werkt wel weer. 't voelt een beetje aan alsof de app de wifi status uit de cloud ophaald die nog niet up-to-date is met de werkelijke situatie
Ik heb deze automation gebakken en zie dat die wel iedere minuut update maar niet de setpoint van de Honeywell aanpast.
De Netatmo zit op climate.woonkamer
De Honeywell Round is climate.otgw
Wat doe ik niet goed?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| alias: OTGW volgt Netatmo description: Honeywell volgt Netatmo trigger: - platform: time_pattern minutes: /1 action: - variables: target_temp: "{{ state_attr('climate.woonkamer', 'temperature') | float }}" - service: climate.set_temperature data: temperature: "{{ target_temp }}" target: entity_id: climate.heating mode: single |
/f/image/QZDzmMSyZMoU6exlsrUFSFL0.png?f=fotoalbum_large)
/f/image/Z9KttyUpyPTRMcvBfhHXTtDM.png?f=fotoalbum_large)
[ Voor 37% gewijzigd door TeslaNerd op 13-02-2024 11:01 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
je stuurt de climate.heating aan ipv climate.woonkamer...TeslaNerd schreef op dinsdag 13 februari 2024 @ 10:51:
Ik probeer mijn Honeywell Round Modulation via OTGW de temperatuur setpoint te laten volgen van mijn Netamo aan/uit die wel een schema heeft.
Ik heb deze automation gebakken en zie dat die wel iedere minuut update maar niet de setpoint van de Honeywell aanpast.
De Netatmo zit op climate.woonkamer
De Honeywell Round is climate.otgw
Wat doe ik niet goed?
code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 alias: OTGW volgt Netatmo description: Honeywell volgt Netatmo trigger: - platform: time_pattern minutes: /1 action: - variables: target_temp: "{{ state_attr('climate.woonkamer', 'temperature') | float }}" - service: climate.set_temperature data: temperature: "{{ target_temp }}" target: entity_id: climate.heating mode: single
[Afbeelding]
[Afbeelding]
de rest klopt gewoon.
Climate.woonkamer is de niet op het verwarmingssysteem aangesloten Netatmo die ik uitlees. Ik heb uit de “taming Tado” posts van @ruubert overgenomen dat ik climate.heating moet aansturen voor het aanpassen van de thermostaat die wel is aangesloten op de QuattJazekerXX schreef op dinsdag 13 februari 2024 @ 14:55:
[...]
je stuurt de climate.heating aan ipv climate.woonkamer...
de rest klopt gewoon.
ruubert schreef op woensdag 20 december 2023 @ 20:51:
Nb heeft HA een debug modus waarmee je een automation kan debuggen? Als ik in HA een Helper aanmaak krijg ik wel de actuele waarden te zien van enitities die ik de Helper edit
[ Voor 24% gewijzigd door TeslaNerd op 13-02-2024 15:21 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
De HOneywell met mqtt aansturen?TeslaNerd schreef op dinsdag 13 februari 2024 @ 15:15:
[...]
Climate.woonkamer is de niet op het verwarmingssysteem aangesloten Netatmo die ik uitlees. Ik heb uit de “taming Tado” posts van @ruubert overgenomen dat ik climate.heating moet aansturen voor het aanpassen van de thermostaat die wel is aangesloten op de Quatt
ruubert schreef op woensdag 20 december 2023 @ 20:51:
Nb heeft HA een debug modus waarmee je een automation kan debuggen? Als ik in HA een Helper aanmaak krijg ik wel de actuele waarden te zien van enitities die ik de Helper edit
1
2
3
4
5
6
| - service: mqtt.publish data: qos: 0 retain: false topic: OTGW/set/otgw-XXXXXXXXX/command payload_template: TT={{state_attr('climate.woonkamer', 'temperature') | float(0)}} |
intentionally left blank
o andersom dus. dus eigenlijk wil je dat climate.otgw de waarde van climate.woonkamer volgt?TeslaNerd schreef op dinsdag 13 februari 2024 @ 15:15:
[...]
Climate.woonkamer is de niet op het verwarmingssysteem aangesloten Netatmo die ik uitlees. Ik heb uit de “taming Tado” posts van @ruubert overgenomen dat ik climate.heating moet aansturen voor het aanpassen van de thermostaat die wel is aangesloten op de Quatt
ruubert schreef op woensdag 20 december 2023 @ 20:51:
Nb heeft HA een debug modus waarmee je een automation kan debuggen? Als ik in HA een Helper aanmaak krijg ik wel de actuele waarden te zien van enitities die ik de Helper edit
dan moet je die climate.heating omnoemen naar climate.otgw
die climate.heating is nu namelijk de thermostaat die de nieuwe setpoint ontvangt
mogelijk heb je die niet eens?
alleen dat stukje met - variables: weet ik zo niet of dat werkt. ik zou dat gewoon binnen de accolades zetten in: temperature: "{{ target_temp }}"
ik gebruik het volgen van een thermostaat ook, dit is mijn voorbeeld wat gewoon werkt.
1
2
3
4
5
6
7
8
9
10
11
12
| - alias: "Set smart PID VV pomp target temp" trigger: platform: state entity_id: - sensor.woonkamer_thermostaat_doel_temp - sensor.shelly_trv_thermostaat_doel_temp action: - service: climate.set_temperature target: entity_id: climate.smart_pid_vloerverwarmingspomp data: temperature: "{% if states('input_boolean.verwarmingsmodus_beneden_hybride') in ['on'] %} {{ states('sensor.shelly_trv_thermostaat_doel_temp') }} {% elif states('input_boolean.verwarmingsmodus_beneden_cv') in ['on'] %} {{ states('sensor.woonkamer_thermostaat_doel_temp') }} {% endif %}" |
deze taal heet Jinja
hier een link:
https://jinja.palletsprojects.com/en/latest/templates/
En waar vind ik bij mij de nummers voor de otgw-XXXXX?
Ik gebruik nu de setpoint override via de thermostaat card en zie daar geen mqtt verwijzingen met een otgw-XXXXX. Kan ik dat ergens in de code van de thermostaat card voor de Honeywell/otgw vinden?
Veel dank @JazekerXX en @pjeterinfo voor jullie voorbeeldcode. Ik vind het nog steeds erg lastig hoe en met wat ik de de sensors en entities in jullie code moet vervangen door hoe het in mijn HA zit. Kan ik de regel voor die shelly sensor weglaten? Ik heb geen shelly
[ Voor 45% gewijzigd door TeslaNerd op 13-02-2024 16:53 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Ik ben er te onrechte vanuit gegaan dat je de OTGW mbv MQTT hebt gekoppeld.TeslaNerd schreef op dinsdag 13 februari 2024 @ 16:39:
Hoe werkt service met mqtt anders dan deze eenvoudige service actions met target en data?
En waar vind ik bij mij de nummers voor de otgw-XXXXX?
Ik gebruik nu de setpoint override via de thermostaat card en zie daar geen mqtt verwijzingen met een otgw-XXXXX. Kan ik dat ergens in de code van de thermostaat card voor de Honeywell/otgw vinden?
Veel dank @JazekerXX en @pjeterinfo voor jullie voorbeeldcode. Ik vind het nog steeds erg lastig hoe en met wat ik de de sensors en entities in jullie code moet vervangen door hoe het in mijn HA zit.
Heb je een MQTT broker en heb je MQTT in de OTGW geactiveerd?
Ik kijk ook even naar jouw eerste oplossing.
[ Voor 3% gewijzigd door pjeterinfo op 13-02-2024 16:54 ]
intentionally left blank
Eh, nee dacht het niet. Ik heb gewoon de draadjes aan de Nodo print geschroeft en via de NodoMCU via wifi verbinding gemaakt. Dat werkte voor otmonitor op mijn Windows laptop en daarna ook met de otgw integratie in HA op de rpi4pjeterinfo schreef op dinsdag 13 februari 2024 @ 16:53:
[...]
Ik ben er te onrechte vanuit gegaan dat je de OTGW mbv MQTT hebt gekoppeld.
Heb je een MQTT broker en heb je MQTT in de OTGW geactiveerd?
[ Voor 26% gewijzigd door TeslaNerd op 13-02-2024 16:57 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Dit werkt voor mij.TeslaNerd schreef op dinsdag 13 februari 2024 @ 16:54:
[...]
Eh, nee dacht het niet. Ik heb gewoon de draadjes aan de Nodo print geschroeft en via de NodoMCU via wifi verbinding gemaakt. Dat werkte voor otmonitor op mijn Windows laptop en daarna ook met de otgw integratie in HA op de rpi4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| alias: TEST description: '' trigger: - platform: time_pattern seconds: /10 condition: [] action: - variables: target_temp: '{{ states(''sensor.otgw_room_setpoint'') | float(0) }}' - service: climate.set_temperature metadata: {} data: temperature: '{{ target_temp }}' target: entity_id: climate.thermostaat mode: single |
In de automation kan je de trace functie gebruiken om te controleren waar het fout gaat.
[ Voor 5% gewijzigd door pjeterinfo op 13-02-2024 17:32 ]
intentionally left blank
Top! Ik ben helaas morgenavond pas weer thuis om het te proberenpjeterinfo schreef op dinsdag 13 februari 2024 @ 17:29:
[...]
Dit werkt voor mij.
code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 alias: TEST description: '' trigger: - platform: time_pattern seconds: /10 condition: [] action: - variables: target_temp: '{{ states(''sensor.otgw_room_setpoint'') | float(0) }}' - service: climate.set_temperature metadata: {} data: temperature: '{{ target_temp }}' target: entity_id: climate.thermostaat mode: single
In de automation kan je de trace functie gebruiken om te controleren waar het fout gaat.
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Op basis van de code van Ruubert ben ik verder gaan borduren om mijn EvoHome te temmen. De. code die ik nu gebruik heb ik in Github geplaatst. Feedback altijd welkom. De code vind je hier: https://github.com/jee67/ha_taming_evohome
ja die regel kun je weg laten. hij triggert namelijk op beide wanneer een van de 2 waardes wijzigt. dus als je er 1 weglaat doet hij het alleen op die ene. maar jouw trigger die iedere minuut triggert kan natuurlijk ook.TeslaNerd schreef op dinsdag 13 februari 2024 @ 16:39:
Hoe werkt service met mqtt anders dan deze eenvoudige service actions met target en data?
En waar vind ik bij mij de nummers voor de otgw-XXXXX?
Ik gebruik nu de setpoint override via de thermostaat card en zie daar geen mqtt verwijzingen met een otgw-XXXXX. Kan ik dat ergens in de code van de thermostaat card voor de Honeywell/otgw vinden?
Veel dank @JazekerXX en @pjeterinfo voor jullie voorbeeldcode. Ik vind het nog steeds erg lastig hoe en met wat ik de de sensors en entities in jullie code moet vervangen door hoe het in mijn HA zit. Kan ik de regel voor die shelly sensor weglaten? Ik heb geen shelly
1
2
3
4
5
6
7
8
9
10
11
| - alias: "Set smart PID VV pomp target temp" trigger: platform: state entity_id: - sensor.<hier komt de target temp die je wilt overbrengen naar de andere thermostaat> # als deze wijzigt triggert de automation en wordt onderstaande action uitgevoerd. action: - service: climate.set_temperature target: entity_id: climate.<hier komt de thermostaat waarvan je de target temp gaat aanpassen> data: temperature: "{{ states('sensor.<hier komt de target temp die je wilt overbrengen naar de andere thermostaat>') }}" #dit is dus dezelfde als de trigger |
Dit is het geworden:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| alias: Honeywell volgt Netatmo description: "" trigger: - platform: state entity_id: - climate.woonkamer attribute: temperature condition: [] action: - variables: target_temp: "{{ state_attr('climate.woonkamer', 'temperature') | float }}" - service: climate.set_temperature metadata: {} data: temperature: "{{ target_temp }}" target: entity_id: climate.honeywell mode: single |
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
/f/image/FciBCU5ZvnK7pHLJKCeGn8zu.png?f=fotoalbum_large)
Ik heb twee helpers aangemaakt:
1. een "number" helper met de zelf in te stellen maximale watertemperatuur van de Quatt. Deze gaat in de eerste automation die de room setpoint 0,5 graden verlaagt als de watertemperatuur boven dit maximum uitkomt.
2. de "opwarmsnelheid" met de "derivative", de afgeleide van de room temperature over een periode van 10 minuten. Deze geeft de snelheid waarmee je woning opwarmt/afkoelt. Ik gebruik die in de tweede automation wanneer deze negatief wordt als het huis begint af te koelen.
/f/image/E9Zlh6dENqddTnf2v4ESZEhE.png?f=fotoalbum_large)
En de twee automations, een die de room setpoint een halve graad verlaagt als de maximale watertemperatuur is bereikt, en de tweede die de room setpoint een halve graad verhoogt als de opwarmsnelheid helper negatief wordt.
NB mijn Honeywell thermostaat heb ik begrensd op 20 graden, vandaar die min ( 20, ) functie in de tweede automation.
Zoals bij mijn automation waarmee de Honeywell de Netatmo volgt:
climate.woonkamer is mijn Netatmo thermostaat
climate.Honeywell is mijn Honeywell thermostaat die aan de Quatt is aangesloten
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| alias: Watertemperatuur te hoog dan setpoint 0.5 omlaag description: "" trigger: - platform: numeric_state entity_id: - sensor.heatpump_hp1_temperaturewaterout for: hours: 0 minutes: 1 seconds: 0 above: input_number.max_watertemperatuur_quatt condition: [] action: - variables: target_temp: "{{ state_attr('climate.woonkamer', 'temperature') | float }}" - service: climate.set_temperature metadata: {} data: temperature: "{{ target_temp - 0.5 }}" target: entity_id: climate.honeywell mode: restart |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| alias: Als opwarmsnelheid<0 dan setpoint 0.5 omhoog description: "" trigger: - platform: numeric_state entity_id: - sensor.opwarmsnelheid_v2 for: hours: 0 minutes: 1 seconds: 0 below: 0 condition: [] action: - variables: target_temp: "{{ state_attr('climate.woonkamer', 'temperature') | float }}" - service: climate.set_temperature metadata: {} data: temperature: "{{ min ( 20 , target_temp + 0.5 ) }}" target: entity_id: climate.honeywell |
/f/image/uKgEXqTkj3izS0RI0ZDqgjum.png?f=fotoalbum_large)
[ Voor 66% gewijzigd door TeslaNerd op 24-02-2024 11:35 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Ik heb een extra automation toegevoegd, die ervoor zorgt dat zoveel mogelijk het schema van de EvoHome wordt gevolgd, maar wel zorgt voor demping van de temperatuurstijgingen.jk-d schreef op dinsdag 13 februari 2024 @ 18:04:
[...]
Op basis van de code van Ruubert ben ik verder gaan borduren om mijn EvoHome te temmen. De. code die ik nu gebruik heb ik in Github geplaatst. Feedback altijd welkom. De code vind je hier: https://github.com/jee67/ha_taming_evohome
Naar het idee van @TeslaNerd heb ik onderstaande automatisering in HA geschreven.
De werking is, simpelweg, als volgt:
- als de temperatuur langer dan 5 minuten onder de gewenste target komt, dan gaat de target met 0,5gr omhoog;
- zodra de Quatt weer aanslaat, dan gaat de target direct weer met 0,5 omlaag
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
| alias: "Quatt: give a kick at Temp Normal" description: Quatt not running, but below Temp Normal trigger: - platform: numeric_state entity_id: - sensor.heatpump_thermostat_room_temperature below: input_number.thermostat_normal_temp for: hours: 0 minutes: 5 seconds: 0 id: Below Normal - platform: state entity_id: - sensor.heatpump_qc_supervisorycontrolmode to: "0" id: Below Normal for: hours: 0 minutes: 5 seconds: 0 - platform: numeric_state entity_id: - sensor.heatpump_qc_supervisorycontrolmode above: "0" id: Quatt Running condition: - condition: time after: input_datetime.startheating before: input_datetime.start_heating_high action: - choose: - conditions: - condition: trigger id: - Below Normal - condition: state entity_id: sensor.heatpump_qc_supervisorycontrolmode state: "0" - condition: numeric_state entity_id: sensor.heatpump_thermostat_room_temperature below: input_number.thermostat_normal_temp sequence: - data_template: temperature: >- {{ states('input_number.thermostat_normal_temp') | float + 0.5 }} service: climate.set_temperature target: entity_id: - climate.tstat_33adca alias: Quatt standy but temp below Normal - conditions: - condition: trigger id: - Quatt Running - condition: numeric_state entity_id: sensor.heatpump_qc_supervisorycontrolmode above: "0" - alias: Test if target temp has been kicked condition: template value_template: >- {{ (states('sensor.heatpump_thermostat_room_setpoint') | float) == (states('input_number.thermostat_normal_temp') | float + 0.5) }} sequence: - data_template: temperature: "{{states('input_number.thermostat_normal_temp')}}" service: climate.set_temperature target: entity_id: - climate.tstat_33adca alias: Quatt running after a kick mode: single |
[ Voor 13% gewijzigd door verguldebarman op 23-02-2024 21:21 ]
Vrijstaande woning, dubbel glas, veel ramen, alles open verbonden, ca 300m3, geen extra isolatie, vvw in de woonkamer, rest type 10 zonder boosters, T6 op 20°C & 19,5°C nacht, 4,5kW Quatt, Intergas Xtreme36, 6MWh Wp, Warmteverl. (-10°C) 7kW bij max 15°C
ik had dat gedrag ook gemerkt, maar ik gebruik de diyless thermostaat. het ligt dus niet aan de T6 maar aan de Quatt zelf. ik had ook een 30 seconden 0,5 temp verhoging gemaakt om dat te verhelpen..verguldebarman schreef op vrijdag 23 februari 2024 @ 17:35:
Ik merkte dat de Quatt icm T6 vaak te lang wacht met opnieuw opstarten als de temperatuur onder target is gekomen. Vaak zie ik dat de kamertemperatuur nog verder moet zakken voordat de Quatt aanslaat. Dan is het inmiddels al te koud in huis en moet de Quatt hard werken om het weer op temperatuur te krijgen.
Naar het idee van @TeslaNerd heb ik onderstaande automatisering in HA geschreven.
De werking is, simpelweg, als volgt:De code bevat daarnaast nog wat controles om te voorkomen dat deze ongewenst uitgevoerd wordt.
- als de temperatuur langer dan 5 minuten onder de gewenste target komt, dan gaat de target met 0,5gr omhoog;
- zodra de Quatt weer aanslaat, dan gaat de target direct weer met 0,5 omlaag
code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 alias: "Quatt: give a kick at Temp Normal" description: Quatt not running, but below Temp Normal trigger: - platform: numeric_state entity_id: - sensor.heatpump_thermostat_room_temperature below: input_number.thermostat_normal_temp for: hours: 0 minutes: 5 seconds: 0 id: Below Normal - platform: state entity_id: - sensor.heatpump_qc_supervisorycontrolmode to: "0" id: Below Normal for: hours: 0 minutes: 5 seconds: 0 - platform: numeric_state entity_id: - sensor.heatpump_qc_supervisorycontrolmode above: "0" id: Quatt Running condition: - condition: time after: input_datetime.startheating before: input_datetime.start_heating_high action: - choose: - conditions: - condition: trigger id: - Below Normal - condition: state entity_id: sensor.heatpump_qc_supervisorycontrolmode state: "0" - condition: numeric_state entity_id: sensor.heatpump_thermostat_room_temperature below: input_number.thermostat_normal_temp sequence: - data_template: temperature: >- {{ states('input_number.thermostat_normal_temp') | float + 0.5 }} service: climate.set_temperature target: entity_id: - climate.tstat_33adca alias: Quatt standy but temp below Normal - conditions: - condition: trigger id: - Quatt Running - condition: numeric_state entity_id: sensor.heatpump_qc_supervisorycontrolmode
:strip_exif()/f/image/w7Iw7D3SS3peWvMMwvvXABZv.jpg?f=fotoalbum_large)
wel interessant wat jij met die conditions in de action doet! ik wist niet eens dat dat kon..
ik had het zo opgelost, met nog wat extra checks die voorkomen dat hij te vaak of onnodig getriggert wordt..
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| - id: "20240211162900" alias: Temperature woonkamer below setpoint mode: single trigger: - platform: state entity_id: - sensor.temp_woonkamer condition: - condition: template value_template: "{{ (states('sensor.temp_woonkamer') | float(0) + 0.1) <= states('sensor.Woonkamer_thermostaat_doel_temp') | float(0) }}" - condition: template value_template: "{{ (now().timestamp() - state_attr('automation.temperature_woonkamer_below_setpoint', 'last_triggered').timestamp()) > 10800 }}" #3600 = 1 uur, 10800 = 3 uur, 21600 = 6uur. - condition: numeric_state entity_id: sensor.heatpump_hp1_powerinput below: 200 - condition: template value_template: "{{ states('sensor.aanvoer_cv') < states('sensor.shelly_trv_thermostaat_doel_temp') }}" action: - service: climate.set_temperature target: entity_id: climate.opentherm_thermostaat data: temperature: "{{ state_attr('climate.opentherm_thermostaat', 'temperature') + 0.5 }}" - delay: seconds: 30 - service: climate.set_temperature target: entity_id: climate.opentherm_thermostaat data: temperature: "{{ state_attr('climate.opentherm_thermostaat', 'temperature') - 0.5 }}" |
voor iets meer koop je een veel betere mini pc met een N100 (zeer laag energieverbruik) 16 GB RAM (DDR5) en 512 SSD. incl. Win11pro. zeer laag energieverbruik (rond de 6-7W) dat laatste is voor een machine die 24/7 aanstaat wel ook belangrijk.Lasoul schreef op zaterdag 11 november 2023 @ 23:00:
[...]
Zelf heb ik een mini-pc gebaseerd op de Celeron N5100 met 8GB maar dat is behoorlijk overkill voor Home Assistant. Je kunt ook met minder prima uit de voeten.
Je zou bijvoorbeeld kunnen kijken naar de onderstaande voor 112 euro na korting.
[Afbeelding]
[Afbeelding]
ik draai op dit moment HA zelfs direct op windows via remote desktop, de pc zelf staat (zonder display, muis en toetsenbord) in de meterkast.
Quatt WP 4,5 kW - Atag CV ketel - Honeywell T6 - 23 panelen SolarEdge
Mijn mini-pc staat momenteel uitMacD007 schreef op zaterdag 24 februari 2024 @ 12:02:
[...]
voor iets meer koop je een veel betere mini pc met een N100 (zeer laag energieverbruik) 16 GB RAM (DDR5) en 512 SSD. incl. Win11pro. zeer laag energieverbruik (rond de 6-7W) dat laatste is voor een machine die 24/7 aanstaat wel ook belangrijk.
ik draai op dit moment HA zelfs direct op windows via remote desktop, de pc zelf staat (zonder display, muis en toetsenbord) in de meterkast.
Ik heb HA gemigreerd naar mijn nieuwe proxmox server wat een N100 server is met 6 SSD's (8TB Enterprise SSD's - 2e hands). Deze server gebruikt in totaal nu 17W waarbij mijn oude server en de HA mini-pc samen rond de 55W zaten.
Op mijn server heb ik 16 Linux containers draaien en 1 VM (Home Assistant).
Containers:
- Samba fileserver
- Filecloud (eigen dropbox)
- Nginx proxy manager
- Duplicati (backups)
- Plex / Tautulli
- Sabnzb / Transmission
- Radarr / Sonarr / Readarr / lidarr / Overseerr
- Influxdb (apart van HA gezet) / grafana
- esphome
Mooie score, 17 watt met 6 SSD's. Dat is het voordeel dat een SSD idle maar zo'n 0,1 watt verbruiken, maar als je ze allemaal tegelijkertijd gebruikt zou het stroom verbruik wel wat hoger moeten zijn. SSD is zo'n 3 a 4 watt in gebruik volgens mij. Het is ook wel bizar hoeveel, of eerder gezegd hoe weinig een N100 verbruik in idle modus is, 4 of 5 watt ofzo. Maar bij verbruik lijkt me dat ook hoger.Lasoul schreef op zaterdag 24 februari 2024 @ 22:41:
[...]
Mijn mini-pc staat momenteel uit
Ik heb HA gemigreerd naar mijn nieuwe proxmox server wat een N100 server is met 6 SSD's (8TB Enterprise SSD's - 2e hands). Deze server gebruikt in totaal nu 17W waarbij mijn oude server en de HA mini-pc samen rond de 55W zaten.
Op mijn server heb ik 16 Linux containers draaien en 1 VM (Home Assistant).
Containers:
- Samba fileserver
- Filecloud (eigen dropbox)
- Nginx proxy manager
- Duplicati (backups)
- Plex / Tautulli
- Sabnzb / Transmission
- Radarr / Sonarr / Readarr / lidarr / Overseerr
- Influxdb (apart van HA gezet) / grafana
- esphome
Maar 6 SSD is dus potentieel 18 watt mochten ze gelijktijdig actief zijn. Maar ik ga ervanuit dat je gemiddelde verbruik dus 17 watt is?
Ben wel benieuwd hoe je 6 SSD's in een N100 heb gekregen,
ZH, 2 onder 1 kap bj.1900, enkelsteens, 95m2. 12 radiatoren (2 wk met speedcomforts). Dak-/vloerisolatie, HR+(+), 4,5kW Quatt, Lyric T6, 9x Yingli 245
Die 17 watt is bij mij de ondergrens. De Enterprise SSD's 8TB zijn wat ouder en gebruiken standaard 1,5W (Micron). In het WiFi slot heb ik nog een adapter gezet voor een extra 1 Gbit netwerkkaart die ik in Proxmox in een "bond" heb gezet. Daarnaast moet je natuurlijk ook nog altijd je efficiëntie van je voeding meenemen. Ik maak gebruik van een PicoPSU met 92% efficiëntie op lage load.clubeddie schreef op maandag 26 februari 2024 @ 22:54:
[...]
Mooie score, 17 watt met 6 SSD's. Dat is het voordeel dat een SSD idle maar zo'n 0,1 watt verbruiken, maar als je ze allemaal tegelijkertijd gebruikt zou het stroom verbruik wel wat hoger moeten zijn. SSD is zo'n 3 a 4 watt in gebruik volgens mij. Het is ook wel bizar hoeveel, of eerder gezegd hoe weinig een N100 verbruik in idle modus is, 4 of 5 watt ofzo. Maar bij verbruik lijkt me dat ook hoger.
Maar 6 SSD is dus potentieel 18 watt mochten ze gelijktijdig actief zijn. Maar ik ga ervanuit dat je gemiddelde verbruik dus 17 watt is?
Ben wel benieuwd hoe je 6 SSD's in een N100 heb gekregen,
Voor de 6 SSD's heb ik een M2 naar SATA adapter in gebruik.
:fill(white):strip_exif()/f/image/6FDYelozPPZDF0gT1tOpIOmn.png?f=user_large)
Officieel zou de N100 maar 16GB ondersteunen maar ik draai op mijn ASUS Prime N100I-D D4 moederbord al maanden stabiel met 32GB geheugen.
[ Voor 4% gewijzigd door Lasoul op 27-02-2024 11:04 ]
Ik wil graag het energieverbruik van Quatt in het Energy Dashboard van HA laten zien. Om dit te doen moet deze device_class: energy hebben. Echter, de riemann sum die ik gebruik om de gebruikte energie te bepalen uit sensor.heatpump_hp1_powerinput staat niet toe handmatig de device_class te definieren, maar haalt deze altijd uit de source (heatpump_hp1_powerinput in dit geval)
Enige wat ik kan bedenken is een helper template maken welke sensor.heatpump_hp1_powerinput spiegelt, maar met de device_class: power. Maar dat is niet de meest elegante oplossing.
Misschien mag ik een vraag hierover stellen, ik heb geen software achtergrond. In eerste instantie gebruikte ik ook de Riemann summ naar aanleiding van het voorbeeld van @verguldebarman op pagina 1. Maar inmiddels gebruik ik ApexCharts en doe ik het direct hiermee omdat dit erg flexibel in gebruik is.. Maar ik vraag me af wat de voor en nadelen van beide methoden zijn cq wat ik mis als ik het niet via de Riemann helper doe?RxRxR schreef op woensdag 13 maart 2024 @ 14:16:
Weet iemand of het mogelijk is om de device_class van de quatt sensoren aan te passen?
Ik wil graag het energieverbruik van Quatt in het Energy Dashboard van HA laten zien. Om dit te doen moet deze device_class: energy hebben. Echter, de riemann sum die ik gebruik om de gebruikte energie te bepalen uit sensor.heatpump_hp1_powerinput staat niet toe handmatig de device_class te definieren, maar haalt deze altijd uit de source (heatpump_hp1_powerinput in dit geval)
Enige wat ik kan bedenken is een helper template maken welke sensor.heatpump_hp1_powerinput spiegelt, maar met de device_class: power. Maar dat is niet de meest elegante oplossing.
:strip_exif()/f/image/JJIeprrGUkpSfeD85aAfJsg2.jpg?f=fotoalbum_large)
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
Beide geven een vergelijkbaar resultaat; een grafiek met het verloop. Het grote verschil met ApexCharts en de Riemann helper is dat je met de tweede verdere berekeningen zou kunnen doen. Ik gebruik dit bijvoorbeeld om automatisch een meterstand te genereren voor Mindergas.nl.Flesym schreef op woensdag 13 maart 2024 @ 16:48:
[...]
Misschien mag ik een vraag hierover stellen, ik heb geen software achtergrond. In eerste instantie gebruikte ik ook de Riemann summ naar aanleiding van het voorbeeld van @verguldebarman op pagina 1. Maar inmiddels gebruik ik ApexCharts en doe ik het direct hiermee omdat dit erg flexibel in gebruik is.. Maar ik vraag me af wat de voor en nadelen van beide methoden zijn cq wat ik mis als ik het niet via de Riemann helper doe?
[Afbeelding]
Als je alleen een grafische weergave zoekt, dan is ApexCharts voldoende.
Vrijstaande woning, dubbel glas, veel ramen, alles open verbonden, ca 300m3, geen extra isolatie, vvw in de woonkamer, rest type 10 zonder boosters, T6 op 20°C & 19,5°C nacht, 4,5kW Quatt, Intergas Xtreme36, 6MWh Wp, Warmteverl. (-10°C) 7kW bij max 15°C
Mooie grafiek met verschillende assen voor afgegeven en opgenomen vermogen! Ga ik ook gebruikenFlesym schreef op woensdag 13 maart 2024 @ 16:48:
[...]
Misschien mag ik een vraag hierover stellen, ik heb geen software achtergrond. In eerste instantie gebruikte ik ook de Riemann summ naar aanleiding van het voorbeeld van @verguldebarman op pagina 1. Maar inmiddels gebruik ik ApexCharts en doe ik het direct hiermee omdat dit erg flexibel in gebruik is.. Maar ik vraag me af wat de voor en nadelen van beide methoden zijn cq wat ik mis als ik het niet via de Riemann helper doe?
[Afbeelding]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Eens!!TeslaNerd schreef op donderdag 14 maart 2024 @ 09:17:
[...]
Mooie grafiek met verschillende assen voor afgegeven en opgenomen vermogen! Ga ik ook gebruiken
@Flesym , zou jij jouw code van ApexCharts hier willen delen? Vooral ook de kleurtjes in de grafiek vind ik interessant om te weten hoe dat werkt.
Vrijstaande woning, dubbel glas, veel ramen, alles open verbonden, ca 300m3, geen extra isolatie, vvw in de woonkamer, rest type 10 zonder boosters, T6 op 20°C & 19,5°C nacht, 4,5kW Quatt, Intergas Xtreme36, 6MWh Wp, Warmteverl. (-10°C) 7kW bij max 15°C
:strip_exif()/f/image/lyg63XFu6SwAQsMnMssjyiwZ.jpg?f=fotoalbum_large)
Is dit de code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
| type: custom:apexcharts-card experimental: color_threshold: true cache: true header: standard_format: false show: true show_states: true colorize_states: true title: Relevante temperaturen graph_span: 12h span: end: minute update_interval: 5m show: last_updated: true apex_config: legend: show: false all_series_config: group_by: func: avg duration: 10m stroke_width: 3 type: line yaxis: - id: first decimals: 1 apex_config: tickAmount: 4 - id: second opposite: true decimals: 1 apex_config: tickAmount: 4 series: - entity: sensor.heatpump_hp1_temperatureoutside name: Buitentemperatuur yaxis_id: first extend_to: false color: steelblue show: header_color_threshold: true - entity: sensor.heatpump_hp1_temperaturewaterout name: Watertemperatuur yaxis_id: second extend_to: false show: header_color_threshold: true color_threshold: - value: 15 color: blue - value: 20 color: steelblue - value: 30 color: green - value: 35 color: orange - value: 40 color: red |
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
:strip_exif()/f/image/UrTeE4YZYvZjyE2QyvTQlLKq.jpg?f=fotoalbum_large)
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
| type: custom:apexcharts-card cache: true experimental: color_threshold: true header: show: true title: Vermogen show_states: true colorize_states: true apex_config: legend: show: false update_interval: 5m graph_span: 12h span: end: minute yaxis: - id: first decimals: 1 apex_config: tickAmount: 4 - id: second opposite: true decimals: 1 apex_config: tickAmount: 4 stacked: false all_series_config: type: line extend_to: false group_by: func: avg duration: 5m stroke_width: 2 show: legend_value: false series: - entity: sensor.heatpump_hp1_power transform: return x / 1000; float_precision: 2 unit: kW name: Afgegeven warmte yaxis_id: first show: header_color_threshold: true color_threshold: - value: 1 color: steelblue - value: 2 color: green - value: 3 color: orange - value: 4 color: red - entity: sensor.kwh_meter_active_power_phase_1 transform: return x / 1000; float_precision: 2 unit: kW name: Opgenomen vermogen yaxis_id: second show: header_color_threshold: true color_threshold: - value: 0.4 color: steelblue - value: 0.8 color: green - value: 1.2 color: orange - value: 1.6 color: red |
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
Ik kan nu mijn pseudo waterbesturing over de afgelopen 12 uur in 1 scherm bekijken 🥳
/f/image/VOkGJgGZzc18yJoCo93LdmuQ.png?f=fotoalbum_large)
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
| type: custom:apexcharts-card layout: minimal graph_span: 12h header: show: true title: Quatt/CiC Pseudo waterbesturing afgelopen 12h series: - entity: climate.woonkamer name: Schema Netatmo attribute: temperature yaxis_id: roomtemp color: purple type: line stroke_width: 3 show: in_chart: true extremas: true group_by: func: last duration: 1m - entity: sensor.heatpump_hp1_temperaturewaterout name: Watertemperatuur Quatt yaxis_id: watertemp color: cyan type: area stroke_width: 2 show: in_chart: true extremas: true group_by: func: last duration: 3m - entity: sensor.heatpump_thermostat_room_setpoint name: Setpoint Honeywell yaxis_id: roomtemp color: red type: line stroke_width: 1 show: in_chart: true extremas: true group_by: func: last duration: 1m - entity: sensor.heatpump_thermostat_room_temperature name: kamer temperatuur yaxis_id: roomtemp color: eclipse type: line stroke_width: 2 group_by: func: last duration: 15m show: extremas: true header_color_threshold: true - entity: sensor.heatpump_hp1_quatt_cop_2 name: Quatt efficiency yaxis_id: cop color: green type: line stroke_width: 1 group_by: func: last duration: 3m show: extremas: true header_color_threshold: true - entity: sensor.heating_power name: Quatt warmte yaxis_id: power color: orange type: area stroke_width: 2 show: in_chart: true extremas: true group_by: func: last duration: 3m - entity: sensor.heatpump_hp1_temperatureoutside name: Buiten temperatuur yaxis_id: buitentemp color: blue type: line stroke_width: 1 show: in_chart: true extremas: true group_by: func: last duration: 3m yaxis: - id: roomtemp show: false min: 16 max: 21 - id: watertemp show: false min: 10 max: 50 - id: cop show: false min: 1 max: 30 - id: power show: false min: 0 max: 3000 - id: buitentemp show: false min: -10 max: 40 |
[ Voor 46% gewijzigd door TeslaNerd op 15-03-2024 08:57 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Heeft iemand suggesties voor een nonosense cloudloze thermostaat die goed werkt met de Quatt en HA? Voornamelijkste doel is om de verwarming op afstand te bedienen voor als we terug naar huis gaan of als vrouwlief weer eens os vergeten de thermostaat terug te draaien als ze naar kantoor gaat. Ze is nogal een koukleum en zet het liefst de temperatuur op 22...
DIYless?Erasmo schreef op vrijdag 15 maart 2024 @ 14:38:
Ik heb de T6 omdat die aangeraden werd voor de Quatt. Bevalt prima qua stooklijn etcetera, alleen hangt niet aan het netwerk, primair vanwege nog een app en nog een account en gare databrokers.
Heeft iemand suggesties voor een nonosense cloudloze thermostaat die goed werkt met de Quatt en HA? Voornamelijkste doel is om de verwarming op afstand te bedienen voor als we terug naar huis gaan of als vrouwlief weer eens os vergeten de thermostaat terug te draaien als ze naar kantoor gaat. Ze is nogal een koukleum en zet het liefst de temperatuur op 22...
Of zoals ik het wel via een franse? databroker doe: Netatmo aan/uit met HA integratie icm Honeywell Round via OT gateway ;-)
Zie voor details mijn eerdere posts hierboven
[ Voor 10% gewijzigd door TeslaNerd op 15-03-2024 15:13 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Al mijn Home Assistant info van de Quatt is "unavailable" in mijn dashboard, de CiC is wel gewoon online, en ook alle andere apparaten werken in mijn HA dashboard.
Draai CiC 2.13.3
Iemand anders zelfde probleem?
Grt skywalker
Of de Tado i.c.m. HomeKit in HA.Erasmo schreef op vrijdag 15 maart 2024 @ 14:38:
Ik heb de T6 omdat die aangeraden werd voor de Quatt. Bevalt prima qua stooklijn etcetera, alleen hangt niet aan het netwerk, primair vanwege nog een app en nog een account en gare databrokers.
Heeft iemand suggesties voor een nonosense cloudloze thermostaat die goed werkt met de Quatt en HA? Voornamelijkste doel is om de verwarming op afstand te bedienen voor als we terug naar huis gaan of als vrouwlief weer eens os vergeten de thermostaat terug te draaien als ze naar kantoor gaat. Ze is nogal een koukleum en zet het liefst de temperatuur op 22...
Drenthe, geschakelde woning bj. 1981, 107m2, kruipruimte nageisoleerd, origneel dubbelglas, 6x radiator 19kW@70/55/20, beneden 10x heatfan 5 pro, Tado, Remeha Calenta 28C, Quatt (15-02-2024), 10x Sunpower 390W op Zuid, SMA SB 3.6
Nee, hier werkt het normaal in 2.13.3. De stekker van de CiC al eens er uit en weer aangesloten?sky_walker schreef op vrijdag 15 maart 2024 @ 15:20:
Goedemiddag,
Al mijn Home Assistant info van de Quatt is "unavailable" in mijn dashboard, de CiC is wel gewoon online, en ook alle andere apparaten werken in mijn HA dashboard.
Draai CiC 2.13.3
Iemand anders zelfde probleem?
Grt skywalker
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Mag met diy als de frontend maar WAF vriendelijk is en ook de lokaal kan bedienen als HA down is.TeslaNerd schreef op vrijdag 15 maart 2024 @ 15:09:
[...]
DIYless?
Of zoals ik het wel via een franse? databroker doe: Netatmo aan/uit met HA integratie icm Honeywell Round via OT gateway ;-)
Zie voor details mijn eerdere posts hierboven
0 Apple dingen hier thuis dus dat wordt lastig
Ben op reis in Dubai en Qatar, dus moet maar even geduld hebben. De Quatt snort wel gewoon door, dus verder niets aan de hand, check t wel als ik weer terug ben over een week.TeslaNerd schreef op vrijdag 15 maart 2024 @ 16:09:
[...]
Nee, hier werkt het normaal in 2.13.3. De stekker van de CiC al eens er uit en weer aangesloten?
Ik zal moeders de vrouw maar niet vragen om de stekker eruit te halen, dan staat dalijk de Quatt stil en zijn we verder van huis

Je hebt geen Apple nodig, alleen home assistant. Die kan via dat protocol offline met de Tado praten. En geen abbo nodig. Je kan zelfs de hele app achterwege laten en alleen via HA aansturen.Erasmo schreef op vrijdag 15 maart 2024 @ 16:52:
0 Apple dingen hier thuis dus dat wordt lastigMaar was Tado niet op abo basis?
Drenthe, geschakelde woning bj. 1981, 107m2, kruipruimte nageisoleerd, origneel dubbelglas, 6x radiator 19kW@70/55/20, beneden 10x heatfan 5 pro, Tado, Remeha Calenta 28C, Quatt (15-02-2024), 10x Sunpower 390W op Zuid, SMA SB 3.6
Voor home automation gebruik ik Home Assistant. Op een aantal devices gebruik ik Smart Life (Tuya) WCD's. Maar ik gebruik deze ook bv om mijn Heatfans aan en uit te zetten maar ook bij mijn CIC omdat bij een software-update iedere keer mijn thermostaat (DT4M) 'kwijt' raakt. Gevolg is dat de CV wordt aangezet en mijn huistemperatuur ongebreideld oploopt. Heel vervelend omdat ik regelmatig een paar dagen weg ben. Dus met HA heb ik een notificatie ingesteld als mijn CV weer eens wordt ingeschakeld dat ik de CIC op afstand even uit/aan kan zetten. Dit deel werkt op zich goed.
Maar.... daarnaast gebruiken we ook Google Assistant om bv lichten te schakelen. Nu is een heel vervelend maar veel gebruikt commando 'hey Google, alles uit'. Gevolg, alles gaat uit, dus ook de CIC en heatfans 😂.
Ik kan echter in Google Home geen manier vinden om devices uit te sluiten van dit commando. Verwijderen kan wel maar ze worden door Smart Life af en toe ook weer gesynchroniseerd naar Google Home; probleem terug.
Google Assistent afschaffen is niet acceptabel door de WAF en K(ids)AF.
Enig idee hoe ik dit probleem kan oplossen? Richtingen waaraan ik zelf zat te denken
- mijn guest netwerk opofferen en deze gebruiken om 'een ander huis' te maken. Maar op deze manier splitsen tussen HA en Google Home gaat niet eenvoudig zijn.
- Local Tuya gebruiken CIC en heatfans maar ik weet niet of Smart Life dezelfde WCD's dan toch leert en weer aan Google Home doorgeeft.
- voor de 5de keer een andere thermostaat aanschaffen na Evohome, de T6 (onding), Comfort Touch (doet het niet meer op de CIC) en nu de DT4M (redelijk maar hangt bij iedere softwareupdate). Bijkomend probleem is dat een andere thermostaat dam of bedraad zonder externe voeding (geen WCD in de buurt) of onbedraad (flink duurder) moet zijn
Eerste 2 heb ik nog niet getest of dit ook gaat werken en heb ik twijfels bij. 3de zit ik niet echt nog een keer op te wachten. En is volgens mij ook een Quatt probleem, ik denk dat bij het CIC rebooten de thermostaat niet wordt gereset aan gezien CIC uit/aan altijd FECoplossing is.
Hoe zouden jullie dit oplossen?
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
Op straffe van het (tijdelijk) innemen van de Googles toch niet meer dat commando gebruiken? Ik probeer ze hier ook op te voeden dat ‘doe het licht uit’ beter is dan ‘doe alle lampen uit’. Kortste klap denk ik.Flesym schreef op maandag 18 maart 2024 @ 21:16:
Nu is een heel vervelend maar veel gebruikt commando 'hey Google, alles uit'. Gevolg, alles gaat uit, dus ook de CIC en heatfans 😂.
Ik kan echter in Google Home geen manier vinden om devices uit te sluiten van dit commando. Verwijderen kan wel maar ze worden door Smart Life af en toe ook weer gesynchroniseerd naar Google Home; probleem terug.
Google Assistent afschaffen is niet acceptabel door de WAF en K(ids)AF.
Enig idee hoe ik dit probleem kan oplossen?
Súdwest Fryslân 400 m2 vrijstaand '80/'94 - 25% hobbyklusproject | 2x mono Quatt hybr HP/Lyric T6 + 3x CV-ketel + convectoren/heatboosters ( + 3x houtkachel :) ) | na-isolatie | 2x18 Techniq Energy heatpipes | PV 10945 Z, 2100 O, 2100 W
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
https://github.com/patrickvorgers/SPCRowwan schreef op maandag 30 oktober 2023 @ 05:55:
In het grote Quatt topic is het al eens (of zelfs vaker??) voorbij gekomen: mensen die proberen de pompschakelaar te vervangen door een automation. Degene die het probeerde gebruikte de "powerinput" als criteria. - hieraan zaten verschillende nadelen (CV only word niet gedetecteerd".
Waarom wordt niet de "supervisoryControlMode" gebruikt, in combinatie met iets om hem eens per 24 uur te laten draaien?.
Deze SPC (Smart pomp Control) maakt gebruik van "supervisoryControlMode".
In gebruik sinds Nov. of zo en werkt uitstekend.
O-NB, 1900 bwjaar, 2000 vol ger; Begane 175m2 vvw 7-groeps & pomp + 3 rad - 1e verd 2 rad, Ketel 2000 Nefit Ecomfit HR43-CW6, 19-10-2023 Quatt 2*4, T6 1e seizoen nu Tado X; 2021:3000m3, 2022:2000m3, 2023:1200m3, 2024: <175m3 gas (incl SWW &koken)
Nou, het probleem is dat Google Home 'slim' is. Ik had een routine gemaakt die 'alles' heet en daar de de juiste devices in gezet. Op zich werkte dat. Maar ja, dan zegt iemand 'alle apparaten uit' of mijn Engelse schoondochter 'all devices off' en dan doet Google zijn slimmigheid weer en heb ik het probleem weer terug.TeslaNerd schreef op dinsdag 19 maart 2024 @ 09:13:
Wat gebeurt er als je de naam van de kamer in google aanpast naar “alles”?
Dus de meest logische oplossing leek mij dat je in Google Home devices kunt uitsluiten van bediening. Maar dat kan ik Google Home niet vinden. En met HA Tuya aansturing moet Smart Life de WCD's kennen en dan leert Google Home ze ook. Dus dat was geen oplossing.
Dus ik ga donderdag met een mix testen:
- local Tuya voor HA automation voor alle Tuya devices dus inclusief licht aan/uit routines.
- gesproken opdrachten via Google Home en Smart Life voor Tuya devices die ik alleen in Smart Life (vooral verlichting) bekend maak.
Een deel van de devices (vooral verlichting) zal dus door beiden moeten kunnen worden bediend.
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
/f/image/VOkGJgGZzc18yJoCo93LdmuQ.png?f=fotoalbum_large)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
| alias: >- ThermostaatHack voor pseudo waterbesturing op heatpump_hp1_temperaturewaterin van de Quatt. Check iedere minuut of de doeltemperatuur van de Honeywell omhoog of omlaag moet worden aangepast description: >- Thermostaat hack op Honeywell Round thermostaat via OTGateWay obv schema Netatmo thermostaat. Gebruik HEAT als kamertemperatuur omhoog moet naar doeltemperatuur Netatmo en gebruik KEEP_WARM als kamertemperatuur boven de Netatmo doeltemperatuur ligt. Gebruik een startverhoging gedurende 30 seconden zodat de thermostaat de warmtepomp direct aan zet trigger: - platform: time_pattern seconds: "1" condition: [] action: - variables: current_temp: "{{ states('sensor.heatpump_thermostat_room_temperature') | float }}" target_temp: "{{ state_attr('climate.woonkamer', 'temperature') | float }}" target_temp_keep_warm_start: "{{ min ( 20.5 , min ( current_temp + 0.25 , target_temp + 0.5 ) ) }}" target_temp_keep_warm: "{{ min ( 20 , min ( current_temp + 0.0 , target_temp + 0.0 ) ) }}" target_temp_heat_start: "{{ min ( 20.5 , min ( current_temp + 0.75 , target_temp + 0.5 ) ) }}" target_temp_heat: "{{ min ( 20 , min ( current_temp + 0.25 , target_temp + 0.5 ) ) }}" water_in: >- {{ states('sensor.buitentemperatuurafhankelijke_maximale_watertemperatuur') | float }} water_temp_plus_t: "{{ states('sensor.heatpump_hp1_temperaturewaterin') | float + 1 }}" - if: - condition: numeric_state alias: >- Verhoog actietimer tbv HEAT met 1 minuut als opwarmsnelheid lager dan 0.2 graden Celsius per uur en reset naar 0 als opwarmsnelheid er weer boven komt entity_id: sensor.filtered_opwarmsnelheid below: 0.2 then: service: counter.increment entity_id: counter.aktietimer_heat else: service: counter.reset entity_id: counter.aktietimer_heat - if: - condition: numeric_state alias: >- Verhoog actietimer tbv KEEP_WARM met 1 minuut als opwarmsnelheid lager dan 0 graden Celsius per uur en reset naar 0 minuten als opwarmsnelheid er weer boven komt entity_id: sensor.filtered_opwarmsnelheid below: 0 then: service: counter.increment entity_id: counter.aktietimer_keep_warm else: service: counter.reset entity_id: counter.aktietimer_keep_warm - if: - condition: state entity_id: binary_sensor.heatpump_thermostat_heating state: "on" - condition: numeric_state alias: >- Zet Honeywell 1 graad lager als QuattwaterIn boven maximale watertemperatuur zodat thermostaat de warmtepomp uit zet en reset daarna de aktietimers voor HEAT en KEEP_WARM entity_id: sensor.heatpump_hp1_temperaturewaterin above: sensor.buitentemperatuurafhankelijke_maximale_watertemperatuur then: - service: climate.set_temperature data: temperature: "{{ current_temp - 1.0 }}" target: entity_id: climate.honeywell - service: counter.reset target: entity_id: - counter.aktietimer_heat - counter.aktietimer_keep_warm data: {} else: - if: - condition: template alias: >- Kamertemperatuur lager dan target + 0.05 dan doe HEAT anders doe KEEP_WARM value_template: "{{ current_temp < target_temp + 0.05 }}" then: - if: - condition: template alias: >- Als maximale buitentemperatuur minimaal t graden boven de actuele Quatt watertemperatuur value_template: "{{ water_in > water_temp_plus_t }}" - condition: numeric_state alias: >- start de warmtepomp als aktietimer voor HEAT boven de 10 minuten komt. Start met een extra verhoging gedurende 30 seconden en reset daarna de aktietimers HEAT en KEEP_WARM entity_id: counter.aktietimer_heat above: 10 then: - service: climate.set_temperature data: temperature: "{{ target_temp_heat_start }}" target: entity_id: climate.honeywell - delay: "00:00:30" - service: climate.set_temperature data: temperature: "{{ target_temp_heat }}" target: entity_id: climate.honeywell - service: counter.reset target: entity_id: - counter.aktietimer_heat - counter.aktietimer_keep_warm data: {} else: - if: - condition: template alias: >- Als maximale buitentemperatuur minimaal t graden boven de actuele Quatt watertemperatuur value_template: "{{ water_in > water_temp_plus_t }}" - condition: numeric_state alias: >- start de warmtepomp als aktietimer voor KEEP_WARM boven de 10 minuten komt. Start met een extra verhoging gedurende 30 seconden en reset daarna de aktietimers HEAT en KEEP_WARM entity_id: counter.aktietimer_keep_warm above: 10 then: - service: climate.set_temperature data: temperature: "{{ target_temp_keep_warm_start }}" target: entity_id: climate.honeywell - delay: "00:00:30" - service: climate.set_temperature data: temperature: "{{ target_temp_keep_warm }}" target: entity_id: climate.honeywell - service: counter.reset target: entity_id: - counter.aktietimer_heat - counter.aktietimer_keep_warm data: {} mode: single |
De Buitentemperatuurafhankelijke maximale watertemperatuur zit in een HA-Helper. De maximale waarde heb ik, voorlopig, aangepast naar 50 graden bij -10. Bij een volgende vorstperiode mogelijk nog aan te passen.
1
| {{ max (0 , 40 - states("sensor.heatpump_hp1_temperatureoutside") | float ) }} |
de tellers counter.aktietime_heat en counter.aktietimer_keep_warm heb ik ook als Helpers in HA aangemaakt
[ Voor 55% gewijzigd door TeslaNerd op 04-04-2024 00:15 ]
120m2 bovenwoning met 6 radiatoren en vvw in de badkamer. Intergas HRE 36/30A met Honeywell Round Modulation en Quatt hybrid op het dak van de dakkapel
Ik had hetzelfde probleem en heb ik Smartlife/Tuya een extra huis aangemaakt en oa de CiC smartplug verlaatst naar deze omgeving.Flesym schreef op maandag 18 maart 2024 @ 21:16:
...- mijn guest netwerk opofferen en deze gebruiken om 'een ander huis' te maken. Maar op deze manier splitsen tussen HA en Google Home gaat niet eenvoudig zijn.
...
Hoe zouden jullie dit oplossen?
Voor mij is het probleem hiermee opgelost.
Bedankt, inderdaad goed idee. Ik had dat wel in Google Home geprobeerd maar dat werkte niet. Maar even een vraag, voor zover ik kan zien kan ik geen tweede huis in de app maken. Heb je daarvoor een tweede E-mail adres gebruikt?MMBD schreef op maandag 25 maart 2024 @ 09:44:
[...]
Ik had hetzelfde probleem en heb ik Smartlife/Tuya een extra huis aangemaakt en oa de CiC smartplug verlaatst naar deze omgeving.
Voor mij is het probleem hiermee opgelost.
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
In Tuya klik je linksboven op de home selector en kies dan Home-beheer.Flesym schreef op maandag 25 maart 2024 @ 20:37:
[...]
Bedankt, inderdaad goed idee. Ik had dat wel in Google Home geprobeerd maar dat werkte niet. Maar even een vraag, voor zover ik kan zien kan ik geen tweede huis in de app maken. Heb je daarvoor een tweede E-mail adres gebruikt?
Kies vervolgens de optie Families toevoegen (wat vreemde terminologie idd).
Na het aanmaken kun je op het hoofdscherm, linksboven heel makkelijk van home wisselen.
Bedankt, inderdaad onlogische naam. Maar probleem is hiermee niet opgelost. Het lijkt erop dat Google Home via Smart Life gewoon beide huizen aanleert. Dus Google Home bedient nog steeds alle Smart WCD's in beide huizen en alles uit is dus nog steeds alles.MMBD schreef op donderdag 28 maart 2024 @ 21:37:
[...]
In Tuya klik je linksboven op de home selector en kies dan Home-beheer.
Kies vervolgens de optie Families toevoegen (wat vreemde terminologie idd).
Na het aanmaken kun je op het hoofdscherm, linksboven heel makkelijk van home wisselen.
En in HA zijn de Smart WCD's inderdaad niet meer zichtbaar. Dus dit werkt dus precies verkeerd om.
[ Voor 7% gewijzigd door Flesym op 30-03-2024 11:13 ]
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
@medu80 en @rt0801 Ik lees toevallig deze post en misschien een achterhaalde opmerking: ik lees in de QuickstartGuide van Quatt dat de Quatt ook mbv het controlSetpoint geregeld kan worden...medu80 schreef op woensdag 27 december 2023 @ 17:56:
[...]
Dan weet ik genoeg. De Quatt werkt namelijk op setpoint en actuele kamertemperatuur. Dit is dus ongeschikt voor gebruik met de Quatt.
Dit wetende: is er al verder geexperimenteerd met SAT icm de Quatt?De CiC gebruikt de gevraagde watertemperatuur vanuit de thermostaat alleen als de thermostaat geen kamertemperatuuren/of setpunt doorstuurt.Dit komt voor bij systemen zoals het Honeywell EvoHome-zonesysteem en bij de Google Nest-thermostaat. In deze gevallen gebruikt de CiC de gevraagde watertemperatuur om in te schatten hoeveel warmte er nodig is.
NH, vrijstaand huis 70m2 bg vvw/40m2 boven radiatoren, Gas 2023:1500m3, 2024:200m3, Quatt 4kw, TS:DIY-Arduino, 6400 Wp panelen/SolarEdge.
Flow indicatie nog eens..Lasoul schreef op donderdag 8 februari 2024 @ 17:32:
Sinds de CiC 2.10 update ook hier het probleem dat de CiC webserver na verloop van tijd vastloopt en de json pagina niet meer teruggeeft. Ik heb er een zigbee schakelaar tussen gezet zodat ik hem (automatisch) kan herstarten.
Is er al zicht op een structurele oplossing? Ik heb Quatt al gevraagd of ik terug kan naar de vorige versie.
Sinds de 2.10 update heb ik geen flow indicatie meer. Inmiddels op versie 2.14.2.
Alles werkt prima, krijg alle waarden keurig binnen, alleen de flow niet (unavailable). Ik kan de flow wel zien op de JSON pagina.
Iemand een idee waar dat aan kan liggen?
Heeft de sensor de goede naam? Die hebben ze een tijd geleden van naam veranderd.patrickvdhart schreef op vrijdag 5 april 2024 @ 14:11:
[...]
Flow indicatie nog eens..
Sinds de 2.10 update heb ik geen flow indicatie meer. Inmiddels op versie 2.14.2.
Alles werkt prima, krijg alle waarden keurig binnen, alleen de flow niet (unavailable). Ik kan de flow wel zien op de JSON pagina.
Iemand een idee waar dat aan kan liggen?
Dank voor je snelle reactie. Volgens mij wel, dit is het stukje uit de Quatt codeRowwan schreef op vrijdag 5 april 2024 @ 15:11:
[...]
Heeft de sensor de goede naam? Die hebben ze een tijd geleden van naam veranderd.
1
2
3
4
5
6
| SensorEntityDescription( name="FlowMeter flowRate", key="qc.flowRateFiltered", icon="mdi:gauge", native_unit_of_measurement="l/h", suggested_display_precision=0, |
Dus qc.flowRateFiltered, dat is hetzelfde als op de Json pagina. Of mis ik hier iets?
Ik mis iets.... je zet me op het goede spoor. De link name is hetzelfde maar de naam in HA is nu anders. Heb hem gevonden en opgelost.
Dank :-)
[ Voor 10% gewijzigd door patrickvdhart op 05-04-2024 15:34 ]
Wat ik wil is een simpele thermostaat die op basis van room temperature (dus niet setpoint) samenwerkt met de Quatt.
De documentatie van DIYLESS is erg summier maar wat ik begrijp is dat is voor 30 euro een Xiaomi Mijia thermometer krijg voor in de kamer (geen idee hoe die gevoed wordt) die via bluetooth werkt met de WeMos D1 Mini ESP32 en de ESP8266/ESP32 Thermostat Shield die vervolgens op basis van OpenTherm aan de CIC wordt gekoppeld.
Mijn vragen zijn:
- heb ik de setup goed begrepen of mis ik nog iets?
- krijg is hiermee inderdaad een thermostaat die op basis van room temperature kan worden ingesteld? Op zich werkt dit bij mij goed en werkt sturing op basis van setpoint minder goed.
- werkt dit out-of-the-box (alleen configureren) of moet je de DIYLESS eerst programmeren? Dit laatste is misschien leuk voor later om mee te spelen maar voor nu wil ik gewoon een thermostaat die probleemloos werkt.
- zijn er bij jullie dingen bekend waar ik mee rekening moet houden? Tot nu toe heb ik bij alle thermostaten wel problemen ervaren en hoop dat dat bij de DIYLESS wel goed zit (en mochten op termijn wel problemen zijn dat ik ze softwarematig kan proberen op te lossen).
Bedankt voor jullie input.
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
ik denk dat je de setup goed begrepen hebt. ikzelf gebruik de DIYless thermostat shield. daar zit een D1 mini op geklikt. de voeding gaat via een usb adapter op de D1 mini en op de shield kunnen de 2 draden van de OT naar de CiC. en als sensor gebruik ik een BME680 die de data via MQTT naar de thermostat shield stuurt. de bediening gaat via een thermostaat in Home assistant, dit wordt weergegeven op een tablet die ik aan de muur gemonteert heb. ik heb hier eerder al wel afbeeldingen van gedeeld dus als je die wil zien, zoek even op mijn naam.. de firmware die je via DIYles kunt downloaden werkte bij mij niet met de Quatt omdat de waardes doorgegeven werden. set boiler en boiler temp terwijl de Quatt TrSet en Tr (room temp set en room temp) verwacht.. dus dat is nog veranderd in mijn firmware. verder werkt het heel goed en zonder problemen. ik heb nog wel een automation toegevoegd dat wanneer de room temp 0,2 graden onder de set temp komt, dat de thermostaat even 0,5 graden hoger gezet wordt en dan weer terug gaat om de Quatt weer even aan te slingeren. dit gedrag komt uit de Quatt zelf aangezien ik van meerdere mensen dit zelfde gedrag gehoord heb terwijl we allemaal andere thermostaten gebruikten.. voorbeelden van zo'n automation (van anderen en mij) kun je ook in dit topic vinden.Flesym schreef op zaterdag 6 april 2024 @ 20:23:
Even een vraag over de DIYLESS thermostaat omdat ik het gedoe met de thermostaten wel zat ben. Evohome werkt niet met radiatoren, T6 vond ik een onding, Comfort Touch werkte prima maar werkt sinds CIC versie 2.13 niet meer, DT4M geeft weer nieuwe problemen (hangen, bouncen, enz.).
Wat ik wil is een simpele thermostaat die op basis van room temperature (dus niet setpoint) samenwerkt met de Quatt.
De documentatie van DIYLESS is erg summier maar wat ik begrijp is dat is voor 30 euro een Xiaomi Mijia thermometer krijg voor in de kamer (geen idee hoe die gevoed wordt) die via bluetooth werkt met de WeMos D1 Mini ESP32 en de ESP8266/ESP32 Thermostat Shield die vervolgens op basis van OpenTherm aan de CIC wordt gekoppeld.
Mijn vragen zijn:
- heb ik de setup goed begrepen of mis ik nog iets?
- krijg is hiermee inderdaad een thermostaat die op basis van room temperature kan worden ingesteld? Op zich werkt dit bij mij goed en werkt sturing op basis van setpoint minder goed.
- werkt dit out-of-the-box (alleen configureren) of moet je de DIYLESS eerst programmeren? Dit laatste is misschien leuk voor later om mee te spelen maar voor nu wil ik gewoon een thermostaat die probleemloos werkt.
- zijn er bij jullie dingen bekend waar ik mee rekening moet houden? Tot nu toe heb ik bij alle thermostaten wel problemen ervaren en hoop dat dat bij de DIYLESS wel goed zit (en mochten op termijn wel problemen zijn dat ik ze softwarematig kan proberen op te lossen).
Bedankt voor jullie input.
Bedankt voor je snelle reactie. Vier vraagjes nogJazekerXX schreef op zaterdag 6 april 2024 @ 21:18:
[...]
ik denk dat je de setup goed begrepen hebt. ikzelf gebruik de DIYless thermostat shield. daar zit een D1 mini op geklikt. de voeding gaat via een usb adapter op de D1 mini en op de shield kunnen de 2 draden van de OT naar de CiC. en als sensor gebruik ik een BME680 die de data via MQTT naar de thermostat shield stuurt. de bediening gaat via een thermostaat in Home assistant, dit wordt weergegeven op een tablet die ik aan de muur gemonteert heb. ik heb hier eerder al wel afbeeldingen van gedeeld dus als je die wil zien, zoek even op mijn naam.. de firmware die je via DIYles kunt downloaden werkte bij mij niet met de Quatt omdat de waardes doorgegeven werden. set boiler en boiler temp terwijl de Quatt TrSet en Tr (room temp set en room temp) verwacht.. dus dat is nog veranderd in mijn firmware. verder werkt het heel goed en zonder problemen. ik heb nog wel een automation toegevoegd dat wanneer de room temp 0,2 graden onder de set temp komt, dat de thermostaat even 0,5 graden hoger gezet wordt en dan weer terug gaat om de Quatt weer even aan te slingeren. dit gedrag komt uit de Quatt zelf aangezien ik van meerdere mensen dit zelfde gedrag gehoord heb terwijl we allemaal andere thermostaten gebruikten.. voorbeelden van zo'n automation (van anderen en mij) kun je ook in dit topic vinden.
- hoe moeilijk is het om firmware te downloaden?
- hoe moeilijk is het om de aanpassingen die jij gemaakt hebt te doen?
- kan ik hem inderdaad met room temperature laten werken? Ik begrijp dat jij setpoint gebruikt
- is er goede documentatie beschikbaar hoe eea te doen is?
Ik heb namelijk geen software achtergrond dus eea moet wel simpel uit te voeren zijn.
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
het is niet moeilijk om zo'n D1 mini te programmeren, dat gaat het makkelijkste met de arduino ide software. maar als je dat nog nooit gedaan hebt zul je eerst wat filmpjes moeten kijken hoe het werkt.Flesym schreef op zaterdag 6 april 2024 @ 21:37:
[...]
Bedankt voor je snelle reactie. Vier vraagjes nog
- hoe moeilijk is het om firmware te downloaden?
- hoe moeilijk is het om de aanpassingen die jij gemaakt hebt te doen?
- kan ik hem inderdaad met room temperature laten werken? Ik begrijp dat jij setpoint gebruikt
- is er goede documentatie beschikbaar hoe eea te doen is?
Ik heb namelijk geen software achtergrond dus eea moet wel simpel uit te voeren zijn.
de firmware zelf aanpassen is wat moeilijker als je geen programmeer ervaring hebt. maar goed, vaak ben je te bang hè. gewoon aan beginnen en veel opzoeken met google en niet stoppen tot het gelukt is. dan kun je alles!
ik zal mijn code hier delen, het enige is dat die met een MQTT sensor werkt..
dit is dus de code die je met de arduino ide in de Wemos D1 mini kunt zetten.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
| #include <ESP8266WiFi.h> #include <OneWire.h> #include <DallasTemperature.h> #include <PubSubClient.h> #include <OpenTherm.h> // Your WiFi credentials. // Set password to "" for open networks. const char* ssid = "jouw gegevens"; const char* pass = "jouw gegevens"; // Your MQTT broker address and credentials const char* mqtt_server = "jouw gegevens"; const char* mqtt_user = "jouw gegevens"; const char* mqtt_password = "jouw gegevens"; const int mqtt_port = jouw gegevens; // Master OpenTherm Shield pins configuration const int OT_IN_PIN = 4; //for Arduino, 4 for ESP8266 (D2), 21 for ESP32 const int OT_OUT_PIN = 5; //for Arduino, 5 for ESP8266 (D1), 22 for ESP32 // Temperature sensor pin const int ROOM_TEMP_SENSOR_PIN = 14; //for Arduino, 14 for ESP8266 (D5), 18 for ESP32 // MQTT topics const char* CURRENT_TEMP_GET_TOPIC = "opentherm-thermostat/current-temperature/get"; const char* CURRENT_TEMP_SET_TOPIC = "opentherm-thermostat/current-temperature/set"; const char* TEMP_SETPOINT_GET_TOPIC = "opentherm-thermostat/setpoint-temperature/get"; const char* TEMP_SETPOINT_SET_TOPIC = "opentherm-thermostat/setpoint-temperature/set"; const char* TEMP_ROOM_GET_TOPIC = "opentherm-thermostat/room-temperature/get"; const char* TEMP_ROOM_SET_TOPIC = "opentherm-thermostat/room-temperature/set"; const char* MODE_GET_TOPIC = "opentherm-thermostat/mode/get"; const char* MODE_SET_TOPIC = "opentherm-thermostat/mode/set"; const char* TEMP_BOILER_GET_TOPIC = "opentherm-thermostat/boiler-temperature/get"; //const char* TEMP_BOILER_TARGET_GET_TOPIC = "opentherm-thermostat/boiler-target-temperature/get"; const unsigned long extTempTimeout_ms = 60 * 1000; const unsigned long statusUpdateInterval_ms = 1000; float sp = 18, //set point t = 15, //current temperature rt = 15, //room temperature t_last = 0, //prior temperature ierr = 25, //integral error dt = 0, //time between measurements op = 0; //PID controller output unsigned long ts = 0, new_ts = 0; //timestamp unsigned long lastUpdate = 0; unsigned long lastTempSet = 0; bool heatingEnabled = true; #define MSG_BUFFER_SIZE (50) char msg[MSG_BUFFER_SIZE]; OneWire oneWire(ROOM_TEMP_SENSOR_PIN); DallasTemperature sensors(&oneWire); OpenTherm ot(OT_IN_PIN, OT_OUT_PIN); WiFiClient espClient; PubSubClient client(espClient); void ICACHE_RAM_ATTR handleInterrupt() { ot.handleInterrupt(); } float getTemp() { unsigned long now = millis(); if (now - lastTempSet > extTempTimeout_ms) return sensors.getTempCByIndex(0); else return t; } /* float pid(float sp, float pv, float pv_last, float& ierr, float dt) { float KP = 10; float KI = 0.02; // upper and lower bounds on heater level float ophi = 63; float oplo = 20; // calculate the error float error = sp - pv; // calculate the integral error ierr = ierr + KI * error * dt; // calculate the measurement derivative //float dpv = (pv - pv_last) / dt; // calculate the PID output float P = KP * error; //proportional contribution float I = ierr; //integral contribution float op = P + I; // implement anti-reset windup if ((op < oplo) || (op > ophi)) { I = I - KI * error * dt; // clip output op = max(oplo, min(ophi, op)); } ierr = I; Serial.println("sp=" + String(sp) + " pv=" + String(pv) + " dt=" + String(dt) + " op=" + String(op) + " P=" + String(P) + " I=" + String(I)); return op; } */ // This function calculates temperature and sends data to MQTT every second. void updateData() { //Set/Get Boiler Status bool enableHotWater = true; bool enableCooling = false; unsigned long response = ot.setBoilerStatus(heatingEnabled, enableHotWater, enableCooling); OpenThermResponseStatus responseStatus = ot.getLastResponseStatus(); if (responseStatus != OpenThermResponseStatus::SUCCESS) { Serial.println("Error: Invalid boiler response " + String(response, HEX)); } t = getTemp(); new_ts = millis(); dt = (new_ts - ts) / 1000.0; ts = new_ts; if (responseStatus == OpenThermResponseStatus::SUCCESS) { // op = pid(sp, t, t_last, ierr, dt); ot.setBoilerTemperature(sp); unsigned int data; unsigned long response2; bool res1; data = ot.temperatureToData(rt); response2 = ot.sendRequest(ot.buildRequest(OpenThermMessageType::WRITE_DATA, OpenThermMessageID::Tr, data)); res1 = ot.isValidResponse(response2); if (!res1) { Serial.println("Error: Set Room Temperature " + String(response2, HEX)); } data = ot.temperatureToData(sp); response2 = ot.sendRequest(ot.buildRequest(OpenThermMessageType::WRITE_DATA, OpenThermMessageID::TrSet, data)); res1 = ot.isValidResponse(response2); if (!res1) { Serial.println("Error: Set Target Room Temperature " + String(response2, HEX)); } Serial.println("sp=" + String(sp) + " rt=" + String(rt)); } t_last = t; sensors.requestTemperatures(); //async temperature request //snprintf (msg, MSG_BUFFER_SIZE, "%s", String(op).c_str()); //client.publish(TEMP_BOILER_TARGET_GET_TOPIC, msg); snprintf (msg, MSG_BUFFER_SIZE, "%s", String(rt).c_str()); client.publish(TEMP_ROOM_GET_TOPIC, msg); snprintf (msg, MSG_BUFFER_SIZE, "%s", String(t).c_str()); client.publish(CURRENT_TEMP_GET_TOPIC, msg); float bt = ot.getBoilerTemperature(); snprintf (msg, MSG_BUFFER_SIZE, "%s", String(bt).c_str()); client.publish(TEMP_BOILER_GET_TOPIC, msg); snprintf (msg, MSG_BUFFER_SIZE, "%s", String(sp).c_str()); client.publish(TEMP_SETPOINT_GET_TOPIC, msg); snprintf (msg, MSG_BUFFER_SIZE, "%s", heatingEnabled ? "heat" : "off"); client.publish(MODE_GET_TOPIC, msg); Serial.print("Current temperature: " + String(t) + " °C "); String tempSource = (millis() - lastTempSet > extTempTimeout_ms) ? "(internal sensor)" : "(external sensor)"; Serial.println(tempSource); } String convertPayloadToStr(byte* payload, unsigned int length) { char s[length + 1]; s[length] = 0; for (int i = 0; i < length; ++i) s[i] = payload[i]; String tempRequestStr(s); return tempRequestStr; } const String setpointSetTopic(TEMP_SETPOINT_SET_TOPIC); const String roomSetTopic(TEMP_ROOM_SET_TOPIC); const String currentTempSetTopic(CURRENT_TEMP_SET_TOPIC); const String modeSetTopic(MODE_SET_TOPIC); void callback(char* topic, byte* payload, unsigned int length) { const String topicStr(topic); String payloadStr = convertPayloadToStr(payload, length); if (topicStr == setpointSetTopic) { Serial.println("Set target temperature: " + payloadStr); sp = payloadStr.toFloat(); } else if (topicStr == roomSetTopic) { Serial.println("Set room temperature: " + payloadStr); rt = payloadStr.toFloat(); } else if (topicStr == currentTempSetTopic) { t = payloadStr.toFloat(); lastTempSet = millis(); } else if (topicStr == modeSetTopic) { Serial.println("Set mode: " + payloadStr); if (payloadStr == "heat") heatingEnabled = true; else if (payloadStr == "off") heatingEnabled = false; else Serial.println("Unknown mode"); } } void reconnect() { // Loop until we're reconnected while (!client.connected()) { Serial.print("Attempting MQTT connection..."); const char* clientId = "opentherm-thermostat-test"; if (client.connect(clientId, mqtt_user, mqtt_password)) { Serial.println("ok"); client.subscribe(TEMP_SETPOINT_SET_TOPIC); client.subscribe(TEMP_ROOM_SET_TOPIC); client.subscribe(MODE_SET_TOPIC); client.subscribe(CURRENT_TEMP_SET_TOPIC); } else { Serial.print(" failed, rc="); Serial.print(client.state()); Serial.println(" try again in 5 seconds"); // Wait 5 seconds before retrying delay(5000); } } } void setup() { Serial.begin(115200); Serial.println("Connecting to " + String(ssid)); WiFi.mode(WIFI_STA); WiFi.begin(ssid, pass); int deadCounter = 20; while (WiFi.status() != WL_CONNECTED && deadCounter-- > 0) { delay(500); Serial.print("."); } if (WiFi.status() != WL_CONNECTED) { Serial.println("Failed to connect to " + String(ssid)); while (true); } else { Serial.println("ok"); } client.setServer(mqtt_server, mqtt_port); client.setCallback(callback); ot.begin(handleInterrupt); //Init DS18B20 sensor sensors.begin(); sensors.requestTemperatures(); sensors.setWaitForConversion(false); //switch to async mode t, t_last = sensors.getTempCByIndex(0); ts = millis(); lastTempSet = -extTempTimeout_ms; } void loop() { if (!client.connected()) { reconnect(); } client.loop(); unsigned long now = millis(); if (now - lastUpdate > statusUpdateInterval_ms) { lastUpdate = now; updateData(); } } |
nou succes en vergeet niet om google te gebruiken
Dank je, ik ga me inlezen en indien ik het een beetje begrijp mee beginnen, wordt een leuk voorjaarsproject.JazekerXX schreef op zondag 7 april 2024 @ 17:39:
[...]
het is niet moeilijk om zo'n D1 mini te programmeren, dat gaat het makkelijkste met de arduino ide software. maar als je dat nog nooit gedaan hebt zul je eerst wat filmpjes moeten kijken hoe het werkt.
de firmware zelf aanpassen is wat moeilijker als je geen programmeer ervaring hebt. maar goed, vaak ben je te bang hè. gewoon aan beginnen en veel opzoeken met google en niet stoppen tot het gelukt is. dan kun je alles!
ik zal mijn code hier delen, het enige is dat die met een MQTT sensor werkt..
dit is dus de code die je met de arduino ide in de Wemos D1 mini kunt zetten.
code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 #include <ESP8266WiFi.h> #include <OneWire.h> #include <DallasTemperature.h> #include <PubSubClient.h> #include <OpenTherm.h> // Your WiFi credentials. // Set password to "" for open networks. const char* ssid = "jouw gegevens"; const char* pass = "jouw gegevens"; // Your MQTT broker address and credentials const char* mqtt_server = "jouw gegevens"; const char* mqtt_user = "jouw gegevens"; const char* mqtt_password = "jouw gegevens"; const int mqtt_port = jouw gegevens; // Master OpenTherm Shield pins configuration const int OT_IN_PIN = 4; //for Arduino, 4 for ESP8266 (D2), 21 for ESP32 const int OT_OUT_PIN = 5; //for Arduino, 5 for ESP8266 (D1), 22 for ESP32 // Temperature sensor pin const int ROOM_TEMP_SENSOR_PIN = 14; //for Arduino, 14 for ESP8266 (D5), 18 for ESP32 // MQTT topics const char* CURRENT_TEMP_GET_TOPIC = "opentherm-thermostat/current-temperature/get"; const char* CURRENT_TEMP_SET_TOPIC = "opentherm-thermostat/current-temperature/set"; const char* TEMP_SETPOINT_GET_TOPIC = "opentherm-thermostat/setpoint-temperature/get"; const char* TEMP_SETPOINT_SET_TOPIC = "opentherm-thermostat/setpoint-temperature/set"; const char* TEMP_ROOM_GET_TOPIC = "opentherm-thermostat/room-temperature/get"; const char* TEMP_ROOM_SET_TOPIC = "opentherm-thermostat/room-temperature/set"; const char* MODE_GET_TOPIC = "opentherm-thermostat/mode/get"; const char* MODE_SET_TOPIC = "opentherm-thermostat/mode/set"; const char* TEMP_BOILER_GET_TOPIC = "opentherm-thermostat/boiler-temperature/get"; //const char* TEMP_BOILER_TARGET_GET_TOPIC = "opentherm-thermostat/boiler-target-temperature/get"; const unsigned long extTempTimeout_ms = 60 * 1000; const unsigned long statusUpdateInterval_ms = 1000; float sp = 18, //set point t = 15, //current temperature rt = 15, //room temperature t_last = 0, //prior temperature ierr = 25, //integral error dt = 0, //time between measurements op = 0; //PID controller output unsigned long ts = 0, new_ts = 0; //timestamp unsigned long lastUpdate = 0; unsigned long lastTempSet = 0; bool heatingEnabled = true; #define MSG_BUFFER_SIZE (50) char msg[MSG_BUFFER_SIZE]; OneWire oneWire(ROOM_TEMP_SENSOR_PIN); DallasTemperature sensors(&oneWire); OpenTherm ot(OT_IN_PIN, OT_OUT_PIN); WiFiClient espClient; PubSubClient client(espClient); void ICACHE_RAM_ATTR handleInterrupt() { ot.handleInterrupt(); } float getTemp() { unsigned long now = millis(); if (now - lastTempSet > extTempTimeout_ms) return sensors.getTempCByIndex(0); else return t; } /* float pid(float sp, float pv, float pv_last, float& ierr, float dt) { float KP = 10; float KI = 0.02; // upper and lower bounds on heater level float ophi = 63; float oplo = 20; // calculate the error float error = sp - pv; // calculate the integral error ierr = ierr + KI * error * dt; // calculate the measurement derivative //float dpv = (pv - pv_last) / dt; // calculate the PID output float P = KP * error; //proportional contribution float I = ierr; //integral contribution float op = P + I; // implement anti-reset windup if ((op < oplo) || (op > ophi)) { I = I - KI * error * dt; // clip output op = max(oplo, min(ophi, op)); } ierr = I; Serial.println("sp=" + String(sp) + " pv=" + String(pv) + " dt=" + String(dt) + " op=" + String(op) + " P=" + String(P) + " I=" + String(I)); return op; } */ // This function calculates temperature and sends data to MQTT every second. void updateData() { //Set/Get Boiler Status bool enableHotWater = true; bool enableCooling = false; unsigned long response = ot.setBoilerStatus(heatingEnabled, enableHotWater, enableCooling); OpenThermResponseStatus responseStatus = ot.getLastResponseStatus(); if (responseStatus != OpenThermResponseStatus::SUCCESS) { Serial.println("Error: Invalid boiler response " + String(response, HEX)); } t = getTemp(); new_ts = millis(); dt = (new_ts - ts) / 1000.0; ts = new_ts; if (responseStatus == OpenThermResponseStatus::SUCCESS) { // op = pid(sp, t, t_last, ierr, dt); ot.setBoilerTemperature(sp); unsigned int data; unsigned long response2; bool res1; data = ot.temperatureToData(rt); response2 = ot.sendRequest(ot.buildRequest(OpenThermMessageType::WRITE_DATA, OpenThermMessageID::Tr, data)); res1 = ot.isValidResponse(response2); if (!res1) { Serial.println("Error: Set Room Temperature " + String(response2, HEX)); } data = ot.temperatureToData(sp); response2 = ot.sendRequest(ot.buildRequest(OpenThermMessageType::WRITE_DATA, OpenThermMessageID::TrSet, data)); res1 = ot.isValidResponse(response2); if (!res1) { Serial.println("Error: Set Target Room Temperature " + String(response2, HEX)); } Serial.println("sp=" + String(sp) + " rt=" + String(rt)); } t_last = t; sensors.requestTemperatures(); //async temperature request //snprintf (msg, MSG_BUFFER_SIZE, "%s", String(op).c_str()); //client.publish(TEMP_BOILER_TARGET_GET_TOPIC, msg); snprintf (msg, MSG_BUFFER_SIZE, "%s", String(rt).c_str()); client.publish(TEMP_ROOM_GET_TOPIC, msg); snprintf (msg, MSG_BUFFER_SIZE, "%s", String(t).c_str()); client.publish(CURRENT_TEMP_GET_TOPIC, msg); float bt = ot.getBoilerTemperature(); snprintf (msg, MSG_BUFFER_SIZE, "%s", String(bt).c_str()); client.publish(TEMP_BOILER_GET_TOPIC, msg); snprintf (msg, MSG_BUFFER_SIZE, "%s", String(sp).c_str()); client.publish(TEMP_SETPOINT_GET_TOPIC, msg); snprintf (msg, MSG_BUFFER_SIZE, "%s", heatingEnabled ? "heat" : "off"); client.publish(MODE_GET_TOPIC, msg); Serial.print("Current temperature: " + String(t) + " °C "); String tempSource = (millis() - lastTempSet > extTempTimeout_ms) ? "(internal sensor)" : "(external sensor)"; Serial.println(tempSource); } String convertPayloadToStr(byte* payload, unsigned int length) { char s[length + 1]; s[length] = 0; for (int i = 0; i < length; ++i) s[i] = payload[i]; String tempRequestStr(s); return tempRequestStr; } const String setpointSetTopic(TEMP_SETPOINT_SET_TOPIC); const String roomSetTopic(TEMP_ROOM_SET_TOPIC); const String currentTempSetTopic(CURRENT_TEMP_SET_TOPIC); const String modeSetTopic(MODE_SET_TOPIC); void callback(char* topic, byte* payload, unsigned int length) { const String topicStr(topic); String payloadStr = convertPayloadToStr(payload, length); if (topicStr == setpointSetTopic) { Serial.println("Set target temperature: " + payloadStr); sp = payloadStr.toFloat(); } else if (topicStr == roomSetTopic) { Serial.println("Set room temperature: " + payloadStr); rt = payloadStr.toFloat(); } else if (topicStr == currentTempSetTopic) { t = payloadStr.toFloat(); lastTempSet = millis(); } else if (topicStr == modeSetTopic) { Serial.println("Set mode: " + payloadStr); if (payloadStr == "heat") heatingEnabled = true; else if (payloadStr == "off") heatingEnabled = false; else Serial.println("Unknown mode"); } } void reconnect() { // Loop until we're reconnected while (!client.connected()) { Serial.print("Attempting MQTT connection..."); const char* clientId = "opentherm-thermostat-test"; if (client.connect(clientId, mqtt_user, mqtt_password)) { Serial.println("ok"); client.subscribe(TEMP_SETPOINT_SET_TOPIC); client.subscribe(TEMP_ROOM_SET_TOPIC); client.subscribe(MODE_SET_TOPIC); client.subscribe(CURRENT_TEMP_SET_TOPIC); } else { Serial.print(" failed, rc="); Serial.print(client.state()); Serial.println(" try again in 5 seconds"); // Wait 5 seconds before retrying delay(5000); } } } void setup() { Serial.begin(115200); Serial.println("Connecting to " + String(ssid)); WiFi.mode(WIFI_STA); WiFi.begin(ssid, pass); int deadCounter = 20; while (WiFi.status() != WL_CONNECTED && deadCounter-- > 0) { delay(500); Serial.print("."); } if (WiFi.status() != WL_CONNECTED) { Serial.println("Failed to connect to " + String(ssid)); while (true); } else { Serial.println("ok"); } client.setServer(mqtt_server, mqtt_port); client.setCallback(callback); ot.begin(handleInterrupt); //Init DS18B20 sensor sensors.begin(); sensors.requestTemperatures(); sensors.setWaitForConversion(false); //switch to async mode t, t_last = sensors.getTempCByIndex(0); ts = millis(); lastTempSet = -extTempTimeout_ms; } void loop() { if (!client.connected()) { reconnect(); } client.loop(); unsigned long now = millis(); if (now - lastUpdate > statusUpdateInterval_ms) { lastUpdate = now; updateData(); } }
nou succes en vergeet niet om google te gebruiken
Huis: 125 jaar oud, redelijk geisoleerd met hr++ glas. Verwarming: 1 hybrid Quatt WP, benedenverdieping 4 grote T22 radiatoren met heatboosters en 40 low speed fans. Elektra: 4kWp zonnepanelen, Marstek accu V.2 5,12kWh FW V1.53 BM V2.15 accu.
Ik ga jullie overleg zeker volgen, heb al enkele maanden de shield en al gesoldeerd en de eerse code erop gezet.JazekerXX schreef op zaterdag 6 april 2024 @ 21:18:
[...]
ik denk dat je de setup goed begrepen hebt. ikzelf gebruik de DIYless thermostat shield. daar zit een D1 mini op geklikt. de voeding gaat via een usb adapter op de D1 mini en op de shield kunnen de 2 draden van de OT naar de CiC. en als sensor gebruik ik een BME680 die de data via MQTT naar de thermostat shield stuurt. de bediening gaat via een thermostaat in Home assistant, dit wordt weergegeven op een tablet die ik aan de muur gemonteert heb. ik heb hier eerder al wel afbeeldingen van gedeeld dus als je die wil zien, zoek even op mijn naam.. de firmware die je via DIYles kunt downloaden werkte bij mij niet met de Quatt omdat de waardes doorgegeven werden. set boiler en boiler temp terwijl de Quatt TrSet en Tr (room temp set en room temp) verwacht.. dus dat is nog veranderd in mijn firmware. verder werkt het heel goed en zonder problemen. ik heb nog wel een automation toegevoegd dat wanneer de room temp 0,2 graden onder de set temp komt, dat de thermostaat even 0,5 graden hoger gezet wordt en dan weer terug gaat om de Quatt weer even aan te slingeren. dit gedrag komt uit de Quatt zelf aangezien ik van meerdere mensen dit zelfde gedrag gehoord heb terwijl we allemaal andere thermostaten gebruikten.. voorbeelden van zo'n automation (van anderen en mij) kun je ook in dit topic vinden.
Heb alleen weinig ervaring met Arduino code dus ik had de code nog niet aangepast en durfde ook niet in het winterseizoen het gevaar te lopen de warmtepomp vast te laten lopen. Nu het warmer is ga ik er mee verder.
Gebruiken jullie een setting om zelf de gevraagde water temperatuur te kunnen zetten?
Ik wil namelijk absoluut niet dat de CIC dat zelf bepaalt, die is helaas niet erg artificieel begaafd...
@JazekerXX Je sensor werkt met MQTT, is dat vergelijkbaar met mijn zigbee metingen die via Zigbee2MQTT binnenkomen, ant zo komen al mijn metingen binnen?
[ Voor 10% gewijzigd door patrickvdhart op 08-04-2024 17:32 ]
nou je hoeft niet bang te zijn dat de quatt vast loopt, of de thermostaat werkt of hij werkt niet. dus geen zorgen..patrickvdhart schreef op maandag 8 april 2024 @ 16:28:
[...]
Ik ga jullie overleg zeker volgen, heb al enkele maanden de shield en al gesoldeerd en de eerse code erop gezet.
Heb alleen weinig ervaring met Arduino code dus ik had de code nog niet aangepast en durfde ook niet in het winterseizoen het gevaar te lopen de warmtepomp vast te laten lopen. Nu het warmer is ga ik er mee verder.
Gebruiken jullie een setting om zelf de gevraagde water temperatuur te kunnen zetten?
Ik wil namelijk absoluut niet dat de CIC dat zelf bepaalt, die is helaas niet erg artificieel begaafd...
@JazekerXX Je sensor werkt met MQTT, is dat vergelijkbaar met mijn zigbee metingen die via Zigbee2MQTT binnenkomen, ant zo komen al mijn metingen binnen?
de arduino code laden is niet moeilijk en is eigenlijk maar een paar klikjes... nadat je de esp borden toegevoegd hebt (even google gebruiken) en de juiste libraries geïnstalleerd hebt (de includes die je in het begin van de code ziet en op .h eindigen dat zijn libraries. de meeste kun je via het menu->sketch->include libraries->library manager toevoegen. zo niet dan google/github..) dan bij tools->board de wemos d1 mini selecteren en bij tools->port de juiste com poort selecteren. en dan op de pijl upload klikken en klaar (de wemos d1 die ik heb hoef je niet met gpio 0 aan gnd op te starten, maar het kan dus bij sommige esp's nodig zijn wanneer je een timme out krijgt tijdens het uploaden)
wat betreft de aansturing: de Quatt kan op 2 manieren aangestuurd worden room temp set point en room temp (thermostat heating staat bij mij altijd aan, ik kreeg daar geen gewenste en stabiele reactie op) de andere manier (om dit om te zetten moet je Quatt helpdesk contacteren) is op basis van de water temp etc. blijkbaar werken sommige thermostaten daar mee. zie de handleiding van Quatt zelf voor meer info!
ik gebruik dus de eerste manier en dat werkt erg goed. de water temp zit bij mij meestal rond de 30-35 graden en toen het vroor ging het maar amper over de 40 graden. en ik heb alleen beneden vloerverwarming en boven gewoon ouderwetse radiatoren. ik wilde hier ventilatoren op maken omdat ik dacht dat de radiatoren anders niet toereikend zouden zijn, maar dat was dus niet eens nodig. de Quatt regelt de water temp trouwens aan de hand van de benodigde warmte en de water delta (oftewel afgegeven warmte) dus als de radiatoren niet voldoende afgeven dan verhoogt de Quatt dus de water temp tot de benodigde warmte afgifte behaald word. dus misschien staat waarde van warmte verlies bij -10 bij jou verkeerd ingesteld. dit kun je nergens zien volgens mij maar ik heb dat in het Quatt ervaringen topic hier op tweakers gelezen.. dus google even daar op of vraag na bij de helpdesk.. en laat ons uiteraard ook weten als je wat meer hier over weet..
MQTT: ik gebruik sensoren die verbonden zijn met wifi en MQTT. ik heb zelf geen zigbee apparaten dus doe hier een aaname.. zigbee is de manier van verbinden (bij mij wifi) en MQTT is het protocol. dus ondanks dat de techniek om te verbinden anders is lijkt me dat het hetzelfde werkt omdat het beide om MQTT gaat.
dus heb jij ook topics en command topics etc. net als in mijn code voorbeeld?..
edit: typo
Bedoelde je niet de tweede (de andere) manier? Dat begrijp ik nl uit de inleiding.JazekerXX schreef op maandag 8 april 2024 @ 21:13:
[...]
wat betreft de aansturing: de Quatt kan op 2 manieren aangestuurd worden room temp set point en room temp (thermostat heating staat bij mij altijd aan, ik kreeg daar geen gewenste en stabiele reactie op) de andere manier (om dit om te zetten moet je Quatt helpdesk contacteren) is op basis van de water temp etc. blijkbaar werken sommige thermostaten daar mee. zie de handleiding van Quatt zelf voor meer info!
ik gebruik dus de eerste manier en dat werkt erg goed.
Ik stuur nu ook op kamertemp en setpoint (resultaat: over- en undershoots) en heb Quatt aangevraagd om op watertemp-regeling over te stappen....
Ik ga daarvoor, als thermostaat, ook een esp8266-opentherminterface combinatie gebruiken.
NH, vrijstaand huis 70m2 bg vvw/40m2 boven radiatoren, Gas 2023:1500m3, 2024:200m3, Quatt 4kw, TS:DIY-Arduino, 6400 Wp panelen/SolarEdge.
misschien dat ik het niet duidelijk opgeschreven heb maar als ik wat woorden weg laat krijg je dit:Freeckje schreef op maandag 8 april 2024 @ 22:09:
[...]
Bedoelde je niet de tweede (de andere) manier? Dat begrijp ik nl uit de inleiding.
Ik stuur nu ook op kamertemp en setpoint (resultaat: over- en undershoots) en heb Quatt aangevraagd om op watertemp-regeling over te stappen....
Ik gebruik daarvoor als thermostaat ook een esp opentherminterface combinatie.
wat betreft de aansturing: de Quatt kan op 2 manieren aangestuurd worden
- room temp set point en room temp (ik gebruik deze manier)
- de andere manier is op basis van de water temp etc.
die over en undershoots zijn denk ik bedoeld om de efficiëntie te verhogen. dat is ook waar ze je voor waarschuwen dat de efficiëntie omlaag kan gaan bij een eigen aansturing. ik denk dat het idee is dat door de over/undershoots de Quatt dus langere runs kan maken en daardoor efficiënt kan werken met minder start/stops. ik denk ook dat het efficiëntie verlies van een eigen aansturing reuze meevalt, ik vind hun aansturing ook nog niet optimaal. daar is zeker nog veel winst te behalen, al werkt het nu al heel efficiënt. wat me wel opvalt is dat de Quatt op zijn langzaamst op ongeveer 290 Watt kan werken maar eigenlijk nooit zover terug zakt en al gauw op zo'n 340 Watt. dus dat is niet efficiënt als je langere runs wilt maken. en op dagen waarbij de Quatt meerdere start/stops per dag maakt verwacht je ook eigenlijk dat hij op zijn langzaamste zou draaien zodat hij langer draait en minder start stops hebt, het is dan onlogisch om hem harder dan zijn minimum te laten draaien..
de overshoots kan ik wel mee leven maar die undershoots kan echt niet vind ik, daarmee verlies je echt veel comfort en daarom heb ik een automation gemaakt die bij 0,2 onder de setpoint de thermostaat even 0,5 graad verhoogt waardoor de Quatt weer aan gaat..
welke hardware gebruik je voor de OT interface? ook de DIYless?
en heb jij ook dingen aan moeten passen om het werkend te krijgen (Tr en TrSet)?
Helder nuJazekerXX schreef op maandag 8 april 2024 @ 22:38:
[...]
misschien dat ik het niet duidelijk opgeschreven heb maar als ik wat woorden weg laat krijg je dit:
wat betreft de aansturing: de Quatt kan op 2 manieren aangestuurd worden
- room temp set point en room temp (ik gebruik deze manier)
- de andere manier is op basis van de water temp etc.
die over en undershoots zijn denk ik bedoeld om de efficiëntie te verhogen. dat is ook waar ze je voor waarschuwen dat de efficiëntie omlaag kan gaan bij een eigen aansturing. ik denk dat het idee is dat door de over/undershoots de Quatt dus langere runs kan maken en daardoor efficiënt kan werken met minder start/stops. ik denk ook dat het efficiëntie verlies van een eigen aansturing reuze meevalt, ik vind hun aansturing ook nog niet optimaal. daar is zeker nog veel winst te behalen, al werkt het nu al heel efficiënt. wat me wel opvalt is dat de Quatt op zijn langzaamst op ongeveer 290 Watt kan werken maar eigenlijk nooit zover terug zakt en al gauw op zo'n 340 Watt. dus dat is niet efficiënt als je langere runs wilt maken. en op dagen waarbij de Quatt meerdere start/stops per dag maakt verwacht je ook eigenlijk dat hij op zijn langzaamste zou draaien zodat hij langer draait en minder start stops hebt, het is dan onlogisch om hem harder dan zijn minimum te laten draaien..
de overshoots kan ik wel mee leven maar die undershoots kan echt niet vind ik, daarmee verlies je echt veel comfort en daarom heb ik een automation gemaakt die bij 0,2 onder de setpoint de thermostaat even 0,5 graad verhoogt waardoor de Quatt weer aan gaat..
welke hardware gebruik je voor de OT interface? ook de DIYless?
en heb jij ook dingen aan moeten passen om het werkend te krijgen (Tr en TrSet)?
Ik was gewend aan mijn stooklijn regeling met mijn gas-CV. Nu met de Quatt heb ik last van die under- en overshoots omdat dan na opwarmen de Quatt een lange tijd uitstaat, waardoor de radiatoren boven koud aanvoelen. Dus niet comfortabel. Vandaar dat ik nu wil uittesten of dat met watertempaansturing beter bevalt. BTW: tijdens de Quatt meeting vernam ik dat "de schade" van het regelmatig aan-en uitzetten van de compressor wel meevalt. Men noemde daar 5 tot 10 keer per uur acceptabel!!!
Ik gebruik de module van TheHogNL een broertje van de DIYless. En gebruik nu inderdaad ook Tr en Trset.
Zie tevens: https://gathering.tweaker...message/78630784#78630784
NH, vrijstaand huis 70m2 bg vvw/40m2 boven radiatoren, Gas 2023:1500m3, 2024:200m3, Quatt 4kw, TS:DIY-Arduino, 6400 Wp panelen/SolarEdge.
interessante link. dat topic waar dat in staat volg ik eigenlijk niet meer. daar worden zoveel berichten gestuurd dat ik er niet goed van wordt..Freeckje schreef op maandag 8 april 2024 @ 22:59:
[...]
Helder nu.
Ik was gewend aan mijn stooklijn regeling met mijn gas-CV. Nu met de Quatt heb ik last van die under- en overshoots omdat dan na opwarmen de Quatt een lange tijd uitstaat, waardoor de radiatoren boven koud aanvoelen. Dus niet comfortabel. Vandaar dat ik nu wil uittesten of dat met watertempaansturing beter bevalt. BTW: tijdens de Quatt meeting vernam ik dat "de schade" van het regelmatig aan-en uitzetten van de compressor wel meevalt. Men noemde daar 5 tot 10 keer per uur acceptabel!!!
Ik gebruik de module van TheHogNL een broertje van de DIYless. En gebruik nu inderdaad ook Tr en Trset.
Zie tevens: https://gathering.tweaker...message/78630784#78630784
de overshoots zijn bij mij meestal 0,5 graad max. dus dat valt wel mee.
in de handleiding staat wat geschreven over een andere thermostaat die op basis van water temp aansturing werkt, Quatt kan dat voor je omzetten.. ik had dat als backup plan, maar ben echt wel tevreden over hoe het werkt nu. maar idd continu de perfecte water temp is wel beter en ook efficiënter volgens mij.
voor mijn vloerverwarming had ik dat al gemaakt dmv het gemiddelde van de buiten temp over 24 uur (zodat de temp niet teveel omhoog of omlaag gaat) en dat gemiddelde wordt met een mapping functie omgezet naar de benodigde water temp (gewoon lineair dus)
bijv. bij gem. -20 buiten wordt de water temp 35 graden, en dan het andere punt
bij gem. +20 buiten temp wordt de water temp ook 20 graden
de mapping functie berekend dan zelf de tussenliggende waardes. dit werkt echt goed, het is dan alleen even uit testen welke waardes voor jou goed zijn uiteraard, wat je dus kunt zien aan het aantal start/stops en het minimale Wattage..
een hele simpele oplossing maar heel effectief. deze berekende waarde voor je water temp kun je natuurlijk ook voor je Quatt gebruiken..
het enige waar dit geen rekening mee houdt zijn externe warmte invloeden bijv. veel zon oid waardoor je soms teveel warmte hebt. maar goed zoals je al aangaf is het helemaal niet erg om wat start stops te hebben..
edit: extra info
[ Voor 6% gewijzigd door JazekerXX op 08-04-2024 23:43 ]
Mijn principe is ook KISSJazekerXX schreef op maandag 8 april 2024 @ 23:30:
[...]
interessante link. dat topic waar dat in staat volg ik eigenlijk niet meer. daar worden zoveel berichten gestuurd dat ik er niet goed van wordt..
in de handleiding staat wat geschreven over een andere thermostaat die op basis van water temp aansturing werkt, Quatt kan dat voor je omzetten.. ik had dat als backup plan, maar ben echt wel tevreden over hoe het werkt nu. maar idd continu de perfecte water temp is wel beter en ook efficiënter volgens mij.
voor mijn vloerverwarming had ik dat al gemaakt dmv het gemiddelde van de buiten temp over 24 uur (zodat de temp niet teveel omhoog of omlaag gaat) en dat gemiddelde wordt met een mapping functie omgezet naar de benodigde water temp (gewoon lineair dus)
bijv. bij gem. -20 buiten wordt de water temp 35 graden, en dan het andere punt
bij gem. +20 buiten temp wordt de water temp ook 20 graden
de mapping functie berekend dan zelf de tussenliggende waardes. dit werkt echt goed, het is dan alleen even uit testen welke waardes voor jou goed zijn uiteraard, wat je dus kunt zien aan het aantal start/stops en het minimale Wattage..
een hele simpele oplossing maar heel effectief. deze berekende waarde voor je water temp kun je natuurlijk ook voor je Quatt gebruiken..
Bovenstaande principe ga ik zeker uitproberen maar dan embedded in de esp8266. Tevens de software uitbreiden met een thermostaat-class om eea wat modulairder en leesbaarder te maken. Naast MQTT ook een webserver tbv een eenvoudige userinterface.
Wordt vervolgd.
NH, vrijstaand huis 70m2 bg vvw/40m2 boven radiatoren, Gas 2023:1500m3, 2024:200m3, Quatt 4kw, TS:DIY-Arduino, 6400 Wp panelen/SolarEdge.
Wat is KISS?Freeckje schreef op maandag 8 april 2024 @ 23:41:
[...]
Mijn principe is ook KISSen vermijd het gebruik van HA (mag ik hier wel posten?
).
Bovenstaande principe ga ik zeker uitproberen maar dan embedded in de esp8266. Tevens de software uitbreiden met een thermostaat-class om eea wat modulairder en leesbaarder te maken. Naast MQTT ook een webserver tbv een eenvoudige userinterface.
Wordt vervolgd.
mocht je een mapping sensor in HA willen maken zet dit in je config.yaml...
1
2
3
4
5
6
7
8
9
10
11
12
13
| ## mapping van values compensation: vloerverwarming_doeltemp_cv_only: # de sensor heet: sensor.compensation_sensor_gemiddelde_buiten_temperatuur_average_linear unique_id: vloerverwarming_doeltemp_cv_only source: sensor.Gemiddelde_buiten_temperatuur_average_linear unit_of_measurement: "°C" precision: 1 lower_limit: true upper_limit: true data_points: - [-20.0, 35.0] # bij -20 word het 35 - [20.0, 20.0] # bij +20 word het 20 |
de sensor.Gemiddelde_buiten_temperatuur_average_linear heb ik onder sensors aangemaakt, zet dit in die yaml
1
2
3
4
5
6
| - platform: statistics name: "Gemiddelde buiten temperatuur average linear" entity_id: sensor.buitentemperatuur_met_backup state_characteristic: average_linear max_age: hours: 24 |
een andere optie kan ook esphome zijn, daar kun je gebruik maken van lambda's (dat zijn gewoon template sensoren binnen esphome, dit draait dan lokaal op de esp wat ook heel mooi is natuurlijk)
maar zoals je al wel gemerkt hebt ben ik wel fan van HA. het werkt gewoon makkelijk en de weergave is zo mooi als je kunt bedenken. heel fijn dat het zo mooi aanpasbaar is aan ieders wensen.. hier in ieder geval wat opties
KISS: Keep it Simple, Stupid. Oftewel hou dingen binnen de mogelijkheden zo simpel mogelijk.JazekerXX schreef op dinsdag 9 april 2024 @ 00:05:
[...]
Wat is KISS?
een andere optie kan ook esphome zijn, daar kun je gebruik maken van lambda's (dat zijn gewoon template sensoren binnen esphome, dit draait dan lokaal op de esp wat ook heel mooi is natuurlijk)
maar zoals je al wel gemerkt hebt ben ik wel fan van HA. het werkt gewoon makkelijk en de weergave is zo mooi als je kunt bedenken. heel fijn dat het zo mooi aanpasbaar is aan ieders wensen.. hier in ieder geval wat opties
Wat betreft ESPHome, ben ik ook groot fan van en gebruik ik veel. Daarom baalde ik dat ik de shield niet via ESPHome kon aansturen.
Ben nu bezig zelfbouw radiator fans to bouwen met hulp van ESPhome waarbij ik ook de in en uit water temperatuur meet en doorstuur. Bijna klaar.
NH, vrijstaand huis 70m2 bg vvw/40m2 boven radiatoren, Gas 2023:1500m3, 2024:200m3, Quatt 4kw, TS:DIY-Arduino, 6400 Wp panelen/SolarEdge.