Nefit iRT protocol decoderen (voorloper van Nefit EMS bus)

Pagina: 1 2 Laatste
Acties:

Onderwerpen

Vraag


Acties:
  • +4 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik heb nog een oudere Nefit EcomLine HR cv ketel hangen. Waar ik graag alle informatie via MQTT wil publiceren. Zonder er al te veel over na te denken zo'n EMS Bus Gateway printje gekocht. Dat is stukje interface logica met een ESP8266 erop. Aangesloten, maar helaas dat werkte niet. Dan ga je verder zoeken, blijkt mijn CV ketel nog het oudere iRT protocol op de bus te gebruiken en geen EMS.

Nu ben ik niet voor 1 gat te vangen, dus de oude 'Fluke 99 ScopeMeter' afgestoft en eens gaan kijken wat er dan op de bus voorbij komt. Dat blijkt ook gewoon een serieel protocol te zijn, maar geïnverteerd ten opzichte van het EMS bus protocol en een iets andere snelheid: 4800 8N1. Gelukkig was het interface bordje vrij makkelijk aan te passen aan een geïnverteerd signaal (1 weerstand) en kan je de ESP8266 vertellen dat hij zijn Rx pinnetje moet inverteren.

Ik krijg nu netjes de berichtjes van de CV ketel en thermostaat binnen. De CV ketel polt de bus, naar wat lijkt 4 devices (00 01 02 03) en als de thermostaat antwoord, echoed de cv ketel alle gestuurde bytes.

Nu begint de puzzel om alle pakketjes te decoderen, wat best wel wat werk is. Als ik google op 'iRT protocol' komt er erg weinig naar voren. Mijn vraag is dan ook heeft iemand als eens iets met het Nefit iRT protocol gedaan ? Heeft iemand wat web links met meer informatie ? Alle informatie is welkom.

Ik weet dat Nefit ook een adapter verkoopt om van het iRT protocol 'EMS' te maken, maar die gebruikt ik liever niet omdat ik het veels te leuk vind om het zelf te doen :) .

Alle hulp is welkom.

Hardware: EMS Bus Wi-Fi Gateway (aangepast):
EMS bus interface boards ordering page
Software: EMS-ESP (aangepast):
proddy/EMS-ESP

Alle reacties


Acties:
  • +1 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Hallo,

Ik zit precies in het zelfde schuitje, ben je hier al verder me gekomen?
volgensmij hebben de IRT ketels namelijk maar 3 (standen om te branden:Hoog, midden of laag) en heet water aan of uit.

van de week krijg ik als het goed is mijn ems interface van bbqkees, kan je me vertellen wat je hieraan hebt veranderd?

Groetjes,
Bas

Acties:
  • +1 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Hi Bas,

Ik heb op het print je R5 (100 KOhm naar massa) verwijderd en vervangen door ongeveer 1,5 MegaOhm naar +5 volt. Er zit nu nog een potmeter op, maar die ga ik vervangen door een vast weerstand. Dit zorgt ervoor dat de detectie goed werkt. Daarna heb de software aangepast om het signaal de inverteren en de baud rate aangepast. Ik heb in 'emsuart.h' de volgende defines aangepast:

#define EMSUART_CONFIG (0x1C | (1 << UCRXI) ) // 8N1 (8 bits, no stop bits, 1 parity) + invert
#define EMSUART_BAUD 4800 // uart baud rate for the iRT circuit

Dit werkt voor mij stabiel. De afstand tussen de ketel en thermostaat is zo'n 5 meter.

Wat handig is om te weten is dat je 'log j' op de telnet port moet gebruiken om het verkeer te zien.

Ik ben ook bezig met een GitHub pagina om alle informatie en software aanpassingen te verzamelen. Als die er is, post ik hier het linkje nog wel even.

Victor

Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Ik heb de interface vandaag binnen gehad, het is me gelukt om het printje aan te passen en de firmware.
Alleen zie ik nog weinig nuttigs voorbij komen met log j over telnet. De grootse weerstand die ik had liggen was 1 Mohm. Dus dat zal daar wel aan liggen denk ik, Ben je zelf al wat wijzer geworden Victor?

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik krijg er dit soort data uit:
ems_parseTelegram: 00 05: 01 01 FE 90 90 C3 C3 79 79 F2 F2 CF 30 82 82 C3 C3 79 79 E0 E0 00 FF A3 A3 C3 C3 79 79 C1 C1 03 FC A4 A4 C3 C3 79 79 C6 C6 1A E5 8A 8A C3 C3 79 79 E8 E8 FE 01 00

De eerste 01 is de poll van de cv ketel, de thermostaat begint dan ook met een 01 die de cv dan geïnverteerd beantwoord: FE. Daarna wordt ieder gestuurd byte door de thermostaat ge'echoed door de cv. Een aantal keer komt het voor dat de andere kant geïnverteerd echoed, ik denk dat dit het einde of begin van een bericht is.

Maar ik heb er nog niet echt chocola van kunnen maken. Maar weer eens met de scope kijken wie nu wat stuurt. Het lijkt er op dat de CV zelf geen berichten stuurt, maar dat lijkt me wat vreemd.

Ik heb ook zitten kijken naar de 'Nefit easy control adapter' zitten kijken, die zet het iRT protocol om naar een EMS-bus. Maar mijn huidige thermostaat (Moduline IV) doet geen EMS, dus dat is wat lastig.

https://tweakers.net/pricewatch/402359/nefit-easy-connect.html

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Het is uiteindelijk gelukt om de data te decoderen uit het iRT protocol. Ik heb er nu ketelwatertemperatuur, cv of warm water en de status van de 3 weg klep uit. De ketelwatertemperatuur wordt nu via MQTT gepubliceerd en daarna maakt Grafana er een mooi grafiekje van.

Ik heb de aangepaste software op een github pagina gezet:
https://github.com/Victor-Mo/IRT-EMS-ESP

Log files zijn altijd welkom, we het is voorals nog wel een boel gis werk.

Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
ik heb je aangepaste versie geprobeerd en ik zie dan dit soort telegrammen


01:00 05:04 07:00 73:52 78:07 | 81:42 82:10 83:A0 84:57 8A:FE 90:99 93:FF 96:00 97:00 A3:03 A4:0C A6:0D A8:3E AA:34 AB:AA C9:00 0H
(00:06:16.294) irt_rawTelegram: 00 05 01: 02
(00:06:16.413) irt_rawTelegram: 00 05 01: 03
(00:06:16.533) irt_rawTelegram: 00 05 01: 00
(00:06:17.533) irt_rawTelegram: 00 05 3F: 01 01 FE F0 F0 1F 1F FE FE 1D 1D 05 FA F0 F0 1F 1F FF FF 19 19 62 9D A4 A4 00 00 04 04 B4 B4 0C F3 A6 A6 52 52 25 25 96 96 0D F2 A8 A8 07 07 FF FF 71 71 3E C1 A3 A3 00 00 21 21 27 27 03 FC
(00:06:17.653) irt_rawTelegram: 00 05 01: 02
(00:06:17.753) irt_rawTelegram: 00 05 01: 03
(00:06:17.873) irt_rawTelegram: 00 05 01: 00
(00:06:18.872) irt_rawTelegram: 00 05 3F: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 02 FD F0 F0 01 01 1E 1E 8A 8A 1D E2 F0 F0 01 01 1F 1F 8E 8E 0D F2 AA AA 52 52 25 25 9A 9A 34 CB F0 F0 05 05 5B 5B 8F 8F 01 FE F0 F0 05 05 5C 5C 93 93 20 DF
(00:06:18.993) irt_rawTelegram: 00 05 01: 02
(00:06:19.112) irt_rawTelegram: 00 05 01: 03
(00:06:19.212) irt_rawTelegram: 00 05 01: 00
(00:06:20.232) irt_rawTelegram: 00 05 3F: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 02 FD F0 F0 01 01 1C 1C 82 82 9D 62 F0 F0 01 01 1D 1D 86 86 03 FC AB AB 52 52 25 25 9B 9B AA 55 F0 F0 05 05 61 61 67 67 34 CB F0 F0 01 01 21 21 76 76 32 CD
(00:06:20.332) irt_rawTelegram: 00 05 01: 02
(00:06:20.452) irt_rawTelegram: 00 05 01: 03
(00:06:20.572) irt_rawTelegram: 00 05 01: 00

weet niet of dat goed gaat

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Het lijkt inderdaad een grote brij aan data. Maar er zit logica in. Als ik jouw 'jabber' data door mijn testopstelling haal met het raw log level (log r) dan komt er het volgende uit:

(13:13:42.381) irt_new: 00 00 05: F0 1F FE 1D 05
(13:13:42.381) irt_new: 00 00 05: F0 1F FF 19 62
(13:13:42.381) irt_new: 00 00 05: A4 00 04 B4 0C
(13:13:42.381) irt_new: 00 00 05: A6 52 25 96 0D
(13:13:42.381) irt_new: 00 00 05: A8 07 FF 71 3E
(13:13:42.381) irt_new: 00 00 05: A3 00 21 27 03
| A3:03 A4:0C A6:0D A8:3E 0H
(13:13:42.381) irt_new: 00 00 05: F0 01 1B 9E 02
(13:13:42.381) irt_new: 00 00 05: F0 01 1E 8A 1D
(13:13:42.381) irt_new: 00 00 05: F0 01 1F 8E 0D
(13:13:42.381) irt_new: 00 00 05: AA 52 25 9A 34
(13:13:42.381) irt_new: 00 00 05: F0 05 5B 8F 01
(13:13:42.381) irt_new: 00 00 05: F0 05 5C 93 20
| A3:03 A4:0C A6:0D A8:3E AA:34 0H
(13:13:42.381) irt_new: 00 00 05: F0 01 1B 9E 02
(13:13:42.381) irt_new: 00 00 05: F0 01 1C 82 9D
(13:13:42.381) irt_new: 00 00 05: F0 01 1D 86 03
(13:13:42.381) irt_new: 00 00 05: AB 52 25 9B AA
(13:13:42.381) irt_new: 00 00 05: F0 05 61 67 34
(13:13:42.381) irt_new: 00 00 05: F0 01 21 76 32
| A3:03 A4:0C A6:0D A8:3E AA:34 AB:AA 0H


Het bericht 'A4 00 04 B4 0C' geeft bijvoorbeeld de ketelwatertemperatuur aan. In dit geval '0C' = 12 graden ? Als je via de telnet het commando 'info' geeft zal er dan ook bij 'Current flow temperature' 12 graden staan. (als het goed is ook via de web pagina).

Het hele protocol lijkt te bestaan uit 4 en 5 byte berichten. Als de thermostaat iets instelt op de boiler wordt een 4 byte bericht gestuurd. Het eerste byte is het type bericht waarvan het hoogste bit 0 is (0x00 - 0x7F) gevolgd door de waarde die wordt ingesteld. De overgebleven twee bytes lijken vooralsnog niet in gebruik. Als de thermostaat iets van de boiler wil weten worden er 5 bytes gestuurd. Het eerste byte is het soort bericht waarvan het hoogste bit 1 is (0x80 - 0xFF) gevolgd door 3 ongebruikte bytes. Waarna de boiler met 1 byte beantwoord.

Maar de berichten die beginnen met 0xF0 lijken daar een uitzondering op. Ik heb ze zelf bijna niet, maar in jouw log kommen ze heel vaak voor. Ik vermoed dat bericht 0xF0 een soort van uitbredingsbericht is en dat de bytes die volgen iets zeggen over wat er dan opgevraagd wordt.

Misschien kan je een iets langer stukje 'jabber' log (log j) maken ? Het liefst iets van idle naar stoken naar idle.

Ik heb op dit moment de volgende statussen werkend:
- Ketelwatertemperatuur
- Status van de ketel (cv / warm water / 3-weg klep)
- Display code (0H, -H, =H, 0A, de error code in het geval van storing)
- De aangevraagde temperatuur door de thermostaat (alleen de eenheid waarin is me nog niet duidelijk).
- warmwater aan en uit.

Acties:
  • 0 Henk 'm!

  • Poecillia
  • Registratie: Januari 2002
  • Laatst online: 17-05 17:05
Victor_M schreef op dinsdag 5 november 2019 @ 20:43:
Het lijkt inderdaad een grote brij aan data. Maar er zit logica in. Als ik jouw 'jabber' data door mijn testopstelling haal met het raw log level (log r) dan komt er het volgende uit:

(13:13:42.381) irt_new: 00 00 05: F0 1F FE 1D 05
(13:13:42.381) irt_new: 00 00 05: F0 1F FF 19 62
(13:13:42.381) irt_new: 00 00 05: A4 00 04 B4 0C
(13:13:42.381) irt_new: 00 00 05: A6 52 25 96 0D
(13:13:42.381) irt_new: 00 00 05: A8 07 FF 71 3E
(13:13:42.381) irt_new: 00 00 05: A3 00 21 27 03
| A3:03 A4:0C A6:0D A8:3E 0H
(13:13:42.381) irt_new: 00 00 05: F0 01 1B 9E 02
(13:13:42.381) irt_new: 00 00 05: F0 01 1E 8A 1D
(13:13:42.381) irt_new: 00 00 05: F0 01 1F 8E 0D
(13:13:42.381) irt_new: 00 00 05: AA 52 25 9A 34
(13:13:42.381) irt_new: 00 00 05: F0 05 5B 8F 01
(13:13:42.381) irt_new: 00 00 05: F0 05 5C 93 20
| A3:03 A4:0C A6:0D A8:3E AA:34 0H
(13:13:42.381) irt_new: 00 00 05: F0 01 1B 9E 02
(13:13:42.381) irt_new: 00 00 05: F0 01 1C 82 9D
(13:13:42.381) irt_new: 00 00 05: F0 01 1D 86 03
(13:13:42.381) irt_new: 00 00 05: AB 52 25 9B AA
(13:13:42.381) irt_new: 00 00 05: F0 05 61 67 34
(13:13:42.381) irt_new: 00 00 05: F0 01 21 76 32
| A3:03 A4:0C A6:0D A8:3E AA:34 AB:AA 0H


Het bericht 'A4 00 04 B4 0C' geeft bijvoorbeeld de ketelwatertemperatuur aan. In dit geval '0C' = 12 graden ? Als je via de telnet het commando 'info' geeft zal er dan ook bij 'Current flow temperature' 12 graden staan. (als het goed is ook via de web pagina).

Het hele protocol lijkt te bestaan uit 4 en 5 byte berichten. Als de thermostaat iets instelt op de boiler wordt een 4 byte bericht gestuurd. Het eerste byte is het type bericht waarvan het hoogste bit 0 is (0x00 - 0x7F) gevolgd door de waarde die wordt ingesteld. De overgebleven twee bytes lijken vooralsnog niet in gebruik. Als de thermostaat iets van de boiler wil weten worden er 5 bytes gestuurd. Het eerste byte is het soort bericht waarvan het hoogste bit 1 is (0x80 - 0xFF) gevolgd door 3 ongebruikte bytes. Waarna de boiler met 1 byte beantwoord.

Maar de berichten die beginnen met 0xF0 lijken daar een uitzondering op. Ik heb ze zelf bijna niet, maar in jouw log kommen ze heel vaak voor. Ik vermoed dat bericht 0xF0 een soort van uitbredingsbericht is en dat de bytes die volgen iets zeggen over wat er dan opgevraagd wordt.

Misschien kan je een iets langer stukje 'jabber' log (log j) maken ? Het liefst iets van idle naar stoken naar idle.

Ik heb op dit moment de volgende statussen werkend:
- Ketelwatertemperatuur
- Status van de ketel (cv / warm water / 3-weg klep)
- Display code (0H, -H, =H, 0A, de error code in het geval van storing)
- De aangevraagde temperatuur door de thermostaat (alleen de eenheid waarin is me nog niet duidelijk).
- warmwater aan en uit.
Toevallig dat dit topic net actueel is en dat ik mezelf de vraag stelde of ik na het uitlezen van de P1 'slimme meter' ook de CV zou kunnen uitlezen. De P1 heb ik ontsloten via een RJ11 kabeltje op de Nodemcu en de Mosquitto, Python, Influxdb, Grafana pipeline. Een andere Nodemcu leest nu temperatuurwaarden van het gebruik van het opslagvat van mijn heatpipes. Met een interface naar de Nefit Ecomline HR classic komt een prescriptieve besturing binnen bereik: rekening houden met aanwezigheid, stook houtkachel, de weervoorspelling, etc. De huidige besturing, een Nefit UBA 4001 en een Cenvax regeling kunnen volgens mij beter.

