Kamstrup Multical 302 met Pi uitlezen en domoticz

Pagina: 1 ... 5 ... 9 Laatste
Acties:

Acties:
  • 0 Henk 'm!

  • Wolly
  • Registratie: Januari 2001
  • Niet online
Wolly schreef op donderdag 8 oktober 2020 @ 20:32:
@AUijtdehaag

Heb alles eruit gesloopt en dan kan hij het wel per minuut (of wat je wilt, het is de interval op [Read ID 1]. Je moet wel het juiste ID even met jouw flow opzoeken want ie logica heb ik er ook uitgehaald.

Lampje op het Ali kastje knippert nu ook niet meer als een dolle maar netjes 1x per minuut.

code:
1
[{"id":"35b24b20.e53a34","type":"tab","label":"Flow 4","disabled":false,"info":""},{"id":"a969ece1.106bd","type":"mbus-out","z":"35b24b20.e53a34","name":"Kamstrup","client":"b8af9f24.8bce","x":540,"y":320,"wires":[["22f0e97d.331106"]]},{"id":"22f0e97d.331106","type":"debug","z":"35b24b20.e53a34","name":"","active":true,"console":false,"complete":"false","x":749,"y":320,"wires":[]},{"id":"da70b0d9.e686e","type":"debug","z":"35b24b20.e53a34","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":730,"y":460,"wires":[]},{"id":"bde8a2d2.64514","type":"inject","z":"35b24b20.e53a34","name":"Get Devices","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":true,"onceDelay":"","topic":"getDevices","payload":"","payloadType":"str","x":154,"y":378,"wires":[["d3b3374a.93ade8"]]},{"id":"184cb18f.1b906e","type":"mqtt out","z":"35b24b20.e53a34","name":"","topic":"kamstrup","qos":"","retain":"","broker":"e55023e1.1202d","x":1000,"y":540,"wires":[]},{"id":"ecc32f4.84ea2d","type":"inject","z":"35b24b20.e53a34","name":"Read ID 1","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"60","crontab":"","once":false,"onceDelay":"","topic":"getDevice","payload":"{\"address\": \"680524912D2C3004\"}","payloadType":"json","x":170,"y":320,"wires":[["d3b3374a.93ade8"]]},{"id":"f55ed55a.826ba8","type":"function","z":"35b24b20.e53a34","name":"Extract + Format Kamstrup 302","func":"\nvar TotalHeatEnergy = msg.payload.DataRecord[1].Value;   \nvar TotalCoolEnergy = msg.payload.DataRecord[2].Value;\nvar FlowTemperature = msg.payload.DataRecord[8].Value /100;\nvar ReturnTemperature = msg.payload.DataRecord[9].Value /100;\nvar DiffTemperature = Math.abs(msg.payload.DataRecord[10].Value /100);\nvar PowerInstValue = Math.abs(msg.payload.DataRecord[11].Value *100);\nvar FlowValue = msg.payload.DataRecord[13].Value;\nvar FlowValuelm = Number((FlowValue/60).toFixed(2));\n\n\nlet _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"kamstrup\",\n\t\tfields: {\n            totalheatenergy     : TotalHeatEnergy, \n            totalcoolenergy     : TotalCoolEnergy,\n            flowtemperature     : FlowTemperature, \n            returntemperature   : ReturnTemperature,\n            difftemperature     : DiffTemperature,\n            powerinstvalue      : PowerInstValue,\n            flowvalue           : FlowValue, \n            flowvaluelm         : FlowValuelm, \n\n\t\t    },\n\t\ttags:{\n\t\t    device: \"heatmeter\",\n\t\t    },\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;\n","outputs":1,"noerr":0,"initialize":"","finalize":"","x":710,"y":540,"wires":[["471ea00.c27556","184cb18f.1b906e"]]},{"id":"471ea00.c27556","type":"debug","z":"35b24b20.e53a34","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":1010,"y":600,"wires":[]},{"id":"d3b3374a.93ade8","type":"mbus-controller","z":"35b24b20.e53a34","name":"M-Bus Controller","client":"b8af9f24.8bce","x":430,"y":460,"wires":[["f55ed55a.826ba8","da70b0d9.e686e"]]},{"id":"b8af9f24.8bce","type":"mbus-client","z":"","name":"Kamstrup","clienttype":"serial","tcpHost":"127.0.0.1","tcpPort":"10001","tcpTimeout":"4000","serialPort":"/dev/ttyUSB0","serialBaudrate":"2400","reconnectTimeout":"30000","autoScan":false,"storeDevices":true,"disableLogs":false},{"id":"e55023e1.1202d","type":"mqtt-broker","z":"","name":"","broker":"srv-mqtt.local.silmo.net","port":"1883","clientid":"raspberry-sma-nodered","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]
@AUijtdehaag

Heb de interval maar hoger gezet, volgens deze technische beschrijving (pdf) heeft de frequentie van uitlezen een groot effect op de batterij levensduur.
Reading intervals down to one hour do not influence the specified battery lifetime, whereas reading intervals down to 5
minutes halves the battery lifetime.
Zodra @Remco45 heeft uitgezocht hoe de vaste voeding eruit kan zien (en aangesloten kan worden) verhoog ik de frequentie wel weer :P

Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Wolly @Remco45
Heeft iemand hem al opengeschroefd en gekeken wat voor batterij(en) er in zitten?
Bestel je toch gewoon een nieuwe?

Mijne gaat al ruim 3 jaar mee met 10sec interval (oeps)

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Remco45
  • Registratie: Januari 2013
  • Laatst online: 26-05 16:45
Nog niet, maar is een standaard 1 of 2 A-cell Lithium 3,65 V.
Ik lees 'm ook met 10 sec interval uit :)

Mitsubishi Zubadan 11,2 kW; 14500 Wp (6100 Oost en 8400 West)


Acties:
  • +1 Henk 'm!

  • Wolly
  • Registratie: Januari 2001
  • Niet online
Heel goed, ik hoop dat jullie batterij snel op is zodat wij het snel weten O-)

Acties:
  • 0 Henk 'm!

  • Chris_82
  • Registratie: Oktober 2017
  • Laatst online: 03-06 22:14
AUijtdehaag schreef op maandag 12 oktober 2020 @ 12:22:
Mijne gaat al ruim 3 jaar mee met 10sec interval (oeps)
Heeft dat echt zin dan? Wat ik me herinner, en net nog even opgezocht, is dat de standaard cyclus van de 302 maar liefst 32 seconden is!
Of heb je een truc gevonden om de Kamstrup in de 'Fast Mode' te houden?

"Depending on selected type number MULTICAL® 302 is from the factory configured for integration (energy calculation) every 32 seconds or every 8 seconds."

14.4kWp, Loria Duo 6010, VWTW, DWTW, full-electric, MY RWD


Acties:
  • 0 Henk 'm!

  • mkleinman
  • Registratie: Oktober 2001
  • Laatst online: 14:53

mkleinman

8kWp, WPB, ELGA 6

Vraag. Hoe werkt deze set exact, het zijn drie kraantjes.

https://zaehleronlineshop...d-einem-110-mm-Passstueck

En waarvoor is dat pas-stuk?

Iemand een foto hoe dit zit in zijn installatie?

Dan ga ik ook bestellen.

Duurzame nerd. Veel comfort en weinig verbruiken. Zuinig aan doen voor de toekomst.


Acties:
  • 0 Henk 'm!

  • dunklefaser
  • Registratie: Oktober 2012
  • Laatst online: 17:03

dunklefaser

Point Of KnowReturn

mkleinman schreef op maandag 12 oktober 2020 @ 18:19:
Vraag. Hoe werkt deze set exact, het zijn drie kraantjes.

https://zaehleronlineshop...d-einem-110-mm-Passstueck

En waarvoor is dat pas-stuk?

Iemand een foto hoe dit zit in zijn installatie?

Dan ga ik ook bestellen.
Met het passtuk kan je eerst precies passen, zonder de kamstrup onnodig in gevaar te brengen
en uiteraard handig als je de kamstrup gaat vervangen en/of ergens anders gaat plaatsen.
Een van de kogelkraantjes bevat een boring voor de flowsensor, als je de kraan dichtdraait kan je de sensor
zonder waterbalet eruit halen, deze is namelijk "direkt tauchend" zonder dompelhuls (mag namelijk niet meer bij warmtemeters).

Nobody is perfeckt - But who wants to be Nobody? - Vrijwillig Energycoach Fiat LUXus! - Some Insights


Acties:
  • 0 Henk 'm!

  • mkleinman
  • Registratie: Oktober 2001
  • Laatst online: 14:53

mkleinman

8kWp, WPB, ELGA 6

dunklefaser schreef op maandag 12 oktober 2020 @ 18:41:
[...]

Met het passtuk kan je eerst precies passen, zonder de kamstrup onnodig in gevaar te brengen
en uiteraard handig als je de kamstrup gaat vervangen en/of ergens anders gaat plaatsen.
Een van de kogelkraantjes bevat een boring voor de flowsensor, als je de kraan dichtdraait kan je de sensor
zonder waterbalet eruit halen, deze is namelijk "direkt tauchend" zonder dompelhuls (mag namelijk niet meer bij warmtemeters).
Thanks. Nog een vraag. De Kamstrup bevat zelf een flowmeter en een temperatuursensor. Deze set is nodig in de retour voor de sensor daar. RIght?

Duurzame nerd. Veel comfort en weinig verbruiken. Zuinig aan doen voor de toekomst.


Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
Ja, 1 van de temperatuur sensoren zit in het huis van de 302, de ander stop je in een dompelkraan.

Ik heb deze
https://zaehleronlineshop...ler-Kamstrup-MultiCal-302

Met deze set kranen
https://zaehleronlineshop...satz-fuer-Waermezaehler_1

Ik vond de maatvoering wat verwarrend, maar bij een 2,5Qn versie hoort een 1" kranen set.

De Kamstrup (in de koudwaterleiding)
Afbeeldingslocatie: https://tweakers.net/i/NFgWA_UvNZFiqGCyx60MlGqJfA8=/800x/filters:strip_icc():strip_exif()/f/image/wSu0Ly5iVMJ92wwsKy0PZKJI.jpg?f=fotoalbum_large

De dompelkraan met externe sensor (in de warmwaterleiding)
Afbeeldingslocatie: https://tweakers.net/i/Qs1oab8VuHnMgg4xdYN1QIVf71g=/full-fit-in/4920x3264/filters:max_bytes(3145728):no_upscale():strip_icc():fill(white):strip_exif()/f/image/M57udzF2jqKry4oidjeKJi8F.jpg?f=user_large

Anne.

PS Je mag natuurlijk altijd ff komen kijken :)

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • +1 Henk 'm!

  • dunklefaser
  • Registratie: Oktober 2012
  • Laatst online: 17:03

dunklefaser

Point Of KnowReturn

mkleinman schreef op maandag 12 oktober 2020 @ 18:44:
[...]


Thanks. Nog een vraag. De Kamstrup bevat zelf een flowmeter en een temperatuursensor. Deze set is nodig in de retour voor de sensor daar. RIght?
Normaalgesproken wordt de flowsensor (buis met ultrasone zender en detector + temperatuur sensor)
in de retourleiding geplaatst en de andere temperatuursensor in de speciale kogelkraan in de aanvoerleiding.
Dit is de standaardconfiguratie, deze kan je, voordat je de kamstrup plaatst, omgedraaid configureren.
Later is wat lastiger.

Nobody is perfeckt - But who wants to be Nobody? - Vrijwillig Energycoach Fiat LUXus! - Some Insights


Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
Mijn vorige flowmeter zat op dezelfde plek (in de koudwaterleiding), vandaar dat de kamstrup daar ook terecht is gekomen.

En inderdaad heb ik achteraf de instelling nog moeten aanpassen.
(Zie verhaal hierboven over wegbreken tabje aan de achterkant van de Kamstrup en het kortsluiten van 2 contacten om weer in het setup menu te kunnen komen)

Op deze foto zie je de temperatuur sensor die in de buis van de Kamstrup zit.
Afbeeldingslocatie: https://tweakers.net/i/rrNtU0rqRtLiYo0zft_HAUBIK0A=/800x/filters:strip_icc():strip_exif()/f/image/cJi8Myys5PWdYjvmp92AcAwq.jpg?f=fotoalbum_large

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • +1 Henk 'm!

  • mkleinman
  • Registratie: Oktober 2001
  • Laatst online: 14:53

mkleinman

8kWp, WPB, ELGA 6

Tnx.

Bestelling geplaatst. Nu de kabel nog regelen.

Update:

Kabel intussen ook geregeld via ali-express. Kijken hoe lang dat gaat duren.

[ Voor 45% gewijzigd door mkleinman op 13-10-2020 18:56 ]

Duurzame nerd. Veel comfort en weinig verbruiken. Zuinig aan doen voor de toekomst.


Acties:
  • 0 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

Waarom lezen we hem niet uit via de optische interface ? deze zit er standaard altijd in.. ?
Zo ver als ik terug kan vinden geeft die ook alles weer.

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@HFman
Omdat uitlezen via 2 draadjes, comfortabeler is dan zo een pukkel bovenop je meter.

Youless heeft destijds ook zijn apparaatje aangepast met de mogelijkheid om twee draadjes te gebruiken voor uitlezing.
Ducktape is handig om iets op zijn plaats te houden, maar soms zijn er betere oplossingen.

[ Voor 53% gewijzigd door AUijtdehaag op 20-10-2020 02:37 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

AUijtdehaag schreef op dinsdag 20 oktober 2020 @ 02:21:
@HFman
Omdat uitlezen via 2 draadjes, comfortabeler is dan zo een pukkel bovenop je meter.

Youless heeft destijds ook zijn apparaatje aangepast met de mogelijkheid om twee draadjes te gebruiken voor uitlezing.
Ducktape is handig om iets op zijn plaats te houden, maar soms zijn er betere oplossingen.
Eens, maar het protocol is ook intern makkelijk op te pikken.
Wat best wel leuk zou zijn gezien de extra kosten voor Mbus en interface.
Ook 2de hands meter hebben meestal geen Mbus.
Zo ver ik nu gelezen heb gaat echter niet goed, aangezien de opt. interface maar voor 8 minuten praat dan weer in slaap gaat...

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

dunklefaser schreef op maandag 12 oktober 2020 @ 18:51:
[...]

Normaalgesproken wordt de flowsensor (buis met ultrasone zender en detector + temperatuur sensor)
in de retourleiding geplaatst en de andere temperatuursensor in de speciale kogelkraan in de aanvoerleiding.
Dit is de standaardconfiguratie, deze kan je, voordat je de kamstrup plaatst, omgedraaid configureren.
Later is wat lastiger.
confused.. retour is de "koud water leiding" en aanvoer de "warm waterleiding" .. maw het zit zo als normaal gesproken maar toch moest hij het aanpassen in het menu... ?

naast het aanpassen zijn er andere reden om het niet " anders om " te doen ? als ik hem in de retour zet komt hij dicht bij het fuil filter, waar ik van begreep dat dat de meet nauwkeurigheid niet ten goede komt (werverlingen)

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
Ik zou zeggen dat als de waarde die het verschil tussen aanvoer en retour temperatuur aangeeft negatief is, dat je de richting anders moet instellen?

Maar dan geeft de meter zelf ook al een foutmelding (32) volgens mij?

Ik ga er van uit de koude leiding aanvoer en de warme leiding retour is.

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • 0 Henk 'm!

  • dunklefaser
  • Registratie: Oktober 2012
  • Laatst online: 17:03

dunklefaser

Point Of KnowReturn

AnneTweaks schreef op donderdag 22 oktober 2020 @ 01:36:
Ik zou zeggen dat als de waarde die het verschil tussen aanvoer en retour temperatuur aangeeft negatief is, dat je de richting anders moet instellen?

Maar dan geeft de meter zelf ook al een foutmelding (32) volgens mij?

Ik ga er van uit de koude leiding aanvoer en de warme leiding retour is.
Deze laatste veronderstelling klopt iig niet voor de fabrieksconfiguratie:
code:
1
2
3
4
5
 python3.5 kam59.py|egrep -f kam-select_egrep
 8                 2504 Flow temperature (1e-2 deg C)
 9                 1905 Return temperature (1e-2 deg C)
10                  599 Temperature Difference (1e-2  deg C)
13                    0 Volume flow (m m^3/h)

De aanvoertemperatuur Ta (=Flow temperature - aparte sensor in kogelkraan) is hoger dan de retourtemperatuur (Return temperature - temperatuursensor in de meetbuis), zoals bij een "Wärmemengenzähler" gebruikelijk
en het verschil is positief (Ta - Tr).

Nobody is perfeckt - But who wants to be Nobody? - Vrijwillig Energycoach Fiat LUXus! - Some Insights


Acties:
  • 0 Henk 'm!

  • dunklefaser
  • Registratie: Oktober 2012
  • Laatst online: 17:03

dunklefaser

Point Of KnowReturn

HFman schreef op woensdag 21 oktober 2020 @ 23:45:
[...]


confused.. retour is de "koud water leiding" en aanvoer de "warm waterleiding" .. maw het zit zo als normaal gesproken maar toch moest hij het aanpassen in het menu... ?

naast het aanpassen zijn er andere reden om het niet " anders om " te doen ? als ik hem in de retour zet komt hij dicht bij het fuil filter, waar ik van begreep dat dat de meet nauwkeurigheid niet ten goede komt (werverlingen)
Ik zou zeggen: Bekijk de montage-instructies en ~-aanbevelingen van Kamstrup. Volgens mij kom je er een heel eind mee.

Nobody is perfeckt - But who wants to be Nobody? - Vrijwillig Energycoach Fiat LUXus! - Some Insights


Acties:
  • 0 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

dunklefaser schreef op donderdag 22 oktober 2020 @ 11:18:
[...]

Ik zou zeggen: Bekijk de montage-instructies en ~-aanbevelingen van Kamstrup. Volgens mij kom je er een heel eind mee.
Eens, de eerste "informatie" bladen gaven niet duidelijke info, inmiddels betere gevonden !

Heeft iemand een duidelijke foto van de pcba die in de kamstrup 302 vind ? kan die nergens online vinden..

bij de 402 en 602/3 kun je uitbreidings pcb's kopen, kan dat bij de 302 niet ?
(de "Mbus" is niet een lose pcba maar zit op het mainboard ?)

Iemand een foto hoe hij de Mbus converter heeft aangesloten bij de 302 ? (de andere versie kan ik wel een foto vinden, maar wil graag de 302 zien)

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • Wolly
  • Registratie: Januari 2001
  • Niet online
HFman schreef op zaterdag 24 oktober 2020 @ 12:21:
[...]

Iemand een foto hoe hij de Mbus converter heeft aangesloten bij de 302 ? (de andere versie kan ik wel een foto vinden, maar wil graag de 302 zien)
Er komen twee draadjes uit de 302 en die sluit je aan op het kroonsteentje van de converter. Het maakt niet uit hoe je de draadjes vastmaakt want mbus is polariteit onafhankelijk.

Daar heb je geen foto voor nodig toch?

Acties:
  • 0 Henk 'm!

  • dunklefaser
  • Registratie: Oktober 2012
  • Laatst online: 17:03

dunklefaser

Point Of KnowReturn

@HFman Je zal voor het "instap model" 302 ook geen afzonderlijke modules vinden,
die zijn er namelijk niet. - Bij de 302 MOET je bij de bestelling aangeven welke uitvoering je wilt hebben.
Standaard is alleen de draadloze m-bus aanwezig. Bedrade m-bus of bijvoorbeeld warmte&koude-meter zijn "afwijkende" uitvoeringen. Just my 2 cts

Nobody is perfeckt - But who wants to be Nobody? - Vrijwillig Energycoach Fiat LUXus! - Some Insights


Acties:
  • 0 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

Wolly schreef op zaterdag 24 oktober 2020 @ 12:39:
[...]


Er komen twee draadjes uit de 302 en die sluit je aan op het kroonsteentje van de converter. Het maakt niet uit hoe je de draadjes vastmaakt want mbus is polariteit onafhankelijk.

Daar heb je geen foto voor nodig toch?
Correct.. sorry the veel 402 en 602/3 gezien, wil graag "binnen in kijken" vandaar die vraag.
Bij de 302 werkt het anders .. 8)7

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

dunklefaser schreef op zaterdag 24 oktober 2020 @ 12:49:
@HFman Je zal voor het "instap model" 302 ook geen afzonderlijke modules vinden,
die zijn er namelijk niet. - Bij de 302 MOET je bij de bestelling aangeven welke uitvoering je wilt hebben.
Standaard is alleen de draadloze m-bus aanwezig. Bedrade m-bus of bijvoorbeeld warmte&koude-meter zijn "afwijkende" uitvoeringen. Just my 2 cts
Thanks duidelijk, en voor de " standaard draadloze m-bus" moet je 25 euro extra betalen om de key te krijgen ?

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • dunklefaser
  • Registratie: Oktober 2012
  • Laatst online: 17:03

dunklefaser

Point Of KnowReturn

@HFman Helemaal correct, voor niets komt de zon op.

Nobody is perfeckt - But who wants to be Nobody? - Vrijwillig Energycoach Fiat LUXus! - Some Insights


Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
dunklefaser schreef op donderdag 22 oktober 2020 @ 11:10:
[...]

Deze laatste veronderstelling klopt iig niet voor de fabrieksconfiguratie:
code:
1
2
3
4
5
 python3.5 kam59.py|egrep -f kam-select_egrep
 8                 2504 Flow temperature (1e-2 deg C)
 9                 1905 Return temperature (1e-2 deg C)
10                  599 Temperature Difference (1e-2  deg C)
13                    0 Volume flow (m m^3/h)

De aanvoertemperatuur Ta (=Flow temperature - aparte sensor in kogelkraan) is hoger dan de retourtemperatuur (Return temperature - temperatuursensor in de meetbuis), zoals bij een "Wärmemengenzähler" gebruikelijk
en het verschil is positief (Ta - Tr).
Ik vind de uitleg in de handleiding dus enigzins verwarrend.

Afbeeldingslocatie: https://tweakers.net/i/aVoR6jfeRttJcTOohJOhADLrHNw=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/mbufJOSS986KoMCFwOOG2mg2.png?f=user_large

Mijn 'body' zit in de koudwater leiding naar de zonneboiler
De extra sensor in de waterwater leiding van de zonneboiler

Ik heb hem nu ingesteld zoals in het plaatje 'INlet' wordt genoemd.
Standaard ston hij in 'OUTlet'.

Ik heb de boel intussen aan de praat en krijg deze waardes:

{"counterID":{"0":"67979814"},"heatValue":{"0":"0"},"coolValue":{"0":"290"},"ontimeheatValue":{"0":"8022"},"ontimecoolValue":{"0":"1848"},"tempoutValue":22.68,"tempreturnValue":23.38,"tempdiffValue":-0.7,"powerinstValue":0,"powermaxValue":{"0":"-12"},"flowinstValue":{"0":"0"},"flowmaxValue":{"0":"79"},"heatenergymonthValue":{"0":"0"},"coolenergymonthValue":{"0":"280"}}


tempdiffValue is dus negatief.

Waardoor ik het idee heb dat ik de instelling toch weer terug op 'OUTlet' moet zetten?

Anne.

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
Ik vroeg me ook nog af wat voor type meters ik in Domoticz moet/kan gebruiken om de waardes in op te slaan. De temperaturen zijn duidelijk, dat zijn 'Temperature' sensors.

Maar in wat voor type stop ik de andere relevante waarden?
Ik kan dat in de thread of in de 1e post niet terug vinden.

--

Om de MBus serial scan aan de praat te krijgen heb ik een combinatie gebruikt van de informatie van libmbus
http://www.rscada.se/libmbus/
en de archive versie (pagina is intussen verdwenen op de originele site) van domotiga
http://web-old.archive.or...jects/domotiga/wiki/M-Bus

Ik heb daarbij de meeste recente master branch gebruikt om de boel te bouwen.

Eerst ging het nog mis omdat ik niet de juiste symlinks had gemaakt,
daarna ging het nog (heel erg) mis omdat ik een PHP script op de PI gebruik waarmee ik via een URL de waardes kan opvragen. Dat betekende dat de webserver user op de PI rechten moest hebben om de scan tool aan te roepen. En bij het aanpassen van de SUDO rechten daarvoor corrumpeerde ik de hele SUDO instelling...
Uiteindelijk goed gekomen
en ik krijg nu door de aanroep van het PHP script een JSON response met de waardes. Met als bijkomend voordeel dat de kampstrup maar net zo vaak wordt uitgevraagd als dat ik handig vind.

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • 0 Henk 'm!

  • dunklefaser
  • Registratie: Oktober 2012
  • Laatst online: 17:03

dunklefaser

Point Of KnowReturn

@AnneTweaks

Bij de configuratie "Inlet" gaat de kamstrup er van uit dat de temperatuur
in de meetbuis ("aanvoer") hoger is dan de temperatuur van de losse sensor ("retour").
Dit is vermoedelijk bij jouw zonneboilerconfiguratie nu niet het geval, of lees ik dat verkeerd?

Ik zie in jouw kamstrup waardes "0,0" bij instantflow staan. Zonder flow kan je over de minimale
temperatuurafwijking van -0,7°C sowieso geen uitspraak doen.

[ Voor 43% gewijzigd door dunklefaser op 06-12-2020 19:27 ]

Nobody is perfeckt - But who wants to be Nobody? - Vrijwillig Energycoach Fiat LUXus! - Some Insights


Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
@dunklefaser Ik neem aan dat de flow alleen een waarde aangeeft op het moment dat er echt warm water wordt gevraagd?

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • +1 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@AnneTweaks
Volgens mij moet je de instelling omdraaien
-Als je verwarmt meet je nu koelen door negatieve temperatuur waarde.
- flow is verkeerd dus meet je 0.

Heb je node-red al eens geprobeerd?
Dan heb je geen libmbus meer nodig.
https://flows.nodered.org/node/node-red-contrib-m-bus

[ Voor 10% gewijzigd door AUijtdehaag op 06-12-2020 22:03 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • dunklefaser
  • Registratie: Oktober 2012
  • Laatst online: 17:03

dunklefaser

Point Of KnowReturn

@AnneTweaks Zoals @AUijtdehaag aangeeft bestaat de (kleine?) kans dat de stromingsrichting
in jouw geval niet klopt - komt de pijl op de meetbuis overeen met de werkelijke stromingsrichting?
Maar: Zonder dat de zon schijnt en de circulatiepomp draait is alles andere speculatius.

Je kan de m-bus ook met python (modules pyserial, pymeterbus, en meterbus) uitlezen
respons is in JSON formaat. YMMV

Nobody is perfeckt - But who wants to be Nobody? - Vrijwillig Energycoach Fiat LUXus! - Some Insights


Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
Ola,

Vanmorgen tijdens het douchen waren dit de waardes

{"counterID":{"0":"67979814"},"heatValue":{"0":"0"},"coolValue":{"0":"291"},"ontimeheatValue":{"0":"8038"},"ontimecoolValue":{"0":"1864"},"tempoutValue":13.92,"tempreturnValue":25.69,"tempdiffValue":-11.77,"powerinstValue":-3200,"powermaxValue":{"0":"-12"},"flowinstValue":{"0":"236"},"flowmaxValue":{"0":"79"},"heatenergymonthValue":{"0":"0"},"coolenergymonthValue":{"0":"280"}}

Lijtk er dus idd op dat ik de instelling weer terug moet zetten naar 'OUTlet'.

Ook zonder de zon en bij 7C buiten temp heeft de zonneboiler trouwens nog rond de 30C aan water voorraad.
Afbeeldingslocatie: https://tweakers.net/i/wmVTh05vzUyDJ7G0ygNTou_PYsc=/800x/filters:strip_exif()/f/image/juDXOpXW0cgoVbKIMWBEu33h.png?f=fotoalbum_large

Ja de pijl op de 'body' staat idd in de stroomrichting van het water.

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • 0 Henk 'm!

  • markklok
  • Registratie: Oktober 2000
  • Laatst online: 07:24

markklok

< Tijdelijk buiten gebruik >

Heeft iemand de batterij al vervangen door een voeding op lichtnet ?

Legion 7i i9 3080 32gb


Acties:
  • 0 Henk 'm!

  • Apocalyps895
  • Registratie: Augustus 2001
  • Laatst online: 10-05 09:42
Ik zag op Ebay een Multical 302 van Techem voorbij komen? Type 3 vario 3.2.1....weet iemand of daar een MBUS op zit die te gebruiken is?

Edit: Link

[ Voor 37% gewijzigd door Apocalyps895 op 14-01-2021 11:15 ]


Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Apocalyps895
Als het er niet van bij staat, ga dan er maar van uit, dat het er niet op zit.
Je kan het ook zien aan het Type nr. (mits de foto klopt)
En dit nr opzoeken in het manual,

[ Voor 33% gewijzigd door AUijtdehaag op 14-01-2021 11:28 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Apocalyps895
  • Registratie: Augustus 2001
  • Laatst online: 10-05 09:42
AUijtdehaag schreef op donderdag 14 januari 2021 @ 11:25:
@Apocalyps895
Als het er niet van bij staat, ga dan er maar van uit, dat het er niet op zit.
Je kan het ook zien aan het Type nr. (mits de foto klopt)
En dit nr opzoeken in het manual,
Ik ben net iets verder in mijn speurwerk en heb een technische handleiding gevonden van deze Techem

Quote eruit:
Toekomstgericht
De meter is voorzien voor draadloos
gebruik. Dit omvat dat de uitleesgegevens
onafhankelijk worden overgedragen vanuit
het appartement, zodat er niemand aanwezig
hoeft te zijn omdat niemand het appartement
betreedt. Tussenopnames worden voortaan
overbodig omdat de indexen halfmaandelijks
in het geheugen worden opgeslagen. De Vario
3 meter beschikt over een radiomodule die op
elk moment geactiveerd kan worden.
Doet er zit in iedergeval een radiomodule op?

Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Apocalyps895 Dat kan er op zitten, maar dan heb je nog niet de sleutel.....
(maar WMbus weet ik niets van, van bedraad Mbus wel)

Misschien kan je hier wel losse modules kopen (maar 302 is lastig denk ik)
https://www.kernbauer-sol...unikation_m-bus/1/0/m/0/x

[ Voor 60% gewijzigd door AUijtdehaag op 14-01-2021 11:37 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
Waarschijnlijk niet.

BIj mij zit de kabel voor de M-bus links (zie rode cirkel), die zie ik op de ebay foto's niet zitten.

Desondanks wel een mooie prijs voor een 302 ;)

Afbeeldingslocatie: https://tweakers.net/i/rW4rnPV6_QMiwQGKxisHx6S_EoE=/x800/filters:strip_exif()/f/image/hz42jA2Dm6QywFpWBhoTPDPr.png?f=fotoalbum_large

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • 0 Henk 'm!

  • Apocalyps895
  • Registratie: Augustus 2001
  • Laatst online: 10-05 09:42
AnneTweaks schreef op donderdag 14 januari 2021 @ 11:44:
Waarschijnlijk niet.

BIj mij zit de kabel voor de M-bus links (zie rode cirkel), die zie ik op de ebay foto's niet zitten.

Desondanks wel een mooie prijs voor een 302 ;)

[Afbeelding]
Ik heb inmiddels antwoord gehad van Techem maar er zit een custom RF link in. Het type nummer is ook:

T 58 2 Q9 A0 2 TC

Dus 58 hier in het type geeft inderdaad aan dat er geen volwaardige MBUS op zit.

Afbeeldingslocatie: https://tweakers.net/i/E0aUBO8Cd6M3o6Puah4IY_A_Zh4=/800x/filters:strip_exif()/f/image/25BDinigV6VL3XaBE8XykkOT.png?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • Knielen
  • Registratie: December 2009
  • Laatst online: 15:51
markklok schreef op donderdag 14 januari 2021 @ 10:56:
Heeft iemand de batterij al vervangen door een voeding op lichtnet ?
Volgens mij niet, maar ik heb ook nog van niemand gehoord dat de batterij leeg is geraakt.

Acties:
  • 0 Henk 'm!

  • eborn
  • Registratie: April 2000
  • Laatst online: 03-06 14:55
AnneTweaks schreef op donderdag 14 januari 2021 @ 11:44:
Waarschijnlijk niet.

BIj mij zit de kabel voor de M-bus links (zie rode cirkel), die zie ik op de ebay foto's niet zitten.

Desondanks wel een mooie prijs voor een 302 ;)

[Afbeelding]
Even als algemene opmerking over de Kamstrup foto's: op basis van het serienummer en de code die op deze foto's staat, kun je bij Kamstrup de encryptie sleutels downloaden voor wireless uitlezen van de meters. Geen idee hoeveel meters die functie hebben en je hebt er natuurlijk enkel iets aan als je in-range bent van die meter. Maar ik wilde het toch even melden :)

Acties:
  • +1 Henk 'm!

  • Apocalyps895
  • Registratie: Augustus 2001
  • Laatst online: 10-05 09:42
eborn schreef op donderdag 14 januari 2021 @ 16:08:
[...]


Even als algemene opmerking over de Kamstrup foto's: op basis van het serienummer en de code die op deze foto's staat, kun je bij Kamstrup de encryptie sleutels downloaden voor wireless uitlezen van de meters. Geen idee hoeveel meters die functie hebben en je hebt er natuurlijk enkel iets aan als je in-range bent van die meter. Maar ik wilde het toch even melden :)
Ik heb is geprobeerd die Techem van ebay te registreren maar ik krijg op dat serienummer de volgende melden
Registration is not allowed due to the security level of this device
:P