Eerst maar eens zien of ik Nefit kan uitlezen, zoals jij dat gedaan hebt Ik zie dat er een EMS bus gateway nodig is. De plug & play versie kost 57,95 en de losse gateway 27,50. Is dat 30 euro verschil voor die ESP chip? Dan kan ik hem zelf beter aansluiten op Nodemcu. Voor de aansluiting moet de kap open neem ik aan. Ik zal me daarna verdiepen in je github. Leuk projectje!

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Mijn uiteindelijke doel is om de boiler direct aan te kunnen sturen. Ik heb een aantal radio gestuurde thermostaat knoppen. Die worden door een ruimtethermostaat aangestuurd (in iedere ruimte). Dit signaal ontvang ik weer met een ontvanger (868 MHz) en stuur nu de thermostaat aan (soort van puls breedte aan/uit).

Maar dit is verre van ideaal. Het duurt lang voordat er echt opgewarmd wordt en daarna meestal een grote overshoot, gevolgd door een 'koude' periode. Ik hoop uiteindelijk de openingsgraad van de thermostaatknoppen, de buitentemperatuur en de weersvoorspelling te gebruiken om de cv ketel aan te sturen.

Het verschil tussen de losse interface en de komplete gateway is de ESP8266, de step-down spanning converter, de behuizing en het gemak dat je een werkende combinatie heb. In beide gevallen zal de interface gemodificeerd moeten worden. De 100k weerstand naar massa moet vervangen worden door 1.5MOhm weerstand naar +5Volt (dit werkt voor mij het best).

Ik heb bij de thermostaat de tweedraads aansluiting afgesplitst naar de gateway.

Acties:
  • 0 Henk 'm!

  • DRAFTER86
  • Registratie: April 2002
  • Laatst online: 14:42
Hier ook een EMS bordje en Wemos D1 besteld, ben benieuwd. Wat ik me afvroeg: zet je die ding typisch tussen/parallel aan thermostaat en ketel, of is het enkel geschikt als vervanging? Als ik hier mee ga prutsen en het even niet werkt is het natuurlijk wel fijn als de verwarming het nog doet...

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik heb hem op dit moment parallel aan de iRT bus zitten. De iRT bus is nog al gevoelig en kan maar heel beperkt stroom leveren (15 mA). Ik moet soms de polariteit van mijn interface printje omdraaien (draadjes verwisselen) want anders start mijn thermostaat niet.

Om actief de bus te sturen vermoed ik dat er maar 1 device op de bus kan zitten. Ik ben nog nergens documentatie tegengekomen van 2 devices op de bus. Maar het lijkt er op dat de "officiële" manier is om ze in serie te zetten ?

Op het werk hebben we een Ecomline HR met UBA4001 (ik heb een UBA4000) en een redelijk lange leiding (20 meter) maar daar heb ik nog geen stabiel signaal uit. Ik zie wel de bytes uit de thermostaat maar niet van de CV ketel. Ik vermoed dat ik nog iets moet tweaken aan het detectie circuit.

Acties:
  • 0 Henk 'm!

  • RoyPh
  • Registratie: Juli 2003
  • Laatst online: 23-04 21:21
Ik ben ook al een tijdje bezit om het iRT protocol te decoderen. Ik log momenteel alle data (ik heb log files vanaf eind april 2019) en probeer dan achteraf de signalen te decoderen.

Ik heb een de iRT bus (quick and dirty) aangesloten op een Raspberry Pi en lees daarmee de seriele data in.

Ik gebruik de CV alleen voor verwarming (geen tapwater) via een buitentemperatuur regeling.

Ik kan momenteel de "ketelwater temperatuur", "ketelwater temperatuur setpoint", "buiten temperatuur" uit de berichten halen. Ik heb een vermoeden hoe de brander aangestuurd wordt (dit lijkt aan/uit te zijn, waarbij ik de ketelwater temperatuur zie oplopen als de brander aanstaat en aflopen wanneer hij uit staat), maar hier ben ik nog mee bezig.

Bij ketelwater temperatuur zie ik bij mij trouwens een offset: de waarde in de berichten is 6 of 8 graden lager dan de waarde die ik op de thermostaat uitlees (8 graden verschil bij lage waardes (even uit het hoofd < 30), 6 graden verschil daarboven.

Ik zal binnenkort mijn logffiles en de gebruikte scripts online zetten.

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Extra logfiles zijn altijd zeer interessant. Ik heb nu alleen echte data van mijn eigen ketel. Het bericht wat bij mij de ketel start is: '0x07 0x00 0xD0 0x6C' Waarbij alleen het eerste en laatste byte iets betekenen. Het eerste byte is het type bericht (0x07) en het laatste byte geeft aan hoe warm CV water er gevraagd wordt. Dit is een index waarde tussen 0x00 t/m 0xFF. Die hangt weer af van de ingestelde maximale cv ketel water temperatuur.

Het bericht '0x90 0xAE 0x5F 0xB0 0xCF' rapporteert van de ketel naar de thermostaat wat de maximal ingestelde cv watertemperatuur is. Dit is het laatste byte (0xCF). Mijn ketel kan tussen de 40 graden en de 90 graden worden ingesteld. Dan varieert deze waarde tussen de 0x15 en 0xEA. De thermostaat zal in het (0x07) bericht nooit een hogere waarde vragen als deze gerapporteerde waarde. (Bij mij in ieder geval dan) .

Ik hoop binnenkort tijd te hebben om op mijn GitHub pagina de wiki van informatie te voorzien en de berichten zoveel mogelijk te documenteren.

Acties:
  • 0 Henk 'm!

  • RoyPh
  • Registratie: Juli 2003
  • Laatst online: 23-04 21:21
Ik heb mijn logfiles online gezet: Nefit iRT raw data.

Ik heb hier ook de scripts toegevoegd waarmee ik de data uitlees.

Zoals eerder gezegd, heb ik de CV quick and dirty aangesloten op een raspberry PI: het signaal is eigenlijk een DC component met daarbovenop het seriële data signaal (geïnverteerd). Ik heb simpelweg de DC compenent eruit gefilterd (met een weerstand / condensator) en het mbv een transistor geïnverteerd en zo aangesloten op de GPIO bus op de raspberry pi.

Op de raspberry pi lees ik mbv een python script de raw data uit (zie monitor_cv.py in de log data hierboven).

Het blijkt dat de laatste byte bij ieder bericht een parity error geeft. Dit is zowel de byte na het "pollen van de devices 00, 01, 02, 03", maar ook de byte na een volledig bericht. Dit gebruik ik (in het monitor script) om het einde van het message te detecteren. Ik gebruik hiervoor een trucje (dat alleen in Linux werkt, niet in windows) waarbij bytes '0xFF en 0x00' toegevoegd worden voor een byte met een parity error (zie de "import termios" en het zetten van de "PARMRK" via termios). Dit zort ervoor dat je hier in python gemakkelijk op kan detecteren. Je moet er dan wel op letten dat een '0xFF' vervangen wordt door '0xFF 0xFF' (dat moet er dan dus uitgefilterd worden). Wanneer deze detectie methode niet gebruikt wordt (bv wanneer het uitlezen van de data in Windows gebeurt), worden deze bytes met parity error als 0x00 gerapporteerd.

In mijn logging log ik alleen de messages met data (de 00, 01, 02, 03, 00, 01, 02, 03 enz filter ik eruit). Verder log ik in csv formaat (in dec, niet in hex). Dit vergemakkelijkt het inlezen in excel om snel grafiekjes te kunnen plotten).

Een message log ik in het volgende formaat (de timestamp wordt door de Raspberry Pi toegevoegd en is het tijdstip waarop het message verzonden is):
2019-04-26T00:00:14.319188,1,254,144,144,202,202,97,97,128,128,234,21,130,130,72,72,252,252,201,201,0,255,163,163,111,111,24,24,29,29,7,248,138,138,57,57,107,107,77,77,159,96
Hierbij noem ik de data "kolom 0" en begint het daadwerkelijke bericht bij "kolom 1". Hierbij zie je dat kolom 1 / kolom 2 (waardes 1, 254) overeenkomen met kolom 1 en kolom 2 (hex waardes 0x1, 0xFE) uit de raw messages in de berichten hierboven.

Wat opvalt is dat de meeste verstuurde waardes ge-echo'ed worden, maar bij een aantal waardes (kolom 2, kolom 12,kolom 22,kolom 32 en kolom 42 in het voorbeeld bericht hier) is de echo "0xFF - <vorige waarde>". Ik denk dat dit losse secties binnen de verstuurde berichten markeert.

Ik gebruik de waarde in "Kolom 13" om verschillende bericht types te identificeren. In mijn logging kom ik berichten tegen met de waardes 1 / 115 / 129 / 130 /163 / 201 / 222 (en wellicht nog andere waardes, maar deze in ieder geval). Ik weet niet of dit een correcte manier van filteren is, maar voor mij werkt het voor nu.

In berichten met waarde "1" in kolom 13 vind ik het "Ketelwater setpoint" in kolom 15. In het script "convert_cv_data" (dat ik in de logging bijgevoegd heb) staan meer vermeldingen van welke data op welke positie terug te vinden is (waarbij ik iedere keer de waarde van kolom 13 gebruik om het berichttype te identificeren).

Het convert_cv_data script gebuik ik om grafiekjes te maken uit de raw data om zo proberen te achterhalen wat de betekenis van de data is. In de commentaren heb ik nog meer kolommen vernoemd waar ik nog niet achter ben wat de betekenis is.

Zoals gezegd regel ik de temperatuur alleen op buitentemperatuur. De thermostaat gebruikt de binnen temperatuur dus niet om de ketel aan te sturen. Verder heb ik geen 3-weg klep meer (ik gebruik de CV alleen voor verwarming, niet voor tapwater).

De buitentemperatuur bereken ik dmv een vermenigvuldigingsfactor en offset (zie het convert_cv_data script). Dit heb ik afgeleid door de temperatuur van de thermostaat af te lezen en te vergelijken met de raw data die ik uitlas.
Volgens de handleiding van de thermostaat (Moduline 30) is deze curve te calibreren. Ik weet dus niet of dit een relatie is die voor meerdere mensen te gebruiken is.

Ik hoop dat dit helpt om meer duidelijkheid te krijgen.

[ Voor 4% gewijzigd door RoyPh op 23-11-2019 17:30 ]


Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Ik heb de moduline 300 thermostaat in de woonkamer hangen en de ketel op zolder, zal ongeveer 25m draad tussen zitten. Ik heb het ems bordje parallel aan de thermostaat staan, en ik krijg keurig alles binnen. Ik kan nu de circuit temperatuur zien de brander status, alleen de ingestelde temperatuur die de ems site aangeeft is bij mij niet de ingestelde ruimte temperatuur. Dit lijkt eerder op de gevraagde circuit temperatuur. Als ik de thermostaat een tikje hoger zet, en de ketel springt aan. Dan is dit getal rond de 50 en als ik de temperatuur verder omhoog draai dan word dit getal rond de 70 "toevallig" de temperatuur die ingesteld staat op de ketel. Zou dan de thermostaat in de kamer het moduleren op deze manier regelen?

Water warm houden aan of uit probeer ik nog te ontcijferen, evenals de status warmwatervraag.

Ik moet zeggen @Victor_M goed bezig ; )

Acties:
  • +1 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@RoyPh Bedankt voor de logfiles. Ik heb ze door mijn test programmaatje gehaald en die lijkt alles goed te decoderen. Ik zie de status van de ketel veranderen en de temperatuur op, en af lopen. Het zijn een heleboel logfiles, die kan ik heel goed gebruiken om te testen. Nogmaals bedankt !

@mafradon Het lijkt er inderdaad op dat alle slimme dingen in de thermostaat zitten. Bij mij lijkt het er ook op dat de thermostaat "water temperatuur" aanvraagt bij de ketel. Ik heb nog nergens de echt ingestelde temperatuur van de thermostaat voorbij zien komen.

Ik heb alle verzamelde informatie in de Github wiki gezet. Ik heb daar zo veel mogelijk alle berichten geprobeerd te documenteren. De wiki heeft meer berichten gedocumenteerd als dat ik nu in de firmware heb zitten. Maar iedere input is welkom, want het blijft een beetje 'black magic'....

Ik ben nu bezig met het actief kunnen terug sturen van berichten. Het probleem is alleen een beetje, als ik hier aan het testen ben het langzaam kouder wordt... 8)7

Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Hoi Victor,

Ben je hier al iets verder mee gekomen?
Ik heb de ems interface inmiddels geïntegreerd in home assistant. En dat lijkt allemaal goed door te komen.

Ik heb trouwens nog contact gehad met nefit, en het bedrijf wat destijds het irt protocol ontwikkeld heeft. Maar beide wouden hellaas niks prijsgeven. Er schijnt ook nog een servicetool te zijn voor de Uba1 ketels. Misschien dat die kan helpen bij het ontrafelen.

Zit er wel bijna aan te denken om de ketel een keer te vervangen hij is inmiddels al 19 jaar oud.

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik heb de laatste tijd niet al te veel tijd gehad om met het project verder te gaan. Ik ben al wel begonnen met het implementeren van het actief kunnen terug sturen van berichten, maar ik wil dat niet eerder publiceren totdat het een beetje stabiel werkt.

Ik heb ook wat geëxperimenteerd met de twee connectoren op de ketel zelf (de 3,5 en 6,3 mm plug). Dit is de aansluiting van de service key. De 6.3 mm plug lijkt de aansluitingen van de IRT bus te hebben. Maar als je hier een connector in doe, valt de thermostaat uit. De service key lijkt in serie aangesloten te worden ? Ik vermoed dat de ketel stroom stuurt en de thermostaat spanning 'stuurt', dit zou ook verklaren waarom ik op een UBA4001 geen pulsjes van de ketel zie.

De Nefit servicekey is alleen beschikbaar voor de 'vakman' en heeft een jaarlijkse licentie nodig. Dus ik denk dat, dat lastig wordt. Het schema van de EMS gateway printjes is gebaseerd op een reverse engineerde servicekey. Ik heb de oorspronkelijk duitse forum post erbij gezocht, maar daar wordt niet vermeld of er voor het IRT protocol nog andere componenten aanwezig waren.

Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Er was voor de UBA 1 ketels een UBA handterminal, ik heb er eentje op de kop weten te tikken. Dus ga daar van de week maar eens mee spelen :P

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik had wel van de Nefit ServiceKey gehoord, maar nog niet van de Nefit UBA handterminal. Ziet er inderdaad als interessant apparaat uit. Ik ben benieuwd wat daar mee mogelijk is.

Het is me in de tussentijd al wel gelukt om actief berichten naar de ketel te sturen. Als ik 'bekende' berichten stuur krijg ik netjes antwoord van de ketel. Maar als ik er ook maar 1 bitje in aanpas krijg ik geen antwoord. Ik ben er ondertussen achter dat het vierde byte iets van een checksum is. Ik weet alleen nog niet hoe ze die berekenen, ik heb 'gewoon' optellen en CRC-8 al geprobeerd, maar dat is het niet....

Acties:
  • +5 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Het is uiteindelijk gelukt om actief de ketel te sturen via het iRT protocol ! Ik kan nu de ketel starten / stoppen, het brandvermogen instellen en de maximum temperatuur instellen. Het lijkt er op dat je niet een specifieke water temperatuur kan instellen. Maar alleen een maximum. Via het 0x07 bericht kan je de ketel starten en het brandvermogen instellen. Alles boven 0x50 start bij mij de ketel. 0x50 is heel zachtjes branden en 0xFF is vol vermogen. Ik kan met het 0x01 bericht de maximum water temperatuur instellen. Als ik de ketel aan zet (0x07) en het water wordt warmer dan het maximum, dan gaat de ketel automatisch uit. Als de temperatuur weer daalt gaat deze weer aan. Ik heb ook het bericht gevonden voor de retour watertemperatuur (0xA6), maar die moet ik expliciet aanvragen.