Acties:
  • 0 Henk 'm!

  • eborn
  • Registratie: April 2000
  • Laatst online: 03-06 14:55
Apocalyps895 schreef op donderdag 14 januari 2021 @ 18:59:
[...]


Ik heb is geprobeerd die Techem van ebay te registreren maar ik krijg op dat serienummer de volgende melden
Oh, dat is wel bijzonder. Mijn twee Kamstrup Multical 302's en mijn Multical 21 kon ik probleemloos registreren. Misschien is mijn leverancier een vinkje vergeten. Hoewel ik van Kamstrup begreep dat je als eindgebruiker in principe altijd de sleutels bij hun mag opvragen.

Ik lees vervolgens de data uit met een dongle (https://www.piotek.de/iM871A) en de software van https://github.com/weetmuts/wmbusmeters

[ Voor 11% gewijzigd door eborn op 15-01-2021 08:47 ]


Acties:
  • +2 Henk 'm!

  • Apocalyps895
  • Registratie: Augustus 2001
  • Laatst online: 10-05 09:42
eborn schreef op vrijdag 15 januari 2021 @ 08:41:
[...]


Oh, dat is wel bijzonder. Mijn twee Kamstrup Multical 302's en mijn Multical 21 kon ik probleemloos registreren. Misschien is mijn leverancier een vinkje vergeten. Hoewel ik van Kamstrup begreep dat je als eindgebruiker in principe altijd de sleutels bij hun mag opvragen.

Ik lees vervolgens de data uit met een dongle (https://www.piotek.de/iM871A) en de software van https://github.com/weetmuts/wmbusmeters
Voor zover ik het nu zie heeft Kamstrup een speciale custom made versie gemaakt voor Techem. Hierdoor kan je deze dus niet anders uitlezen dan met de Techem software en geeft Kamstrup hier geen sleutels voor.

Ik ga maar een normale Kamstrup aanschaffen.

Acties:
  • 0 Henk 'm!

  • H143
  • Registratie: Juli 2006
  • Laatst online: 15:39
Sinds gister heb ik ook een kamsttup 302 geistalleerd om de warmtepomp te monitoren ik doe dit dmv nodered en stuur het vanuit hier door naar grafana, helaas ben ik biet zo sterk in programeren en zoek eigenlijk een mogelijkheid om de maandelijkse cop waardes te kunnen berekenen ik heb al een kwh modbus meter welke ik ook uitlees in nodered, heeftbiemand hier toevallig al een flow voor?

Acties:
  • +3 Henk 'm!

  • Robindd
  • Registratie: December 2012
  • Laatst online: 08:09
H143 schreef op zondag 31 januari 2021 @ 12:31:
Sinds gister heb ik ook een kamsttup 302 geistalleerd om de warmtepomp te monitoren ik doe dit dmv nodered en stuur het vanuit hier door naar grafana, helaas ben ik biet zo sterk in programeren en zoek eigenlijk een mogelijkheid om de maandelijkse cop waardes te kunnen berekenen ik heb al een kwh modbus meter welke ik ook uitlees in nodered, heeftbiemand hier toevallig al een flow voor?
Mijn flow wil ik best delen, deze met bloed zweet en tranen maar vooral ontzettend veel tijd samengesteld :)

Je zal je er wel in moeten verdiepen, want je moet het eea goed zetten nog voor je eigen data en het doorsturen naar Influx etc.

Handig ook om de settings van je context store te veranderen, zodat bij een herstart van de Pi of Odroid niet je maandelijkse telling verdwenen is: https://nodered.org/docs/user-guide/context

code:
1
[{"id":"e83fea40.7dbfe8","type":"change","z":"86e20de3.66077","name":"COP calc.","rules":[{"t":"set","p":"payload","pt":"msg","to":"$round(kamstrup.powerinstvalue/youless.powers0, 2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":400,"y":120,"wires":[["948a707a.eddd"]]},{"id":"e6ae10c6.8eb36","type":"mqtt out","z":"86e20de3.66077","name":"COP MQTT","topic":"cop","qos":"","retain":"","broker":"b7ad9d90.0babc","x":1110,"y":40,"wires":[]},{"id":"e58011df.8fb57","type":"change","z":"86e20de3.66077","name":"Set payloads","rules":[{"t":"move","p":"payload","pt":"msg","to":"payload.copcurrent","tot":"msg"},{"t":"set","p":"payload.standbydailyekwh","pt":"msg","to":"standbydailyekwh","tot":"flow"},{"t":"set","p":"payload.standbymonthlyekwh","pt":"msg","to":"standbymonthlyekwh","tot":"flow"},{"t":"set","p":"payload.dhwdailytkwh","pt":"msg","to":"dhwdailytkwh","tot":"flow"},{"t":"set","p":"payload.dhwmonthlytkwh","pt":"msg","to":"dhwmonthlytkwh","tot":"flow"},{"t":"set","p":"payload.heatingdailytkwh","pt":"msg","to":"heatingdailytkwh","tot":"flow"},{"t":"set","p":"payload.heatingmonthlytkwh","pt":"msg","to":"heatingmonthlytkwh","tot":"flow"},{"t":"set","p":"payload.coolingdailytkwh","pt":"msg","to":"coolingdailytkwh","tot":"flow"},{"t":"set","p":"payload.coolingmonthlytkwh","pt":"msg","to":"coolingmonthlytkwh","tot":"flow"},{"t":"set","p":"payload.defrostdailytkwh","pt":"msg","to":"defrostdailytkwh","tot":"flow"},{"t":"set","p":"payload.defrostmonthlytkwh","pt":"msg","to":"defrostmonthlytkwh","tot":"flow"},{"t":"set","p":"payload.dhwdailyekwh","pt":"msg","to":"dhwdailyekwh","tot":"flow"},{"t":"set","p":"payload.dhwmonthlyekwh","pt":"msg","to":"dhwmonthlyekwh","tot":"flow"},{"t":"set","p":"payload.heatingdailyekwh","pt":"msg","to":"heatingdailyekwh","tot":"flow"},{"t":"set","p":"payload.heatingmonthlyekwh","pt":"msg","to":"heatingmonthlyekwh","tot":"flow"},{"t":"set","p":"payload.coolingdailyekwh","pt":"msg","to":"coolingdailyekwh","tot":"flow"},{"t":"set","p":"payload.coolingmonthlyekwh","pt":"msg","to":"coolingmonthlyekwh","tot":"flow"},{"t":"set","p":"payload.defrostdailyekwh","pt":"msg","to":"defrostdailyekwh","tot":"flow"},{"t":"set","p":"payload.defrostmonthlyekwh","pt":"msg","to":"defrostmonthlyekwh","tot":"flow"},{"t":"set","p":"payload.dhwdailycop","pt":"msg","to":"dhwdailycop","tot":"flow"},{"t":"set","p":"payload.dhwmonthlycop","pt":"msg","to":"dhwmonthlycop","tot":"flow"},{"t":"set","p":"payload.heatingdailycop","pt":"msg","to":"heatingdailycop","tot":"flow"},{"t":"set","p":"payload.heatingmonthlycop","pt":"msg","to":"heatingmonthlycop","tot":"flow"},{"t":"set","p":"payload.coolingdailycop","pt":"msg","to":"coolingdailycop","tot":"flow"},{"t":"set","p":"payload.coolingmonthlycop","pt":"msg","to":"coolingmonthlycop","tot":"flow"},{"t":"set","p":"payload.defrostdailycop","pt":"msg","to":"defrostdailycop","tot":"flow"},{"t":"set","p":"payload.defrostmonthlycop","pt":"msg","to":"defrostmonthlycop","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":730,"y":120,"wires":[["f06035f3.f93bd8","e6ae10c6.8eb36"]]},{"id":"f06035f3.f93bd8","type":"function","z":"86e20de3.66077","name":"Filter","func":"let _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"cop\",\n\t\tfields: {\n\t\t\tcopcurrent:             msg.payload.copcurrent||0,\n\t\t\tstandbydailyekwh:       msg.payload.standbydailyekwh||0,\n\t\t\tstandbymonthlyekwh:     msg.payload.standbymonthlyekwh||0,\n\t\t\tdhwdailytkwh:           msg.payload.dhwdailytkwh||0,\n\t\t\tdhwmonthlytkwh:         msg.payload.dhwmonthlytkwh||0,\n\t\t\theatingdailytkwh:       msg.payload.heatingdailytkwh||0,\n\t\t\theatingmonthlytkwh:     msg.payload.heatingmonthlytkwh||0,\n\t\t\tcoolingdailytkwh:       msg.payload.coolingdailytkwh||0,\n\t\t\tcoolingmonthlytkwh:     msg.payload.coolingmonthlytkwh||0,\n\t\t\tdefrostdailytkwh:       msg.payload.defrostdailytkwh||0,\n\t\t\tdefrostmonthlytkwh:     msg.payload.defrostmonthlytkwh||0,\n\t\t\tdhwdailyekwh:           msg.payload.dhwdailyekwh||0,\n\t\t\tdhwmonthlyekwh:         msg.payload.dhwmonthlyekwh||0,\n\t\t\theatingdailyekwh:       msg.payload.heatingdailyekwh||0,\n\t\t\theatingmonthlyekwh:     msg.payload.heatingmonthlyekwh||0,\n\t\t\tcoolingdailyekwh:       msg.payload.coolingdailyekwh||0,\n\t\t\tcoolingmonthlyekwh:     msg.payload.coolingmonthlyekwh||0,\n\t\t\tdefrostdailyekwh:       msg.payload.defrostdailyekwh||0,\n\t\t\tdefrostmonthlyekwh:     msg.payload.defrostmonthlyekwh||0,\n\t\t\tdhwdailycop:            msg.payload.dhwdailycop||0,\n\t\t\tdhwmonthlycop:          msg.payload.dhwmonthlycop||0,\n\t\t\theatingdailycop:        msg.payload.heatingdailycop||0,\n\t\t\theatingmonthlycop:      msg.payload.heatingmonthlycop||0,\n\t\t\tcoolingdailycop:        msg.payload.coolingdailycop||0,\n\t\t\tcoolingmonthlycop:      msg.payload.coolingmonthlycop||0,\n\t\t\tdefrostdailycop:        msg.payload.defrostdailycop||0,\n\t\t\tdefrostmonthlycop:      msg.payload.defrostmonthlycop||0,\n\t\t\t\t\t},\n\t\ttags:{\n\t\t    device: \"cop_calculation\",\n\t\t    },\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":470,"y":180,"wires":[["ada3fa9e.9f5d98"]]},{"id":"ada3fa9e.9f5d98","type":"join","z":"86e20de3.66077","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"5","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":630,"y":180,"wires":[["2d3ede91.d03d52"]]},{"id":"2d3ede91.d03d52","type":"influxdb batch","z":"86e20de3.66077","influxdb":"d9c81848.1fd1d8","precision":"","retentionPolicy":"","name":"","x":840,"y":180,"wires":[]},{"id":"948a707a.eddd","type":"switch","z":"86e20de3.66077","name":"<10","property":"payload","propertyType":"msg","rules":[{"t":"lt","v":"10","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":550,"y":120,"wires":[["e58011df.8fb57"]]},{"id":"5cd0ba6b.169d14","type":"mqtt in","z":"86e20de3.66077","name":"kamstrup","topic":"kamstrup","qos":"2","datatype":"json","broker":"b9513c19.e5ca6","x":80,"y":120,"wires":[["e5399676.3b2bd8"]]},{"id":"97a032c9.6ab63","type":"mqtt in","z":"86e20de3.66077","name":"youless","topic":"youless","qos":"2","datatype":"json","broker":"d6503b94.421bc8","x":70,"y":60,"wires":[["4989f906.a89e78"]]},{"id":"4989f906.a89e78","type":"change","z":"86e20de3.66077","name":"","rules":[{"t":"set","p":"youless","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":240,"y":60,"wires":[[]]},{"id":"e5399676.3b2bd8","type":"change","z":"86e20de3.66077","name":"2x flow","rules":[{"t":"set","p":"youless","pt":"msg","to":"youless","tot":"flow"},{"t":"set","p":"kamstrup","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":240,"y":120,"wires":[["e83fea40.7dbfe8"]]},{"id":"818f4418.3ce5e8","type":"function","z":"86e20de3.66077","name":"DHW t-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"dhwrunningtkwh\")||msg.payload.heatcountertkwh;\n\n//How much usage since the last update\nperiodvalue = msg.payload.heatcountertkwh - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"dhwdailytkwh\")||0;\nmonthlyvalue = flow.get(\"dhwmonthlytkwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"dhwdailytkwh\",dailyvalue );\nflow.set(\"dhwrunningtkwh\",msg.payload.heatcountertkwh);\nflow.set(\"dhwmonthlytkwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":280,"wires":[["a8b617db.c5a768"]]},{"id":"ee43845b.ffaf68","type":"switch","z":"86e20de3.66077","name":"Check operating mode","property":"mitsubishi.operation_mode","propertyType":"msg","rules":[{"t":"eq","v":"Stop","vt":"str"},{"t":"eq","v":"Hot Water","vt":"str"},{"t":"eq","v":"Heating","vt":"str"},{"t":"eq","v":"Cooling","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":500,"y":320,"wires":[["44b7aa9.5909a54"],["818f4418.3ce5e8","f679222a.4cd2e"],["312e27b2.6fb7a8","feac0693.716f18"],["b4944925.79e9e8","d8113673.928c58"]]},{"id":"17534b2b.e241d5","type":"mqtt in","z":"86e20de3.66077","name":"","topic":"mitsubishi","qos":"2","datatype":"json","broker":"d6503b94.421bc8","x":80,"y":280,"wires":[["d2f7d657.fbd378"]]},{"id":"d2f7d657.fbd378","type":"change","z":"86e20de3.66077","name":"","rules":[{"t":"set","p":"mitsubishi","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":250,"y":280,"wires":[[]]},{"id":"b4944925.79e9e8","type":"function","z":"86e20de3.66077","name":"Cooling t-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"coolingrunningtkwh\")||msg.payload.coolcountertkwh;\n\n//How much usage since the last update\nperiodvalue = msg.payload.coolcountertkwh - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"coolingdailytkwh\")||0;\nmonthlyvalue = flow.get(\"coolingmonthlytkwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"coolingdailytkwh\",dailyvalue );\nflow.set(\"coolingrunningtkwh\",msg.payload.coolcountertkwh);\nflow.set(\"coolingmonthlytkwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":440,"wires":[["314ab51c.aa332a"]]},{"id":"feac0693.716f18","type":"function","z":"86e20de3.66077","name":"Heating t-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"heatingrunningtkwh\")||msg.payload.heatcountertkwh;\n\n//How much usage since the last update\nperiodvalue = msg.payload.heatcountertkwh - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"heatingdailytkwh\")||0;\nmonthlyvalue = flow.get(\"heatingmonthlytkwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"heatingdailytkwh\",dailyvalue );\nflow.set(\"heatingrunningtkwh\",msg.payload.heatcountertkwh);\nflow.set(\"heatingmonthlytkwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":360,"wires":[["a5cee9de.1bf858"]]},{"id":"95dc7dc0.3251d","type":"function","z":"86e20de3.66077","name":"Defrost t-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"defrostrunningtkwh\")||msg.payload.coolcountertkwh;\n\n//How much usage since the last update\nperiodvalue = msg.payload.coolcountertkwh - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"defrostdailytkwh\")||0;\nmonthlyvalue = flow.get(\"defrostmonthlytkwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"defrostdailytkwh\",dailyvalue );\nflow.set(\"defrostrunningtkwh\",msg.payload.coolcountertkwh);\nflow.set(\"defrostmonthlytkwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":520,"wires":[["9829a404.126ab8"]]},{"id":"2218f62.33c4e0a","type":"mqtt in","z":"86e20de3.66077","name":"kamstrup","topic":"kamstrup","qos":"2","datatype":"json","broker":"b9513c19.e5ca6","x":80,"y":320,"wires":[["12dde724.092e89"]]},{"id":"12dde724.092e89","type":"change","z":"86e20de3.66077","name":"3x flow","rules":[{"t":"set","p":"mitsubishi","pt":"msg","to":"mitsubishi","tot":"flow"},{"t":"set","p":"kamstrup","pt":"msg","to":"payload","tot":"msg"},{"t":"set","p":"youless","pt":"msg","to":"youless","tot":"flow"},{"t":"set","p":"payload.counters0","pt":"msg","to":"$number(youless.counters0)","tot":"jsonata"},{"t":"set","p":"payload.heatcountertkwh","pt":"msg","to":"$number(kamstrup.totalheatenergy)","tot":"jsonata"},{"t":"set","p":"payload.coolcountertkwh","pt":"msg","to":"$number(kamstrup.totalcoolenergy)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":240,"y":320,"wires":[["ee43845b.ffaf68","9e301255.ab90b","a559e43b.7975c8","498ee73d.8433b8"]]},{"id":"44b7aa9.5909a54","type":"function","z":"86e20de3.66077","name":"Standby e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"standbyrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"standbydailyekwh\")||0;\nmonthlyvalue = flow.get(\"standbymonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"standbydailyekwh\",dailyvalue );\nflow.set(\"standbyrunningekwh\", msg.payload.counters0);\nflow.set(\"standbymonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":830,"y":240,"wires":[[]]},{"id":"9e301255.ab90b","type":"switch","z":"86e20de3.66077","name":"Check operating mode to reset on !=","property":"mitsubishi.operation_mode","propertyType":"msg","rules":[{"t":"neq","v":"Stop","vt":"str"},{"t":"neq","v":"Hot Water","vt":"str"},{"t":"neq","v":"Heating","vt":"str"},{"t":"neq","v":"Cooling","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":190,"y":560,"wires":[["4e279ae3.d10624"],["c9d45af6.41f378"],["320bc1c6.aebf9e"],["8980978a.fbe3e8"]]},{"id":"4e279ae3.d10624","type":"change","z":"86e20de3.66077","name":"Standby reset flow running != ","rules":[{"t":"set","p":"standbyrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":520,"wires":[[]]},{"id":"c9d45af6.41f378","type":"change","z":"86e20de3.66077","name":"DHW reset flow running !=","rules":[{"t":"set","p":"dhwrunningtkwh","pt":"flow","to":"0","tot":"num"},{"t":"set","p":"dhwrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":560,"wires":[[]]},{"id":"320bc1c6.aebf9e","type":"change","z":"86e20de3.66077","name":"Heating reset flow running !=","rules":[{"t":"set","p":"heatingrunningtkwh","pt":"flow","to":"0","tot":"num"},{"t":"set","p":"heatingrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":600,"wires":[[]]},{"id":"8980978a.fbe3e8","type":"change","z":"86e20de3.66077","name":"Cooling reset flow running !=","rules":[{"t":"set","p":"coolingrunningtkwh","pt":"flow","to":"0","tot":"num"},{"t":"set","p":"coolingrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":640,"wires":[[]]},{"id":"cf11d402.ecde78","type":"change","z":"86e20de3.66077","name":"Defrost reset flow running !=","rules":[{"t":"set","p":"defrostrunningtkwh","pt":"flow","to":"0","tot":"num"},{"t":"set","p":"defrostrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":680,"wires":[[]]},{"id":"f679222a.4cd2e","type":"function","z":"86e20de3.66077","name":"DHW e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"dhwrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"dhwdailyekwh\")||0;\nmonthlyvalue = flow.get(\"dhwmonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"dhwdailyekwh\",dailyvalue );\nflow.set(\"dhwrunningekwh\", msg.payload.counters0);\nflow.set(\"dhwmonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":320,"wires":[[]]},{"id":"d8113673.928c58","type":"function","z":"86e20de3.66077","name":"Cooling e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"coolingrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"coolingdailyekwh\")||0;\nmonthlyvalue = flow.get(\"coolingmonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"coolingdailyekwh\",dailyvalue );\nflow.set(\"coolingrunningekwh\", msg.payload.counters0);\nflow.set(\"coolingmonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":830,"y":480,"wires":[[]]},{"id":"772cb8e1.124848","type":"function","z":"86e20de3.66077","name":"Defrost e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"defrostrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"defrostdailyekwh\")||0;\nmonthlyvalue = flow.get(\"defrostmonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"defrostdailyekwh\",dailyvalue );\nflow.set(\"defrostrunningekwh\", msg.payload.counters0);\nflow.set(\"defrostmonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":560,"wires":[[]]},{"id":"a5cee9de.1bf858","type":"change","z":"86e20de3.66077","name":"Calculate COP's","rules":[{"t":"set","p":"heatingdailytkwh","pt":"msg","to":"heatingdailytkwh","tot":"flow"},{"t":"set","p":"heatingdailyekwh","pt":"msg","to":"heatingdailyekwh","tot":"flow"},{"t":"set","p":"heatingdailycop","pt":"flow","to":"$round(msg.heatingdailytkwh/msg.heatingdailyekwh,2)","tot":"jsonata"},{"t":"set","p":"heatingmonthlytkwh","pt":"msg","to":"heatingmonthlytkwh","tot":"flow"},{"t":"set","p":"heatingmonthlyekwh","pt":"msg","to":"heatingmonthlyekwh","tot":"flow"},{"t":"set","p":"heatingmonthlycop","pt":"flow","to":"$round(msg.heatingmonthlytkwh/msg.heatingmonthlyekwh,2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1080,"y":360,"wires":[[]]},{"id":"312e27b2.6fb7a8","type":"function","z":"86e20de3.66077","name":"Heating e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"heatingrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"heatingdailyekwh\")||0;\nmonthlyvalue = flow.get(\"heatingmonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"heatingdailyekwh\",dailyvalue );\nflow.set(\"heatingrunningekwh\", msg.payload.counters0);\nflow.set(\"heatingmonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":830,"y":400,"wires":[[]]},{"id":"a8b617db.c5a768","type":"change","z":"86e20de3.66077","name":"Calculate COP's","rules":[{"t":"set","p":"dhwdailytkwh","pt":"msg","to":"dhwdailytkwh","tot":"flow"},{"t":"set","p":"dhwdailyekwh","pt":"msg","to":"dhwdailyekwh","tot":"flow"},{"t":"set","p":"dhwdailycop","pt":"flow","to":"$round(msg.dhwdailytkwh/msg.dhwdailyekwh,2)","tot":"jsonata"},{"t":"set","p":"dhwmonthlytkwh","pt":"msg","to":"dhwmonthlytkwh","tot":"flow"},{"t":"set","p":"dhwmonthlyekwh","pt":"msg","to":"dhwmonthlyekwh","tot":"flow"},{"t":"set","p":"dhwmonthlycop","pt":"flow","to":"$round(msg.dhwmonthlytkwh/msg.dhwmonthlyekwh,2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1080,"y":280,"wires":[[]]},{"id":"314ab51c.aa332a","type":"change","z":"86e20de3.66077","name":"Calculate COP's","rules":[{"t":"set","p":"coolingdailytkwh","pt":"msg","to":"coolingdailytkwh","tot":"flow"},{"t":"set","p":"coolingdailyekwh","pt":"msg","to":"coolingdailyekwh","tot":"flow"},{"t":"set","p":"coolingdailycop","pt":"flow","to":"$round(msg.coolingdailytkwh/msg.coolingdailyekwh,2)","tot":"jsonata"},{"t":"set","p":"coolingmonthlytkwh","pt":"msg","to":"coolingmonthlytkwh","tot":"flow"},{"t":"set","p":"coolingmonthlyekwh","pt":"msg","to":"coolingmonthlyekwh","tot":"flow"},{"t":"set","p":"coolingmonthlycop","pt":"flow","to":"$round(msg.coolingmonthlytkwh/msg.coolingmonthlyekwh,2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1080,"y":440,"wires":[[]]},{"id":"9829a404.126ab8","type":"change","z":"86e20de3.66077","name":"Calculate COP's","rules":[{"t":"set","p":"defrostdailytkwh","pt":"msg","to":"defrostdailytkwh","tot":"flow"},{"t":"set","p":"defrostdailyekwh","pt":"msg","to":"defrostdailyekwh","tot":"flow"},{"t":"set","p":"defrostdailycop","pt":"flow","to":"$round(msg.defrostdailytkwh/msg.defrostdailyekwh,2)","tot":"jsonata"},{"t":"set","p":"defrostmonthlytkwh","pt":"msg","to":"defrostmonthlytkwh","tot":"flow"},{"t":"set","p":"defrostmonthlyekwh","pt":"msg","to":"defrostmonthlyekwh","tot":"flow"},{"t":"set","p":"defrostmonthlycop","pt":"flow","to":"$round(msg.defrostmonthlytkwh/msg.defrostmonthlyekwh,2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1080,"y":520,"wires":[[]]},{"id":"a559e43b.7975c8","type":"switch","z":"86e20de3.66077","name":"Check defrost status","property":"mitsubishi.defrost","propertyType":"msg","rules":[{"t":"eq","v":"Defrost","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":500,"y":380,"wires":[["95dc7dc0.3251d","772cb8e1.124848"]]},{"id":"498ee73d.8433b8","type":"switch","z":"86e20de3.66077","name":"Check defrost status to reset on !=","property":"mitsubishi.defrost","propertyType":"msg","rules":[{"t":"neq","v":"Defrost","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":180,"y":640,"wires":[["cf11d402.ecde78"]]},{"id":"b7ad9d90.0babc","type":"mqtt-broker","z":"","name":"","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"d9c81848.1fd1d8","type":"influxdb","z":"","hostname":"127.0.0.1","port":"8086","protocol":"http","database":"energy","name":"","usetls":false,"tls":""},{"id":"b9513c19.e5ca6","type":"mqtt-broker","z":"","name":"MQTT","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"d6503b94.421bc8","type":"mqtt-broker","z":"","name":"MQTT","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]

PVOutput Youless - 9600Wp OZO+WNW | 38° | Goodwe GW6K-DT | Mitsubishi PUHZ-SW75YAA + ERSD-VM2D | Zonneplan Nexus | Gasloos


Acties:
  • 0 Henk 'm!

  • sgsdebruijn
  • Registratie: Maart 2012
  • Laatst online: 08-01 02:44
Ik heb dringend jullie hulp nodig, ik heb vanochtend een update gedaan van Ubuntu 18.x.
Nu merk ik dat mijn virtual sensors niet meer worden geupdate door het Kamstrupscript.
Ik wil geen snapshot van Vmware op de NUC terugzetten i.v.m. onvoorspelbaarheid en verlies data.

Als ik een check doe op welk adres mijn Kamstrup zit kom ik netjes op nr 38
Als ik vervolgens de data ophaal zie ik netjes waardes voorbij komen op de console maar Domoticz krijgt ze niet aangeleverd.

iemand een idee?

#NoGas #Freubelaar #Loria6008DUO #12xSF170/SMA #6xCSUN355/APS #Domoticz


Acties:
  • +1 Henk 'm!

  • -SimJoc-
  • Registratie: Augustus 2004
  • Niet online
AUijtdehaag schreef op donderdag 8 oktober 2020 @ 15:16:
@Wolly Heb hem op 1 minuut staan.
code:
1
[{"id":"a4d1e87c.7813c8","type":"tab","label":"Kamstup Mbus","disabled":false,"info":""},{"id":"ad6e84cc.601248","type":"mbus-controller","z":"a4d1e87c.7813c8","name":"M-Bus Controller","client":"cf258c74.2b793","x":450,"y":260,"wires":[["e34cc17e.24b7b","f1266995.091838","b002634f.1d14d"]]},{"id":"f1266995.091838","type":"debug","z":"a4d1e87c.7813c8","name":"","active":false,"console":false,"complete":"false","x":1009,"y":297,"wires":[]},{"id":"e34cc17e.24b7b","type":"ui_template","z":"a4d1e87c.7813c8","group":"ba35fc26.07964","name":"mbus-table","order":0,"width":"14","height":"10","format":"<table>\n  <tr>\n    <th>ID</th>\n    <th>Primary ID</th>\n    <th>Info</th>\n    <th>Data</th>\n    <th>Last Update</th>\n    <th>Status</th>\n  </tr>\n  <tr style=\"cursor:pointer;\" ng-click=\"showData(device)\" ng-repeat=\"(id, device) in devices\">\n    <td>{{ device.secondaryID }}</td>\n    <td>{{ device.primaryID }}</td>\n    <td ng-bind-html=\"getInfo(device)\"></td>\n    <td>{{ device.DataRecord.length }}</td>\n    <td>{{ device.lastUpdate }}</td>\n    <td>\n        <div class=\"online\" ng-style=\"{background: !device.error ? '#4CAF50' : '#f44336'}\">\n            <md-tooltip md-direction=\"bottom\">{{ device.error ? device.error : 'OK' }}</md-tooltip>\n        </div>\n    </td>\n  </tr>\n</table>\n\n<style>\ntable {\n    border-collapse: collapse;\n    width: 100%;\n}\n\nth, td{\n    text-align: left;\n    padding: 8px;\n    background-color: #f2f2f2;\n    color: black;\n}\n\nth {\n    background-color: #4CAF50;\n    color: white;\n}\n\n.online {\n\tbackground:#ff3333;\n\twidth:20px;\n\theight:20px;\n\tmargin:0 auto;\n\t-webkit-border-radius:50%;\n\t-moz-border-radius:50%;\n\tborder-radius:50%;\n}\n</style>\n\n<script>\n\n\n(function(scope) {\n    \n    scope.send({topic: 'getDevices'});\n    scope.devices = [];\n    \n    scope.showData = function(device){\n        scope.send({topic: 'deviceData', payload: device});\n    }\n    \n    scope.getInfo = function(device){\n        var text = '';\n        var info = device.SlaveInformation;\n        \n        for(key in info){\n            text += `<p><b>${key}</b>: ${info[key]}</p>`;\n        }\n        \n        return text;\n    }\n\n    scope.$watch('msg', function(data) {\n        if(data && data.topic){\n            switch(data.topic){\n                case \"getDevices\":\n                    if(data.payload && data.payload.devices)\n                        scope.devices = data.payload.devices;\n                break;\n            }\n        }\n    });\n    \n})(scope);\n\n</script>\n","storeOutMessages":false,"fwdInMessages":false,"templateScope":"local","x":809,"y":257,"wires":[["ac9fdd7e.3e595"]]},{"id":"ac9fdd7e.3e595","type":"ui_template","z":"a4d1e87c.7813c8","group":"447b5e0.211efa4","name":"data-table","order":0,"width":"14","height":"10","format":"<p><b>Device ID:</b> {{ID}} </p>\n\n<br>\n<br>\n\n<table>\n  <tr>\n    <th>ID</th>\n    <th>Function</th>\n    <th>Unit</th>\n    <th>Value</th>\n    <th>Timestamp</th>\n  </tr>\n  <tr ng-repeat=\"(key, data) in deviceData\">\n    <td>{{ data.id }}</td>\n    <td>{{ data.Function }}</td>\n    <td>{{ data.Unit }}</td>\n    <td>{{ data.Value }}</td>\n    <td>{{ data.Timestamp }}</td>\n  </tr>\n</table>\n\n<style>\ntable {\n    border-collapse: collapse;\n    width: 100%;\n}\n\nth, td{\n    text-align: left;\n    padding: 8px;\n    background-color: #f2f2f2;\n    color: black;\n}\n\nth {\n    background-color: #4CAF50;\n    color: white;\n}\n\n.online {\n\tbackground:#ff3333;\n\twidth:20px;\n\theight:20px;\n\tmargin:0 auto;\n\t-webkit-border-radius:50%;\n\t-moz-border-radius:50%;\n\tborder-radius:50%;\n}\n</style>\n\n<script>\n\n\n(function(scope) {\n    \n    scope.deviceData = [];\n    scope.ID = '';\n\n    scope.$watch('msg', function(data) {\n        if(data && data.topic){\n            switch(data.topic){\n                case \"deviceData\":\n                    if(data.payload){\n                        scope.deviceData = data.payload.DataRecord;\n                        scope.ID = data.payload.SlaveInformation.Id;\n                    }\n                break;\n            }\n        }\n    });\n    \n})(scope);\n\n</script>\n","storeOutMessages":false,"fwdInMessages":false,"templateScope":"local","x":999,"y":257,"wires":[[]]},{"id":"19ace9d.924fe16","type":"ui_button","z":"a4d1e87c.7813c8","name":"Scan","group":"61c985c0.155d6c","order":3,"width":"2","height":"1","passthru":false,"label":"Scan","color":"","bgcolor":"","icon":"location_searching","payload":"","payloadType":"str","topic":"scan","x":76,"y":324,"wires":[["ad6e84cc.601248"]]},{"id":"6118cd98.d9f924","type":"ui_button","z":"a4d1e87c.7813c8","name":"Restart","group":"61c985c0.155d6c","order":4,"width":"3","height":"1","passthru":false,"label":"Restart","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"restart","x":86,"y":361,"wires":[["ad6e84cc.601248"]]},{"id":"7a304035.eab69","type":"ui_button","z":"a4d1e87c.7813c8","name":"GetDevices","group":"61c985c0.155d6c","order":5,"width":"3","height":"1","passthru":false,"label":"Update Devices","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"getDevices","x":94,"y":398,"wires":[["ad6e84cc.601248"]]},{"id":"30437a57.a7b166","type":"ui_button","z":"a4d1e87c.7813c8","name":"readAddress","group":"61c985c0.155d6c","order":2,"width":"3","height":"1","passthru":false,"label":"Read Device","color":"","bgcolor":"","icon":"","payload":"deviceID","payloadType":"flow","topic":"getDevice","x":91,"y":437,"wires":[["58baf1c9.96bd3"]]},{"id":"d6f6c8f.2b78438","type":"ui_text_input","z":"a4d1e87c.7813c8","name":"Device_ID","label":"ID: ","group":"61c985c0.155d6c","order":1,"width":"3","height":"1","passthru":true,"mode":"text","delay":300,"topic":"","x":89,"y":598,"wires":[["b1a27f19.6b4c2"]]},{"id":"b1a27f19.6b4c2","type":"function","z":"a4d1e87c.7813c8","name":"storeID","func":"\nflow.set('deviceID', msg.payload);\n\nreturn msg;","outputs":0,"noerr":0,"x":265,"y":598,"wires":[]},{"id":"58baf1c9.96bd3","type":"function","z":"a4d1e87c.7813c8","name":"readAddr","func":"var data = {address: msg.payload}\n\nmsg.payload = data;\n\nreturn msg;","outputs":1,"noerr":0,"x":249,"y":437,"wires":[["ad6e84cc.601248"]]},{"id":"4937ddc.127ba24","type":"ui_text_input","z":"a4d1e87c.7813c8","name":"Old_ID","label":"Old ID","group":"61c985c0.155d6c","order":6,"width":"3","height":"1","passthru":true,"mode":"text","delay":300,"topic":"","x":96,"y":638,"wires":[["81f277bc.35b8f8"]]},{"id":"81f277bc.35b8f8","type":"function","z":"a4d1e87c.7813c8","name":"storeID","func":"\nflow.set('oldID', msg.payload);\n\nreturn msg;","outputs":0,"noerr":0,"x":263,"y":638,"wires":[]},{"id":"9f68a834.7458d8","type":"ui_text_input","z":"a4d1e87c.7813c8","name":"New_ID","label":"New ID","group":"61c985c0.155d6c","order":7,"width":"3","height":"1","passthru":true,"mode":"text","delay":300,"topic":"","x":93,"y":678,"wires":[["f17e49df.d7b428"]]},{"id":"f17e49df.d7b428","type":"function","z":"a4d1e87c.7813c8","name":"storeID","func":"\nflow.set('newID', msg.payload);\n\nreturn msg;","outputs":0,"noerr":0,"x":261,"y":678,"wires":[]},{"id":"ff06d122.21092","type":"ui_button","z":"a4d1e87c.7813c8","name":"SetPrimary","group":"61c985c0.155d6c","order":8,"width":"3","height":"1","passthru":false,"label":"Set Primary ID","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"setPrimary","x":90,"y":478,"wires":[["4d8f6488.a2678c"]]},{"id":"4d8f6488.a2678c","type":"function","z":"a4d1e87c.7813c8","name":"setPrimary","func":"var data = {\n    oldAddr: flow.get('oldID'), \n    newAddr:flow.get('newID')\n    }\n\nmsg.payload = data;\n\nreturn msg;","outputs":1,"noerr":0,"x":259,"y":478,"wires":[["ad6e84cc.601248"]]},{"id":"8b324073.ec26c","type":"inject","z":"a4d1e87c.7813c8","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"60","crontab":"","once":true,"onceDelay":"","topic":"getDevice","payload":"counter","payloadType":"flow","x":109,"y":538,"wires":[["e75c7a43.db1f18"]]},{"id":"e75c7a43.db1f18","type":"function","z":"a4d1e87c.7813c8","name":"scanPrimary","func":"\nif(msg.payload == null) msg.payload = 1;\n\nif(msg.payload >= 76) msg.payload = 1;\n\nmsg.payload++;\n\nflow.set(\"counter\",msg.payload);\n\nmsg.payload = {address: msg.payload};\n\nreturn msg;","outputs":1,"noerr":0,"x":289,"y":538,"wires":[[]]},{"id":"bee81da5.4d3b1","type":"function","z":"a4d1e87c.7813c8","name":"Extract + Format Finder","func":"let Volt = msg.payload.devices[\"67362961\"].DataRecord[0].Value;   \nlet Ampere = msg.payload.devices[\"67362961\"].DataRecord[1].Value;\nlet Power = msg.payload.devices[\"67362961\"].DataRecord[3].Value /1000;\nlet Energy = msg.payload.devices[\"67362961\"].DataRecord[5].Value /1000;\n\nlet _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"HeatEnergy\",\n\t\tfields: {\n\t\t\tvolt:   Volt,\t\t\t\n\t\t\tampere:   Ampere,\t\n\t\t\tpower:   Power,\t\n\t\t    energy: Energy,\t\n\t\t},\n\t\ttags:{\n\t\t    device: \"Finder\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":370,"y":1040,"wires":[["5f3c8353.b9ceac"]]},{"id":"48586024.8ffe","type":"debug","z":"a4d1e87c.7813c8","name":"","active":false,"console":false,"complete":"false","x":770,"y":1040,"wires":[]},{"id":"5f3c8353.b9ceac","type":"join","z":"a4d1e87c.7813c8","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"8","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":590,"y":1040,"wires":[[]]},{"id":"b002634f.1d14d","type":"function","z":"a4d1e87c.7813c8","name":"Extract + Format Kamstrup 302","func":"var TotalHeatEnergy = msg.payload.devices[\"67362961\"].DataRecord[1].Value;   \nvar TotalCoolEnergy = msg.payload.devices[\"67362961\"].DataRecord[2].Value;\nvar FlowTemperature = msg.payload.devices[\"67362961\"].DataRecord[8].Value /100;\nvar ReturnTemperature = msg.payload.devices[\"67362961\"].DataRecord[9].Value /100;\nvar DiffTemperature = Math.abs(msg.payload.devices[\"67362961\"].DataRecord[10].Value /100);\nvar PowerInstValue = Math.abs(msg.payload.devices[\"67362961\"].DataRecord[11].Value *100);\nvar FlowValue = msg.payload.devices[\"67362961\"].DataRecord[13].Value;\nvar FlowValuelm = Number((FlowValue/60).toFixed(2));\n\nlet _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"kamstrup\",\n\t\tfields: {\n            totalheatenergy     : TotalHeatEnergy, \n            totalcoolenergy     : TotalCoolEnergy,\n            flowtemperature     : FlowTemperature, \n            returntemperature   : ReturnTemperature,\n            difftemperature     : DiffTemperature,\n            powerinstvalue      : PowerInstValue,\n            flowvalue           : FlowValue, \n            flowvaluelm         : FlowValuelm, \n\n\t\t    },\n\t\ttags:{\n\t\t    device: \"heatmeter\",\n\t\t    },\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":590,"y":360,"wires":[["cfb18a5f.298128","3b81b908.fdd3b6"]]},{"id":"dd403e65.20135","type":"comment","z":"a4d1e87c.7813c8","name":"Change the device ID number","info":"","x":580,"y":400,"wires":[]},{"id":"f77f6134.8295b","type":"json","z":"a4d1e87c.7813c8","name":"","property":"payload","action":"obj","pretty":false,"x":309,"y":898,"wires":[["f7d473fc.864ae"]]},{"id":"fe9419a9.581398","type":"debug","z":"a4d1e87c.7813c8","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":769,"y":918,"wires":[]},{"id":"f7d473fc.864ae","type":"function","z":"a4d1e87c.7813c8","name":"Extract + Format Kamstrup 302","func":"\nnode.log (\"Power and Energy to Domoticz HTTP\");\nvar power = JSON.parse(msg.payload.devices[\"67362961\"].DataRecord[11].Value)*100;\nvar energy = JSON.parse(msg.payload.devices[\"67362961\"].DataRecord[1].Value)*1000;\nmsg.url = \"192.168.0.148:8095/json.htm?type=command&param=udevice&idx=24&nvalue=0&svalue=\"+power +\";\"+energy ;\n\nreturn msg;","outputs":1,"noerr":0,"x":529,"y":898,"wires":[["fe9419a9.581398"]]},{"id":"77db8efd.bfe4d","type":"influxdb batch","z":"a4d1e87c.7813c8","influxdb":"5d5dceb8.bef8","precision":"","retentionPolicy":"","name":"","x":1060,"y":360,"wires":[]},{"id":"41106582.fea0cc","type":"mbus-out","z":"a4d1e87c.7813c8","name":"","client":"cf258c74.2b793","x":410,"y":200,"wires":[["6b7e06bc.006f58"]]},{"id":"6b7e06bc.006f58","type":"debug","z":"a4d1e87c.7813c8","name":"","active":false,"console":false,"complete":"false","x":629,"y":200,"wires":[]},{"id":"c9da9dc7.9ffd","type":"inject","z":"a4d1e87c.7813c8","name":"scan","repeat":"","crontab":"","once":false,"topic":"scan","payload":"","payloadType":"str","x":101,"y":70,"wires":[["ad6e84cc.601248"]]},{"id":"43eb83c3.5aa82c","type":"inject","z":"a4d1e87c.7813c8","name":"Read ID 1","repeat":"","crontab":"","once":false,"topic":"getDevice","payload":"{\"address\": 1}","payloadType":"json","x":108,"y":144,"wires":[["ad6e84cc.601248"]]},{"id":"8267ca11.2aba68","type":"inject","z":"a4d1e87c.7813c8","name":"Get Devices","props":[{"p":"payload","v":"","vt":"str"},{"p":"topic","v":"getDevices","vt":"string"}],"repeat":"60","crontab":"","once":true,"onceDelay":"","topic":"getDevices","payload":"","payloadType":"str","x":124,"y":218,"wires":[["ad6e84cc.601248"]]},{"id":"cc3859b.9295ca8","type":"inject","z":"a4d1e87c.7813c8","name":"restart","repeat":"","crontab":"","once":false,"topic":"restart","payload":"","payloadType":"num","x":98,"y":106,"wires":[["ad6e84cc.601248"]]},{"id":"3c6331b.c0b14ce","type":"inject","z":"a4d1e87c.7813c8","name":"Read ID 2","repeat":"","crontab":"","once":false,"topic":"getDevice","payload":"{\"address\": 2}","payloadType":"json","x":109,"y":182,"wires":[["ad6e84cc.601248"]]},{"id":"46252092.fafe","type":"inject","z":"a4d1e87c.7813c8","name":"setPrimary","repeat":"","crontab":"","once":false,"topic":"setPrimary","payload":"{\"newAddr\":3,\"oldAddr\":2}","payloadType":"json","x":100,"y":33,"wires":[["ad6e84cc.601248"]]},{"id":"c2e0a50e.444818","type":"inject","z":"a4d1e87c.7813c8","name":"setDevices","props":[{"p":"payload","v":"","vt":"date"},{"p":"topic","v":"setDevices","vt":"string"}],"repeat":"","crontab":"","once":false,"topic":"setDevices","payload":"","payloadType":"date","x":99,"y":258,"wires":[["bc3a51f.0101fb"]]},{"id":"bc3a51f.0101fb","type":"function","z":"a4d1e87c.7813c8","name":"devices","func":"var devices = [\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\",\"20\",\"21\",\"22\",\"23\",\"24\",\"25\",\"26\",\"27\",\"28\",\"29\",\"30\",\"31\",\"32\",\"33\",\"34\",\"35\",\"36\",\"37\",\"38\",\"39\",\"40\",\"41\",\"42\",\"43\",\"44\",\"45\",\"46\",\"47\",\"48\",\"49\",\"50\",\"51\",\"52\",\"53\",\"54\",\"55\",\"56\",\"57\",\"58\",\"59\",\"60\",\"61\",\"62\",\"63\",\"64\",\"65\",\"66\",\"67\",\"68\",\"69\",\"70\",\"71\",\"72\",\"73\",\"74\",\"75\",\"76\"];\n\nmsg.payload = devices;\n\nreturn msg;","outputs":1,"noerr":0,"x":237,"y":258,"wires":[["ad6e84cc.601248"]]},{"id":"eb0ec644.7036b8","type":"comment","z":"a4d1e87c.7813c8","name":"Change the USB-port","info":"","x":460,"y":160,"wires":[]},{"id":"cfb18a5f.298128","type":"join","z":"a4d1e87c.7813c8","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"8","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":811,"y":362,"wires":[["77db8efd.bfe4d"]]},{"id":"a9fec91a.d93008","type":"mqtt out","z":"a4d1e87c.7813c8","name":"","topic":"","qos":"","retain":"","broker":"f935c11c.41462","x":1110,"y":400,"wires":[]},{"id":"fecbb531.0abf38","type":"mqtt in","z":"a4d1e87c.7813c8","name":"kamstrup","topic":"kamstrup","qos":"2","datatype":"json","broker":"f935c11c.41462","x":960,"y":520,"wires":[["1b76d099.6b974f"]]},{"id":"1b76d099.6b974f","type":"debug","z":"a4d1e87c.7813c8","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1100,"y":520,"wires":[]},{"id":"b4afa47.7a36858","type":"join","z":"a4d1e87c.7813c8","name":"","mode":"custom","build":"merged","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"2","count":"8","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":970,"y":400,"wires":[["a9fec91a.d93008"]]},{"id":"3b81b908.fdd3b6","type":"change","z":"a4d1e87c.7813c8","name":"move to msg","rules":[{"t":"move","p":"payload.fields","pt":"msg","to":"payload","tot":"msg"},{"t":"set","p":"topic","pt":"msg","to":"kamstrup","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":830,"y":400,"wires":[["b4afa47.7a36858"]]},{"id":"cf258c74.2b793","type":"mbus-client","z":"","name":"","clienttype":"serial","tcpHost":"127.0.0.1","tcpPort":"10001","tcpTimeout":"4000","serialPort":"/dev/ttyUSB-KAMSTRUP","serialBaudrate":"2400","reconnectTimeout":"10000","autoScan":true,"storeDevices":true,"disableLogs":true},{"id":"ba35fc26.07964","type":"ui_group","z":"","name":"M-Bus Devices","tab":"97113de5.a76d7","order":3,"disp":true,"width":"14"},{"id":"447b5e0.211efa4","type":"ui_group","z":"","name":"Data","tab":"97113de5.a76d7","order":4,"disp":true,"width":"14"},{"id":"61c985c0.155d6c","type":"ui_group","z":"","name":"Commands","tab":"97113de5.a76d7","order":2,"disp":true,"width":"14"},{"id":"5d5dceb8.bef8","type":"influxdb","z":"","hostname":"127.0.0.1","port":"8086","protocol":"http","database":"energy","name":"","usetls":false,"tls":""},{"id":"f935c11c.41462","type":"mqtt-broker","z":"","name":"MQTT","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"97113de5.a76d7","type":"ui_tab","z":"","name":"M-Bus","icon":"plug","order":1}]


Gaat al meer dan 3 jaar goed.
Nog bedankt voor deze! Werkt erg goed bij mij thuis:)

Acties:
  • 0 Henk 'm!

  • Knielen
  • Registratie: December 2009
  • Laatst online: 15:51
sgsdebruijn schreef op maandag 1 februari 2021 @ 13:38:
Ik heb dringend jullie hulp nodig, ik heb vanochtend een update gedaan van Ubuntu 18.x.
Nu merk ik dat mijn virtual sensors niet meer worden geupdate door het Kamstrupscript.
Ik wil geen snapshot van Vmware op de NUC terugzetten i.v.m. onvoorspelbaarheid en verlies data.

Als ik een check doe op welk adres mijn Kamstrup zit kom ik netjes op nr 38
Als ik vervolgens de data ophaal zie ik netjes waardes voorbij komen op de console maar Domoticz krijgt ze niet aangeleverd.

iemand een idee?
Al gelukt? Wil je anders je script even erbij zetten? Dat maakt het meedenken een stuk makkelijker

Acties:
  • 0 Henk 'm!

  • H143
  • Registratie: Juli 2006
  • Laatst online: 15:39
Robindd schreef op zondag 31 januari 2021 @ 13:25:
[...]


Mijn flow wil ik best delen, deze met bloed zweet en tranen maar vooral ontzettend veel tijd samengesteld :)

Je zal je er wel in moeten verdiepen, want je moet het eea goed zetten nog voor je eigen data en het doorsturen naar Influx etc.

Handig ook om de settings van je context store te veranderen, zodat bij een herstart van de Pi of Odroid niet je maandelijkse telling verdwenen is: https://nodered.org/docs/user-guide/context

code:
1
[{"id":"e83fea40.7dbfe8","type":"change","z":"86e20de3.66077","name":"COP calc.","rules":[{"t":"set","p":"payload","pt":"msg","to":"$round(kamstrup.powerinstvalue/youless.powers0, 2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":400,"y":120,"wires":[["948a707a.eddd"]]},{"id":"e6ae10c6.8eb36","type":"mqtt out","z":"86e20de3.66077","name":"COP MQTT","topic":"cop","qos":"","retain":"","broker":"b7ad9d90.0babc","x":1110,"y":40,"wires":[]},{"id":"e58011df.8fb57","type":"change","z":"86e20de3.66077","name":"Set payloads","rules":[{"t":"move","p":"payload","pt":"msg","to":"payload.copcurrent","tot":"msg"},{"t":"set","p":"payload.standbydailyekwh","pt":"msg","to":"standbydailyekwh","tot":"flow"},{"t":"set","p":"payload.standbymonthlyekwh","pt":"msg","to":"standbymonthlyekwh","tot":"flow"},{"t":"set","p":"payload.dhwdailytkwh","pt":"msg","to":"dhwdailytkwh","tot":"flow"},{"t":"set","p":"payload.dhwmonthlytkwh","pt":"msg","to":"dhwmonthlytkwh","tot":"flow"},{"t":"set","p":"payload.heatingdailytkwh","pt":"msg","to":"heatingdailytkwh","tot":"flow"},{"t":"set","p":"payload.heatingmonthlytkwh","pt":"msg","to":"heatingmonthlytkwh","tot":"flow"},{"t":"set","p":"payload.coolingdailytkwh","pt":"msg","to":"coolingdailytkwh","tot":"flow"},{"t":"set","p":"payload.coolingmonthlytkwh","pt":"msg","to":"coolingmonthlytkwh","tot":"flow"},{"t":"set","p":"payload.defrostdailytkwh","pt":"msg","to":"defrostdailytkwh","tot":"flow"},{"t":"set","p":"payload.defrostmonthlytkwh","pt":"msg","to":"defrostmonthlytkwh","tot":"flow"},{"t":"set","p":"payload.dhwdailyekwh","pt":"msg","to":"dhwdailyekwh","tot":"flow"},{"t":"set","p":"payload.dhwmonthlyekwh","pt":"msg","to":"dhwmonthlyekwh","tot":"flow"},{"t":"set","p":"payload.heatingdailyekwh","pt":"msg","to":"heatingdailyekwh","tot":"flow"},{"t":"set","p":"payload.heatingmonthlyekwh","pt":"msg","to":"heatingmonthlyekwh","tot":"flow"},{"t":"set","p":"payload.coolingdailyekwh","pt":"msg","to":"coolingdailyekwh","tot":"flow"},{"t":"set","p":"payload.coolingmonthlyekwh","pt":"msg","to":"coolingmonthlyekwh","tot":"flow"},{"t":"set","p":"payload.defrostdailyekwh","pt":"msg","to":"defrostdailyekwh","tot":"flow"},{"t":"set","p":"payload.defrostmonthlyekwh","pt":"msg","to":"defrostmonthlyekwh","tot":"flow"},{"t":"set","p":"payload.dhwdailycop","pt":"msg","to":"dhwdailycop","tot":"flow"},{"t":"set","p":"payload.dhwmonthlycop","pt":"msg","to":"dhwmonthlycop","tot":"flow"},{"t":"set","p":"payload.heatingdailycop","pt":"msg","to":"heatingdailycop","tot":"flow"},{"t":"set","p":"payload.heatingmonthlycop","pt":"msg","to":"heatingmonthlycop","tot":"flow"},{"t":"set","p":"payload.coolingdailycop","pt":"msg","to":"coolingdailycop","tot":"flow"},{"t":"set","p":"payload.coolingmonthlycop","pt":"msg","to":"coolingmonthlycop","tot":"flow"},{"t":"set","p":"payload.defrostdailycop","pt":"msg","to":"defrostdailycop","tot":"flow"},{"t":"set","p":"payload.defrostmonthlycop","pt":"msg","to":"defrostmonthlycop","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":730,"y":120,"wires":[["f06035f3.f93bd8","e6ae10c6.8eb36"]]},{"id":"f06035f3.f93bd8","type":"function","z":"86e20de3.66077","name":"Filter","func":"let _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"cop\",\n\t\tfields: {\n\t\t\tcopcurrent:             msg.payload.copcurrent||0,\n\t\t\tstandbydailyekwh:       msg.payload.standbydailyekwh||0,\n\t\t\tstandbymonthlyekwh:     msg.payload.standbymonthlyekwh||0,\n\t\t\tdhwdailytkwh:           msg.payload.dhwdailytkwh||0,\n\t\t\tdhwmonthlytkwh:         msg.payload.dhwmonthlytkwh||0,\n\t\t\theatingdailytkwh:       msg.payload.heatingdailytkwh||0,\n\t\t\theatingmonthlytkwh:     msg.payload.heatingmonthlytkwh||0,\n\t\t\tcoolingdailytkwh:       msg.payload.coolingdailytkwh||0,\n\t\t\tcoolingmonthlytkwh:     msg.payload.coolingmonthlytkwh||0,\n\t\t\tdefrostdailytkwh:       msg.payload.defrostdailytkwh||0,\n\t\t\tdefrostmonthlytkwh:     msg.payload.defrostmonthlytkwh||0,\n\t\t\tdhwdailyekwh:           msg.payload.dhwdailyekwh||0,\n\t\t\tdhwmonthlyekwh:         msg.payload.dhwmonthlyekwh||0,\n\t\t\theatingdailyekwh:       msg.payload.heatingdailyekwh||0,\n\t\t\theatingmonthlyekwh:     msg.payload.heatingmonthlyekwh||0,\n\t\t\tcoolingdailyekwh:       msg.payload.coolingdailyekwh||0,\n\t\t\tcoolingmonthlyekwh:     msg.payload.coolingmonthlyekwh||0,\n\t\t\tdefrostdailyekwh:       msg.payload.defrostdailyekwh||0,\n\t\t\tdefrostmonthlyekwh:     msg.payload.defrostmonthlyekwh||0,\n\t\t\tdhwdailycop:            msg.payload.dhwdailycop||0,\n\t\t\tdhwmonthlycop:          msg.payload.dhwmonthlycop||0,\n\t\t\theatingdailycop:        msg.payload.heatingdailycop||0,\n\t\t\theatingmonthlycop:      msg.payload.heatingmonthlycop||0,\n\t\t\tcoolingdailycop:        msg.payload.coolingdailycop||0,\n\t\t\tcoolingmonthlycop:      msg.payload.coolingmonthlycop||0,\n\t\t\tdefrostdailycop:        msg.payload.defrostdailycop||0,\n\t\t\tdefrostmonthlycop:      msg.payload.defrostmonthlycop||0,\n\t\t\t\t\t},\n\t\ttags:{\n\t\t    device: \"cop_calculation\",\n\t\t    },\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":470,"y":180,"wires":[["ada3fa9e.9f5d98"]]},{"id":"ada3fa9e.9f5d98","type":"join","z":"86e20de3.66077","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"5","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":630,"y":180,"wires":[["2d3ede91.d03d52"]]},{"id":"2d3ede91.d03d52","type":"influxdb batch","z":"86e20de3.66077","influxdb":"d9c81848.1fd1d8","precision":"","retentionPolicy":"","name":"","x":840,"y":180,"wires":[]},{"id":"948a707a.eddd","type":"switch","z":"86e20de3.66077","name":"<10","property":"payload","propertyType":"msg","rules":[{"t":"lt","v":"10","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":550,"y":120,"wires":[["e58011df.8fb57"]]},{"id":"5cd0ba6b.169d14","type":"mqtt in","z":"86e20de3.66077","name":"kamstrup","topic":"kamstrup","qos":"2","datatype":"json","broker":"b9513c19.e5ca6","x":80,"y":120,"wires":[["e5399676.3b2bd8"]]},{"id":"97a032c9.6ab63","type":"mqtt in","z":"86e20de3.66077","name":"youless","topic":"youless","qos":"2","datatype":"json","broker":"d6503b94.421bc8","x":70,"y":60,"wires":[["4989f906.a89e78"]]},{"id":"4989f906.a89e78","type":"change","z":"86e20de3.66077","name":"","rules":[{"t":"set","p":"youless","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":240,"y":60,"wires":[[]]},{"id":"e5399676.3b2bd8","type":"change","z":"86e20de3.66077","name":"2x flow","rules":[{"t":"set","p":"youless","pt":"msg","to":"youless","tot":"flow"},{"t":"set","p":"kamstrup","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":240,"y":120,"wires":[["e83fea40.7dbfe8"]]},{"id":"818f4418.3ce5e8","type":"function","z":"86e20de3.66077","name":"DHW t-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"dhwrunningtkwh\")||msg.payload.heatcountertkwh;\n\n//How much usage since the last update\nperiodvalue = msg.payload.heatcountertkwh - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"dhwdailytkwh\")||0;\nmonthlyvalue = flow.get(\"dhwmonthlytkwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"dhwdailytkwh\",dailyvalue );\nflow.set(\"dhwrunningtkwh\",msg.payload.heatcountertkwh);\nflow.set(\"dhwmonthlytkwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":280,"wires":[["a8b617db.c5a768"]]},{"id":"ee43845b.ffaf68","type":"switch","z":"86e20de3.66077","name":"Check operating mode","property":"mitsubishi.operation_mode","propertyType":"msg","rules":[{"t":"eq","v":"Stop","vt":"str"},{"t":"eq","v":"Hot Water","vt":"str"},{"t":"eq","v":"Heating","vt":"str"},{"t":"eq","v":"Cooling","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":500,"y":320,"wires":[["44b7aa9.5909a54"],["818f4418.3ce5e8","f679222a.4cd2e"],["312e27b2.6fb7a8","feac0693.716f18"],["b4944925.79e9e8","d8113673.928c58"]]},{"id":"17534b2b.e241d5","type":"mqtt in","z":"86e20de3.66077","name":"","topic":"mitsubishi","qos":"2","datatype":"json","broker":"d6503b94.421bc8","x":80,"y":280,"wires":[["d2f7d657.fbd378"]]},{"id":"d2f7d657.fbd378","type":"change","z":"86e20de3.66077","name":"","rules":[{"t":"set","p":"mitsubishi","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":250,"y":280,"wires":[[]]},{"id":"b4944925.79e9e8","type":"function","z":"86e20de3.66077","name":"Cooling t-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"coolingrunningtkwh\")||msg.payload.coolcountertkwh;\n\n//How much usage since the last update\nperiodvalue = msg.payload.coolcountertkwh - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"coolingdailytkwh\")||0;\nmonthlyvalue = flow.get(\"coolingmonthlytkwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"coolingdailytkwh\",dailyvalue );\nflow.set(\"coolingrunningtkwh\",msg.payload.coolcountertkwh);\nflow.set(\"coolingmonthlytkwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":440,"wires":[["314ab51c.aa332a"]]},{"id":"feac0693.716f18","type":"function","z":"86e20de3.66077","name":"Heating t-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"heatingrunningtkwh\")||msg.payload.heatcountertkwh;\n\n//How much usage since the last update\nperiodvalue = msg.payload.heatcountertkwh - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"heatingdailytkwh\")||0;\nmonthlyvalue = flow.get(\"heatingmonthlytkwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"heatingdailytkwh\",dailyvalue );\nflow.set(\"heatingrunningtkwh\",msg.payload.heatcountertkwh);\nflow.set(\"heatingmonthlytkwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":360,"wires":[["a5cee9de.1bf858"]]},{"id":"95dc7dc0.3251d","type":"function","z":"86e20de3.66077","name":"Defrost t-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"defrostrunningtkwh\")||msg.payload.coolcountertkwh;\n\n//How much usage since the last update\nperiodvalue = msg.payload.coolcountertkwh - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"defrostdailytkwh\")||0;\nmonthlyvalue = flow.get(\"defrostmonthlytkwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"defrostdailytkwh\",dailyvalue );\nflow.set(\"defrostrunningtkwh\",msg.payload.coolcountertkwh);\nflow.set(\"defrostmonthlytkwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":520,"wires":[["9829a404.126ab8"]]},{"id":"2218f62.33c4e0a","type":"mqtt in","z":"86e20de3.66077","name":"kamstrup","topic":"kamstrup","qos":"2","datatype":"json","broker":"b9513c19.e5ca6","x":80,"y":320,"wires":[["12dde724.092e89"]]},{"id":"12dde724.092e89","type":"change","z":"86e20de3.66077","name":"3x flow","rules":[{"t":"set","p":"mitsubishi","pt":"msg","to":"mitsubishi","tot":"flow"},{"t":"set","p":"kamstrup","pt":"msg","to":"payload","tot":"msg"},{"t":"set","p":"youless","pt":"msg","to":"youless","tot":"flow"},{"t":"set","p":"payload.counters0","pt":"msg","to":"$number(youless.counters0)","tot":"jsonata"},{"t":"set","p":"payload.heatcountertkwh","pt":"msg","to":"$number(kamstrup.totalheatenergy)","tot":"jsonata"},{"t":"set","p":"payload.coolcountertkwh","pt":"msg","to":"$number(kamstrup.totalcoolenergy)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":240,"y":320,"wires":[["ee43845b.ffaf68","9e301255.ab90b","a559e43b.7975c8","498ee73d.8433b8"]]},{"id":"44b7aa9.5909a54","type":"function","z":"86e20de3.66077","name":"Standby e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"standbyrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"standbydailyekwh\")||0;\nmonthlyvalue = flow.get(\"standbymonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"standbydailyekwh\",dailyvalue );\nflow.set(\"standbyrunningekwh\", msg.payload.counters0);\nflow.set(\"standbymonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":830,"y":240,"wires":[[]]},{"id":"9e301255.ab90b","type":"switch","z":"86e20de3.66077","name":"Check operating mode to reset on !=","property":"mitsubishi.operation_mode","propertyType":"msg","rules":[{"t":"neq","v":"Stop","vt":"str"},{"t":"neq","v":"Hot Water","vt":"str"},{"t":"neq","v":"Heating","vt":"str"},{"t":"neq","v":"Cooling","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":190,"y":560,"wires":[["4e279ae3.d10624"],["c9d45af6.41f378"],["320bc1c6.aebf9e"],["8980978a.fbe3e8"]]},{"id":"4e279ae3.d10624","type":"change","z":"86e20de3.66077","name":"Standby reset flow running != ","rules":[{"t":"set","p":"standbyrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":520,"wires":[[]]},{"id":"c9d45af6.41f378","type":"change","z":"86e20de3.66077","name":"DHW reset flow running !=","rules":[{"t":"set","p":"dhwrunningtkwh","pt":"flow","to":"0","tot":"num"},{"t":"set","p":"dhwrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":560,"wires":[[]]},{"id":"320bc1c6.aebf9e","type":"change","z":"86e20de3.66077","name":"Heating reset flow running !=","rules":[{"t":"set","p":"heatingrunningtkwh","pt":"flow","to":"0","tot":"num"},{"t":"set","p":"heatingrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":600,"wires":[[]]},{"id":"8980978a.fbe3e8","type":"change","z":"86e20de3.66077","name":"Cooling reset flow running !=","rules":[{"t":"set","p":"coolingrunningtkwh","pt":"flow","to":"0","tot":"num"},{"t":"set","p":"coolingrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":640,"wires":[[]]},{"id":"cf11d402.ecde78","type":"change","z":"86e20de3.66077","name":"Defrost reset flow running !=","rules":[{"t":"set","p":"defrostrunningtkwh","pt":"flow","to":"0","tot":"num"},{"t":"set","p":"defrostrunningekwh","pt":"flow","to":"0","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":680,"wires":[[]]},{"id":"f679222a.4cd2e","type":"function","z":"86e20de3.66077","name":"DHW e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"dhwrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"dhwdailyekwh\")||0;\nmonthlyvalue = flow.get(\"dhwmonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"dhwdailyekwh\",dailyvalue );\nflow.set(\"dhwrunningekwh\", msg.payload.counters0);\nflow.set(\"dhwmonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":320,"wires":[[]]},{"id":"d8113673.928c58","type":"function","z":"86e20de3.66077","name":"Cooling e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"coolingrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"coolingdailyekwh\")||0;\nmonthlyvalue = flow.get(\"coolingmonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"coolingdailyekwh\",dailyvalue );\nflow.set(\"coolingrunningekwh\", msg.payload.counters0);\nflow.set(\"coolingmonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":830,"y":480,"wires":[[]]},{"id":"772cb8e1.124848","type":"function","z":"86e20de3.66077","name":"Defrost e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"defrostrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"defrostdailyekwh\")||0;\nmonthlyvalue = flow.get(\"defrostmonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"defrostdailyekwh\",dailyvalue );\nflow.set(\"defrostrunningekwh\", msg.payload.counters0);\nflow.set(\"defrostmonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":820,"y":560,"wires":[[]]},{"id":"a5cee9de.1bf858","type":"change","z":"86e20de3.66077","name":"Calculate COP's","rules":[{"t":"set","p":"heatingdailytkwh","pt":"msg","to":"heatingdailytkwh","tot":"flow"},{"t":"set","p":"heatingdailyekwh","pt":"msg","to":"heatingdailyekwh","tot":"flow"},{"t":"set","p":"heatingdailycop","pt":"flow","to":"$round(msg.heatingdailytkwh/msg.heatingdailyekwh,2)","tot":"jsonata"},{"t":"set","p":"heatingmonthlytkwh","pt":"msg","to":"heatingmonthlytkwh","tot":"flow"},{"t":"set","p":"heatingmonthlyekwh","pt":"msg","to":"heatingmonthlyekwh","tot":"flow"},{"t":"set","p":"heatingmonthlycop","pt":"flow","to":"$round(msg.heatingmonthlytkwh/msg.heatingmonthlyekwh,2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1080,"y":360,"wires":[[]]},{"id":"312e27b2.6fb7a8","type":"function","z":"86e20de3.66077","name":"Heating e-kWh counter","func":"//Grab previous value from flow variable for total usage\npreviousvalue = flow.get(\"heatingrunningekwh\")||msg.payload.counters0;\n\n//How much usage since the last update\nperiodvalue = msg.payload.counters0 - previousvalue;\n\n//Grab previous value from global variable for daily usage\ndailyvalue = flow.get(\"heatingdailyekwh\")||0;\nmonthlyvalue = flow.get(\"heatingmonthlyekwh\")||0;\n\ndailyvalue = dailyvalue + periodvalue;\nmonthlyvalue = monthlyvalue + periodvalue;\n\n//Update the global variables.\nflow.set(\"heatingdailyekwh\",dailyvalue );\nflow.set(\"heatingrunningekwh\", msg.payload.counters0);\nflow.set(\"heatingmonthlyekwh\",monthlyvalue);\n\nmsg.payload = Number(parseFloat(dailyvalue).toFixed(3))\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":830,"y":400,"wires":[[]]},{"id":"a8b617db.c5a768","type":"change","z":"86e20de3.66077","name":"Calculate COP's","rules":[{"t":"set","p":"dhwdailytkwh","pt":"msg","to":"dhwdailytkwh","tot":"flow"},{"t":"set","p":"dhwdailyekwh","pt":"msg","to":"dhwdailyekwh","tot":"flow"},{"t":"set","p":"dhwdailycop","pt":"flow","to":"$round(msg.dhwdailytkwh/msg.dhwdailyekwh,2)","tot":"jsonata"},{"t":"set","p":"dhwmonthlytkwh","pt":"msg","to":"dhwmonthlytkwh","tot":"flow"},{"t":"set","p":"dhwmonthlyekwh","pt":"msg","to":"dhwmonthlyekwh","tot":"flow"},{"t":"set","p":"dhwmonthlycop","pt":"flow","to":"$round(msg.dhwmonthlytkwh/msg.dhwmonthlyekwh,2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1080,"y":280,"wires":[[]]},{"id":"314ab51c.aa332a","type":"change","z":"86e20de3.66077","name":"Calculate COP's","rules":[{"t":"set","p":"coolingdailytkwh","pt":"msg","to":"coolingdailytkwh","tot":"flow"},{"t":"set","p":"coolingdailyekwh","pt":"msg","to":"coolingdailyekwh","tot":"flow"},{"t":"set","p":"coolingdailycop","pt":"flow","to":"$round(msg.coolingdailytkwh/msg.coolingdailyekwh,2)","tot":"jsonata"},{"t":"set","p":"coolingmonthlytkwh","pt":"msg","to":"coolingmonthlytkwh","tot":"flow"},{"t":"set","p":"coolingmonthlyekwh","pt":"msg","to":"coolingmonthlyekwh","tot":"flow"},{"t":"set","p":"coolingmonthlycop","pt":"flow","to":"$round(msg.coolingmonthlytkwh/msg.coolingmonthlyekwh,2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1080,"y":440,"wires":[[]]},{"id":"9829a404.126ab8","type":"change","z":"86e20de3.66077","name":"Calculate COP's","rules":[{"t":"set","p":"defrostdailytkwh","pt":"msg","to":"defrostdailytkwh","tot":"flow"},{"t":"set","p":"defrostdailyekwh","pt":"msg","to":"defrostdailyekwh","tot":"flow"},{"t":"set","p":"defrostdailycop","pt":"flow","to":"$round(msg.defrostdailytkwh/msg.defrostdailyekwh,2)","tot":"jsonata"},{"t":"set","p":"defrostmonthlytkwh","pt":"msg","to":"defrostmonthlytkwh","tot":"flow"},{"t":"set","p":"defrostmonthlyekwh","pt":"msg","to":"defrostmonthlyekwh","tot":"flow"},{"t":"set","p":"defrostmonthlycop","pt":"flow","to":"$round(msg.defrostmonthlytkwh/msg.defrostmonthlyekwh,2)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1080,"y":520,"wires":[[]]},{"id":"a559e43b.7975c8","type":"switch","z":"86e20de3.66077","name":"Check defrost status","property":"mitsubishi.defrost","propertyType":"msg","rules":[{"t":"eq","v":"Defrost","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":500,"y":380,"wires":[["95dc7dc0.3251d","772cb8e1.124848"]]},{"id":"498ee73d.8433b8","type":"switch","z":"86e20de3.66077","name":"Check defrost status to reset on !=","property":"mitsubishi.defrost","propertyType":"msg","rules":[{"t":"neq","v":"Defrost","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":180,"y":640,"wires":[["cf11d402.ecde78"]]},{"id":"b7ad9d90.0babc","type":"mqtt-broker","z":"","name":"","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"d9c81848.1fd1d8","type":"influxdb","z":"","hostname":"127.0.0.1","port":"8086","protocol":"http","database":"energy","name":"","usetls":false,"tls":""},{"id":"b9513c19.e5ca6","type":"mqtt-broker","z":"","name":"MQTT","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"d6503b94.421bc8","type":"mqtt-broker","z":"","name":"MQTT","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]
bedankt! alleen snap ik er nog niks van :P
ik heb het nu voor eerst werkend in Grafana deze kan tegenwoordig ook rekenen

Acties:
  • 0 Henk 'm!

  • sgsdebruijn
  • Registratie: Maart 2012
  • Laatst online: 08-01 02:44
Knielen schreef op donderdag 4 februari 2021 @ 07:48:
[...]


Al gelukt? Wil je anders je script even erbij zetten? Dat maakt het meedenken een stuk makkelijker
Ik heb uiteindelijk toch een snapshot terug gezet. Bedankt voor je reactie.

#NoGas #Freubelaar #Loria6008DUO #12xSF170/SMA #6xCSUN355/APS #Domoticz


Acties:
  • 0 Henk 'm!

  • repsaj
  • Registratie: September 2004
  • Laatst online: 23-04 16:03
Hi,
Ik wil m’n Kamstrup MC602 uitlezen. Nu leek dit interessant: https://github.com/weetmuts/wmbusmeters
Maar waar vind ik een geschikte dongle voor m’n raspberry pi? Ik dacht aan een rtlsdr dongle (RTL2832U), maar kan geen versie vinden die gaat naar de 868.95 MHz frequentie.

x


Acties:
  • 0 Henk 'm!

  • rubdos
  • Registratie: Oktober 2020
  • Laatst online: 07-03-2024

rubdos

Sailfish - Whisperfish

repsaj schreef op dinsdag 9 februari 2021 @ 00:27:
Hi,
Ik wil m’n Kamstrup MC602 uitlezen. Nu leek dit interessant: https://github.com/weetmuts/wmbusmeters
Maar waar vind ik een geschikte dongle voor m’n raspberry pi? Ik dacht aan een rtlsdr dongle (RTL2832U), maar kan geen versie vinden die gaat naar de 868.95 MHz frequentie.
Ik heb hier een nooelec gekocht (https://www.amazon.de/-/nl/dp/B00P2UOU72), die krijgt netjes de pakketjes binnen. Vrij zeker dat al die RTL2832U stickjes dat doen.

Dat gezegd zijnde, het moeilijkste lijkt me voor mij hier aan die AES key te geraken. Wat doe hiervoor je als je een appartement huurt in een groot blok, waar zo'n 70-tal van die apparaatjes zijn geplaatst? Aan je huisbaas vragen, "hey, heb jij toevallig de AES key liggen van die Kamstrup watermeter?" 8)7

EDIT: ziet ernaar uit dat je dat via My Kamstrup en een accountje gewoon kan opvragen. Heb twee keer moeten proberen, de eerste keer kreeg ik een "security error". Volgens mij kan ik via die tool de stuff van de buren ook opvragen, maar soit.

[ Voor 12% gewijzigd door rubdos op 19-02-2021 20:45 ]


Acties:
  • 0 Henk 'm!

  • repsaj
  • Registratie: September 2004
  • Laatst online: 23-04 16:03
@rubdos wat is dan de apparaat code die je invult bij My Kamstrup? Waar heb je die gevonden? Ik vind alleen m’n serienummer aan de voorkant. Vanuit de warmtemeter leverancier - van wie eigenlijk de meter is - kreeg in de code namelijk niet ivm AVG.

Ik heb trouwens ook zo’n soort dongle overgenomen van een mede tweaker en heb de signalen ook al opgevangen. Mis nu alleen nog dr private key.

Edit. Gevonden! Door de QR code te scannen kreeg ik de apparaatcode, maar ook de melding “apparaat is vergrendeld” wanneer ik het apparaat wil registeren en nu “ Registratie mislukt vanwege een onbekende reden” 😞

[ Voor 43% gewijzigd door repsaj op 19-02-2021 22:46 ]

x


Acties:
  • 0 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
Even een oud topic opnieuw leven inblazen:

Binnenkort komt (hopelijk) mijn installateur hier de Kamstrup in de leidingen hangen.

Nu heb ik nog drie zaken nodig:
  1. Een M-Bus module om aan de Pi te hangen. Is deze deze (uit de openingspost) nog steeds de beste optie? Ik vind het niet erg om een paar euro meer uit te geven als ik dan "proven technology" heb...
  2. De data in Domoticz krijgen. Daarvoor ontbreekt eigenlijk een handige howto, die een mooie plek verdient in de openingspost van dit topic. Is deze post de beste samenvatting? Maar hier staat weer een nieuwe script... En hier de versie van @Daannn1987
  3. Het berekenen van de COP in Domoticz. Daarvoor vond ik in deze post een mooi script. @AUijtdehaag , is dat nog de meest recente versie?

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Andrehj
1. ja die is prima

2.
Beter gewoon alles in node-red zetten.
https://flows.nodered.org/node/node-red-contrib-m-bus
AUijtdehaag in "Kamstrup Multical 302 met Pi uitlezen en domoticz"

En eventueel de aangepaste van @Wolly Wolly in "Kamstrup Multical 302 met Pi uitlezen en domoticz"
3.
En die van @Robindd berekent alles per dag/maand/jaar.
Robindd in "Kamstrup Multical 302 met Pi uitlezen en domoticz"


Heb ze niet allemaal opnieuw ingeladen om te zien wat het ook alweer was, maar overal is een wel mouw aan te passen.

[ Voor 5% gewijzigd door AUijtdehaag op 24-03-2021 16:27 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
Dank. Die is besteld.
2.
Beter gewoon alles in node-red zetten.
https://flows.nodered.org/node/node-red-contrib-m-bus
AUijtdehaag in "Kamstrup Multical 302 met Pi uitlezen en domoticz"

En eventueel de aangepaste van @Wolly Wolly in "Kamstrup Multical 302 met Pi uitlezen en domoticz"
3.
En die van @Robindd berekent alles per dag/maand/jaar.
Robindd in "Kamstrup Multical 302 met Pi uitlezen en domoticz"

Heb ze niet allemaal opnieuw ingeladen om te zien wat het ook alweer was, maar overal is een wel mouw aan te passen.
Ik wil node-red nog even voor me uitschuiven. Eerst maar eens kijken wat er allemaal in Domoticz kan. Daarna koop ik een keer (als er weer tijd is) een Odroid, en dan kan daar mooi wat meer op draaien dan nu op de Pi.

Jammer dat er geen complete handleiding van dat stukje is, terwijl daar nou nét dit topic over gaat. Ik zal wel proberen die te maken door mijn ervaringen te delen.

[ Voor 5% gewijzigd door Andrehj op 24-03-2021 20:17 ]

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Andrehj
Deze "flow" is volledig werkend met domoticz en stuurt ook mqtt messages uit die je in eventueel home assistant kan gebruiken.

Gebruik je het niet dan kan je dat stukje deleten.
Mijn "bezwaar" tegen het originele "ontwerp" is dat je met allerlei libraries aan de gang moet, terwijl dat in node-red gewoon heel eenvoudig te installeren is.
code:
1
[{"id":"18a88015.fc78e","type":"tab","label":"Mbus","disabled":false,"info":""},{"id":"6df22243.06b84c","type":"mbus-out","z":"18a88015.fc78e","name":"","client":"cf6e1602.540698","x":490,"y":200,"wires":[["ffa42367.bc6f3"]]},{"id":"ffa42367.bc6f3","type":"debug","z":"18a88015.fc78e","name":"","active":false,"console":false,"complete":"false","x":709,"y":200,"wires":[]},{"id":"d6e19c89.98c7d","type":"mbus-controller","z":"18a88015.fc78e","name":"","client":"cf6e1602.540698","x":530,"y":300,"wires":[["2a3380ba.0db42","a3d8272d.559d88","407dec51.dc7d54","4dc5fcec.c20da4","6eec815f.d07b2","a06975f4.77df98","d302b10e.748","15ff27ad.430248"]]},{"id":"e3451b94.1e1cb8","type":"inject","z":"18a88015.fc78e","name":"scan","repeat":"","crontab":"","once":false,"topic":"scan","payload":"","payloadType":"str","x":150,"y":100,"wires":[["d6e19c89.98c7d"]]},{"id":"a3d8272d.559d88","type":"debug","z":"18a88015.fc78e","name":"","active":false,"console":false,"complete":"false","x":730,"y":340,"wires":[]},{"id":"964765ae.1eab78","type":"inject","z":"18a88015.fc78e","name":"Read ID 1","repeat":"","crontab":"","once":false,"topic":"getDevice","payload":"{\"address\": 1}","payloadType":"json","x":160,"y":180,"wires":[["d6e19c89.98c7d"]]},{"id":"e0ef2daa.fffc5","type":"inject","z":"18a88015.fc78e","name":"Get Devices","repeat":"60","crontab":"","once":true,"onceDelay":"","topic":"getDevices","payload":"","payloadType":"str","x":180,"y":260,"wires":[["d6e19c89.98c7d"]]},{"id":"2a3380ba.0db42","type":"ui_template","z":"18a88015.fc78e","group":"b5ab1cc6.77b5f","name":"mbus-table","order":0,"width":"14","height":"10","format":"<table>\n  <tr>\n    <th>ID</th>\n    <th>Primary ID</th>\n    <th>Info</th>\n    <th>Data</th>\n    <th>Last Update</th>\n    <th>Status</th>\n  </tr>\n  <tr style=\"cursor:pointer;\" ng-click=\"showData(device)\" ng-repeat=\"(id, device) in devices\">\n    <td>{{ device.secondaryID }}</td>\n    <td>{{ device.primaryID }}</td>\n    <td ng-bind-html=\"getInfo(device)\"></td>\n    <td>{{ device.DataRecord.length }}</td>\n    <td>{{ device.lastUpdate }}</td>\n    <td>\n        <div class=\"online\" ng-style=\"{background: !device.error ? '#4CAF50' : '#f44336'}\">\n            <md-tooltip md-direction=\"bottom\">{{ device.error ? device.error : 'OK' }}</md-tooltip>\n        </div>\n    </td>\n  </tr>\n</table>\n\n<style>\ntable {\n    border-collapse: collapse;\n    width: 100%;\n}\n\nth, td{\n    text-align: left;\n    padding: 8px;\n    background-color: #f2f2f2;\n    color: black;\n}\n\nth {\n    background-color: #4CAF50;\n    color: white;\n}\n\n.online {\n\tbackground:#ff3333;\n\twidth:20px;\n\theight:20px;\n\tmargin:0 auto;\n\t-webkit-border-radius:50%;\n\t-moz-border-radius:50%;\n\tborder-radius:50%;\n}\n</style>\n\n<script>\n\n\n(function(scope) {\n    \n    scope.send({topic: 'getDevices'});\n    scope.devices = [];\n    \n    scope.showData = function(device){\n        scope.send({topic: 'deviceData', payload: device});\n    }\n    \n    scope.getInfo = function(device){\n        var text = '';\n        var info = device.SlaveInformation;\n        \n        for(key in info){\n            text += `<p><b>${key}</b>: ${info[key]}</p>`;\n        }\n        \n        return text;\n    }\n\n    scope.$watch('msg', function(data) {\n        if(data && data.topic){\n            switch(data.topic){\n                case \"getDevices\":\n                    if(data.payload && data.payload.devices)\n                        scope.devices = data.payload.devices;\n                break;\n            }\n        }\n    });\n    \n})(scope);\n\n</script>\n","storeOutMessages":false,"fwdInMessages":false,"templateScope":"local","x":730,"y":300,"wires":[["a71eedd2.bde5e"]]},{"id":"14d223bd.09056c","type":"inject","z":"18a88015.fc78e","name":"restart","repeat":"","crontab":"","once":false,"topic":"restart","payload":"","payloadType":"num","x":150,"y":140,"wires":[["d6e19c89.98c7d"]]},{"id":"a71eedd2.bde5e","type":"ui_template","z":"18a88015.fc78e","group":"675ebc3b.cfb8a4","name":"data-table","order":0,"width":"14","height":"10","format":"<p><b>Device ID:</b> {{ID}} </p>\n\n<br>\n<br>\n\n<table>\n  <tr>\n    <th>ID</th>\n    <th>Function</th>\n    <th>Unit</th>\n    <th>Value</th>\n    <th>Timestamp</th>\n  </tr>\n  <tr ng-repeat=\"(key, data) in deviceData\">\n    <td>{{ data.id }}</td>\n    <td>{{ data.Function }}</td>\n    <td>{{ data.Unit }}</td>\n    <td>{{ data.Value }}</td>\n    <td>{{ data.Timestamp }}</td>\n  </tr>\n</table>\n\n<style>\ntable {\n    border-collapse: collapse;\n    width: 100%;\n}\n\nth, td{\n    text-align: left;\n    padding: 8px;\n    background-color: #f2f2f2;\n    color: black;\n}\n\nth {\n    background-color: #4CAF50;\n    color: white;\n}\n\n.online {\n\tbackground:#ff3333;\n\twidth:20px;\n\theight:20px;\n\tmargin:0 auto;\n\t-webkit-border-radius:50%;\n\t-moz-border-radius:50%;\n\tborder-radius:50%;\n}\n</style>\n\n<script>\n\n\n(function(scope) {\n    \n    scope.deviceData = [];\n    scope.ID = '';\n\n    scope.$watch('msg', function(data) {\n        if(data && data.topic){\n            switch(data.topic){\n                case \"deviceData\":\n                    if(data.payload){\n                        scope.deviceData = data.payload.DataRecord;\n                        scope.ID = data.payload.SlaveInformation.Id;\n                    }\n                break;\n            }\n        }\n    });\n    \n})(scope);\n\n</script>\n","storeOutMessages":false,"fwdInMessages":false,"templateScope":"local","x":900,"y":300,"wires":[[]]},{"id":"e546fe57.1017","type":"inject","z":"18a88015.fc78e","name":"Read ID 2","repeat":"","crontab":"","once":false,"topic":"getDevice","payload":"{\"address\": 2}","payloadType":"json","x":160,"y":220,"wires":[["d6e19c89.98c7d"]]},{"id":"60cae445.c4e2bc","type":"ui_button","z":"18a88015.fc78e","name":"Scan","group":"841a82ae.5a7be","order":3,"width":"2","height":"1","passthru":false,"label":"Scan","color":"","bgcolor":"","icon":"location_searching","payload":"","payloadType":"str","topic":"scan","x":130,"y":340,"wires":[["d6e19c89.98c7d"]]},{"id":"f5dd8ee0.adcec","type":"ui_button","z":"18a88015.fc78e","name":"Restart","group":"841a82ae.5a7be","order":4,"width":"3","height":"1","passthru":false,"label":"Restart","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"restart","x":140,"y":380,"wires":[["d6e19c89.98c7d"]]},{"id":"624895ef.5d235c","type":"ui_button","z":"18a88015.fc78e","name":"GetDevices","group":"841a82ae.5a7be","order":5,"width":"3","height":"1","passthru":false,"label":"Update Devices","color":"","bgcolor":"","icon":"refresh","payload":"","payloadType":"str","topic":"getDevices","x":150,"y":420,"wires":[["d6e19c89.98c7d"]]},{"id":"cbe596b9.15a728","type":"ui_button","z":"18a88015.fc78e","name":"readAddress","group":"841a82ae.5a7be","order":2,"width":"3","height":"1","passthru":false,"label":"Read Device","color":"","bgcolor":"","icon":"","payload":"deviceID","payloadType":"flow","topic":"getDevice","x":151,"y":457,"wires":[["80803e0d.74f2e"]]},{"id":"9622ba7f.89b8d8","type":"ui_text_input","z":"18a88015.fc78e","name":"Device_ID","label":"ID: ","group":"841a82ae.5a7be","order":1,"width":"3","height":"1","passthru":true,"mode":"text","delay":300,"topic":"","x":149,"y":618,"wires":[["10d87e9b.2e20b1"]]},{"id":"10d87e9b.2e20b1","type":"function","z":"18a88015.fc78e","name":"storeID","func":"\nflow.set('deviceID', msg.payload);\n\nreturn msg;","outputs":0,"noerr":0,"x":325,"y":618,"wires":[]},{"id":"80803e0d.74f2e","type":"function","z":"18a88015.fc78e","name":"readAddr","func":"var data = {address: msg.payload}\n\nmsg.payload = data;\n\nreturn msg;","outputs":1,"noerr":0,"x":309,"y":457,"wires":[["d6e19c89.98c7d"]]},{"id":"e5adecec.061af","type":"status","z":"18a88015.fc78e","name":"controller_status","scope":["d6e19c89.98c7d"],"x":420,"y":60,"wires":[["c8a9ec85.ae84e"]]},{"id":"6fbfd215.b4a4dc","type":"status","z":"18a88015.fc78e","name":"mbus_status","scope":["6df22243.06b84c"],"x":413,"y":105,"wires":[["4877ffdf.7aade"]]},{"id":"c8a9ec85.ae84e","type":"ui_text","z":"18a88015.fc78e","group":"bbf75ab1.aa33e8","order":0,"width":0,"height":0,"name":"controller_status","label":"Controller","format":"{{msg.status.text}}","layout":"row-spread","x":632,"y":60,"wires":[]},{"id":"4877ffdf.7aade","type":"ui_text","z":"18a88015.fc78e","group":"bbf75ab1.aa33e8","order":0,"width":0,"height":0,"name":"mbus_status","label":"M-Bus","format":"{{msg.status.text}}","layout":"row-spread","x":622,"y":105,"wires":[]},{"id":"f10da0e3.b6d9e","type":"inject","z":"18a88015.fc78e","name":"setPrimary","repeat":"","crontab":"","once":false,"topic":"setPrimary","payload":"{\"newAddr\":3,\"oldAddr\":2}","payloadType":"json","x":160,"y":60,"wires":[["d6e19c89.98c7d"]]},{"id":"74c8799b.f02bc8","type":"ui_text_input","z":"18a88015.fc78e","name":"Old_ID","label":"Old ID","group":"841a82ae.5a7be","order":6,"width":"3","height":"1","passthru":true,"mode":"text","delay":300,"topic":"","x":140,"y":660,"wires":[["c946fc99.3d873"]]},{"id":"c946fc99.3d873","type":"function","z":"18a88015.fc78e","name":"storeID","func":"\nflow.set('oldID', msg.payload);\n\nreturn msg;","outputs":0,"noerr":0,"x":323,"y":658,"wires":[]},{"id":"f8c2248a.a13cc8","type":"ui_text_input","z":"18a88015.fc78e","name":"New_ID","label":"New ID","group":"841a82ae.5a7be","order":7,"width":"3","height":"1","passthru":true,"mode":"text","delay":300,"topic":"","x":140,"y":700,"wires":[["c6cda7ee.cc0058"]]},{"id":"c6cda7ee.cc0058","type":"function","z":"18a88015.fc78e","name":"storeID","func":"\nflow.set('newID', msg.payload);\n\nreturn msg;","outputs":0,"noerr":0,"x":321,"y":698,"wires":[]},{"id":"195ee44f.89914c","type":"ui_button","z":"18a88015.fc78e","name":"SetPrimary","group":"841a82ae.5a7be","order":8,"width":"3","height":"1","passthru":false,"label":"Set Primary ID","color":"","bgcolor":"","icon":"","payload":"","payloadType":"str","topic":"setPrimary","x":150,"y":498,"wires":[["dc733407.e3bd98"]]},{"id":"dc733407.e3bd98","type":"function","z":"18a88015.fc78e","name":"setPrimary","func":"var data = {\n    oldAddr: flow.get('oldID'), \n    newAddr:flow.get('newID')\n    }\n\nmsg.payload = data;\n\nreturn msg;","outputs":1,"noerr":0,"x":319,"y":498,"wires":[["d6e19c89.98c7d"]]},{"id":"df9f8e35.84da2","type":"inject","z":"18a88015.fc78e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"30","crontab":"","once":false,"onceDelay":"","topic":"getDevice","payload":"counter","payloadType":"flow","x":169,"y":558,"wires":[["2006d248.b4cc8e"]]},{"id":"2006d248.b4cc8e","type":"function","z":"18a88015.fc78e","name":"scanPrimary","func":"\nif(msg.payload == null) msg.payload = 1;\n\nif(msg.payload >= 76) msg.payload = 1;\n\nmsg.payload++;\n\nflow.set(\"counter\",msg.payload);\n\nmsg.payload = {address: msg.payload};\n\nreturn msg;","outputs":1,"noerr":0,"x":349,"y":558,"wires":[[]]},{"id":"70684120.725d1","type":"inject","z":"18a88015.fc78e","name":"setDevices","repeat":"","crontab":"","once":false,"topic":"setDevices","payload":"","payloadType":"date","x":159,"y":298,"wires":[["189be492.d223db"]]},{"id":"189be492.d223db","type":"function","z":"18a88015.fc78e","name":"devices","func":"var devices = [\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"10\",\"11\",\"12\",\"13\",\"14\",\"15\",\"16\",\"17\",\"18\",\"19\",\"20\",\"21\",\"22\",\"23\",\"24\",\"25\",\"26\",\"27\",\"28\",\"29\",\"30\",\"31\",\"32\",\"33\",\"34\",\"35\",\"36\",\"37\",\"38\",\"39\",\"40\",\"41\",\"42\",\"43\",\"44\",\"45\",\"46\",\"47\",\"48\",\"49\",\"50\",\"51\",\"52\",\"53\",\"54\",\"55\",\"56\",\"57\",\"58\",\"59\",\"60\",\"61\",\"62\",\"63\",\"64\",\"65\",\"66\",\"67\",\"68\",\"69\",\"70\",\"71\",\"72\",\"73\",\"74\",\"75\",\"76\"];\n\nmsg.payload = devices;\n\nreturn msg;","outputs":1,"noerr":0,"x":297,"y":298,"wires":[["d6e19c89.98c7d"]]},{"id":"407dec51.dc7d54","type":"function","z":"18a88015.fc78e","name":"Extract + Format Kamstrup 302","func":"let TotalHeatEnergy = msg.payload.devices[\"67525649\"].DataRecord[1].Value;   \nlet TotalCoolEnergy = msg.payload.devices[\"67525649\"].DataRecord[2].Value;\nlet FlowTemperature = msg.payload.devices[\"67525649\"].DataRecord[8].Value /100;\nlet ReturnTemperature = msg.payload.devices[\"67525649\"].DataRecord[9].Value /100;\nlet DiffTemperature = msg.payload.devices[\"67525649\"].DataRecord[10].Value /100;\nvar PowerInstValue = Math.round((msg.payload.devices[\"67525649\"].DataRecord[11].Value *100)*1)/1;\nlet FlowInstValue = msg.payload.devices[\"67525649\"].DataRecord[13].Value;\nvar FlowValuelm = Number((FlowInstValue/60).toFixed(2));\n\nlet _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"HeatEnergy\",\n\t\tfields: {\n\t\t\ttotalheatenergy:   TotalHeatEnergy,\t\t\t\n\t\t\ttotalcoolenergy:   TotalCoolEnergy,\t\n\t\t\tflowtemperature:   FlowTemperature,\t\n\t\t    returntemperature: ReturnTemperature,\t\n\t\t    difftemperature:   DiffTemperature,\n\t\t    power:             PowerInstValue,\n\t\t\tflow:              FlowInstValue,\n            flowlm:            FlowValuelm, \n\n\t\t},\n\t\ttags:{\n\t\t    device: \"Kamstrup\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":610,"y":420,"wires":[["76d3228f.0d1fac","3b81b908.fdd3b6"]]},{"id":"92575395.d0971","type":"debug","z":"18a88015.fc78e","name":"","active":false,"console":false,"complete":"false","x":1130,"y":460,"wires":[]},{"id":"76d3228f.0d1fac","type":"join","z":"18a88015.fc78e","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"8","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":850,"y":420,"wires":[["92575395.d0971","b3f673f6.ef65a"]]},{"id":"b3f673f6.ef65a","type":"influxdb batch","z":"18a88015.fc78e","influxdb":"a0b0c36c.f222b","precision":"","retentionPolicy":"","name":"","x":1160,"y":420,"wires":[]},{"id":"4a5fcda.16e4e34","type":"comment","z":"18a88015.fc78e","name":"Change the device ID number","info":"","x":600,"y":380,"wires":[]},{"id":"b8349f9.ce79b6","type":"comment","z":"18a88015.fc78e","name":"Change to your own influxdb server","info":"","x":1160,"y":380,"wires":[]},{"id":"a990c502.c303f8","type":"comment","z":"18a88015.fc78e","name":"Change the adapter's serial port","info":"","x":570,"y":160,"wires":[]},{"id":"b8812309.9ea07","type":"comment","z":"18a88015.fc78e","name":"Change the adapter's serial port","info":"","x":570,"y":260,"wires":[]},{"id":"4dc5fcec.c20da4","type":"function","z":"18a88015.fc78e","name":"Extract + Format Kamstrup 302","func":"var TotalHeatEnergy = msg.payload.devices[\"67525649\"].DataRecord[1].Value;   \nvar TotalCoolEnergy = msg.payload.devices[\"67525649\"].DataRecord[2].Value;\nvar FlowTemperature = msg.payload.devices[\"67525649\"].DataRecord[8].Value /100;\nvar ReturnTemperature = msg.payload.devices[\"67525649\"].DataRecord[9].Value /100;\nvar DiffTemperature = msg.payload.devices[\"67525649\"].DataRecord[10].Value /100;\nvar PowerInstValue = Math.round((msg.payload.devices[\"67525649\"].DataRecord[11].Value *100)*1)/1;\nvar FlowInstValue = msg.payload.devices[\"67525649\"].DataRecord[13].Value;\n\nvar msg1 = {payload:{\"idx\": 15, \"nvalue\": 0, \"svalue\": String(TotalHeatEnergy)}};\nvar msg2 = {payload:{\"idx\": 16, \"nvalue\": 0, \"svalue\": String(TotalCoolEnergy)}};\nvar msg3 = {payload:{\"idx\": 12, \"nvalue\": 0, \"svalue\": String(FlowTemperature)}};\nvar msg4 = {payload:{\"idx\": 13, \"nvalue\": 0, \"svalue\": String(ReturnTemperature)}};\nvar msg5 = {payload:{\"idx\": 14, \"nvalue\": 0, \"svalue\": String(DiffTemperature)}};\nvar msg6 = {payload:{\"idx\": 533, \"nvalue\": 0, \"svalue\": String(PowerInstValue)}};\n//var msg6 = msg.url = \"192.168.2.10:8084/json.htm?type=command&param=udevice&idx=40&nvalue=0&svalue=\"+String(PowerInstValue) +\";\" + String(TotalHeatEnergy);\nvar msg7 = {payload:{\"idx\": 17, \"nvalue\": 0, \"svalue\": String(FlowInstValue)}};\n\nreturn [ msg1, msg2, msg3, msg4, msg5, msg6, msg7 ];\n\n//Math.round((msg.payload.devices[\"21\"].DataRecord[17].Value /10)*1)/1;","outputs":7,"noerr":0,"x":610,"y":580,"wires":[["b38f12b7.1be85","6eb2429c.c4bc8c"],["b38f12b7.1be85","6eb2429c.c4bc8c"],["b38f12b7.1be85","6eb2429c.c4bc8c"],["b38f12b7.1be85","6eb2429c.c4bc8c"],["b38f12b7.1be85","6eb2429c.c4bc8c"],["b38f12b7.1be85","6eb2429c.c4bc8c"],["b38f12b7.1be85","6eb2429c.c4bc8c"]]},{"id":"6eb2429c.c4bc8c","type":"mqtt out","z":"18a88015.fc78e","name":"","topic":"domoticz/in","qos":"","retain":"","broker":"f935c11c.41462","x":950,"y":560,"wires":[]},{"id":"b38f12b7.1be85","type":"debug","z":"18a88015.fc78e","name":"","active":false,"console":false,"complete":"false","x":950,"y":620,"wires":[]},{"id":"b5b82e08.ebcfc","type":"comment","z":"18a88015.fc78e","name":"Change the device ID number","info":"","x":600,"y":500,"wires":[]},{"id":"6eec815f.d07b2","type":"function","z":"18a88015.fc78e","name":"Extract + Format Finder","func":"//var VoltL1 = msg.payload.devices[\"21\"].DataRecord[4].Value /1000;\n//var VoltL2 = msg.payload.devices[\"21\"].DataRecord[5].Value /1000;\n//var VoltL3 = msg.payload.devices[\"21\"].DataRecord[6].Value /1000;\n//var VoltLN = msg.payload.devices[\"21\"].DataRecord[7].Value /1000;\n//var PowerL1 = msg.payload.devices[\"21\"].DataRecord[0].Value /1000;\n//var PowerL2 = msg.payload.devices[\"21\"].DataRecord[1].Value /1000;\n//var PowerL3 = msg.payload.devices[\"21\"].DataRecord[2].Value /1000;\nvar Powertot = Math.round(((msg.payload.devices[\"21\"].DataRecord[3].Value /1000))*1)/1;\n//var EnergyL1 = msg.payload.devices[\"21\"].DataRecord[14].Value /1000;\n//var EnergyL2 = msg.payload.devices[\"21\"].DataRecord[15].Value /1000;\n//var EnergyL3 = msg.payload.devices[\"21\"].DataRecord[16].Value /1000;\nvar Energytot = Math.round((msg.payload.devices[\"21\"].DataRecord[17].Value /1000)*1)/1;\n\nvar _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"Finder_Mitsu\",\n\t\tfields: {\n//\t\t\tvoltl1:   VoltL1,\t\t\t\n//\t\t\tvoltl2:   VoltL2,\t\t\t\n//\t\t\tvoltl3:   VoltL3,\t\t\t\n//\t\t\tvoltln:   VoltLN,\t\t\t\n//\t\t\tpowerl1:   PowerL1,\t\n//\t\t\tpowerl2:   PowerL2,\t\n//\t\t\tpowerl3:   PowerL3,\t\n    \t\tpowertot:   Powertot,\t\n//\t\t    energyl1: EnergyL1,\t\n//\t\t    energyl2: EnergyL2,\t\n//\t\t    energyl3: EnergyL3,\t\n\t\t    energytot: Energytot,\t\n\t\t},\n\t\ttags:{\n\t\t    device: \"finder_mitsu\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":590,"y":720,"wires":[["ffa6eb6b.e70788"]]},{"id":"24b9182a.18ec08","type":"debug","z":"18a88015.fc78e","name":"","active":false,"console":false,"complete":"false","x":1150,"y":720,"wires":[]},{"id":"ffa6eb6b.e70788","type":"join","z":"18a88015.fc78e","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"8","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":850,"y":720,"wires":[["24b9182a.18ec08"]]},{"id":"9f5d7a88.e66b78","type":"influxdb batch","z":"18a88015.fc78e","influxdb":"a0b0c36c.f222b","precision":"","retentionPolicy":"","name":"","x":1180,"y":680,"wires":[]},{"id":"a06975f4.77df98","type":"json","z":"18a88015.fc78e","name":"","property":"payload","action":"obj","pretty":false,"x":530,"y":780,"wires":[["60e8be21.9ab4d","b84d5541.f4fb98"]]},{"id":"d0fc3d61.6531c","type":"debug","z":"18a88015.fc78e","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":990,"y":800,"wires":[]},{"id":"60e8be21.9ab4d","type":"function","z":"18a88015.fc78e","name":"Extract + Format Finder","func":"\nnode.log (\"Power and Energy to Domoticz HTTP\");\nvar power = JSON.parse(msg.payload.devices[\"21\"].DataRecord[3].Value)/1000;\nvar energy = JSON.parse(msg.payload.devices[\"21\"].DataRecord[17].Value)/10;\nmsg.url = \"127.0.0.1:8084/json.htm?type=command&param=udevice&idx=529&nvalue=0&svalue=\"+power +\";\"+energy ;\n\nreturn msg;","outputs":1,"noerr":0,"x":730,"y":780,"wires":[["d0fc3d61.6531c","6f5101bf.1c64d"]]},{"id":"6f5101bf.1c64d","type":"http request","z":"18a88015.fc78e","name":"Domoticz","method":"use","ret":"txt","url":"","tls":"","x":980,"y":760,"wires":[[]]},{"id":"2dd8c2f6.45f43e","type":"comment","z":"18a88015.fc78e","name":"WP-Verbruik","info":"","x":550,"y":680,"wires":[]},{"id":"d302b10e.748","type":"function","z":"18a88015.fc78e","name":"Extract + Format Finder","func":"let VoltL1 = msg.payload.devices[\"100\"].DataRecord[4].Value /1000;\nlet VoltL2 = msg.payload.devices[\"100\"].DataRecord[5].Value /1000;\nlet VoltL3 = msg.payload.devices[\"100\"].DataRecord[6].Value /1000;\nlet VoltLN = msg.payload.devices[\"100\"].DataRecord[7].Value /1000;\nlet PowerL1 = msg.payload.devices[\"100\"].DataRecord[0].Value /1000;\nlet PowerL2 = msg.payload.devices[\"100\"].DataRecord[1].Value /1000;\nlet PowerL3 = msg.payload.devices[\"100\"].DataRecord[2].Value /1000;\nlet Powertot = msg.payload.devices[\"100\"].DataRecord[3].Value /1000;\nlet EnergyL1 = msg.payload.devices[\"100\"].DataRecord[14].Value /1000;\nlet EnergyL2 = msg.payload.devices[\"100\"].DataRecord[15].Value /1000;\nlet EnergyL3 = msg.payload.devices[\"100\"].DataRecord[16].Value /1000;\nlet Energytot = msg.payload.devices[\"100\"].DataRecord[17].Value /1000;\n\nlet _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"Finder2\",\n\t\tfields: {\n\t\t\tvoltl1:   VoltL1,\t\t\t\n\t\t\tvoltl2:   VoltL2,\t\t\t\n\t\t\tvoltl3:   VoltL3,\t\t\t\n\t\t\tvoltln:   VoltLN,\t\t\t\n\t\t\tpowerl1:   PowerL1,\t\n\t\t\tpowerl2:   PowerL2,\t\n\t\t\tpowerl3:   PowerL3,\t\n\t\t\tpowertot:   Powertot,\t\n\t\t    energyl1: EnergyL1,\t\n\t\t    energyl2: EnergyL2,\t\n\t\t    energyl3: EnergyL3,\t\n\t\t    energytot: Energytot,\t\n\t\t},\n\t\ttags:{\n\t\t    device: \"warmtepomp2\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":590,"y":960,"wires":[["791538bb.2a2128"]]},{"id":"f746009f.662db","type":"debug","z":"18a88015.fc78e","name":"","active":false,"console":false,"complete":"false","x":1050,"y":980,"wires":[]},{"id":"791538bb.2a2128","type":"join","z":"18a88015.fc78e","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"8","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":850,"y":960,"wires":[["f746009f.662db"]]},{"id":"bac6fe69.703bf","type":"influxdb batch","z":"18a88015.fc78e","influxdb":"a0b0c36c.f222b","precision":"","retentionPolicy":"","name":"","x":1200,"y":820,"wires":[]},{"id":"15ff27ad.430248","type":"json","z":"18a88015.fc78e","name":"","property":"payload","action":"obj","pretty":false,"x":530,"y":1020,"wires":[["88cc3e3c.e910e"]]},{"id":"830bbc58.e1584","type":"debug","z":"18a88015.fc78e","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":1010,"y":1080,"wires":[]},{"id":"88cc3e3c.e910e","type":"function","z":"18a88015.fc78e","name":"Extract + Format Finder","func":"\nnode.log (\"Power and Energy to Domoticz HTTP\");\nvar power = JSON.parse(msg.payload.devices[\"100\"].DataRecord[3].Value)/1000;\nvar energy = JSON.parse(msg.payload.devices[\"100\"].DataRecord[17].Value/10);\nmsg.url = \"127.0.0.1:8084/json.htm?type=command&param=udevice&idx=530&nvalue=0&svalue=\"+power +\";\"+energy ;\n\nreturn msg;","outputs":1,"noerr":0,"x":750,"y":1060,"wires":[["830bbc58.e1584","cd7af58d.ad6958"]]},{"id":"cd7af58d.ad6958","type":"http request","z":"18a88015.fc78e","name":"Domoticz","method":"use","ret":"txt","url":"","tls":"","x":1000,"y":1040,"wires":[[]]},{"id":"c8e83d1a.f4c04","type":"comment","z":"18a88015.fc78e","name":"Finder2","info":"","x":530,"y":840,"wires":[]},{"id":"b84d5541.f4fb98","type":"function","z":"18a88015.fc78e","name":"SCop","func":"\nnode.log (\"Power and Energy to Domoticz HTTP\");\nvar FPower = Math.round((msg.payload.devices[\"21\"].DataRecord[3].Value/1000)*1)/1;\nvar PowerInstValue = msg.payload.devices[\"67525649\"].DataRecord[11].Value *100;\nvar Cop = Math.round((PowerInstValue / FPower)*100)/100;\n//var FEnergy = JSON.parse(msg.payload.devices[\"21\"].DataRecord[17].Value)/10000;\nvar FEnergy = Math.round(((msg.payload.devices[\"21\"].DataRecord[17].Value)/10000)*100)/100;\n\n\nlet _msg = {\n    payload: []\n};\n\n_msg.payload=\n    {\n        measurement: \"HeatEnergy\",\n\t\tfields: {\n\t\t    fpower: FPower,\n\t\t    fenergy: FEnergy,\n            powerInstValue: PowerInstValue,\n            cop: Cop,\n\n\t\t    },\n\t\ttags:{\n\t\t    device: \"Kamstrup\",\n\t\t    },\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;\n\n//Math.round(((PowerInstValue / Power))*10)/10;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":670,"y":820,"wires":[["1174ab9b.331e64","22c9470d.b19238","2972aba8.125804"]]},{"id":"1174ab9b.331e64","type":"debug","z":"18a88015.fc78e","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":1050,"y":940,"wires":[]},{"id":"22c9470d.b19238","type":"join","z":"18a88015.fc78e","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"8","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":850,"y":820,"wires":[["bac6fe69.703bf"]]},{"id":"a9fec91a.d93008","type":"mqtt out","z":"18a88015.fc78e","name":"","topic":"","qos":"","retain":"","broker":"f935c11c.41462","x":1170,"y":500,"wires":[]},{"id":"fecbb531.0abf38","type":"mqtt in","z":"18a88015.fc78e","name":"kamstrup","topic":"kamstrup","qos":"2","datatype":"json","broker":"f935c11c.41462","x":1100,"y":580,"wires":[["1b76d099.6b974f"]]},{"id":"1b76d099.6b974f","type":"debug","z":"18a88015.fc78e","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1270,"y":580,"wires":[]},{"id":"b4afa47.7a36858","type":"join","z":"18a88015.fc78e","name":"","mode":"custom","build":"merged","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"2","count":"8","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":1030,"y":500,"wires":[["a9fec91a.d93008"]]},{"id":"3b81b908.fdd3b6","type":"change","z":"18a88015.fc78e","name":"move to msg","rules":[{"t":"move","p":"payload.fields","pt":"msg","to":"payload","tot":"msg"},{"t":"set","p":"topic","pt":"msg","to":"kamstrup","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":890,"y":500,"wires":[["b4afa47.7a36858"]]},{"id":"60ae88aa.c04238","type":"mqtt out","z":"18a88015.fc78e","name":"","topic":"","qos":"","retain":"","broker":"f935c11c.41462","x":1230,"y":880,"wires":[]},{"id":"9a41bb03.2e6698","type":"join","z":"18a88015.fc78e","name":"","mode":"custom","build":"merged","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"2","count":"8","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":1090,"y":880,"wires":[["60ae88aa.c04238"]]},{"id":"2972aba8.125804","type":"change","z":"18a88015.fc78e","name":"move to msg","rules":[{"t":"move","p":"payload.fields","pt":"msg","to":"payload","tot":"msg"},{"t":"set","p":"topic","pt":"msg","to":"finder","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":950,"y":880,"wires":[["9a41bb03.2e6698"]]},{"id":"48766138.0b6c4","type":"mqtt in","z":"18a88015.fc78e","name":"finder","topic":"finder","qos":"2","datatype":"json","broker":"f935c11c.41462","x":1210,"y":940,"wires":[["911fef9.516141"]]},{"id":"911fef9.516141","type":"debug","z":"18a88015.fc78e","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1290,"y":1020,"wires":[]},{"id":"cf6e1602.540698","type":"mbus-client","name":"","clienttype":"serial","tcpHost":"127.0.0.1","tcpPort":"10001","tcpTimeout":"4000","serialPort":"/dev/ttyUSB1","serialBaudrate":"2400","reconnectTimeout":"10000","autoScan":true,"storeDevices":true,"disableLogs":true},{"id":"b5ab1cc6.77b5f","type":"ui_group","name":"M-Bus Devices","tab":"a9d5432c.c7349","order":3,"disp":true,"width":"14"},{"id":"675ebc3b.cfb8a4","type":"ui_group","name":"Data","tab":"a9d5432c.c7349","order":4,"disp":true,"width":"14"},{"id":"841a82ae.5a7be","type":"ui_group","name":"Commands","tab":"a9d5432c.c7349","order":2,"disp":true,"width":"14"},{"id":"bbf75ab1.aa33e8","type":"ui_group","name":"Status","tab":"a9d5432c.c7349","order":1,"disp":true,"width":"14"},{"id":"a0b0c36c.f222b","type":"influxdb","hostname":"127.0.0.1","port":"8086","protocol":"http","database":"energy","name":"","usetls":false,"tls":""},{"id":"f935c11c.41462","type":"mqtt-broker","name":"MQTT","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"a9d5432c.c7349","type":"ui_tab","name":"M-Bus","icon":"plug","order":1}]


Handleidingen maken ben ik niet goed in. Ik documenteer wel elke stap die ik maak, om iets te installeren.
Maar als ik eenmaal verder ga (vooruitgang), dan is al het oude weer niet meer interessant.
Met node-red als verbinder is zo een beetje alles mogelijk (qua logging dan he? ;) )

[ Voor 100% gewijzigd door AUijtdehaag op 24-03-2021 21:36 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Simply_jeroen
  • Registratie: April 2004
  • Laatst online: 05-06 07:09
ik gebruik nog steeds het 'oude script'

als ik in domoticz de Websitebeveiliging aanzet komen me waardes niet meer binnen

iemand enig idee?

Acties:
  • 0 Henk 'm!

  • AnneTweaks
  • Registratie: Mei 2007
  • Laatst online: 06-05 10:21
De gebruikersnaam en wachtwoord opnemen in de URL van domcticz?

http://username:password@domoticzip:domoticzpoort

Anne (m) - Verbruik: 9500->6100->2765kWh/j - 3000->1970->1160m3/j - 210->66lL/j - Aquasol LB 90 2,3m2 3,8GJ - Allmess MK MaXX - 55m2 Groendak - Dak&Vloer isolatie - Elga - 3600Wp - Vrijwillig 'Energiecoach' DH - https://www.youtube.com/watch?v=j__pAGDBdbU


Acties:
  • 0 Henk 'm!

  • wmertens
  • Registratie: Mei 2010
  • Laatst online: 10-05-2024
rubdos schreef op vrijdag 19 februari 2021 @ 20:35:
[...]

Ik heb hier een nooelec gekocht (https://www.amazon.de/-/nl/dp/B00P2UOU72), die krijgt netjes de pakketjes binnen. Vrij zeker dat al die RTL2832U stickjes dat doen.
Dus is het gelukt om daarmee met w-MBus te babbelen? Lijkt me wel cool om een software-defined radio te hebben, misschien kan ik zo tegen wat 440kHz gear praten dat hier staat?
EDIT: ziet ernaar uit dat je dat via My Kamstrup en een accountje gewoon kan opvragen. Heb twee keer moeten proberen, de eerste keer kreeg ik een "security error". Volgens mij kan ik via die tool de stuff van de buren ook opvragen, maar soit.
Moest je nog extra betalen?

Dank :)

  • coolnr
  • Registratie: Augustus 2013
  • Laatst online: 28-09-2024
repsaj schreef op vrijdag 19 februari 2021 @ 22:12:
@rubdos wat is dan de apparaat code die je invult bij My Kamstrup? Waar heb je die gevonden? Ik vind alleen m’n serienummer aan de voorkant. Vanuit de warmtemeter leverancier - van wie eigenlijk de meter is - kreeg in de code namelijk niet ivm AVG.

Ik heb trouwens ook zo’n soort dongle overgenomen van een mede tweaker en heb de signalen ook al opgevangen. Mis nu alleen nog dr private key.

Edit. Gevonden! Door de QR code te scannen kreeg ik de apparaatcode, maar ook de melding “apparaat is vergrendeld” wanneer ik het apparaat wil registeren en nu “ Registratie mislukt vanwege een onbekende reden” 😞
Is het jou inmiddels wel gelukt? Ik heb ook een kamstrup mc602 dus ik ben benieuwd wat je hebt gedaan en welke dongle je gebruikt.

Acties:
  • +1 Henk 'm!

  • repsaj
  • Registratie: September 2004
  • Laatst online: 23-04 16:03
coolnr schreef op woensdag 15 september 2021 @ 13:25:
[...]


Is het jou inmiddels wel gelukt? Ik heb ook een kamstrup mc602 dus ik ben benieuwd wat je hebt gedaan en welke dongle je gebruikt.
Het is gelukt, een connectie gemaakt, maar kon er niets uitkrijgen.. door het missen van de private key die ik niet toegestuurd krijg van Kamstrup (omdat ik de meter blijkbaar huur van de leverancier van het warmtenet).
Dit was de dongle: "RTL-SDR met RTL2832U R820T2 chip (24-1700Mhz) "

x


  • coolnr
  • Registratie: Augustus 2013
  • Laatst online: 28-09-2024
repsaj schreef op woensdag 15 september 2021 @ 13:36:
[...]

Het is gelukt, een connectie gemaakt, maar kon er niets uitkrijgen.. door het missen van de private key die ik niet toegestuurd krijg van Kamstrup (omdat ik de meter blijkbaar huur van de leverancier van het warmtenet).
Dit was de dongle: "RTL-SDR met RTL2832U R820T2 chip (24-1700Mhz) "
Bedankt voor je snelle reactie. Mijn meter is ook van het warmtenet en ik krijg hem niet geregistreerd in mykamstrup. Helaas...

Acties:
  • 0 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
Simply_jeroen schreef op woensdag 2 juni 2021 @ 08:33:
ik gebruik nog steeds het 'oude script'
als ik in domoticz de Websitebeveiliging aanzet komen me waardes niet meer binnen
iemand enig idee?
Beste Jeroen, zou je jouw versie van het script hier (ontdaan van login info uiteraard) willen posten?

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • 0 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
AUijtdehaag schreef op woensdag 8 november 2017 @ 20:36:
Voor diegene die het op een pi willen installeren, hier nog een opsomming:
En nogmaals het kamstrup.php script voor een 302:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#!/usr/bin/php
<?php
//***********************************
//Kamstrup Multical 302 with ID:61 readout and send to mysql database kamstrup.db
//***********************************
$output = shell_exec("sudo /usr/local/bin/mbus-serial-request-data -d -b 2400 /dev/ttyUSB0 61"); //usb drv RPi- "m-busadress 61"
$xmloutput=substr($output,strpos($output,'<MBusData>'));
$xmloutput = new SimpleXMLElement($xmloutput);
$counterID=$xmloutput->SlaveInformation->Id;
$heatValue=$xmloutput->DataRecord[1]->Value;
$coolValue=$xmloutput->DataRecord[2]->Value;
$ontimeheatValue=$xmloutput->DataRecord[6]->Value;
$ontimecoolValue=$xmloutput->DataRecord[7]->Value;
$tempoutValue=$xmloutput->DataRecord[8]->Value;
$tempreturnValue=$xmloutput->DataRecord[9]->Value;
$tempdiffValue=$xmloutput->DataRecord[10]->Value;
$powerinstValue=$xmloutput->DataRecord[11]->Value;
$powermaxValue=$xmloutput->DataRecord[12]->Value;
$flowinstValue=$xmloutput->DataRecord[13]->Value;
$flowmaxValue=$xmloutput->DataRecord[14]->Value;
$heatenergymonthValue=$xmloutput->DataRecord[17]->Value;
$coolenergymonthValue=$xmloutput->DataRecord[18]->Value;

$DomoticzIP="http://127.0.0.1:8080/";
$IDXTaanvoer=12; //in Domoticz: type temperature
$IDXTretour=13; //in Domoticz: type temperature
$IDXTdiff=14; //in Domoticz: type temperature
$IDXHeat=15; //in Domoticz: type custom sensor kWh
$IDXCool=16;  //in Domoticz: type custom sensor kWh
$IDXFlow=17; //in Domoticz: type waterflow
$IDXPower=18; //in Domoticz: type verbruik / elektra


//Function to send to Domoticz
    function ud($idx,$nvalue,$svalue,$name=""){
        print "  --- UPDATE ".$idx." ".$name." ".$nvalue." ".$svalue."
    ";
        file_get_contents("http://127.0.0.1:8080/".'json.htm?type=command&param=udevice&idx='.$idx.'&nvalue='.$nvalue.'&svalue='.$svalue);
        usleep(250000);
    }

//Function counter to send to Domoticz
    function uc($idx,$svalue,$name=""){
        print "  --- UPDATE ".$idx." ".$name." ".$svalue."
    ";
        file_get_contents("http://127.0.0.1:8080/".'json.htm?type=command&param=udevice&idx='.$idx.'&svalue='.$svalue);
        usleep(250000);
    }

// Taanvoer (C) to Domoticz (kamstrup Reg 8)
ud($IDXTaanvoer,0,$tempoutValue/100,0);

// Tretour (C) to Domoticz (kamstrup Reg 9)
ud($IDXTretour,0,$tempreturnValue/100,0);

// Tdiff (C) to Domoticz (kamstrup Reg 10)
ud($IDXTdiff,0,$tempdiffValue/100,0);

// Instant Heat (kWh) to Domoticz (kamstrup Reg 1)
ud($IDXHeat,0,$heatValue,0);

// Instant Cool (kWh) Domoticz (kamstrup Reg 2)
ud($IDXCool,0,$coolValue,0);

// Instant flow (ltr/h) to Domoticz (kamstrup Reg 13)
ud($IDXFlow,0,$flowinstValue,0);

// Instant Power (watt) to Domoticz (kamstrup Reg 11)
ud($IDXPower,0,$powerinstValue*100,0);


//*************************************
// mysql
//*************************************
// working, but not further developed with this script

//$mysqlhost="localhost";
//$mysqluser="root";
//$mysqlpwd="raspberry";
//$connection=mysql_connect($mysqlhost,$mysqluser,$mysqlpwd) or die ("verbindings fout");
//$mysqldb="kamstrup";
//mysql_select_db($mysqldb,$connection) or die("Konnte die Datenbank nicht waehlen.");

//$sql = "INSERT INTO kamstrup (timevalue,fab_nr,energy_heat_inst,energy_cool_inst,onetimeheat,onetimecool,tempout,tempreturn,tempdiff,powerinst,powermax,flowinst,flowmax) VALUES (CURRENT_TIMESTAMP,$counterID,$heatValue,$coolValue,$ontimeheatValue,$ontimecoolValue,$tempoutValue,$tempreturnValue,$tempdiffValue,$powerinstValue,$powermaxValue,$flowinstValue,$flowmaxValue)";

//$result = mysql_query($sql); 
//if(!$result) 
//{ 
//   error_log("Query error ($sql): " . mysql_error()); 
//   echo "<p class='error'>Sorry, er was een database error.</p>"; 
//   echo "</body></html>"; 
//  exit; 
//} 

?>


Dat kan dan aangeroepen worden met een crontab -e
code:
1
*/1 * * * * php /home/pi/domoticz/scripts/kamstrup.php
Ik probeer dit script te begrijpen, maar begrijp niet wat de functie uc (//Function counter to send to Domoticz) doet. En volgens mij wordt die functie ook nergens aangeroepen. Of zie ik wat over het hoofd?

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • +1 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Andrehj
uc = update counter (ik zie hem ook niet verder aangeroepen worden)
ud = update device.

Pff kun je niet gewoon home assistant met node red erin installeren
Zoveel makkelijker :+

[ Voor 26% gewijzigd door AUijtdehaag op 01-10-2021 21:48 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

Ben bezig met het afronden van mijn installatie. De bedoeling was om hier 2 kamstrup 302 in te zetten (1 met Mbus en mijn "oude" die ik nog had, zo dat ik kan zien hoeveel warmte er in de woonkamer gaat hoe hoeveel naar de slaapkamers (ja.. misschien overkill maar toch leuk ;)). Echter vroeg me in eens af of dat wel gaat werken.. 2 meters die op ultrasound werken in het zelfde water kanaal vlak bij elkaar.. in de manual vind ik er niks over.. maar iemand ervaring hier mee ?

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • Simply_jeroen
  • Registratie: April 2004
  • Laatst online: 05-06 07:09
Andrehj schreef op vrijdag 1 oktober 2021 @ 17:09:
[...]

Beste Jeroen, zou je jouw versie van het script hier (ontdaan van login info uiteraard) willen posten?
Ik ben ondertussen overgestapt op Home Assistant. Heb nog geen idee hoe ik de waardes van de kamstrup daar kan gaan uitlezen:-)

Iemand een tip?

Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Simply_jeroen
Node-red en mqtt?
Mijn flow of die van wolly (staat eronder)
Wolly in "Kamstrup Multical 302 met Pi uitlezen en domoticz"

kamstrup.yaml
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
################################################################
## Packages / Kamstrup
## Written by AUijtdehaag
################################################################

################################################################
## Changelog
################################################################
##
## 1.0.0 (27-09-2020)
##   Added
##   - Initial version
##
##   - New/changed topics
##
################################################################

# sensor #
##########
sensor:
  # Pumpflow L/min
  - platform: mqtt
    name: Kamstrup Flow L/min
    state_topic: "kamstrup"
    unit_of_measurement: 'L/min'
    value_template: "{{ value_json.fields.flowvaluelm }}"

  # Pumpflow m3/h
  - platform: mqtt
    name: Kamstrup Flow L/h
    state_topic: "kamstrup"
    unit_of_measurement: 'L/h'
    value_template: "{{ value_json.fields.flowvalue }}"

  # Water flow temp
  - platform: mqtt
    name: Kamstrup Flow Temperature
    state_topic: "kamstrup"
    unit_of_measurement: '°C'
    value_template: "{{ value_json.fields.flowtemperature }}"

  # Water return temp
  - platform: mqtt
    name: Kamstrup Return Temperature
    state_topic: "kamstrup"
    unit_of_measurement: '°C'
    value_template: "{{ value_json.fields.returntemperature }}"

  # Water differential temp
  - platform: mqtt
    name: Kamstrup Differential Temperature
    state_topic: "kamstrup"
    unit_of_measurement: '°C'
    value_template: "{{ value_json.fields.difftemperature }}"

  # Heating power produced
  - platform: mqtt
    name: Kamstrup Power Produced
    state_topic: "kamstrup"
    unit_of_measurement: 'W'
    value_template: "{{ value_json.fields.powerinstvalue }}"

  # Heating Counter
  - platform: mqtt
    name: Kamstrup Heating Counter
    state_topic: "kamstrup"
    unit_of_measurement: 'kWh'
    value_template: "{{ value_json.fields.totalheatenergy }}"

  # Cooling Counter
  - platform: mqtt
    name: Kamstrup Cooling Counter
    state_topic: "kamstrup"
    unit_of_measurement: 'kWh'
    value_template: "{{ value_json.fields.totalcoolenergy }}"

utility_meter:
  daily_heat_energy:
    source: sensor.kamstrup_heating_counter
    cycle: daily
  monthly_heat_energy:
    source: sensor.kamstrup_heating_counter
    cycle: monthly
  daily_cool_energy:
    source: sensor.kamstrup_cooling_counter
    cycle: daily
  monthly_cool_energy:
    source: sensor.kamstrup_cooling_counter
    cycle: monthly

[ Voor 5% gewijzigd door AUijtdehaag op 31-10-2021 16:01 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Simply_jeroen
  • Registratie: April 2004
  • Laatst online: 05-06 07:09
AUijtdehaag schreef op woensdag 20 oktober 2021 @ 14:46:
@Simply_jeroen
Node-red en mqtt?
Mijn flow of die van wolly (staat eronder)
Wolly in "Kamstrup Multical 302 met Pi uitlezen en domoticz"

kamstrup.yaml
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
################################################################
## Packages / Kamstrup
## Written by AUijtdehaag
################################################################

################################################################
## Changelog
################################################################
##
## 1.0.0 (27-09-2020)
##   Added
##   - Initial version
##
##   - New/changed topics
##
################################################################

# sensor #
##########
sensor:
  # Pumpflow L/min
  - platform: mqtt
    name: Kamstrup Flow L/min
    state_topic: "kamstrup"
    unit_of_measurement: 'L/min'
    value_template: "{{ value_json.flowlm }}"

  # Pumpflow m3/h
  - platform: mqtt
    name: Kamstrup Flow L/h
    state_topic: "kamstrup"
    unit_of_measurement: 'L/h'
    value_template: "{{ value_json.flow }}"

  # Water flow temp
  - platform: mqtt
    name: Kamstrup Flow Temperature
    state_topic: "kamstrup"
    unit_of_measurement: '°C'
    value_template: "{{ value_json.flowtemperature }}"

  # Water return temp
  - platform: mqtt
    name: Kamstrup Return Temperature
    state_topic: "kamstrup"
    unit_of_measurement: '°C'
    value_template: "{{ value_json.returntemperature }}"

  # Water differential temp
  - platform: mqtt
    name: Kamstrup Differential Temperature
    state_topic: "kamstrup"
    unit_of_measurement: '°C'
    value_template: "{{ value_json.difftemperature }}"

  # Heating power produced
  - platform: mqtt
    name: Kamstrup Power Produced
    state_topic: "kamstrup"
    unit_of_measurement: 'W'
    value_template: "{{ value_json.power }}"

  # Heating Counter
  - platform: mqtt
    name: Kamstrup Heating Counter
    state_topic: "kamstrup"
    unit_of_measurement: 'kWh'
    value_template: "{{ value_json.totalheatenergy }}"

  # Cooling Counter
  - platform: mqtt
    name: Kamstrup Cooling Counter
    state_topic: "kamstrup"
    unit_of_measurement: 'kWh'
    value_template: "{{ value_json.totalcoolenergy }}"

# switch #
##########
switch:
#Turn on/off kamstrup
  - platform: mqtt
    name: Kamstrup
    command_topic: "kamstrup/on_off"
    state_topic: "kamstrup/On_Off_State"
    qos: 0
    payload_on: "1"
    payload_off: "0"
    retain: false

utility_meter:
  daily_heat_energy:
    source: sensor.kamstrup_heating_counter
    cycle: daily
  monthly_heat_energy:
    source: sensor.kamstrup_heating_counter
    cycle: monthly
  daily_cool_energy:
    source: sensor.kamstrup_cooling_counter
    cycle: daily
  monthly_cool_energy:
    source: sensor.kamstrup_cooling_counter
    cycle: monthly
heb de yaml er in, node red flow er in maar weet niet waar ik de usb poort moet instellen .... is de eerst keer dat ik node red gebruik. heb je een tip?

Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Simply_jeroen
Is node-red-contrib-m-bus geinstalleerd in node-red?

Als je de flow erin hebt staan, dan klik je op de m-bus controller
Daar vul je de client in en klikt op het potloodje
Daar kun je dan de usb poort invullen.
Welke flow gebruik je? Die van mij of van @Wolly ?

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

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Simply_jeroen
  • Registratie: April 2004
  • Laatst online: 05-06 07:09
AUijtdehaag schreef op zondag 24 oktober 2021 @ 09:41:
@Simply_jeroen
Is node-red-contrib-m-bus geinstalleerd in node-red?

Als je de flow erin hebt staan, dan klik je op de m-bus controller
Daar vul je de client in en klikt op het potloodje
Daar kun je dan de usb poort invullen.
Welke flow gebruik je? Die van mij of van @Wolly ?

[Afbeelding]
Het commando om te installeren heb ik gevonden

In moet deze ingeven in terminal in home Assistant? Ik krijg dan een npm nog found melding.
Direct via node red via manage Pallete werkt ook niet.
Wat doe ik fout?
Ik gebruik volgens mijn jou script

Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Simply_jeroen Heb je een DM gestuurd.
In supervisor - node-red moet je dit toevoegen aan de config:
code:
1
2
3
4
5
6
system_packages:
  - make
  - g++
  - linux-headers
npm_packages:
  - node-red-contrib-m-bus

Dan installeert die hem wel bij restart.

[ Voor 73% gewijzigd door AUijtdehaag op 24-10-2021 11:21 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • +1 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

Nice ! Ook juist hier mee bezig. Maar liep vasit in de contrib-m-bus !

Thanks, @AUijtdehaag ! Nu de rest uitvogelen. @Simply_jeroen heb jij hem nu compleet werkend ?

Ik ga vanavond de hardware verder aansluiten, daarna verder met de software kant.

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • +2 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

En alles werkt ! Zelfs met mijn zelf gemaakte Modbus Hardware :)
Misschien dat ik wat scripts door elkaar heb gebruikt maar zitten kwam wel een paar dingen tegen :

1. namen voor flow (zowel in minuut als uur) zijn in Rednode en Yaml niet gelijk (en HA krijg dat dus geen waarde..)
2. Daily value gaat een factor 10 te snel.. (met mijn 5 Kwh warmte pomp had ik 25 Kwh in een half uur...)

Verder lijkt alles OK !

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • Simply_jeroen
  • Registratie: April 2004
  • Laatst online: 05-06 07:09
HFman schreef op maandag 25 oktober 2021 @ 16:05:
Nice ! Ook juist hier mee bezig. Maar liep vasit in de contrib-m-bus !

Thanks, @AUijtdehaag ! Nu de rest uitvogelen. @Simply_jeroen heb jij hem nu compleet werkend ?

Ik ga vanavond de hardware verder aansluiten, daarna verder met de software kant.
ik heb hem zo goed als helemaal werkend... maar niet zonder Auitdehaag.

Acties:
  • 0 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
Daannn1987 schreef op zaterdag 14 maart 2020 @ 13:33:
[...]

Nee volgens mij niet gewoon een dummy aanmaken > counter
De link moet je wel naar jouw IP en IDX aanpassen anders werkt hij idd niet


[...]

PHP: kamstrup.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#!/usr/bin/php
<?php
//***********************************
//Kamstrup Multical 302 with ID:61 readout and send to mysql database kamstrup.db
//***********************************
$output = shell_exec("sudo /usr/local/bin/mbus-serial-request-data -d -b 2400 /dev/ttyUSB0 15"); //usb drv RPi- "m-busadress 61"
$xmloutput=substr($output,strpos($output,'<MBusData>'));
$xmloutput = new SimpleXMLElement($xmloutput);
$counterID=$xmloutput->SlaveInformation->Id;
$heatValue=$xmloutput->DataRecord[1]->Value;
$coolValue=$xmloutput->DataRecord[2]->Value;
$ontimeheatValue=$xmloutput->DataRecord[6]->Value;
$ontimecoolValue=$xmloutput->DataRecord[7]->Value;
$tempoutValue=$xmloutput->DataRecord[8]->Value;
$tempreturnValue=$xmloutput->DataRecord[9]->Value;
$tempdiffValue=$xmloutput->DataRecord[10]->Value;
$powerinstValue=$xmloutput->DataRecord[11]->Value;
$powermaxValue=$xmloutput->DataRecord[12]->Value;
$flowinstValue=$xmloutput->DataRecord[13]->Value;
$flowmaxValue=$xmloutput->DataRecord[14]->Value;
$heatenergymonthValue=$xmloutput->DataRecord[17]->Value;
$coolenergymonthValue=$xmloutput->DataRecord[18]->Value;

$DomoticzIP="http://192.168.178.115:8080/";
$IDXTaanvoer=547; //in Domoticz: type temperature
$IDXTretour=548; //in Domoticz: type temperature
$IDXTdiff=549; //in Domoticz: type temperature
$IDXHeat=550; //was 550 in Domoticz: type custom sensor kWh
$IDXHeat2=560; // is a test
$IDXCool=551;  //in Domoticz: type custom sensor kWh
$IDXFlow=552; //in Domoticz: type waterflow
$IDXPower=553; //in Domoticz: type verbruik / elektra
$IDXDay_COP=559; //In Domoticz: Type Counter RFX Meter

 // kWh from WP_E Today
 $json_string = file_get_contents("http://192.168.178.115:8080/json.htm?type=devices&rid=351");
 $parsed_json = json_decode($json_string, true);
 $parsed_json = $parsed_json['result'][0];
 $WP_kWh_E = $parsed_json['CounterToday'];

 // kWh from KamstrupToday
 $json_string = file_get_contents("http://192.168.178.115:8080/json.htm?type=devices&rid=560");
 $parsed_json = json_decode($json_string, true);
 $parsed_json = $parsed_json['result'][0];
 $WP_kWh_H = $parsed_json['CounterToday'];


//Function to send to Domoticz
    function ud($idx,$nvalue,$svalue,$name=""){
        print "  --- UPDATE ".$idx." ".$name." ".$nvalue." ".$svalue."
    ";
        file_get_contents("http://192.168.178.115:8080/".'json.htm?type=command&param=udevice&idx='.$idx.'&nvalue='.$nvalue.'&svalue='.$svalue);
        usleep(250000);
    }

//Function counter to send to Domoticz
    function uc($idx,$svalue,$name=""){
        print "  --- UPDATE ".$idx." ".$name." ".$svalue."
    ";
        file_get_contents("http://192.168.178.115:8080/".'json.htm?type=command&param=udevice&idx='.$idx.'&svalue='.$svalue);
        usleep(250000);
    }

// Taanvoer (C) to Domoticz (kamstrup Reg 8)
ud($IDXTaanvoer,0,$tempoutValue/100,0);

// Tretour (C) to Domoticz (kamstrup Reg 9)
ud($IDXTretour,0,$tempreturnValue/100,0);

// Tdiff (C) to Domoticz (kamstrup Reg 10)
ud($IDXTdiff,0,$tempdiffValue/100,0);

// Instant Heat (kWh) to Domoticz (kamstrup Reg 1)
ud($IDXHeat,0,$heatValue,0);
// Instant Heat test (kwh) to domoticz)
ud($IDXHeat2,0,$heatValue*100,0);

// Instant Cool (kWh) Domoticz (kamstrup Reg 2)
ud($IDXCool,0,$coolValue,0);

// Instant flow (ltr/h) to Domoticz (kamstrup Reg 13)
ud($IDXFlow,0,$flowinstValue,0);

// Instant Power (watt) to Domoticz (kamstrup Reg 11)
ud($IDXPower,0,$powerinstValue*100,0);

// Day_COP (kWh/kWh) to Domoticz
ud($IDXDay_COP,0,$WP_kWh_H/$WP_kWh_E,0);

?>
Beste @Daannn1987 , hierboven beschrijf je om een RFXMeter counter aan te maken voor de dagCOP.
Dat had ik ook gedaan, en die net als jij hierboven elke minuut mee laten lopen in mijn kamstrup script. Echter, dan kloppen in de dagoverzichten van de RFX meter counter de dag cop's niet, omdat hij dan een soort gemiddelde of een piekwaarde pakt. En die kloppen beide niet, want de echte dagCOP voor de historie-data kun je pas net voor middernacht (om 23:59) uitrekenen.
Dus ik heb een apart scriptje gemaakt wat alleen om 23:59 draait en dan de dagCOP bepaalt en die in een RFXmeter counter pusht.
Probleem is dat dat ook fout gaat met de historie, omdat een RFX meter alleen op mag lopen. Als ik dus op donderdag een cop van 6 haal, en op vrijdag eentje van 7, wordt dat in de history weergegeven als 1.
Dit werkt dus ook niet.

Hoe heb jij dat opgelost?

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • +2 Henk 'm!

  • Daannn1987
  • Registratie: December 2012
  • Laatst online: 07:53
Andrehj schreef op zaterdag 6 november 2021 @ 11:47:
[...]

Beste @Daannn1987 , hierboven beschrijf je om een RFXMeter counter aan te maken voor de dagCOP.
Dat had ik ook gedaan, en die net als jij hierboven elke minuut mee laten lopen in mijn kamstrup script. Echter, dan kloppen in de dagoverzichten van de RFX meter counter de dag cop's niet, omdat hij dan een soort gemiddelde of een piekwaarde pakt. En die kloppen beide niet, want de echte dagCOP voor de historie-data kun je pas net voor middernacht (om 23:59) uitrekenen.
Dus ik heb een apart scriptje gemaakt wat alleen om 23:59 draait en dan de dagCOP bepaalt en die in een RFXmeter counter pusht.
Probleem is dat dat ook fout gaat met de historie, omdat een RFX meter alleen op mag lopen. Als ik dus op donderdag een cop van 6 haal, en op vrijdag eentje van 7, wordt dat in de history weergegeven als 1.
Dit werkt dus ook niet.

Hoe heb jij dat opgelost?
De dag cop log ik naar een General Custom sensor (ander type meter dus).
Maar eigenlijk kijk ik hier niet (meer) na.

Middels HTTP Push, push ik alle data naar influxdb wat ik weer inzichtelijk heb maak grafana.
In grafana bereken ik de COP middels transforms (opwek/verbruik), dan heb ik een heel mooi tabbelletje :)
Daar kan ik zelfs de defrosts nog inzichtelijk maken en wat dat doet met de COP.

Alleen daylight savingtime verprutst het een klein beetje maar daar kan ik niet wakker van liggen.

Afbeeldingslocatie: https://i.postimg.cc/SKJmY1Ts/Schermafbeelding-2021-11-06-om-21-02-42.png

21xDMEGC 440wp (9240) ||| Pana 9j


Acties:
  • 0 Henk 'm!

  • H143
  • Registratie: Juli 2006
  • Laatst online: 15:39
zijn er meer mensen waarbij de kwh welke uit de kamstrup gelezen 10x te hoog is?
mijn totalheatenergy staat nu op 81.385 kwh
maar dit lijkt mij erg sterk de meter zit er nog geen jaar tussen
als ik deze deel door 10 dan klopt het wel ongeveer
heb ik een instelling verkeerd op de kamstrup staan?
als ik de meter op het schermpje uitlees dan zie ik wel bij actueel vermogen netjes 4.5 kw staan
ook geeft powerinstantvalue de actuele waarde in watt aan die ook lijkt te kloppen

nu kan ik wel totalheatenergy/10 doen om de juiste waarde te krijgen maar is dit de juiste manier?

Acties:
  • 0 Henk 'm!

  • HFman
  • Registratie: November 2017
  • Laatst online: 23-11-2024

HFman

Waar een wil is..

H143 schreef op maandag 15 november 2021 @ 23:01:
zijn er meer mensen waarbij de kwh welke uit de kamstrup gelezen 10x te hoog is?
mijn totalheatenergy staat nu op 81.385 kwh
maar dit lijkt mij erg sterk de meter zit er nog geen jaar tussen
als ik deze deel door 10 dan klopt het wel ongeveer
heb ik een instelling verkeerd op de kamstrup staan?
als ik de meter op het schermpje uitlees dan zie ik wel bij actueel vermogen netjes 4.5 kw staan
ook geeft powerinstantvalue de actuele waarde in watt aan die ook lijkt te kloppen

nu kan ik wel totalheatenergy/10 doen om de juiste waarde te krijgen maar is dit de juiste manier?
Nope, zie mijn post 4 berichten voor deze :).
In nodered heb ik de factor 100 (uit mijn hoofd) aangepast.

Panasonic WH-MDC05H3E5 Heisamon Evohome HomeAssistant controlled


Acties:
  • 0 Henk 'm!

  • Hieke
  • Registratie: September 2010
  • Laatst online: 05-06 21:19
Even een vraag bij de afwegingen die ik maak voor de aanschaf van een Kamstrup Multical energiemeter...

Ik wil een kranensetje bestellen met passtuk maar zie dat dit passtuk 110 mm lang is.

https://zaehleronlineshop...tly-measuring-and-adapter

Gaat dit passen voor de Multical staat bij inbouwlengte: 110-130 mm

Ik wil bij het maken van leidingwerk het passtuk laten plaatsen en nadien zelf de (kwetsbare) meter ertussen plaatsen.. :) Maar dan moet het wel passen natuurlijk. Zelf buizenwerk 2 cm uit elkaar drukken levert later weer spanning in het materiaal op.. :(

Panasonic K-series split 9 kW, gasloos sinds dec 23, EV, PV 9,6 kWp


Acties:
  • 0 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
Je hebt Kamstrups met 110 en 130mm lengte. Je moet gewoon de juiste kopen, dan past het perfect. 😉

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • +1 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Hieke
aanvullend:
Meestal 130 mm voor het grotere doorstromings bereik

Volumedeel 1)
qp [m³/h] Aansluiting Lengte [mm] Dynamisch
bereik
0,6 G¾B (R½) 110 100:1 10
1,5 G¾B (R½) 110 100:1 40
1,5 G1B (R¾) 130 100:1 70
2,5 G1B (R¾) 130 100:1 A0

https://cms.condros.eu/up...5BF-9D9E-5E90A18D2FBA.PDF
pag 11

[ Voor 17% gewijzigd door AUijtdehaag op 18-01-2022 21:44 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Hieke
  • Registratie: September 2010
  • Laatst online: 05-06 21:19
@AUijtdehaag
Dank voor de link en verwijzing naar de tabel! Nu begrijp ik dat er een relatie tussen koppelingsmaat en lengte is en kan ik de juiste lengte passtuk bestellen..

Weer wat geleerd en een miskoop voorkomen!

Is de Multical 303, die in deze PDF besproken wordt, ook bruikbaar voor je scripts waarover in dit forum gerept wordt? Of moet ik dan toch echt naar een 302 op zoek?

Panasonic K-series split 9 kW, gasloos sinds dec 23, EV, PV 9,6 kWp


Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Hieke
Ik zal morgenavond ff op zoek gaan naar verschillen eventueel.

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • +4 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
Na 6 jaar uitlezen is de batterij leeg van mijn kamstrup 302.
Ik merkte dat er geen mbus data meer kwam, maar de meter display werkt nog wel even.

Heb maar meteen een 303 gekocht om te testen. (@Hieke )
Mbus registers staan op een andere lokatie maar na aanpassing code lees ik hem weer uit via node-red.

Eens kijken of ik de batterij kan vervangen van de "oude" 302

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • +1 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
AUijtdehaag schreef op dinsdag 1 maart 2022 @ 18:09:
Na 6 jaar uitlezen is de batterij leeg van mijn kamstrup 302.
Ik merkte dat er geen mbus data meer kwam, maar de meter display werkt nog wel even.

Heb maar meteen een 303 gekocht om te testen. (@Hieke )
Mbus registers staan op een andere lokatie maar na aanpassing code lees ik hem weer uit via node-red.

Eens kijken of ik de batterij kan vervangen van de "oude" 302
Hou ons op de hoogte, want dat betekent dat ik mijn batterij na 5 jaar lang elke minuut uitlezen preventief ga vervangen. Altijd handig als iemand anders dan al heeft uitgevogeld hoe dat moet (en hoe je aan een vervangende batterij komt). _/-\o_

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Andrehj
Volgens het manual van de 303 zou elke 120 sec geen extra invloed hebben op de levensduur vd batterij.
Heb hem in node red nu op 2 minuten staan.

Ik probeer de 302 open te krijgen.
Heb nog niet door hoe precies

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • +1 Henk 'm!

  • Wolly
  • Registratie: Januari 2001
  • Niet online
AUijtdehaag schreef op donderdag 3 maart 2022 @ 13:06:
@Andrehj
Volgens het manual van de 303 zou elke 120 sec geen extra invloed hebben op de levensduur vd batterij.
Heb hem in node red nu op 2 minuten staan.

Ik probeer de 302 open te krijgen.
Heb nog niet door hoe precies
Zie pagina 8?
https://www.rkg.at/bilder...ription%20-%20English.pdf

Acties:
  • +2 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
Eindelijk....

Gelukt.....kost even wat moeite maar je moet echt het deksel doordrukken achter de lipjes.
En weinig houvast aan de behuizing, daarom is het zo lastig.

Er zitten 2 van deze in:
https://www.batterijservi...uiting-geen_standaard_cel
(parallel aan elkaar)
Meteen maar besteld...

[ Voor 65% gewijzigd door AUijtdehaag op 04-03-2022 15:57 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Wolly
  • Registratie: Januari 2001
  • Niet online
AUijtdehaag schreef op vrijdag 4 maart 2022 @ 15:29:
Eindelijk....

Gelukt.....kost even wat moeite maar je moet echt het deksel doordrukken achter de lipjes.
En weinig houvast aan de behuizing, daarom is het zo lastig.

Er zitten 2 van deze in:
https://www.batterijservi...17500-a-size-3-6volt.html
(parallel aan elkaar)
Meteen maar besteld...

Edit: 2 minuten na de bestelling verzonden met brievenbus pakje.. wtf :9
Zaten er dan twee batterijen bij jou in vanaf fabriek? Indien dat het geval is dan heeft regelmatig pollen toch best wel invloed.

Afbeeldingslocatie: https://i.postimg.cc/D0SQXX3t/screenshot-233.png
Bron

[ Voor 13% gewijzigd door Wolly op 04-03-2022 15:37 ]


Acties:
  • +1 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Wolly
2 batterijen inderdaad.
(maar wel een paar jaar gepolled met de verkeerde node-red flow ipv jouw aangepaste versie van 1 minuut)

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
AUijtdehaag schreef op vrijdag 4 maart 2022 @ 15:40:
@Wolly
2 batterijen inderdaad.
(maar wel een paar jaar gepolled met de verkeerde node-red flow ipv jouw aangepaste versie van 1 minuut)
Wat hield de verkeerde node-red flow in? Werd er dan meerdere keren per minuut gepolled?
Want als het met 1x per minuut een jaar of 5 goed gaat, dan wil ik daarna best wel voor twee tientjes die batterijen vervangen.
Welke levensduur schat jij met jouw huidige ervaringen in als je altijd 1x per minuut zou pollen?

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • +1 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Andrehj Iedere paar seconden volgens mij in die node-red flow.

Maar als ik eerder had geweten welke batterijen erin zaten, had ik er gewoon nieuwe in gedaan.
Maar tweaker he? Altijd op zoek naar nieuwe(re) dingen. 8)
Dus een jaar of 5 moet normaal gezien gewoon kunnen

[ Voor 10% gewijzigd door AUijtdehaag op 04-03-2022 18:29 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Andrehj
  • Registratie: Juni 2002
  • Laatst online: 15:48
AUijtdehaag schreef op vrijdag 4 maart 2022 @ 18:28:
@Andrehj Iedere paar seconden volgens mij in die node-red flow.

Maar als ik eerder had geweten welke batterijen erin zaten, had ik er gewoon nieuwe in gedaan.
Maar tweaker he? Altijd op zoek naar nieuwe(re) dingen. 8)
OK. Maar als jij een paar jaar lang elke paar seconden hebt gepolled, dan doe ik even helemaal niets en wacht ik wel af hoe lang elke minuut pollen goed gaat. Dat zal dan wel een jaar of 5 zijn, en hopelijk meer.
Die batterijtjes vervangen moet dan wel lukken denk ik.

WP: ME PUHZ-SW75YAA + ERSD-VM2D + EV-WP-TWS-1W 300; AC: ME MXZ-2F42VF + 2x MSZ-LN25VGV; PV: 14.08 kWp O/W + SMA STP 8.0; Vent: Zehnder Q600 ERV + Ubbink AirExcellent.


Acties:
  • 0 Henk 'm!

  • hans1966
  • Registratie: Maart 2012
  • Laatst online: 19-05 17:03
Andrehj schreef op dinsdag 1 maart 2022 @ 18:16:
[...]

Hou ons op de hoogte, want dat betekent dat ik mijn batterij na 5 jaar lang elke minuut uitlezen preventief ga vervangen. Altijd handig als iemand anders dan al heeft uitgevogeld hoe dat moet (en hoe je aan een vervangende batterij komt). _/-\o_
Heeft iemand idee waar ik 24V of 230V power supplies kan kopen voor een Multical? Ik kan alleen iest vinden in de UK, maar dan zit je met invoerrechten

Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 15:02
AUijtdehaag schreef op dinsdag 1 maart 2022 @ 18:09:
Heb maar meteen een 303 gekocht om te testen. (@Hieke )
Heb je de wired of wireless mbus? Indien wired, waar heb je die gekocht? De zaehleronlineshop heeft de wired namelijk niet meer op voorraad...

Ik ben eigenlijk op zoek om binnen 2 weken een warmtepomp uit te gaan meten met een kamstrup, maar ik heb nog even het juiste modelletje nodig (1" en qn 2,5 minstens)

Acties:
  • 0 Henk 'm!

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
@Robbiedobbie
De bedrade versie van Mbus 303 2,5
Inderdaad is die even niet leverbaar.
https://zaehleronlineshop...ll-Waermezaehler-Kamstrup

voorlopig een dummy plaatsen?
https://zaehleronlineshop...130-mm-1-35-mm-Passstueck

[ Voor 45% gewijzigd door AUijtdehaag op 11-03-2022 17:39 ]

PVOutput Github - Div ESP TK: MHI - Clack - Ecodan


Acties:
  • 0 Henk 'm!

  • Robbiedobbie
  • Registratie: Augustus 2009
  • Laatst online: 15:02
Oeh, wist niet dat het dat gaf :>

Als ik die in de leidingen verwerk, dan kan ik daarna als de kamstrup geleverd wordt deze daar gewoon op klikken of hoe werkt het?

Verder is mijn duits niet geweldig, maar betekent hier het laatste stuk niet dat de verbinding voor de warmtesensor open is?
=MID-Kugelhahn mit 1" IG x 1" IG mit Fühleranschluss-Stutzen (Fühlereinbau direkttauchend)
In dat geval kan ik hem namelijk alsnog niet direct in de leiding installeren
Pagina: 1 ... 5 ... 9 Laatste