Ik ben best een lange tijd bezig geweest met het uitzoeken van de checksum in de sub berichten. Ik dacht eerst dat de tweede en derde byte gewoon wat random data was, maar het derde byte is de checksum en zonder correcte checksum worden de commando's niet geaccepteerd. Het bleek uiteindelijk een combinatie van XOR, bit shiften en een extra fixed XOR te zijn 8)7 .

Ik heb nu een heel simpel commando gemaakt (set_water) om de brander te starten en een maximum temperatuur in te stellen. Maar ik wil dit op basis van de verschil temperatuur tussen de in en uit temperatuur maken en het starten en stoppen zelf aansturen (ipv de ketel dit zelf te laten doen) en natuurlijk via MQTT de watertemperatuur kunnen instellen.

Ik heb mijn github pagina en de wiki weer helemaal up to date gemaakt.

Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Knap werk,

Ik heb het geprobeerd, werkt idd prima. Probeer met die handterminal meer parameters te ontcijferen alleen zodra je deze inplugt op de jack aan de voorkant word de verbinding met de ems print verbroken. Nu alleen nog integreren in mqtt.

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik ben nu bezig om het aansturen van de watertemperatuur te voorzien van een PID regeling. Als er een watertemperatuur ingesteld wordt, wordt de maximum temperatuur via het 0x01 bericht ingesteld. Maar voor de brander sterkte, het 0x07 bericht, kies ik nu een vaste waarde op basis van de ingestelde temperatuur. Maar dat werkt niet helemaal lekker. Ik wil met behulp van de PID regeling deze sturen op basis van de uitgaande watertemperatuur (0xA4 bericht). Zodat bij groot verschil tussen de ingestelde waarde en de gemeten waarde de brander sterk brand en naarmate het verschil minder wordt deze steeds zachter gaat branden.

Ook moet dit inderdaad aan te sturen zijn via MQTT. Ik zit daar alleen een beetje mee, wat te doen als je geen updates meer ontvang via MQTT ? Stoppen met stoken ? gewoon door stoken ? langzaam afbouwen ? terug vallen op een default ?

Helaas heb ik de komende twee weken niet heel veel tijd om hieraan te werken. Maar ik ga mijn best doen :) .

Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Ik heb het aan de gang met mqtt,

door jou set_water commando aan een bericht te koppelen kan ik nu via homeassistant de ketel aanzetten op een bepaalde temperatuur.

als ik bijvoorbeeld nu het mqtt bericht stuur om de ketel naar 70c te brengen dan wamt ie op tot 70 en houdt ie hem daar tot ik een bericht stuur zak naar iets anders of ga naar 0. Dit doe ik geautomatiseerd op basis van mijn temperatuur sensors in de woonkamer en automations in homeassistant.

het staat nu een paar dagen te draaien en werkt prima!

en bij mij moduleert de ketel automatisch terug wanneer de ingestelde temperatuur bereikt is.

idd. zou een PID regeling voor het brander vermogen mooier zijn zodat als het cv water al 60 is hij niet met 100% brander vermogen naar 70 gaat.

wat ik nu wel merk, is dat als de maxiumtemperatuur bijv 70 is en ik terugschakel naar bijv. 60, dan stopt de ketel compleet met verwarmen tot het water in de cv gezakt is naar onder de 60 en maakt vervolgens weer een nieuwe start.
het zou mooier zijn als hij bij zo een verlaging op de laagste stand blijft branden tot dat de temperatuur lager word dan 60.

[ Voor 19% gewijzigd door mafradon op 05-03-2020 16:59 ]


Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
Ik zal me hier ook even melden. Enige tijd geleden een bordje van bbqkees gekocht, met aanpassing voor iRT, maar die heeft nog wat moeite om betrouwbaar de bus te lezen. Misschien eens kijken of ik met de weerstand nog wat kan variëren om dat goed voor elkaar te krijgen.

Mbt bovenstaande: Dat is goed werk ! Ik vraag me nu alleen af, hoe het zit als er ook een kamerthermostaat op de bus is aangesloten, m.a.w, moet die er dan af als je via de interface de ketel aan gaat sturen ?

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Ik heb er idd een potmeter ingezet om zo een beetje te kunnen tweaken. Het klopt idd dat op dit moment als je wil lezen en schrijven. Dat je de thermostaat moet afkoppelen.

Nu moet ik zeggen dat ik de ouderwetse thermostaat nog niet heb gemist.

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@u_nix_we_all De Nefit iRT bus is inderdaad nogal 'gevoelig'. De bus is een stroom gestuurde bus. Idle loopt er 20 mA (1) en actief (0) loopt er 10 mA. Maar de interface print detecteert spanningsverschillen. Dit gaat over het algemeen goed, zolang de thermostaat maar genoeg stroom gebruikt en de ketel niet teveel kan leveren.

Ik heb op het werk gemeten aan een Ketel met een UBA4001 branderautomaat (de witte) in combinatie met een moduline IV thermostaat. Daar kreeg ik helemaal geen signaal uit omdat er bijna geen spanningsverschil was. Die locatie is ondertussen verkocht, dus ik kan geen tweede meeting meer doen. Maar ik had het idee om tussen de ketel en thermostaat een weerstand van ongeveer 100 Ohm te zetten om zo doende meer spanningsval te krijgen en dan aan de kant van de thermostaat de interface print te koppelen. Maar zoals gezegd, ik heb dit niet uit kunnen proberen. Maar misschien is dit nog een optie ?

Wat voor branderautomaat heb je een UBA4000 (de grijze) of een nieuwere de UBA4001 (de witte). Met wat voor een thermostaat ? Krijg je er helemaal geen data uit ? of af en toe verminkte data ? (Via telnet het 'log j' commando laat de ruwe data zien).

@mafradon Goed om te horen dat het via MQTT werkt. Het zal nog wel puzzelen zijn om de brander regeling goed te krijgen, maar het is wel een leuke puzzel :)

Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
@Victor_M Zo te zien heb ik dus een UBA4001, ketel (Economy HRC 24) staat op zolder, ik heb de print bij de thermostaat in de woonkamer aangesloten, de thermostaat is een Moduline 300 (klokthermostaat).

Ik heb ook nog een moduline 100. Die heb ik nu aangesloten, en dat lijkt beter te gaan, maar nog steeds vrij veel crc errors.
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
EMS-ESP system stats:
  System logging set to None
  LED is on, Listen mode is off
  Boiler is enabled, Thermostat is enabled, Solar Module is disabled, Mixing Module is disabled, Shower Timer is disabled, Shower Alert is disabled

EMS Bus stats:
  Bus is connected, protocol: Buderus
  Rx: # successful read requests=739, # CRC errors=732
  Tx: Last poll=0.500 seconds ago, # successful write requests=0

Boiler stats:
  Boiler: DeviceID:0x08 (ProductID:? Version:?)
  Hot tap water: off
  Central heating: off
  Warm Water activated: ?
  Warm Water circulation pump available: ?
  Warm Water selected temperature: ? C
  Warm Water desired temperature: ? C
  Warm Water current temperature: ? C
  Warm Water current tap water flow: ? l/min
  Warm Water # starts: ? times
  Warm Water 3-way valve: off
  Selected flow temperature: ? C
  Current flow temperature: 43.0 C
  Return temperature: ? C
  Gas: off
  Boiler pump: off
  Fan: off
  Ignition: ?
  Circulation pump: ?
  Burner selected max power: ? %
  Burner current power: ? %
  Flame current: ? uA
  System pressure: ? bar
  System service code: 0A (0)
  Heating temperature setting on the boiler: ? C
  Boiler circuit pump modulation max power: ? %
  Boiler circuit pump modulation min power: ? %
  Boiler temperature: ? C
  Pump modulation: ? %
  Burner # starts: ? times

Thermostat stats:
  Thermostat: DeviceID:0x01 (ProductID:1 Version:1.0)
  Thermostat time is ?
  Heating Circuit 1
   Current room temperature: ? C
   Setpoint room temperature: 0.0 C
   Mode is unknown

Stukje data van " log j"
code:
1
2
3
4
5
6
7
8
9
10
(00:02:34.319) irt_rawTelegram: 00 05 3C: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 00 FF F0 F0 01 01 1E 1E 8A 8A 12 ED F0 F0 01 01 1F 1F 8E 8E 2B D4 AA AA 52 52 25 25 9A 9A D0 2F F0 F0 05 05 5B 7F FC FE FE F0 F0 05 05 5C FE 93 DF 
(00:02:34.322) irt_crcErr3: 01 05 3C: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 00 FF F0 F0 01 01 1E 1E 8A 8A 12 ED F0 F0 01 01 1F 1F 8E 8E 2B D4 AA AA 52 52 25 25 9A 9A D0 2F F0 F0 05 05 5B 7F FC FE FE F0 F0 05 05 5C FE 93 DF 
(00:02:34.325) irt_crcErr3: 01 05 3C: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 00 FF F0 F0 01 01 1E 1E 8A 8A 12 ED F0 F0 01 01 1F 1F 8E 8E 2B D4 AA AA 52 52 25 25 9A 9A D0 2F F0 F0 05 05 5B 7F FC FE FE F0 F0 05 05 5C FE 93 DF 
(00:02:34.327) irt_crcErr3: 01 05 3C: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 00 FF F0 F0 01 01 1E 1E 8A 8A 12 ED F0 F0 01 01 1F 1F 8E 8E 2B D4 AA AA 52 52 25 25 9A 9A D0 2F F0 F0 05 05 5B 7F FC FE FE F0 F0 05 05 5C FE 93 DF 
(00:02:34.330) irt_crcErr3: 01 05 3C: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 00 FF F0 F0 01 01 1E 1E 8A 8A 12 ED F0 F0 01 01 1F 1F 8E 8E 2B D4 AA AA 52 52 25 25 9A 9A D0 2F F0 F0 05 05 5B 7F FC FE FE F0 F0 05 05 5C FE 93 DF 
(00:02:34.332) irt_crcErr3: 01 05 3C: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 00 FF F0 F0 01 01 1E 1E 8A 8A 12 ED F0 F0 01 01 1F 1F 8E 8E 2B D4 AA AA 52 52 25 25 9A 9A D0 2F F0 F0 05 05 5B 7F FC FE FE F0 F0 05 05 5C FE 93 DF 
(00:02:34.335) irt_crcErr3: 01 05 3C: 01 01 FE F0 F0 01 01 1B 1B 9E 9E 00 FF F0 F0 01 01 1E 1E 8A 8A 12 ED F0 F0 01 01 1F 1F 8E 8E 2B D4 AA AA 52 52 25 25 9A 9A D0 2F F0 F0 05 05 5B 7F FC FE FE F0 F0 05 05 5C FE 93 DF 
01:00 04:A9 05:5B 07:00 25:00 73:52 76:00 78:01 | 81:49 82:00 83:00 84:57 8A:FE 90:00 93:FF 96:00 97:00 A1:30 A3:00 A4:2B A6:34 A8:3A AA:D0 AB:4D C9:B2   0A
(00:02:34.440) irt_rawTelegram: 00 05 01: 02 
(00:02:34.560) irt_rawTelegram: 00 05 01: 03


De status voor Hot water en 3-wegklep lijkt ook te werken, zij het met wat vertraging.
Verder heb ik ook nog geen software op de ems aangepast, dat is versie 1.9.3 vaan een paar maanden geleden.

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Op github staan nu ook binary images, scheelt weer compileren. Met versie 1.9.5 krijg je er ook retour watertemperatuur en warmwatertemperatuur bij. Maar gaat niet helpen met de crc errors.

Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
@Victor_M thx voor de update. Ik zie nu met telnet in de info de retour en warmwater temperaturen. Maar nog wel crc errors, en steeds de status dat de bus not connected is. Ik krijg de waarden nu dus ook niet door via mqtt.
Ik moet nog proberen om de crc fouten minder te krijgen (geen geschikte trimpot voorhanden), maar kan het zijn dat met 1.9.5 de bus status minder tolerant is mbt de crc errors ?

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
Ik ben even met het bordje bezig geweest. De weerstand was een 1MegaOhm. Daar heb ik nu een 330K bij gezet, en de crc-errors zijn weg !
Ik zie nu alleen geen data van de thermostaat (zowel moduline 100 als moduline 300) maar dat is niet zo' n ramp want daar kwam toch nog niet veel zinnigs uit :p

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@u_nix_we_all Goed om te horen dat het nu beter werkt. De waarde van de weerstand lijkt me wat laag, ik kreeg redelijk wat storing bij lagere waardes. Maar als het werkt, dan werkt het. De versie 1.9.5 doet ook een crc check per sub bericht (4 of 5 bytes).

Ik ga volgende week eens experimenten met een serie weerstand en het effect op het signaal.

Vreemd dat je geen berichten van de Thermostaat ontvang. Ieder (sub)bericht bestaat uit 4 bytes van de Thermostaat en afhankelijk van het bericht een response van de ketel (byte 5). Dus zonder beide kanten werkt het helemaal niet. Ik vermoed dat het nieuwe crc mechanisme misschien roet in het eten gooit.

Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
@Victor_M
Ik weet niet of je er iets aan hebt, maar hier wat logging:
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
(03:28:02.793) irt_rawTelegram: 01: 02 
(03:28:02.912) irt_rawTelegram: 01: 03 
(03:28:03.012) irt_rawTelegram: 01: 00 
(03:28:03.872) irt_rawTelegram: 31: 01 01 FE 97 97 52 52 25 25 A7 A7 00 FF 84 84 01 01 FF FF 51 51 57 A8 8A 8A 49 49 25 25 8C 8C FE 01 73 73 52 52 25 25 43 43 78 78 06 06 00 00 74 74 
01:49 05:04 07:00 11:FF 15:04 16:00 17:FF 73:52 78:06 | 81:49 82:00 83:02 84:57 8A:FE 90:B3 93:FF 97:00 A3:03 A4:1A A6:33 A8:39 C9:00 DE:F7   0H
(03:28:03.972) irt_rawTelegram: 01: 02 
(03:28:04.092) irt_rawTelegram: 01: 03 
(03:28:04.212) irt_rawTelegram: 01: 00 
(03:28:05.032) irt_rawTelegram: 2F: 01 01 FE 81 81 52 52 25 25 B1 B1 49 B6 DE DE 01 01 FF FF 0B 0B F7 08 73 73 52 52 25 25 43 43 78 78 05 05 04 04 62 62 05 05 04 04 00 00 0D 0D 
01:49 05:04 07:00 11:FF 15:04 16:00 17:FF 73:52 78:05 | 81:49 82:00 83:02 84:57 8A:FE 90:B3 93:FF 97:00 A3:03 A4:1A A6:33 A8:39 C9:00 DE:F7   0H
(03:28:05.152) irt_rawTelegram: 01: 02 
(03:28:05.252) irt_rawTelegram: 01: 03 
(03:28:05.372) irt_rawTelegram: 01: 00 
(03:28:06.252) irt_rawTelegram: 33: 01 01 FE 73 73 52 52 25 25 43 43 78 78 01 01 FF FF AD AD 01 01 49 49 25 25 07 07 73 73 52 52 25 25 43 43 78 78 07 07 FF FF A1 A1 07 07 00 00 00 00 07 07 
01:49 05:04 07:00 11:FF 15:04 16:00 17:FF 73:52 78:07 | 81:49 82:00 83:02 84:57 8A:FE 90:B3 93:FF 97:00 A3:03 A4:1A A6:33 A8:39 C9:00 DE:F7   0H
(03:28:06.352) irt_rawTelegram: 01: 02 
(03:28:06.471) irt_rawTelegram: 01: 03 
(03:28:06.592) irt_rawTelegram: 01: 00 
(03:28:07.371) irt_rawTelegram: 2B: 01 01 FE A4 A4 52 52 25 25 94 94 1A E5 A6 A6 01 01 FF FF 73 73 33 CC A8 A8 49 49 25 25 AE AE 39 C6 A3 A3 52 52 25 25 93 93 03 FC 
(03:28:07.471) irt_rawTelegram: 01: 02 
(03:28:07.591) irt_rawTelegram: 01: 03 
(03:28:07.711) irt_rawTelegram: 01: 00 
(03:28:08.591) irt_rawTelegram: 35: 01 01 FE 82 82 52 52 25 25 B2 B2 00 FF 83 83 01 01 FF FF 56 56 02 FD 93 93 49 49 25 25 95 95 FF 00 90 90 52 52 25 25 A0 A0 B3 4C C9 C9 07 07 FF FF 10 10 00 FF 
(03:28:08.711) irt_rawTelegram: 01: 02 
(03:28:08.831) irt_rawTelegram: 01: 03 
(03:28:08.932) irt_rawTelegram: 01: 00 
(03:28:09.792) irt_rawTelegram: 31: 01 01 FE 97 97 52 52 25 25 A7 A7 00 FF 84 84 01 01 FF FF 51 51 57 A8 8A 8A 49 49 25 25 8C 8C FE 01 73 73 52 52 25 25 43 43 78 78 06 06 00 00 74 74 
01:49 05:04 07:00 11:FF 15:04 16:00 17:FF 73:52 78:06 | 81:49 82:00 83:02 84:57 8A:FE 90:B3 93:FF 97:00 A3:03 A4:1A A6:33 A8:39 C9:00 DE:F7   0H
(03:28:09.891) irt_rawTelegram: 01: 02 
(03:28:10.011) irt_rawTelegram: 01: 03 
(03:28:10.131) irt_rawTelegram: 01: 00 
(03:28:10.952) irt_rawTelegram: 2F: 01 01 FE 81 81 52 52 25 25 B1 B1 49 B6 DE DE 01 01 FF FF 0B 0B F7 08 73 73 52 52 25 25 43 43 78 78 05 05 04 04 62 62 05 05 04 04 00 00 0D 0D 
01:49 05:04 07:00 11:FF 15:04 16:00 17:FF 73:52 78:05 | 81:49 82:00 83:02 84:57 8A:FE 90:B3 93:FF 97:00 A3:03 A4:1A A6:33 A8:39 C9:00 DE:F7   0H
(03:28:11.071) irt_rawTelegram: 01: 02 
(03:28:11.171) irt_rawTelegram: 01: 03 
(03:28:11.291) irt_rawTelegram: 01: 00 
(03:28:12.172) irt_rawTelegram: 33: 01 01 FE 73 73 52 52 25 25 43 43 78 78 01 01 FF FF AD AD 01 01 49 49 25 25 07 07 73 73 52 52 25 25 43 43 78 78 07 07 FF FF A1 A1 07 07 00 00 00 00 07 07 
01:49 05:04 07:00 11:FF 15:04 16:00 17:FF 73:52 78:07 | 81:49 82:00 83:02 84:57 8A:FE 90:B3 93:FF 97:00 A3:03 A4:1A A6:33 A8:39 C9:00 DE:F7   0H
(03:28:12.271) irt_rawTelegram: 01: 02 
(03:28:12.391) irt_rawTelegram: 01: 03 
(03:28:12.511) irt_rawTelegram: 01: 00 
(03:28:13.291) irt_rawTelegram: 2B: 01 01 FE A4 A4 52 52 25 25 94 94 1A E5 A6 A6 01 01 FF FF 73 73 32 CD A8 A8 49 49 25 25 AE AE 39 C6 A3 A3 52 52 25 25 93 93 03 FC 
01:49 05:04 07:00 11:FF 15:04 16:00 17:FF 73:52 78:07 | 81:49 82:00 83:02 84:57 8A:FE 90:B3 93:FF 97:00 A3:03 A4:1A A6:32 A8:39 C9:00 DE:F7   0H

info:
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
EMS-ESP system status:
  System logging set to None
  LED: off, Listen mode: off

EMS Bus stats:
  Bus is connected, protocol: iRT
  Rx: # successful read requests=26989, # CRC errors=21

Boiler stats:
  Hot tap water: off
  Central heating: active
  Warm Water activated: off
  Warm Water circulation pump available: off
  Warm Water selected temperature: 0 C
  Warm Water desinfection temperature: 0 C
  Warm Water Circulation active: off
  Warm Water current temperature: 55.0 C
  Warm Water current tap water flow: 0.0 l/min
  Warm Water # starts: 0 times
  Warm Water active time: 0 days 0 hours 0 minutes
  Warm Water 3-way valve: off
  Selected flow temperature: 0 C
  Current flow temperature: 33.0 C
  Return temperature: 49.0 C
  Gas: on
  Boiler pump: on
  Fan: on
  Ignition: off
  Circulation pump: off
  Burner selected max power: 0 %
  Burner current power: 0 %
  Flame current: 0.0 uA
  System pressure: 0.0 bar
  System service code: -H (83)
  Heating temperature setting on the boiler: 0 C
  Boiler circuit pump modulation max power: 0 %
  Boiler circuit pump modulation min power: 0 %
  Outside temperature: 0.0 C
  Boiler temperature: 0.0 C
  Warm water storage temperature1: 0.0 C
  Warm water storage temperature2: 0.0 C
  Exhaust temperature: 0.0 C
  Pump modulation: 0 %
  Burner # starts: 0 times
  Total burner operating time: 0 days 0 hours 0 minutes
  Total heat operating time: 0 days 0 hours 0 minutes
  Total UBA working time: 0 days 0 hours 0 minutes

Thermostat stats:

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Soms moetje er een nachtje over slapen voordat het kwartje valt. In versie 1.9.5 heb ik het Thermostaat deel verwijderd 8)7 . Dus het klopt dat je die niet ziet, sorry voor de verwarring.

De log informatie ziet er goed uit ! Als ik even tijd kan maken ga ik volgende week eens testen met lagere weerstand waardes. Kijken of ik het advies van 1 MOhm moet aanpassen.

Bedankt voor de feedback.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Hallo Victor,

Inmiddels ook een bord van Kees gekocht en aan mijn zelfde ecomline gehangen maar eea werkt nog niet lekker. Krijg na invoeren van de tx_mode varianten 4/5 verschillende output. Maar nog niets waardevols. Ik vroeg me twee dingetjes af;
1. Is het zeker dat de 100 kohm vervangen moet worden voor 1.5 mohm naar 5v? Ik vraag dat omdat ik een wemos gebruik op de 3.3v variant. Dus is het zinvol om iets naar de 5v pin kort te sluiten?
2. Is in jou firmware variant de aanpassing in emsuart.h al gedaan of moet ik hem aanpassen en handmatig opnieuw compilen?

Bijgesloten ook even de terminal output op dit moment.

Alvast bedankt voor de info!
Herman

Deze tekst komt na het “set tx_mode 4” commando en restart.

* IRT-ESP version 1.9.5ib43
[FS] System config loaded (541 bytes)
[FS] Custom config loaded (253 bytes)
[WEB] Web server started
[UART] Opened Rx/Tx connection (iRT)
[WIFI] Connecting to SSID: coolbox...
[WIFI] Connected to SSID coolbox (hostname: ems-esp, IP: 192.168.178.31)
[OTA] Listening to firmware updates on ems-esp.local:8266
[SYSTEM] Disabling serial port communication
[NTP] NTP internet time enabled via server pool.ntp.org with timezone 2
[NTP] Internet time: 17:11:21 UTC on 15/3. Local time: 18:11:21 CET
[TELNET] Connected to IRT-ESP version 1.9.5ib43. Type ? for commands.
Error! Unable to read the EMS bus.
Error! Unable to read the EMS bus.
Error! Unable to read the EMS bus.
..

Deze tekst komt na het “set tx_mode 5” commando en restart.

* IRT-ESP version 1.9.5ib43
[FS] System config loaded (541 bytes)
[FS] Custom config loaded (253 bytes)
[WEB] Web server started
[UART] Opened Rx/Tx connection (iRT)
[WIFI] Connecting to SSID: coolbox...
[WIFI] Connected to SSID coolbox (hostname: ems-esp, IP: 192.168.178.31)
[OTA] Listening to firmware updates on ems-esp.local:8266
[SYSTEM] Disabling serial port communication
[NTP] NTP internet time enabled via server pool.ntp.org with timezone 2
[NTP] Internet time: 17:18:26 UTC on 15/3. Local time: 18:18:26 CET
Failed transmitting telegram, status1 97
[TELNET] Connected to IRT-ESP version 1.9.5ib43. Type ? for commands.
Failed transmitting telegram, status1 97
Failed transmitting telegram, status1 97
...
Victor_M schreef op vrijdag 11 oktober 2019 @ 16:45:
Hi Bas,

Ik heb op het print je R5 (100 KOhm naar massa) verwijderd en vervangen door ongeveer 1,5 MegaOhm naar +5 volt. Er zit nu nog een potmeter op, maar die ga ik vervangen door een vast weerstand. Dit zorgt ervoor dat de detectie goed werkt. Daarna heb de software aangepast om het signaal de inverteren en de baud rate aangepast. Ik heb in 'emsuart.h' de volgende defines aangepast:

#define EMSUART_CONFIG (0x1C | (1 << UCRXI) ) // 8N1 (8 bits, no stop bits, 1 parity) + invert
#define EMSUART_BAUD 4800 // uart baud rate for the iRT circuit

Dit werkt voor mij stabiel. De afstand tussen de ketel en thermostaat is zo'n 5 meter.

Wat handig is om te weten is dat je 'log j' op de telnet port moet gebruiken om het verkeer te zien.

Ik ben ook bezig met een GitHub pagina om alle informatie en software aanpassingen te verzamelen. Als die er is, post ik hier het linkje nog wel even.

Victor

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Of heeft iemand al eens iets geprobeerd mbv de https://www.nefit-bosch.nl/pages/easy-voor-iedereen? Hierop een wemos oid aansluiten?
Gr. Herman

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Hoi Herman,

Het interface circuit zelf is een 5 volt circuit aan de uitgang zit een conversie naar 3,3 volt. Welk bord gebruik je, het losse printje; de interface of de complete pint met de wemos; de gateway ? De 1.5 MOhm moet inderdaad naar 5 Volt.

Wat voor UBA zet er in de ketel ? Een UBA4000, de grijze of een UBA4001, de witte ? Met wat voor thermostaat ?

De firmware versie 1.9.5 heeft die aanpassingen al in zich. Het is niet nodig om de software zelf te compileren.

De active mode, 'set tx_mode 5' werkt alleen als er geen Thermostaat op de bus zit. De 'set tx_mode 4' is om parallel aan de thermostaat te werken.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Hoi Victor,

Ik heb het losse IRT bordje van Kees, zelf een lolin wemos d1 mini aangesloten. (VC/GND/D7/D8).
In de ketel zit een UBA4000 met een moduline 30 thermostaat. Ik zal de interface weer op TX 4 terugzetten.
De software versie is nu jou development versie 1.9.5ib43.

Nog even dubbelchecken; de 1,5MOhm moet op het ineterface bord van Kees worden gezet, tussen massa en 5V of het linker pin van J5 naar 5V? heb je misschien een fotootje daarvan?

Super bedankt voor je hulp!

Afbeeldingslocatie: https://tweakers.net/i/VI_uEZa8C-ts0ab3TzmSdBB1wy8=/800x/filters:strip_icc():strip_exif()/f/image/IJAM1pGWrKz9MJ517vd7QItT.jpg?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Hoi Victor,

Zit eea nog eens te lezen. Ik heb het IRT bord van Kees. Dan hoef ik toch niet meer de modificatie met de 1,5MOhm uit te voeren?

Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
@coolbox13 Het iRT interface bordje van bbqkees is toch al een aangepaste versie met de 1,5 M weerstand? Zit er op jouw bordje aan de andere kant een weerstand ?

Edit: ha bijna tegelijk.
Ik had ook de iRT versie van kees, en daar zit dus op de achterkant een weerstand, die zou 1,5 M Ohm moeten zijn.

[ Voor 30% gewijzigd door u_nix_we_all op 17-03-2020 17:29 ]

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Hoi,

Ik heb wel een weerstand aan de onderkant, maar denk 1MOhm, en volgens mij niet tussen de 5V en R5. OP R5 zie ik aan de bovenkant niets zitten. Heb maar even twee fotootjes gemaakt van boven en onderkant.

Gr. Herman

Afbeeldingslocatie: https://tweakers.net/i/JnnaUUOm49lMSzCfzT3uOHYIAZ8=/800x/filters:strip_icc():strip_exif()/f/image/tfdH1VgmZWKGSZUuOX13Avl9.jpg?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/6FZYTmSwLHV0lpwAZqom2JAmtmE=/800x/filters:strip_icc():strip_exif()/f/image/Y7jKzTxji1GJQJcGD05mUtnU.jpg?f=fotoalbum_large

[ Voor 11% gewijzigd door coolbox13 op 17-03-2020 17:51 ]


Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
Ah OK, dat is inderdaad wel de weerstand waar het om gaat. Je hebt er ook 1 MOhm opzitten, dat had ik ook en kreeg er geen goede resultaten mee. Die zou je moeten vervangen door 1,5MOhm (of bijv. nog een 470K in serie ertussen moeten zetten, bij werkte een extra 330K ook al goed)

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@coolbox13 De modificatie ziet er goed uit. Het klopt dat R5 er niet opzit (dat is juist de bedoeling) Er zit inderdaad een 1 MOhm weerstand op. Maar dat zou op een UBA4000 moeten werken. De locatie van de weerstand is ook correct, het is even zoeken naar de spoortjes maar het klopt echt.

Ik heb het zelf werken op een gemodificeerde EMS Gateway. Ik heb vandaag een los interface printje binnen gekregen. Ik ga daar binnenkort (we mogen toch de deur niet uit) mee testen. Kijken of het advies van de weerstand anders moet zijn. Zelf heb ik er 1,5 MOhm op.

Wat ik wel een aantal keer heb gehad is dat de draadjes met de isolatie onder het kroonsteentje zaten en geen contact maakte. De makkelijkste test is om even met de multimeter op de de twee rondjes na de spoeltjes te meten, daar waar L3 en L4 op de print staat. Daar zal iets van 9 tot 12 Volt op moeten staan.

De best plek om aan te sluiten is aan de kant van de thermostaat. Misschien ten overvloede, maar de jack pluggen op de boiler zelf kunnen (vooralsnog) niet gebruikt worden.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Ik ga morgen solderen. Laat het weten wat er gebeurt. Dank je.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Hoi Victor,

In tegenstelling tot mijn bericht van zojuist dus nog even niet solderen...:))

Dat van die jack niet gebruiken was ik nog nergens tegengekomen.
Nog weer even voor de zekerheid; Moet dus de aansluiting direct bedraad vanaf de blauwe connectoren op het bordje maken?.. en dan naar aansluiting 5 en 6 op de UBA. En als laatste de draad op de UBA tussen 4 en 5 weghalen? Las ergens iets over het soort draad wat daar naar toe moet, maar kan het niet meer terug vinden. Was daar nu iets bijzonders mee? Kun je daar gewoon twee aderig stroomdraad voor gebruiken?

Alvast bedankt!

Afbeeldingslocatie: https://tweakers.net/i/OAgMtavSuUEjayobtMsGdfkUgjg=/f/image/SuzomdOv9IweLqtDcQXyCyB5.png

[ Voor 4% gewijzigd door coolbox13 op 17-03-2020 22:45 ]


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@coolbox13 Aan de kant van de thermostaat, bij de twee draadjes die daar zitten twee draadjes bij zetten en naar het blauw kroonsteentje op de print. Meer niet. Draad maakt niet heel erg uit, stukje tweeling snoer kan maar is meestal een beetje groot.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
@Victor_M ,@u_nix_we_all ,

hij hangt eraan maar nog steeds geen succes. Mijn thermostaat hangt onder de ketel (Moeilijk verhaal met zones en een kleine loop, via KNX kleppen aangestuurd) dus er zit maar een halve meter tussen ketel en thermostaat. Thermostaat kon ik niet van de muur af krijgen dus maar bij het blokje op de ABU geprikt. Nog geen resultaat.
Volts gemeten op de ABU, uitgang thermostaat. Net iets meer dan 6v.
Op het bordje bij L3, L4 idem dito. dus ik haal daar geen 9-12v...
Toch maar aan de slag met de weerstand?

heb ook de foto's maar weer bijgesloten.

Afbeeldingslocatie: https://tweakers.net/i/_R6CneNDuxzgSwvpCzsUSDBa6Zg=/800x/filters:strip_icc():strip_exif()/f/image/FWbL4QPe8kx3LwzNBXLWVaNj.jpg?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/Yp7iejDicuLdlJxeHn01l5myjHU=/800x/filters:strip_icc():strip_exif()/f/image/cBvHjonjIYizs1oBJMjsxWL5.jpg?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/lGWEResHR5BnS7Lpk8SuHpdyNik=/800x/filters:strip_icc():strip_exif()/f/image/tlMfy80BhT1EVUvviquPyk8m.jpg?f=fotoalbum_large

[ Voor 35% gewijzigd door coolbox13 op 18-03-2020 11:51 ]


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@coolbox13 Net even hier gemeten op de aansluiting. Ik heb hier 6,5 Volt. Dus die 6 volt lijkt me goed. Dit zou genoeg spanning val moeten geven om met 1 MOhm ook goed het signaal te detecteren.

Waar heb je de aansluit gegevens vandaan om de Wemos aan het printje aan te sluiten ?

Ik heb vanmorgen via Marktplaats een Moduline 30 thermostaat gekocht (heb nu een Moduline IV) als die binnen is kan ik wel even een zelfde setup bouwen en testen of het bij mij ook werkt.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
@Victor_M , ik heb het schema van Kees gebruikt; 3,3 wemos naar VC op interface, GND op wemos naar GND op interface, D8 op wemos naar TX op interface, D7 op wemos naar RX op interface.
De 6,3V heb ik gemeten op de machine kant van de kroonsteen op de UBA, op de thermostaat/interface kant van de kroonsteen, op de blauwe connector van de interface en op L3,L4 op het interface bordje. Dus dat lijkt op orde.
Zeker weten mbt de software versie? Nu de 1.95 dev variant van jou.
Heb ook al een ander wemos bordje geprobeerd.
Nog een keertje op 1.94 proberen?
Wel leuk dat je die moduline 30 hebt!!! Ben benieuwd
Gr. Herman

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@coolbox13 Gisteravond nog even een test gedaan met een los interface bordje. Met een potmetertje maar dan in de stand van +/- 1 MOhm.

Bij mij werkt dit gewoon. Maar met twee verschillen; Het bordje voed ik met 5 Volt (en niet met 3.3v) en de gele jumper staat op de 4K7 stand. Dit om de 5 volt output terug te brengen naar 3.3 Volt.

Tevens heb ik een nieuwe versie op github gezet (1.9.5ib44). Hier zit een fix in voor de webgui (die gaf geen temperaturen weer) en op de telnet debug werd er heel vaak 'Starting scheduled MQTT publish' getoont.

Afbeeldingslocatie: https://tweakers.net/i/4oOiK8b5RvCvrc7tFN6iVg6euCw=/800x/filters:strip_icc():strip_exif()/f/image/Lt6ls2UKFwSoAob9T5PkEc9C.jpg?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
@Victor_M ,

Als ik deze firmare ( https://github.com/Victor...d/IRT-ESP-dev-d1_mini.bin ) upload naar het bord blijft de versie op 44 staan ipv 45. Kan het zijn dat de goede file nog niet online staat?

Groeten Herman

Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
@coolbox13 @Victor_M
Versie 44 is de laatste versie toch? Maar ik heb ook het probleem, als ik firmware update vanaf versie 43 wil doen, upload hij wel de file maar voert de update niet door.

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Oef.. mijn fout.. lezen blijft moeilijk. Hij is inderdaad van 43 naar 44 gegaan. Brainfart.. vrees ik. Sorry!

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
@Victor_M , @u_nix_we_all ,

Helaas, ook op 5v geen resultaat. Wordt wel een beetje moedeloos. Dan toch maar 1.5 MOhm proberen?

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@u_nix_we_all Ik heb even getest met het updaten via de web interface. Maar dat werkt inderdaad niet. Ik update eigenlijk altijd via de OTA ( python espota.py -i 192.168.1.30 -f IRT-ESP-dev-d1_mini.bin ) Deze dingen zijn altijd wat lastig te debuggen. Ik zal er eens naar kijken.

@coolbox13 Vervelend dat het nog steeds niet werkt. Je kan inderdaad eens de 1.5 MOhm weerstand proberen. Ik krijgen morgen (vrijdag) als het goed is de Moduline 30 binnen.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
@Victor_M ,@u_nix_we_all ,

Die update ging dan bij mij wel weer via de web interface... miste alleen het versienummertje..
Ik ga die 1.5MOhm proberen. Moet toch gewoon thuis knutselen..:)

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@coolbox13 Vandaag de Moduline 30 ontvangen. Even aangesloten en getest. Werkte zonder problemen.

Nog even gekeken naar de weerstandswaarde. Het werkte van +/- 600 kOhm maar het is inderdaad het meest gevoelig bij 1.5 MOhm.

Als je via de telnet het commando 'log j' ingeef komt er dan iets voorbij ?

Afbeeldingslocatie: https://tweakers.net/i/q4HADIMiJorLV63QDB-oI-palX4=/f/image/Qs2qiIzFMh9k1Pw1Lq7N7JVA.jpg

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
@Victor_M ,

ik kom dichterbij...
Met de thermostaat in parallel zag ik bij het opstarten een "fout" melding op het display van de moduline. Iets over test afgewisseld met iets over UBA. Ging te snel weg voordat ik het kon fotograferen.
Werkte nog steeds niet. Nog steeds in de 5v variant.

Daarna de moduline ontkoppeld en de interface dus enkel aangesloten. Na het commando set tx_mode 5 zag ik met log j enkele berichten binnen komen. Zie kopie hieronder. Na de eerste berichten geen connectie meer. Op de webinterface uberhaupt geen sjoege over connect oid.

Wat zou de volgende stap kunnen zijn? Toch weer terug naar 1MOmh? en zonder moduline?

gr. Herman


In de 5v variant:

* IRT-ESP version 1.9.5ib44
[FS] System config loaded (554 bytes)
[FS] Custom config loaded (253 bytes)
[WEB] Web server started
[UART] Opened Rx/Tx connection (iRT)
[WIFI] Connecting to SSID: coolbox...
[WIFI] Connected to SSID coolbox (hostname: irt-esp, IP: 192.168.178.31)
[OTA] Listening to firmware updates on irt-esp.local:8266
[SYSTEM] Disabling serial port communication
Failed transmitting telegram, status1 97
[TELNET] Connected to IRT-ESP version 1.9.5ib44. Type ? for commands.
lFailed transmitting telegram, status1 97
og j

En nu in de 3.3v variant:


System Logging set to Jabber mode
Failed transmitting telegram, status1 97
(00:00:16.159) irt_tx: 12: 90 A5 F0 28 00 00 73 52 25 43 78 01 FF AD 01 35 F6 98
Failed transmitting telegram, status1 97
(00:00:20.160) irt_tx: 1E: 90 A5 F0 28 00 00 82 A5 F0 3A 00 00 A3 A5 F0 1B 00 00 A4 A5 F0 1C 00 00 8A A5 F0 32 00 00
Failed transmitting telegram, status1 97
(00:00:24.161) irt_tx: 12: 90 A5 F0 28 00 00 73 52 25 43 78 07 FF A1 07 00 D0 6C
Failed transmitting telegram, status1 97
(00:00:28.162) irt_tx: 1E: 90 A5 F0 28 00 00 82 A5 F0 3A 00 00 A3 A5 F0 1B 00 00 A4 A5 F0 1C 00 00 8A A5 F0 32 00 00
Error! Unable to read the EMS bus.
No poll from boiler, check bus
Failed transmitting telegram, status1 97
No poll from boiler, check bus
No poll from boiler, check bus
No poll from boiler, check bus
No poll from boiler, check bus
No poll from boiler, check bus
No poll from boiler, check bus
No poll from boiler, check bus
Error! Unable to read the EMS bus.
^No poll from boiler, check bus


System Logging set to Jabber mode
Failed transmitting telegram, status1 97
(00:00:20.162) irt_tx: 1E: 90 A5 F0 28 00 00 82 A5 F0 3A 00 00 A3 A5 F0 1B 00 00 A4 A5 F0 1C 00 00 8A A5 F0 32 00 00
Failed transmitting telegram, status1 97
(00:00:24.164) irt_tx: 12: 90 A5 F0 28 00 00 73 52 25 43 78 07 FF A1 07 00 D0 6C
Failed transmitting telegram, status1 97
(00:00:28.165) irt_tx: 1E: 90 A5 F0 28 00 00 82 A5 F0 3A 00 00 A3 A5 F0 1B 00 00 A4 A5 F0 1C 00 00 8A A5 F0 32 00 00
Error! Unable to read the EMS bus.
No poll from boiler, check bus
Failed transmitting telegram, status1 97
No poll from boiler, check bus
No poll from boiler, check bus


Half uurtje later: mijn moduline software versie is 2.20. Toch nog een keertje aangesloten (met thermostaat in parallel )op 5V. Maar in de webinterface nog steeds geen connectie... Toch nog iets andere weerstand?

System Logging set to Jabber mode
Error! Unable to read the EMS bus.
(00:01:05.911) irt_rawTelegram: 40: 32 22 7C 82 56 A6 84 A3 A2 2C 4E 8A 47 FC DF 84 6F 17 06 01 90 39 6B 57 C9 73 AF A1 DE B7 38 49 01 90 55 BF F4 82 D8 D9 64 A3 0D B7 57 8A 7A 29 DA 84 B4 55 B8 01 90 C2 31 C9 81 9A FC 77 93 60
(00:01:05.914) irt_otherTelegram: 40: 32 22 7C 82 56 A6 84 A3 A2 2C 4E 8A 47 FC DF 84 6F 17 06 01 90 39 6B 57 C9 73 AF A1 DE B7 38 49 01 90 55 BF F4 82 D8 D9 64 A3 0D B7 57 8A 7A 29 DA 84 B4 55 B8 01 90 C2 31 C9 81 9A FC 77 93 60
(00:01:21.433) irt_rawTelegram: 40: 9F 1D A4 AD 0D D3 01 90 1C 30 68 82 7E 90 0C A3 C5 C9 3F 8A 03 8C 8E 84 07 3D 7E 01 90 2E 71 11 73 52 25 43 78 01 FF AD 73 52 25 43 78 07 FF A1 01 90 68 CF 57 82 E2 04 4F A3 F8 AC C8 8A 32 09
(00:01:21.436) irt_otherTelegram: 40: 9F 1D A4 AD 0D D3 01 90 1C 30 68 82 7E 90 0C A3 C5 C9 3F 8A 03 8C 8E 84 07 3D 7E 01 90 2E 71 11 73 52 25 43 78 01 FF AD 73 52 25 43 78 07 FF A1 01 90 68 CF 57 82 E2 04 4F A3 F8 AC C8 8A 32 09
Error! Unable to read the EMS bus.
(00:01:41.692) irt_rawTelegram: 40: CA 84 E6 9C 13 01 90 76 79 81 01 30 01 65 07 CC BB 58 01 90 3D 03 E6 82 2A D9 99 A3 B0 A4 78 8A D4 5A 4A 84 C6 97 7F 01 90 23 78 2F 73 52 25 43 78 04 00 70 04 00 A8 96 01 90 A5 F6 30 82 A5 DD
(00:01:41.695) irt_otherTelegram: 40: CA 84 E6 9C 13 01 90 76 79 81 01 30 01 65 07 CC BB 58 01 90 3D 03 E6 82 2A D9 99 A3 B0 A4 78 8A D4 5A 4A 84 C6 97 7F 01 90 23 78 2F 73 52 25 43 78 04 00 70 04 00 A8 96 01 90 A5 F6 30 82 A5 DD
(00:01:56.799) irt_rawTelegram: 40: 8E A3 35 D3 AE 8A 43 7D E1 84 76 92 12 01 90 84 23 0D 73 52 25 43 78 05 04 62 05 00 09 21 01 90 7E 90 1E 82 C5 C9 1E A3 03 8C A7 8A 07 3D 70 84 2E 71 05 01 90 68 CF 57 C9 E2 04 04 DE F8 AC B5
(00:01:56.801) irt_otherTelegram: 40: 8E A3 35 D3 AE 8A 43 7D E1 84 76 92 12 01 90 84 23 0D 73 52 25 43 78 05 04 62 05 00 09 21 01 90 7E 90 1E 82 C5 C9 1E A3 03 8C A7 8A 07 3D 70 84 2E 71 05 01 90 68 CF 57 C9 E2 04 04 DE F8 AC B5
Error! Unable to read the EMS bus.
(00:02:16.708) irt_rawTelegram: 40: 01 90 32 09 D0 82 E6 9C 15 A3 76 79 B2 8A C6 7E FE 84 ED CB 40 01 90 5D D5 55 81 89 89 9C 93 D0 A9 BC A4 D8 C0 26 01 90 9E AD 33 82 00 DC D9 A3 19 66 10 8A 6F 49 69 84 DF 21 A7 01 90 2B C1 E9
(00:02:16.711) irt_otherTelegram: 40: 01 90 32 09 D0 82 E6 9C 15 A3 76 79 B2 8A C6 7E FE 84 ED CB 40 01 90 5D D5 55 81 89 89 9C 93 D0 A9 BC A4 D8 C0 26 01 90 9E AD 33 82 00 DC D9 A3 19 66 10 8A 6F 49 69 84 DF 21 A7 01 90 2B C1 E9
Error! Unable to read the EMS bus.
(00:02:32.702) irt_rawTelegram: 40: 73 52 25 43 78 01 FF AD 73 52 25 43 78 07 FF A1 01 90 40 9A 4A 82 A8 A6 61 A3 93 B4 7E 8A BB 9E AF 84 DF 3A CB 01 90 9B CB B8 01 30 07 7D 07 CC CA 85 01 90 BF 4E D6 82 06 6F 2B A3 D4 28 B2 8A
(00:02:32.705) irt_otherTelegram: 40: 73 52 25 43 78 01 FF AD 73 52 25 43 78 07 FF A1 01 90 40 9A 4A 82 A8 A6 61 A3 93 B4 7E 8A BB 9E AF 84 DF 3A CB 01 90 9B CB B8 01 30 07 7D 07 CC CA 85 01 90 BF 4E D6 82 06 6F 2B A3 D4 28 B2 8A

[ Voor 35% gewijzigd door coolbox13 op 21-03-2020 17:36 . Reden: nieuwe info ]


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@coolbox13 Dit is inderdaad een hele lastige. In beide gevallen wordt er geen data "gezien" van de boiler.

In active modes 'tx_mode 5' is de data die je ziet, de data die het bordje probeert te versturen. Maar omdat er geen poll (0x01 byte) van de boiler komt kan het bericht niet verzonden worden. Het bericht wordt dan ook met een time out (status1 97) afgebroken.

Het tweede deel in passive mode (tx_mode 4) lijkt alleen de data van de thermostaat te laten zien. Ieder byte wat de thermostaat verstuurt wordt geëchood door de boiler. Dus er moeten veel meer dubbele bytes in zitten. Een valide frame ziet er zo uit : '01 01 FE 90 90 C3 C3 79 79 F2 F2 CF 30 82 82 C3 C3 79 79 E0 E0 00 FF A3 A3 C3 C3 79 79 C1 C1 03 FC A4 A4 C3 C3 79 79 C6 C6 1A E5 8A 8A C3 C3 79 79 E8 E8 FE 01 00' Zoals je ziet zitten daar veel dubbele bytes in.

Je kan een nog hogere weerstand proberen, 2 MOhm, maar daar loopje wel het risico mee dat er teveel ruis opgepikt wordt. Wat ik ook wel gezien heb is dat het printje gevoelig is hoe de iRT bus aangesloten is. Probeer eens de draadjes van de iRT bus in het blauwe blokje om te draaien. Probeer eens een andere adapter voor de Wemos of een powerbank.

Veel meer ideeën heb ik eigenlijk niet meer.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
@Victor_M ,

zit nog wat te klooien met 1Mohm en een potmeter van 1Mohm, maar kom nog niet verder. Je schrijft op je github pagina iets over de weerstand versus de afstand van de boiler. Bij mij is dat dus heel kort, 50cm oid. Moet dan de weerstand omhoog of omlaag?
Groeten Herman
IN mode 5 krijg ik met veel weerstand ook crc errors. Komt dat door de ruis?
irt_rawTelegram: 07: 00 02 01 02 02 01 03
(00:02:39.937) irt_otherTelegram: 07: 00 02 01 02 02 01 03
(00:02:40.057) irt_rawTelegram: 01: 00
(00:02:40.157) irt_tx: 1E: 90 A5 F0 28 00 00 82 A5 F0 3A 00 00 A3 A5 F0 1B 00 00 A4 A5 F0 1C 00 00 8A A5 F0 32 00 00
(00:02:40.737) irt_rawTelegram: 0B: 01 03 02 02 03 04 00 00 01 05 02
(00:02:40.738) irt_otherTelegram: 0B: 01 03 02 02 03 04 00 00 01 05 02
(00:02:41.537) irt_rawTelegram: 0D: 03 01 00 03 01 01 02 01 03 01 00 80 C0
(00:02:41.537) irt_otherTelegram: 0D: 03 01 00 03 01 01 02 01 03 01 00 80 C0
(00:02:41.657) irt_rawTelegram: 01: 02
(00:02:41.877) irt_rawTelegram: 03: 03 00 00
(00:02:41.877) irt_crcErr1: 03: 03 00 00
Failed transmitting telegram, status1 99
(00:02:42.917) irt_rawTelegram: 12: 01 01 03 02 03 03 03 00 01 01 02 02 06 03 01 00 00 01
(00:02:42.918) irt_otherTelegram: 12: 01 01 03 02 03 03 0

[ Voor 62% gewijzigd door coolbox13 op 04-04-2020 19:20 ]


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@coolbox13 Ik heb twee weken geleden via marktplaats een UBA4001 en een UBA Handterminal weten aan te schaffen. De extra UBA maakt het meten een stuk makkelijker.

Afbeeldingslocatie: https://tweakers.net/i/6kP96r2ocOLRHnrOyb3Q3dRrl48=/800x/filters:strip_icc():strip_exif()/f/image/21KQXeScb3LmNBU733tbAuVO.jpg?f=fotoalbum_large

Ik ben nog eens aan het spelen met weerstand waardes geweest. Bij de opstelling van de foto (zeer korte afstand) werkt het zelfs nog als er geen weerstand gemonteerd is. De schakeling wordt dan erg gevoelig voor storing, maar is misschien een idee om eens uit te proberen ? Maar eerlijk gezegd zou ik verwachten bij 2 MOhm dat er wel signal gedetecteerd zou worden.

Probeer eens de schakeling te voeden via een powerbank, puur om uit te sluiten dat er niet een of andere rare vereffeningsstroom door de schakeling loopt (de schakeling is niet galvanisch gescheiden).

Maar ik denk dat het zonder oscilloscoop lastig wordt om te achter halen wat er nu precies mis gaat. Maar ik ga van de week nog wel eens meten of er nog iets te optimaliseren is.

Acties:
  • 0 Henk 'm!

  • coolbox13
  • Registratie: Maart 2012
  • Laatst online: 23-01-2023
Hoi @Victor_M ,

Zonder weerstand ga ik ook nog proberen. Bedacht me nog wel iets maar denk eigenlijk dat het niet erg veel uitmaakt; bij mij is de pomp van de ecomline eruit gehaald omdat ik een externe "slimmere" pomp heb en dus daar op kon besparen. Verder heb ik regelmatig 2F fouten. Dat gaat over doorstroming. Bij mij loopt er een klein loopje met daarop 5 kleppen die de 5 zones leveren. Kleppen worden gestuurd door KNX systeem. Als er dus geen vraag is gaan alle kleppen dicht en loopt er dus slechts een klein loopje van 4 meter. De thermosstaat hangt er naast en staat hoog ingesteld gedurende de dag om in alle gevallen warm water te leveren als er vraag is. Als laatste; de ketel doet alleen verwarming, geen warmwater. Kortom beetje vreemde opstelling. Vandaar ook de wens om de ketel anders te kunnen aansturen; in samenwerking met de vraag vanuit KNX etc. Misschien dat het je nog wat op weg helpt met suggesties..:)))

Verder heb ik een bosch/nefit Easy Connect adapter gescoord. Die zou ook het IRT naar EMS moeten kunnen omzetten. Dan kan ik de interface gebruiken zoals hij oorspronkelijk gemaakt is. Kom er nog niet helemaal uit hoe ik het bordje dan weer naar de EMS versie omzet, maar dat komt wel.
Ik vroeg me af of je een suggestie hebt hoe ik het zou kunnen aansluiten.
Een optie is om de moduline af te koppelen en de via het EMS/IRT bord de ketel aan te gaan sturen. Zijn vrij simpele opdrachten; aan/uit met een zekere temperatuur. Kan dan de combi logica maken met de behoefte. De andere variant is eerst eens aansluiten naast de moduline om te starten met uitluisteren om te kijken wat de thermostaat en ketel op dit moment überhaupt aan het doen zijn. De thermostaat zet de behoefte nu om 23.00 laag en om 05.00 weer hoog. De KNX kleppen werken tussen die tijden ook niet. Dat werkt in ieder geval voor het moment goed.
Dus...: kan ik, denk je, de easy adapter parallel schakelen op de twee draadjes die nu voor het bordje van kees bedoeld waren? Of zou ik hem tussen de ketel en de thermostaat moeten zetten zoals in de handleiding staat. (die gaat er dan wel vanuit dat je de oude thermostaat voor een EMS compatible variant zet.)
Alvast bedankt voor het meedenken..:))

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@coolbox13 Ik heb hier een UBA met alleen een thermostaat er aan en daar komt ook een gewoon iRT signaal uit. Dus ik denk dat dat het ontbreken van de pomp niet uitmaakt.

Het verbaasde me nog steeds dat in active mode, als de interface het enige device op de bus is, er niets wordt gedetecteerd. Wat erg jammer is want ik heb gisteren juist de PID regeling aan de praat gekregen waardoor het mogelijk is om rechtstreeks van af MQTT de ketelwater temperatuur te sturen. Ben nog een het testen om de juiste P/I/D parameters in te regelen.

Om het interface printje terug te krijgen naar EMS mode is een kwestie van de extra weerstand verwijderen en op de lege plek van R5 een 100 kOhm weerstand plaatsen.

Volgens mij ga je van de ketel naar de adapter van de adapter naar de thermostaat. Het stukje tussen de adapter en de thermostaat is dan EMS. Daar moet dan de EMS interface parallel aan. (Maar volgens mij doet de Moduline 30 geen EMS ?) Ik weet alleen niet of de EMS print als standalone kan draaien (dus zonder thermostaat). Ik denk niet dat het ooit zo gebruikt is.

Acties:
  • 0 Henk 'm!

  • u_nix_we_all
  • Registratie: Augustus 2002
  • Niet online
@Victor_M Ik zag dat je een nieuwe build had, 1.9.6, dus even geprobeerd. Nog steeds geen succes via de webinterface, dus espota weer gebruikt. Ziet er goed uit, maar tot nu toe alleen met tx-mode 4 (passief) gebruikt. Ben wel benieuwd naar je ervaringen met de PID regeling, maak je daarbij ook gebruik van een temp sensor (ds18b20) op de esp ?

You don't need a parachute to go skydiving. You need a parachute to go skydiving twice.


Acties:
  • +1 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@u_nix_we_all Het updaten via de Web GUI was inderdaad een lastig probleem. Ik denk dat ik het eindelijk gevonden heb. Maar de gefixed versie moet eerst geladen worden via de 'espota' voordat het weer werkt (iets met kip en ei).

Ik vraag via MQTT een CV watertemperatuur aan (komt van een ander script). De PID regeling stuurt dan de brander modulatie van de ketel aan. Op basis van het verschil tussen de huidige water temperatuur en de aangevraagde water temperatuur wordt dan de brander modulatie ingesteld. Maar het is nog niet koud genoeg geweest om het echt te testen. Het lastigste is de juiste P,I,D waarde te vinden.

Maar het idee om via een externe DS18b20 de ketel aan te sturen is ook wel interessant. Dan wordt het een vervanging van de 'gewone' thermostaat.

Acties:
  • 0 Henk 'm!

  • Chreetz
  • Registratie: Mei 2020
  • Laatst online: 06-07-2020
Dag allemaal,

Ook ik was bezig met het uitlezen van de communicatie tussen Nefit Ecomline Classic hrc30 en Moduline 30. Ik kon de datagrammen lezen, maar er niet veel chocola van maken. De wiki en code van @Victor_M helpt veel. Goed werk!

Hoewel ik nauwelijks crc-errors krijg, komen er bij mij maar weinig waardes binnen. Ik heb de code van GitHub gekloond en zelf een build gedaan. Enige aanpassing is dat ik een NodeMCUv2 gebruik, mijn EMS interface niet inverteert en ik de uart init in de code daarop heb aangepast. Zijn er verschillende 'smaken' iRT?

Chris

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@Chreetz Goed om te horen dat de informatie bruikbaar is. Het is inderdaad wel een hele puzzel geweest (is het nog steeds).

Voor zover ik weet zijn er geen verschillende dialecten in het iRT protocol. Waar wel een groot verschil in zit is de hoeveelheid informatie die door de thermostaat aangevraagd wordt. De ketel zelf publiceert geen informatie. Alle informatie over de lijn wordt aangevraagd door de thermostaat. Maar meestal zit er wel de uitgaande watertemperatuur en de status (CV / warm water) in de signalering. De Moduline 300 lijkt meer informatie op te vragen (oa. retoer water temp).

Als je een dump van de signalering heb wil ik wel even kijken wat er allemaal in zit.

Ik gebruik zelf de interface in active mode. Dus als vervanging van de thermostaat. Daardoor is het makkelijker de extra informatie aan te vragen.

Zou het helpen als ik er een setting bij maak om het inverteren van de irt Bus via de software te kunnen selecteren ?

Acties:
  • 0 Henk 'm!

  • Chreetz
  • Registratie: Mei 2020
  • Laatst online: 06-07-2020
@Victor_M Dank voor je reactie.

Ik heb al wat data op GitHub (zie mijn reactie daar). Dat is raw data van eigen sketch, een dump van de logic analyser en een poging tot analyse in in Excel. Dat geeft misschien al een beeld. Morgen zal ik met iRT-EMS een dump maken. Wellicht kun je naar beide eens kijken.

Zelf compileren en uploaden vormde geen probleem. Een setting inverteren of niet-inverteren heeft voor mij geen haast. Het handige van een niet-geinverteerd signaal is dat je het ook met Putty oid direct kan bekijken. Zo heb ik mijn eerste datadumps gemaakt. (login analyser + putty tegelijk).

Hardwarematig veranderen is het verwisselen van pin 2 en 3 van LM393 - ook geen grote klus. Mijn hardware staat nog op een breadboard en is aangesloten met een 10m lange kabel door de woonkamer bij het testen. Morgen zal ik de soldeerbout eens pakken en eea wat definitiever maken, zodat het de hele dag kan blijven zitten zonder dat iedereen zijn nek breekt.

Ik heb de moduline 30 nog niet opengemaakt. Wat zit daarin? Enige kans op uitlezen en reverse-engineeren van die software?

Mijn doel is aanvoer, en buitentemperatuur uitlezen. Die staan op het display na een druk op de knop - dus die info moet er zijn. Daarnaast is retour en tapwatertemp interessant.

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@Chreetz Ik heb even het github ticket bekeken maar ik zie er geen data aanhangen ?

De flow temp is het 0xA4 bericht (A4 5D 17 42 19 in ruw formaat A4 A4 5D 5D 17 17 42 19 E6). Hier is 0x19 de temp in graden. De buiten temp is het 0x8A bericht (8A C3 79 E8 67). De laatste byte is de meet waarde. Maar dat is een ruwe waarde, dus niet in celsius. Ik heb geen buitensensor dus ik heb deze conversie van ruwe waarde naar celsius nog niet gemaakt.

Hieronder de print van de moduline 30. Er zit een voedings en lijn detectie chip (Beatronics), een micro (Nec), een eeprom en een opamp voor de temp sensor..
Afbeeldingslocatie: https://tweakers.net/i/N0tqYeSYXM1EYnx3tGOZNfnHcbA=/232x232/filters:strip_icc():strip_exif()/f/image/3NGmtQa9y6gNkkEpOu2kGmrS.jpg?f=fotoalbum_tileAfbeeldingslocatie: https://tweakers.net/i/1oAQ2FifOcxX-Ri51LH4l6zFyAw=/232x232/filters:strip_icc():strip_exif()/f/image/Ch6quKnJeqArdY2LKaYawitu.jpg?f=fotoalbum_tile

Acties:
  • 0 Henk 'm!

  • Chreetz
  • Registratie: Mei 2020
  • Laatst online: 06-07-2020
@Victor_M bedankt voor het delen. De eeprom zou ik wel kunnen uitlezen, maar ik verwacht alleen settings daarin. Volgens de NEC documentatie is er voor de uPD78 (althans voor sommige uit de familie) een mogelijkheid tot in circuit programming. Dat zal een stuk lastiger zijn.

Ik heb een link naar mijn data in de ticket bijgevoegd.

Acties:
  • +1 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@Chreetz Ik heb op github het issue geupdate https://github.com/Victor-Mo/IRT-EMS-ESP/issues/4 Maar de data uit de hex dump ziet er in mijn ogen heel normaal uit. De moduline 30 vraagt niet heel veel informatie op. Uitgaande CV watertemperatuur, pomp aan/uit, status (brander aan/uit, 3-weg klep). Ruwe waarde van de externe temepratuur sensor.

Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Hoi allemaal,

Alweer een tijdje geleden, ik heb gisteren mijn interface geüpdate naar de laatste versie. In de eerste instantie werkte niks meer maar na mijn aanpassing die ik eerder al gedaan heb om het set_water comando te koppelen aan een mqtt bericht werkt de kachel gewoon weer. Ik zou alleen graag het warm water bedrijf aan en uit kunnen zetten. Heb 1 van jullie dit al werkend gekregen? Ik krijg deze info uit de ketel via mqtt

wWSelTemp":88,"
selFlowTemp":0,"
selBurnPow":0,"
pumpMod":0,"
outdoorTemp":0,"
wWCurTmp":46,"
curFlowTemp":12,"
retTemp":13,"
boilTemp":0,"
wWActivated":"off","
wWOnetime":"off","
burnGas":"off","
heatPmp":"off","
fanWork":"off","
ignWork":"off","
heating_temp":75,"
wWHeat":"on","
burnStarts":0,"
burnWorkMin":0,"
ServiceCode":"0H","
ServiceCodeNumber":3

Zoals je ziet zegt de info dat warmwater bedrijf uit staat, maar deze staat aan.
Ik begin er toch in te geloven dat er misschien inderdaad meerdere smaken iRT zijn. Voor de info ik heb dus de oude UBA de donker grijze met drie potmeters achter het klepje.

@Victor_M heb jij al gespeeld met de handterminal? Volgens mij kan je via de ketel status pagina alle waardes voorbij zien komen. Als je dit snooped met de interface zouden we die waardes goed kunnen koppelen aan de juiste parameters.

Acties:
  • +2 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Nou na een avondje rommelen is het me nu dan eindelijk gelukt.

Ik kan nu via homeassistant de ketel aan laten springen en de heet water boiler aan en uit zetten.
ook heb ik de integraties afgemaakt voor homeassistant. hier het resultaat!

Afbeeldingslocatie: https://tweakers.net/i/Sx5_YaQDiRqJKJ5TZ3qh9k3_ctg=/800x/filters:strip_icc():strip_exif()/f/image/X6Mye1lBhU1sLlO0mIhPbfWL.jpg?f=fotoalbum_large

Alleen als het in de winter weer kouder word eens gaan spelen met de PID regeling.

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@mafradon Dat ziet er inderdaad heel netjes uit !. Kan je de configuratie delen ? Dan voeg ik hem aan het project toe (als je dat goed vind).

De rapportage van de tap water status was gewoon stuk. De afhandeling van het 0x05 bericht was aanwezig, maar werd nooit aangeroepen. Ik heb een versie 1.9.8 gemaakt waarin dit weer werkt, het kan even duren voordat de status veranderd.

Het aan en uit zetten van het tapwater (in active mode) gaat via het 'boiler_cmd_wwactivated' topic (bv. home/irt-esp/boiler_cmd_wwactivated). Een 0 is uit en een 1 is aan (of on en off). Het aanvragen van een bepaalde ketel water temperatuur gaat via 'boiler_cmd' topic (bv. home/irt-esp/boiler_cmd) maar dan met een JSON body: {"cmd":"flowtemp",data:55} . Dit is allemaal rechtstreek overgenomen van de EMS-ESP. Zie ook de EMS-ESP wiki: https://emsesp.github.io/docs/#/MQTT?id=receiving-topics

@Chreetz Als bonus rapporteert de 1.9.8 nu ook de buitentemperatuur (als de sensor gemonteerd zit). Ik heb er een NTC van Aliexpress opzitten (10K NTC 3950). Maar even afwachten hoe stabiel dat werkt.

Ik heb al wat testen met de handterminal gedaan. Maar ik krijg de interface en de handterminal nog niet stabiel als ze beide zijn aangesloten. Maar de handterminal lijkt wel veel langere berichten te versturen.

Acties:
  • +2 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Hier de Config voor homeassistant

sensor:

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Current flow temperature'
unit_of_measurement: '°C'
value_template: '{{ value_json.curFlowTemp }}'
icon: mdi:coolant-temperature

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Current Set Flow Temperature'
unit_of_measurement: '°C'
value_template: "{{ value_json.selFlowTemp }}"
icon: mdi:coolant-temperature

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Return Temperature'
unit_of_measurement: '°C'
value_template: "{{ value_json.retTemp }}"
icon: mdi:coolant-temperature

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Burner On'
value_template: '{{ value_json.burnGas }}'
icon: mdi:fire


- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Fan On'
value_template: '{{ value_json.fanWork }}'
icon: mdi:fan

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: '3 Weg Klep'
value_template: "{% if value_json.wWHeat == 'off' %} CV {% elif value_json.wWHeat == 'on' %} Warm Water {% endif %}"
icon: mdi:valve

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Warm Water Temp'
unit_of_measurement: '°C'
value_template: '{{ value_json.wWCurTmp }}'
icon: mdi:hot-tub

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Burner Power'
unit_of_measurement: '%'
value_template: '{{ value_json.selBurnPow }}'
icon: mdi:car-cruise-control

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Status'
value_template: "{% if value_json.ServiceCode == '0H' %} Standby {% elif value_json.ServiceCode == '0A' %} Anti Pendel {% elif value_json.ServiceCode == '0C' %} Wacht op 3weg klep {% elif value_json.ServiceCode == '0L' %} Ontsteken {% elif value_json.ServiceCode == '-H' %} CV-Bedrijf {% elif value_json.ServiceCode == '=H' %} WW-Bedrijf {% elif value_json.ServiceCode == '2F' %} CV-druk Laag {% elif value_json.ServiceCode == '0Y' %} Wachtstand {% elif value_json.ServiceCode == '0U' %} Vetilatiefase {% else %} Storing! {% endif %}"
icon: mdi:information

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'CV Pomp'
value_template: '{{ value_json.heatPmp }}'
icon: mdi:pump

- platform: mqtt
state_topic: 'home/ems-esp/boiler_data'
name: 'Warm Water Boiler'
value_template: '{{ value_json.wWActivated }}'
icon: mdi:shower-head

climate:

- platform: mqtt

name: Cv Ketel

modes:

- "auto"

- "off"

min_temp: 0

max_temp: 80

temp_step: 1


current_temperature_topic: "home/ems-esp/boiler_data"

temperature_state_topic: "home/ems-esp/boiler_data"

mode_state_topic: "home/ems-esp/boiler_data"


current_temperature_template: "{{ value_json.curFlowTemp }}"

temperature_state_template: "{{ value_json.selFlowTemp }}"

mode_state_template: "{% if value_json.wWActivated == 'off' %} off {% else %} auto {% endif %}"
temperature_command_topic: "home/ems-esp/boiler_cmd_wwtemp"
mode_command_topic: "home/ems-esp/boiler_cmd_wwactivated"


@Victor_M ik heb hiervoor wel wat aanpassingen moeten doen in de code. Kan ik die uploaden via GitHub?

Acties:
  • 0 Henk 'm!

  • xzaz
  • Registratie: Augustus 2005
  • Laatst online: 16:07
Als het iemand schikt kan hiervoor een howto worden geschreven?

Schiet tussen de palen en je scoort!


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@mafradon Je kan een officieel pull request maken, maar je kan de aangepaste files ook gewoon aan het github ticket hangen, dan vind ik ze wel. In ieder geval bedankt voor het delen van de config.

@xzaz BBQ Kees heeft heel vin info in zijn wiki staan: https://bbqkees-electroni...istant-configuration.html

Acties:
  • 0 Henk 'm!

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
Na een recente verhuizing met een oude Nefit Ecomline HR ook het voor iRT gemodificeerde bordje bij kees besteld en aangesloten.

Mijn centrale brein is HomeAssistant en heb de sensors en climate definities van @mafradon uit post hierboven geactiveerd.

Krijg echter nog wel een storingsmelding. Ligt dat aan het feit dat @mafradon andere MQTT topics aanroept?

EDIT: Storingsmelding bleek onterecht; status melding "0y" - Wachtstand was verkeerd gecodeerd (dus niet "0Y") :)

Was nog wel even een klus om het juiste mqtt.publish command uit HA te sturen om de flowtemp te veranderen middels de mqtt climate entity, maar is toch gelukt.

Zal de komende dagen de boel eens in de gaten houden om de logica van warm water en cv beter te begrijpen, maar ben zeer onder de indruk van wat ik tot nu toe zie! Kuddos.

[ Voor 38% gewijzigd door flyingpenguin op 26-08-2020 09:51 ]


Acties:
  • +1 Henk 'm!

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
xzaz schreef op zondag 2 augustus 2020 @ 13:35:
Als het iemand schikt kan hiervoor een howto worden geschreven?
Deel met plezier mijn recente installatie ervaring. Wat is je set-up?

Acties:
  • 0 Henk 'm!

  • xzaz
  • Registratie: Augustus 2005
  • Laatst online: 16:07
flyingpenguin schreef op woensdag 26 augustus 2020 @ 09:53:
[...]


Deel met plezier mijn recente installatie ervaring. Wat is je set-up?
Moduline 300 met een Nefit Ecomline hr excellent. Hiervoor moet nog een weerstandje worden veranderd op het bordje?

Schiet tussen de palen en je scoort!


Acties:
  • +1 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@flyingpenguin Goed om te lezen dat alles werkt. Ik hoop in oktober/november weer wat meer tijd te hebben om de documentatie weer eens onderhanden te nemen. Aansluitschema's en hoe HA te configureren enzo. Maar de nieuwe V2 interface van het EMS-ESP project ziet er ook heel leuk uit..... Keuzes, keuzes....

@xzaz Het hangt van het soort bordje af of je hem moet modificeren. De iRT bordjes van BBQKees zijn kant en klaar. Maar als het oorspronkelijk een EMS bordje is moet hij wel gemodificeerd worden.

Acties:
  • 0 Henk 'm!

  • mafradon
  • Registratie: Oktober 2019
  • Laatst online: 13-03-2023
Hallo allemaal,

Ik was een tijdje off-line ik heb inmiddels mijn source geupload naar de GitHub, voor degene die het willen proberen met mijn homeassistant config.

Acties:
  • 0 Henk 'm!

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
Hallo @mafradon.

Als ik kijk op https://github.com/Victor-Mo/IRT-ESP dan zie ik geen recente activiteit maar zou graag jouw FW proberen op mijn bordje.

Waar kan de .bin file vinden?

Groet, Joost

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Hat was even zoeken naar de source van @mafradon maar het was geupload naar het EMS-ESP project van proddy. Ik heb hem even vergeleken met de huidige master. Maar ze zijn effectief hetzelfde (het zijn maar 7 regels die anders zijn). Het verschil zit hem voornamelijk in het rapporteren van de status van het warm water. Maar dat probleem is eind juli al in de master opgelost.

Zoals @flyingpenguin al heeft uitgeprobeerd werkt de configuratie van @mafradon gewoon op de huidige master (alleen de status 0Y moet 0y zijn).

Ik zal hier alvast de vraag van github beantwoorden of de warmwater- / tapwater- temperatuur ook in te stellen is. Zover ik weet is dit niet mogelijk, de Nefit handterminal heeft hier ook geen optie voor en ik ben het ook niet in een thermostaat tegen gekomen.

Ik hoop de komende weken weer wat tijd voor het project te hebben. Ik wil de documentatie weer in order brengen en de configuratie van Home Assistant beschrijven.

Acties:
  • 0 Henk 'm!

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
Dank voor je commentaar Victor.

Heb de boel de laatste dagen in de gaten gehouden, maar krijg de indruk dat selFlowTemp geen invloed heeft op de werkelijke curFlowTemp en retTemp. Hier een paar grafieken.
Afbeeldingslocatie: https://tweakers.net/i/2HcgI-7NvE6O0ctbql21vKL_66Q=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/BFUR2mT2RxUSDQqZDHSjOUm7.png?f=user_large
en
Afbeeldingslocatie: https://tweakers.net/i/uPtvPTCY5lG1pLeizOcjet-ueO0=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/CeSzfqN7W9P4QLlOhEYzZx4b.png?f=user_large

Het lijkt er dus op dat de boiler temperatuur alleen maar afkoelt als ook het warm water uitgeschakeld is..

Enig idee hoe dit te debuggen?

Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik weet nog niet of ik het helemaal begrijp wat er aan de hand is. Want ik zie de aangevraagde watertemperatuur ook pas 's nachts dalen ?
Maar het makkelijkste debuggen is even naar de ESP te telnetten en het commando 'log m' uit te voeren. Dan krijg je onderstaande output.:

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
log m

System Logging set to MQTT

->
01:3C 04:00 05:04 07:00 73:52 78:05 | 81:35 82:10 83:A0 85:74 86:E9 8A:95 90:67 93:FF A3:03 A4:18 A6:17 A8:40 AA:A6 AB:38 AC:3C C9:00   0H
[MQTT] Adding to queue: #0 [heartbeat] {"rssid":100,"load":1,"uptime":3482716,"freemem":73,"tcpdrops":0,"mqttpublishfails":0}
01:3C 04:00 05:04 07:00 73:52 78:01 | 81:35 82:10 83:A0 85:74 86:E9 8A:95 90:67 93:FF A3:03 A4:18 A6:17 A8:40 AA:A6 AB:38 AC:3C C9:00   0H
01:3C 04:00 05:04 07:00 73:52 78:01 | 81:35 82:10 83:A0 85:74 86:E9 8A:96 90:67 93:FF A3:03 A4:18 A6:17 A8:40 AA:A6 AB:38 AC:3C C9:00   0H
01:3C 04:00 05:04 07:00 73:52 78:07 | 81:35 82:10 83:A0 85:74 86:E9 8A:96 90:67 93:FF A3:03 A4:18 A6:17 A8:40 AA:A6 AB:38 AC:3C C9:00   0H
[MQTT] 2 topic: 'boiler_cmd', payload: '{"cmd":"flowtemp",data:0.00}'
Setting boiler flow temperature to 0 C
01:3C 04:00 05:04 07:00 73:52 78:04 | 81:35 82:10 83:A0 85:74 86:E9 8A:96 90:67 93:FF A3:03 A4:18 A6:17 A8:40 AA:A6 AB:38 AC:3C C9:00   0H
01:3C 04:00 05:04 07:00 73:52 78:05 | 81:35 82:10 83:A0 85:74 86:E9 8A:96 90:67 93:FF A3:03 A4:18 A6:17 A8:40 AA:A6 AB:38 AC:3C C9:00   0H
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":0,"selBurnPow":0,"pumpMod":0,"outdoorTemp":16.6,"wWCurTmp":64,"curFlowTemp":24,"retTemp":23,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"off","fanWork":"off","ignWork":"off","heating_temp":53,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0H","ServiceCodeNumber":3}
01:3C 04:00 05:04 07:00 73:52 78:01 | 81:35 82:10 83:A0 85:74 86:E9 8A:96 90:67 93:FF A3:03 A4:18 A6:17 A8:40 AA:A6 AB:38 AC:3C C9:00   0H
[MQTT] Adding to queue: #0 [heartbeat] {"rssid":100,"load":1,"uptime":3482776,"freemem":72,"tcpdrops":0,"mqttpublishfails":0}
01:3C 04:00 05:04 07:00 73:52 78:07 | 81:35 82:10 83:A0 85:74 86:E9 8A:96 90:67 93:FF A3:03 A4:18 A6:17 A8:40 AA:A6 AB:38 AC:3C C9:00   0H
log n

System Logging set to None

->

Daar moet uit af te leiden zijn wat er aangevraagd wordt en wat er daadwerkelijk gebeurd.

Acties:
  • 0 Henk 'm!

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
regel 31 ziet er verdacht uit..

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
->
log m

System Logging set to MQTT

->
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":5,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":63,"curFlowTemp":56,"retTemp":56,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:00 73:52 78:05 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:38 A6:38 A8:3F AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":5,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":63,"curFlowTemp":56,"retTemp":56,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
[MQTT] Adding to queue: #0 [heartbeat] {"rssid":72,"load":2,"uptime":27904,"freemem":72,"tcpdrops":0,"mqttpublishfails":1}
01:3C 04:00 05:04 07:00 73:52 78:01 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:38 A6:38 A8:3F AA:3B AB:A4 AC:3C C9:00   0y
01:3C 04:00 05:04 07:00 73:52 78:01 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:38 A8:3F AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":5,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":63,"curFlowTemp":55,"retTemp":56,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:00 73:52 78:07 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:38 A8:3F AA:3B AB:A4 AC:3C C9:00   0y
[MQTT] 2 topic: 'boiler_cmd', payload: '{"cmd":"flowtemp",data:10}'
Setting boiler flow temperature to 10 C
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":63,"curFlowTemp":55,"retTemp":56,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:00 73:52 78:04 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:38 A8:3F AA:3B AB:A4 AC:3C C9:00   0y
01:3C 04:00 05:04 07:00 73:52 78:05 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:38 A8:3F AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":63,"curFlowTemp":55,"retTemp":56,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":63,"curFlowTemp":55,"retTemp":56,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:00 73:52 78:05 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
Req 10 C Cur 55 Err -118 old pwr: 0 new pwr: 80 (0x50)
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:00 73:52 78:01 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
[MQTT] Adding to queue: #0 [heartbeat] {"rssid":74,"load":2,"uptime":27964,"freemem":72,"tcpdrops":0,"mqttpublishfails":1}
01:3C 04:00 05:04 07:50 73:52 78:07 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":31,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:50 73:52 78:04 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":31,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:50 73:52 78:05 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":31,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":10,"selBurnPow":31,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
[MQTT] 2 topic: 'boiler_cmd', payload: '{"cmd":"flowtemp",data:5}'
Setting boiler flow temperature to 5 C
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":5,"selBurnPow":31,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:50 73:52 78:01 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":5,"selBurnPow":31,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
[MQTT] Adding to queue: #0 [heartbeat] {"rssid":72,"load":1,"uptime":28024,"freemem":72,"tcpdrops":0,"mqttpublishfails":1}
01:3C 04:00 05:04 07:00 73:52 78:07 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
Publishing boiler data via MQTT
[MQTT] Adding to queue: #0 [boiler_data] {"wWSelTemp":88,"selFlowTemp":5,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":62,"curFlowTemp":55,"retTemp":55,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":87,"wWHeat":"on","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}
01:3C 04:00 05:04 07:00 73:52 78:04 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:37 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
01:3C 04:00 05:04 07:00 73:52 78:04 | 81:57 82:10 83:A0 85:74 86:E6 8A:FE 90:E6 93:00 A3:07 A4:36 A6:37 A8:3E AA:3B AB:A4 AC:3C C9:00   0y
log n

System Logging set to None

->

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
En hier de reguliere output van de telnet:

code:
1
2
3
4
5
6
7
->                                                                                                                                                       
Req 20 C Cur 81 Err -36 old pwr: 100 new pwr: 77 (0x4d)
Setting boiler flow temperature to 10 C
Req 10 C Cur 72 Err -42 old pwr: 77 new pwr: 77 (0x4d)
Req 10 C Cur 58 Err -40 old pwr: 77 new pwr: 77 (0x4d)
Req 10 C Cur 69 Err -51 old pwr: 77 new pwr: 77 (0x4d)
Req 10 C Cur 74 Err -59 old pwr: 77 new pwr: 77 (0x4d)

[ Voor 32% gewijzigd door flyingpenguin op 10-09-2020 07:56 ]


  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik denk dat ik begrijp wat er mis gaat. Het is een mooi voorbeeld van twee regel systemen die elkaar in de weg zitten. Op regel 18 wordt een ketelwatertemperatuur gevraagd van 10 graden ( {"cmd":"flowtemp",data:10} ). Dit is precies de grens waarde waarop de ketel gestart wordt (>= 10). Op regel 31 wordt dan ook de beslising genomen om de brander te starten met power 80 (0x50) ( Req 10 C Cur 55 Err -118 old pwr: 0 new pwr: 80 (0x50) ). De PID regel komt direct al tot de conclusie dat het water te warm is ( Err -118 ) en zal gaan proberen om het brander vermogen te verminderen. Maar voordat deze er aan toe komt wordt op regel 47 de gewenste ketel water temperatuur al weer op 5 graden gezet waarop het geheel weer uitschakelt.

Ik vermoed dat korte tijd daarna weer om 10 graden gevraagd wordt en de ketel weer begint te lopen.

Het probleem in dit seizoen is dat het minimum brander vermogen waarbij de ketel nog loopt: 77 (0x4d) teveel warmte produceert waardoor het lastig is de juiste temperatuur te bereiken. Wat ik gedaan heb is dat als de brander op minimaal vermogen staat [77 (0x4d) ] ook de maximum ketelwater tempratuur gelimiteerd wordt in de ketel zelf. Dat is het 0x01 bericht. Maar dat zie ik niet gebeuren die blijft op de default 60 graden staan (01:3C) ik vermoed dat het komt door het pendelen van Home Assistant.

De vraag is of de afschakel temperatuur van 10 graden niet te laag is. Misschien moet dit gewoon instelbaar zijn.

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
Dank Victor.

Kan het zijn dat het ontbreken van een buitensensor bij mij de boel in de war schopt?

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
Ik denk het niet, ik weet niet precies wat HA gebruikt om ketelwater temperatuur te berekenen, maar de firmware gebruikt het niet. Ik heb er ook pas sinds kort een NTC op zitten.

Acties:
  • 0 Henk 'm!

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
HA gebruikt alleen de MQTT topics om keteltemperatuur te lezen, dus geen verdere logic erachter.

Wat mij intrigeert is dat de werkelijke keteltemperatuur niet "meeloopt" (zij het met een vertraging, zeker gezien het seizoen) met de gevraagde keteltemperatuur, maar blijft oscileren tussen 51 en 64 C.

Als de selFlowTemp (direct via MQTT, dus niet via HA) wordt ingesteld op een temp >=10 C, dan krijg ik via de telnet de volgende fouten..

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
Setting boiler flow temperature to 40 C
Req 40 C Cur 59 Err -11 old pwr: 0 new pwr: 140 (0x8c)
Req 40 C Cur 58 Err -10 old pwr: 140 new pwr: 130 (0x82)
Req 40 C Cur 58 Err -12 old pwr: 130 new pwr: 118 (0x76)
Req 40 C Cur 57 Err -13 old pwr: 118 new pwr: 105 (0x69)
Req 40 C Cur 56 Err -14 old pwr: 105 new pwr: 91 (0x5b)
Req 40 C Cur 55 Err -15 old pwr: 91 new pwr: 77 (0x4d)
Req 40 C Cur 54 Err -16 old pwr: 77 new pwr: 77 (0x4d)
Req 40 C Cur 54 Err -17 old pwr: 77 new pwr: 77 (0x4d)
Req 40 C Cur 53 Err -18 old pwr: 77 new pwr: 77 (0x4d)
Req 40 C Cur 52 Err -18 old pwr: 77 new pwr: 77 (0x4d)
Req 40 C Cur 52 Err -19 old pwr: 77 new pwr: 77 (0x4d)
Setting boiler flow temperature to 5 C
Setting boiler flow temperature to 50 C
Req 50 C Cur 54 Err -16 old pwr: 0 new pwr: 160 (0xa0)
Req 50 C Cur 54 Err -2 old pwr: 160 new pwr: 158 (0x9e)
Req 50 C Cur 53 Err -2 old pwr: 158 new pwr: 156 (0x9c)
Req 50 C Cur 53 Err -2 old pwr: 156 new pwr: 154 (0x9a)
Req 50 C Cur 60 Err -6 old pwr: 154 new pwr: 148 (0x94)
Req 50 C Cur 62 Err -9 old pwr: 148 new pwr: 139 (0x8b)
Req 50 C Cur 63 Err -10 old pwr: 139 new pwr: 129 (0x81)
Req 50 C Cur 62 Err -11 old pwr: 129 new pwr: 118 (0x76)
Req 50 C Cur 59 Err -10 old pwr: 118 new pwr: 108 (0x6c)
Req 50 C Cur 58 Err -10 old pwr: 108 new pwr: 98 (0x62)
Req 50 C Cur 58 Err -11 old pwr: 98 new pwr: 87 (0x57)
Req 50 C Cur 57 Err -11 old pwr: 87 new pwr: 77 (0x4d)
Req 50 C Cur 56 Err -11 old pwr: 77 new pwr: 77 (0x4d)
Req 50 C Cur 55 Err -11 old pwr: 77 new pwr: 77 (0x4d)
Req 50 C Cur 54 Err -11 old pwr: 77 new pwr: 77 (0x4d)
Req 50 C Cur 54 Err -12 old pwr: 77 new pwr: 77 (0x4d)
Req 50 C Cur 53 Err -11 old pwr: 77 new pwr: 77 (0x4d)
Req 50 C Cur 53 Err -12 old pwr: 77 new pwr: 77 (0x4d)
Req 50 C Cur 52 Err -11 old pwr: 77 new pwr: 77 (0x4d)
Setting boiler flow temperature to 11 C
Req 11 C Cur 52 Err -35 old pwr: 77 new pwr: 77 (0x4d)
Req 11 C Cur 51 Err -38 old pwr: 77 new pwr: 77 (0x4d)


BTW: Er zit tussen de flow temp changes telkens ong. 10 min.

Zie trouwens ook het volgende:

code:
1
2
3
iRT Bus stats:
  Bus is connected, protocol: iRT
  Rx: # successful read requests=7635, # CRC errors=7

[ Voor 3% gewijzigd door flyingpenguin op 11-09-2020 13:07 ]


Acties:
  • 0 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@flyingpenguin Ik heb het idee dat de regeling welk correct werkt, maar dat de verwachting is dat dit veel sneller zou reageren. Dit soort PID regelingen zij over het algemeen erg traag. Om een goed beeld te krijgen zal je minimaal een uur dezelfde temperatuur aan moeten houden.

Als je via de telnet het log commando 'log s' geef en de flowtemp temperatuur op 25 graden zet en dit zo een uurtje laat staan zal je (denk ik) zien dat de flow temp richting de 25 graden gaat. De 'log s' zortg er voor dat de status regel met de ruwe data getoont wordt.

Als ik naar de bovenstaande output kijk zie ik dat de temperatuur al langzaam daalt. Maar op regel 13 wordt de PID uitgezet en daarna weer opnieuw gestart (regel 14). Bij het herstarten loopt de temperatuur weer op om daarna langzaam te dalen. Als op regel 34 de temperatuur weer lager wordt gezet (maar > 10) dan blijft de temperatuur dalen.

Ik vermoed dat bijna alle radiotoren dicht staan, dit zorgt er ook voor dat de temperatuur maar heel langzaam daalt.

Een aantal CRC error's is normaal. Zolang dit maar niet significant blijft oplopen is er niets aan de hand.

Acties:
  • 0 Henk 'm!

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
Dank Victor.

Zal een radiator kraan dichtbij de boiler opendraaien en de met "log s" de flowtemp op 25 zetten. Zet ook de warm water vraag uit. Kijken wat er gebeurt.

Ben wel benieuwd wat de "Err -12", "old pwr", "new pwr" "(0x4d)" precies voor betekenis hebben in

"Req 50 C Cur 54 Err -12 old pwr: 77 new pwr: 77 (0x4d)".

Reverting..

Dank Joost

[ Voor 4% gewijzigd door flyingpenguin op 15-09-2020 18:40 ]


  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
Ok, even een paar stappen terug. Mijn UBA4000 hing voorheen aan een aan/uit thermostaat (op polen 1 en 2). Had dus nog nooit iRT "gepraat" totdat ik het iRT-EMS bordje eraan hing.

Zoals uit bovenstaande posts blijkt communiceerde de UBA en het bordje goed, maar leek de UBA zich er alleen niets van aan te trekken..

Dus op marktplaats voor een tientje een oude moduline III gekocht, aangesloten en z'n ding laten doen.. Daarna het bordje weer terug en hoppa! Boiler volgt netjes de ingestelde flowtemp (zij het met behoorlijke vertraging omdat er weinig warmtevraag is deze dagen).

Zie wel dat bij een lage ingestelde flowtemp de warmwatervraag ervoor zorgt dat de gemeten flowtemp (in en uit) behoorlijk omhoog schiet..

Afbeeldingslocatie: https://tweakers.net/i/4sPmne89fEExn9-8RfWWkII3g-c=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/pQDkGdvm8VMjlA6NCe1ZnxfD.png?f=user_large

Ben iig blij dat nu de inregeling van de boiler goed werkt, dus nu op naar het tweaken van de individuele kamerthermostaten (KOMFORTHAUS RTV's via Zwave in HA).

Acties:
  • +1 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@flyingpenguin Goed om te zien dat het nu beter werkt.

De status regel 'Req 50 C Cur 57 Err -11 old pwr: 87 new pwr: 77 (0x4d)' is de debug informatie van de PID regeling. 'Req 50 C' geeft aan dat er om 50 graden water wordt gevraagd. 'Cur 57' geeft de huidig gemeten waarde aan: 57 graden. 'Err -11' is de huidige offset/error in de PID regeling. De bestaat voor een groot deel uit de absolute verschil 'P' (50 - 57 = -7) en voor een kleiner deel uit het 'I' en 'D' deel. De PID regeling zal proberen deze error waarde naar 0 te sturen. Dit gebeurd door de modulatie van boiler aan te sturen. De oude modulatie waard was 'old pwr: 87' de nieuwe waarde is 'new pwr: 77'.

Goed om te weten dat de boiler dus niet zonder echte thermostaat schakelt tussen aan/uit bedrijf en modulerend bedrijf.

Ik zit te denken om de PID regeling iets aan te passen. De boiler zelf heeft de optie om CV water temperatuur te limiteren. Deze staat normaal op 60 graden. Alleen als de PID regeling op minimaal vermogen staat (new pwr: 77 (0x4d)) dan wordt deze limiet op de ingestelde waarde gezet, in dit voorbeeld 50 graden. Maar zeker bij lager temepraturen zoals 25 graden is dit niet ideaal. Ik heb het zo gemaakt om te zorgen dat deze regeling in boiler de PID regeling niet in de weg zit. Maar als de gevraagd temeperatuur 25 graden is dan moet de limiet misschien op 35 graden. Dit geeft de PID regeling nog steeds voldoende fout offset om het vermogen terug te regelen. Maar zorgt er wel voor dat de temperatuur sneller daalt.

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
Dank voor de uitleg @Victor_M.

Re. "Goed om te weten dat de boiler dus niet zonder echte thermostaat schakelt tussen aan/uit bedrijf en modulerend bedrijf.", wellicht de moeite waard om nog eens te kijken naar de opstart code die een Moduline 3 eruit spuugt..

Acties:
  • 0 Henk 'm!

  • flyingpenguin
  • Registratie: Januari 2020
  • Laatst online: 26-03 17:15
Ik dacht dat ik mijn haren eruit zou trekken en het hele irt-esp project in de vuilnisbak zou gooien!

Maar.. de aanhouder wint!

Probleem: Een lage selFlowTemp (bijv 30 graden) werd nooit bereikt; telkens bij ~ 50 graden ging de boiler weer branden en kwam de curFlowTemp op ~ 65 graden.

Mijn dommigheid: Ik dacht dat het aan de PID logica lag of dat mijn UBA4000 / REL 2.2 wellicht een ander dialect sprak.

Eurekamoment: Als wwActivated uitstaat dan loopt curFlowTemp uiteindelijk wèl terug richting selFlowTemp.

Zou het dan wellicht een mechanisch probleem kunnen zijn?..

Blijkt dus dat de driewegklep niet helemaal sluit (open is WW / dicht is CV), waardoor WW afkoelt als CV pomp draait en omgekeerd er dus ook "lekkage" is richting CV circuit als WW opwarmt.

Dit ding dus:
Afbeeldingslocatie: https://tweakers.net/i/5ZgN7h7shk_oasrqihnCMO5g1Qs=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/nKCn4mWe4g7kKTlqTTzbxCaX.png?f=user_large

Motorhuis eraf gedraaid en de pin met een waterpomptang er helemaal uitgetrokken (dus geen lekkage meer). En ja hoor:

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
Req 15 C Cur 73 Err -49 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 50 Err -41 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 59 Err -50 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 47 Err -47 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 52 Err -53 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 46 Err -53 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 48 Err -57 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 44 Err -57 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 45 Err -61 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 43 Err -62 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 43 Err -65 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 41 Err -66 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 40 Err -68 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 36 Err -68 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 35 Err -70 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 34 Err -71 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 33 Err -72 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 32 Err -73 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 31 Err -74 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 30 Err -75 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 30 Err -76 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 29 Err -77 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 28 Err -78 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 28 Err -79 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 27 Err -80 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 27 Err -81 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 26 Err -81 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 26 Err -82 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 25 Err -83 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 25 Err -84 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 24 Err -84 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 24 Err -85 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 23 Err -85 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 23 Err -86 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 22 Err -86 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 22 Err -87 old pwr: 77 new pwr: 77 (0x4d)
Req 15 C Cur 21 Err -87 old pwr: 77 new pwr: 77 (0x4d)


Morgen dus maar even het binnenwerk van de drieweg klep vervangen:

https://www.warmteservice...gklep-VCZZ6005/p/49551955

Acties:
  • +1 Henk 'm!

  • Victor_M
  • Registratie: Oktober 2019
  • Laatst online: 18-06 09:09
@flyingpenguin Dat is een beste zoektocht geweest ! Dit soort dingen lijken altijd uit een hoek te komen die je het minst verwacht.

Ik ben op dit moment een versie aan het testen waarbij het start vermogen afhangt van de gevraagde temperatuur en de huidige watertemperatuur. Dit komt er op neer; als de gevraagde temperatuur lager is dan de huidige watertemperatuur, dat er op het laagste vermogen gestart wordt. Effectief gaat dan alleen de pomp aan. Dit zou een veel minder oscillerend effect op de watertemperatuur moeten hebben.

Nadeel hiervan is dat als de ketel net een warm water run gedaan heeft en daarna naar cv mode schakelt het iets langer duurt voordat het juiste vermogen geselecteerd wordt. (omdat de watertemperatuur dan meestal sterk daalt). Maar het lijkt erop dat de PID regeling dit snel genoeg bij regelt.

Succes met de reparatie !
Pagina: 1 2 Laatste