15x Sonnenstromfabrik Mono 320Wp Tripl Black GL/GL (9×ZZO 6xZOO 41°) || SolarEdge SE40000H || 4430Wp in Huizen (NH)
Wise enough to play the fool
Van mijn slimme Kaifa meter kan ik dat opzoeken. De standaard van de meter is DSMR 4.0 115200 8N1 en geinventeerd signaal en waarschijnlijk telegramheader TFM5.
Kan iemand hier iets mee?
15x Sonnenstromfabrik Mono 320Wp Tripl Black GL/GL (9×ZZO 6xZOO 41°) || SolarEdge SE40000H || 4430Wp in Huizen (NH)
Maakt het nog uit welk type Youless je hiervoor gebruikt? De 110 of de 120?Cardinal schreef op maandag 18 mei 2020 @ 17:09:
Alternatief is om de informatie naar pvoutput te sturen.
- Solaredge API naar pvoutput.
- Youless P1 naar pvoutput.
Daikin Altherma 3 LT - 6 kW EHBX08D6V+ERGA06DV // 9170wWp op Zuid
De LS120 wel, en ook een s0 input.
Ik heb hier alle youlessen weggedaan.
Ik kan met modbus usb adapter van 7 euro en een p1 kabel van 19,95 net zoveel. (nog veel meer)
Mits je handig bent met software....en een SBC (single board computer)
[ Voor 93% gewijzigd door AUijtdehaag op 19-05-2020 08:41 ]
15x Sonnenstromfabrik Mono 320Wp Tripl Black GL/GL (9×ZZO 6xZOO 41°) || SolarEdge SE40000H || 4430Wp in Huizen (NH)
Heb je dit werkend gekregen?wiebje1962 schreef op donderdag 10 juni 2021 @ 16:48:
Als ik in de meterkast een Eastron SDM630-Modbus MID V2 (is een hoogwaardige 3 fase Modbus kWh) meter erbij plaats (laat plaatsen), zou die de gegevens naar mijn SolarEdge kunnen sturen. Dus niet het apparaat wat SolarEdge zelf aanbiedt met spoelen.
Ben namelijk ook geïnteresseerd om consumptiedata in de SE app zichtbaar te krijgen.
Graag wat meer info.
Daarvoor 3 software van github voor gebruikt
1) MQTT broker -> Mosquitto dit om makkelijjk data te delen tussen verschillende computers/programmas
2) P1 meter uitlezen naar MQTT
daarvoor zijn veel opties. Ik heb dit gebruikt https://github.com/marcelrv/p1-reader
2) MQTT -> SolarEdge modbus
https://github.com/nmakel/solaredge_meterproxy dit om de data om te zetten in modbus data die uitgelezen wordt door de omvormer.
Je hebt hier een modbus kabel voor nodig, die zijn al voor €10 te koop
(SolarEdge app & site & Openhab)
:strip_exif()/f/image/9lZSRWaJ78IIU3z6O4f1AD4S.jpg?f=fotoalbum_large)
/f/image/wyYMDCiHlfCflJVV9JOp2ovl.png?f=fotoalbum_large)
:fill(white):strip_exif()/f/image/CxeP2wk2RBuBSmXMWVdCb9MP.png?f=user_large)

Wise enough to play the fool
Zou je hiervoor een kleine howto of handleiding maken? Denk dat heel veel mensen hier voordeel aan hebben !erik_bies schreef op donderdag 14 april 2022 @ 09:27:
@teacher en dit is hoe het eruit ziet in de app als het allemaal werkt.
(SolarEdge app & site & Openhab)
[Afbeelding]
[Afbeelding]
[Afbeelding]
Ben e.a nog aan het verbeteren (zoals de usb2serial eruit en serial van hardware UART op de rpi) en schrijf dan het geheel duidelijk op.
ik ben ook erg geintereseert in hoe je het voor elkaar gekregen hebt.erik_bies schreef op zondag 17 april 2022 @ 13:45:
@teacher ja ga ik zeker doen.
Ben e.a nog aan het verbeteren (zoals de usb2serial eruit en serial van hardware UART op de rpi) en schrijf dan het geheel duidelijk op.
de configs als je de configs zou hebben zou ik al een heel eind komen.
ik gebruik zelf nu DSMR reader, vanuit daar kan ik eea doorsturen denk ik.
ik snap alleen niet goed welke dag statistieken er nu doorgestuurd moeten worden.
moet er nog iets berekend worden? of kan de meter data direct doorgestuurd worden?
ik hoor het graag.
[ Voor 25% gewijzigd door jacquesmulders op 07-05-2022 20:35 ]
https://zonnigbreda.blogs...meter-voor-solaredge.html
incl de 'berekeningen' in mqttP1.py in https://github.com/marcelrv/solaredge_meterproxy
ik ben een heel eind gekomen, maar nog niet helemaal gelukt.erik_bies schreef op zondag 8 mei 2022 @ 20:14:
Nog niet klaar, Maar hier wat ik heb sofar:
https://zonnigbreda.blogs...meter-voor-solaredge.html
incl de 'berekeningen' in mqttP1.py in https://github.com/marcelrv/solaredge_meterproxy
vanuit mijn eigen DSMR reader heb ik alle mqtt topics zo aangemaakt dat ze de zelfde data uitspugen als de p1-reader...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| { "timestamp": "2022-05-09T09:09:29Z", "electricityImportedT1": "17740.929", "electricityExportedT1": "5143.367", "electricityImportedT2": "6188.257", "electricityExportedT2": "11513.925", "powerImportedActual": "0.000", "powerExportedActual": "5.761", "instantaneousActivePowerL1Plus": "0.000", "instantaneousActivePowerL2Plus": "0.000", "instantaneousActivePowerL3Plus": "0.000", "instantaneousActivePowerL1Min": "1.647", "instantaneousActivePowerL2Min": "1.990", "instantaneousActivePowerL3Min": "2.091", "instantaneousVoltageL1": "239.9", "instantaneousVoltageL2": "237.5", "instantaneousVoltageL3": "238.0", "instantaneousCurrentL1": 7, "instantaneousCurrentL2": 8, "instantaneousCurrentL3": 8} |
vervolgens de conf aangemaakt met de benodigde dingen..
1
2
3
4
5
6
7
8
9
10
11
12
| [server] device = /dev/ttyUSB0 baud = 9600 log_level = INFO meters = meter1 [meter1] type=mqttP1 host=127.0.0.1 port=1883 meterValuesTopic=dsmr/json willTopic=dsmr/will |
volgens mij klopt alles zo.. echter krijg ik een paar foutmeldingen als ik het script start..
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
| python3 semp-rtu.py -v 2022-05-09 11:14:12 DEBUG: Started MQTT connection to server - topic: 127.0.0.1:1883 - dsmr/json 2022-05-09 11:14:12 DEBUG: [0, 0, 5, 5, 5, 5, 0, 1, 0, 15, 1, 10000, 10000, 10000, 64536, 64536, 64536, 1500, 120, 0, 0, 20000, 0] 2022-05-09 11:14:12 INFO: MQTT connected to 127.0.0.1:1883 - topic: 'dsmr/json' with result code 0. 2022-05-09 11:14:12 DEBUG: setValues[3] 1601:23 2022-05-09 11:14:12 DEBUG: [0, 2, 4, 0, 0, 5] 2022-05-09 11:14:12 DEBUG: setValues[3] 1651:6 2022-05-09 11:14:12 DEBUG: [1366, 3329, 0, 0, 0, 0, 202, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 2022-05-09 11:14:12 DEBUG: setValues[3] 1701:23 2022-05-09 11:14:12 INFO: Created <Thread(t_update_2, initial)>: meter1 mqttP1 {'client': <paho.mqtt.client.Client object at 0x7611c070>, 'host': '192.168.1.117', 'port': 1883, 'keepalive': 60, 'meterValuesTopic': 'dsmr/json', 'willTopic': 'dsmr/will', 'willMsg': 'MeterProxy Disconnected'} Exception in thread Thread-1: Traceback (most recent call last): File "/usr/lib/python3.9/threading.py", line 954, in _bootstrap_inner self.run() File "/usr/lib/python3.9/threading.py", line 892, in run self._target(*self._args, **self._kwargs) File "/home/pi/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 3591, in _thread_main self.loop_forever(retry_first_connection=True) File "/home/pi/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 1756, in loop_forever rc = self._loop(timeout) File "/home/pi/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 1164, in _loop rc = self.loop_read() File "/home/pi/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 1556, in loop_read rc = self._packet_read() File "/home/pi/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 2439, in _packet_read rc = self._packet_handle() File "/home/pi/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 3033, in _packet_handle return self._handle_publish() File "/home/pi/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 3327, in _handle_publish self._handle_on_message(message) File "/home/pi/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 3570, in _handle_on_message on_message(self, self._userdata, message) File "/home/pi/solaredge_meterproxy/devices/mqttP1.py", line 70, in on_message lastValues ['demand_power_active'] = demandAvg.next ( lastValues['powerImportedActual'] - lastValues['powerExportedActual'] ) TypeError: unsupported operand type(s) for -: 'str' and 'str' 2022-05-09 11:14:13 CRITICAL: t_update_2: unsupported operand type(s) for -: 'str' and 'str' 2022-05-09 11:14:13 INFO: Starting <Thread(t_update_2, started 1978254400)> 2022-05-09 11:14:13 DEBUG: Client Connected [/dev/ttyUSB0:/dev/ttyUSB0] 2022-05-09 11:14:13 DEBUG: Started thread to serve client 2022-05-09 11:14:18 CRITICAL: t_update_2: unsupported operand type(s) for -: 'str' and 'str' |
de laatste zin herhaald hij elke x seconden, niet synchroon met de incomende mqtt.
ik moet er bij zeggen dat ik de solaredge nog niet heb aangesloten omdat ik eea eerst wilde testen.
is dit een vereiste?
het maakt trouwens niet uit of ik python of python3 gebruik, krijg bij allebij het zelfde..
top werk jongens! ik doe het jullie niet na
In Home Assistant combineer ik DSMR reader met SolarEdge API gegevens:
/f/image/hY48AnTj3O0t3tFeiac3VArU.png?f=fotoalbum_large)
Zonder lokale toegang heb ik dus wel de globale gegevens. Met deze oplossing kan ik helaas de zonnepanelen niet los uitlezen. Kosten zijn één P1 kabeltje en de hardware om Home Assistant op te draaien.
Klik hier om mij een DM te sturen • 3245 WP op ZW
Zo te zien heeft mqttP1 integers nodig en niet strings zoals je ze nu door stuurt. Kun je dat nog aanpassen aan de zendende kant?jacquesmulders schreef op maandag 9 mei 2022 @ 11:17:
[...]
ik ben een heel eind gekomen, maar nog niet helemaal gelukt.
vanuit mijn eigen DSMR reader heb ik alle mqtt topics zo aangemaakt dat ze de zelfde data uitspugen als de p1-reader...
Nee dat is niet nodig om de P1 als bron te testen. Echter is het werkend krijgen van de communicatie tussen de omvormer en solaredge_meterproxy soms ook wat gedoe. Handig om alvast naar te kijken, dus.de laatste zin herhaald hij elke x seconden, niet synchroon met de incomende mqtt.
ik moet er bij zeggen dat ik de solaredge nog niet heb aangesloten omdat ik eea eerst wilde testen.
is dit een vereiste?
thanx voor je hulp, even gechecked met de ontwikkelaar maar dit is helaas niet mogelijk.. maar volgens mij als in ik mqttp1.py overal float() voor zet moet het goed komen lijkt me? anders moet ik denk ik een node red flow gaan maken oid..nwmakel schreef op maandag 9 mei 2022 @ 20:50:
[...]
Zo te zien heeft mqttP1 integers nodig en niet strings zoals je ze nu door stuurt. Kun je dat nog aanpassen aan de zendende kant?
[...]
Nee dat is niet nodig om de P1 als bron te testen. Echter is het werkend krijgen van de communicatie tussen de omvormer en solaredge_meterproxy soms ook wat gedoe. Handig om alvast naar te kijken, dus.
Klopt. Zal kijken of er een iets elegantere manier is, maar daar kun je in ieder geval mee verder.jacquesmulders schreef op maandag 9 mei 2022 @ 22:05:
[...]
thanx voor je hulp, even gechecked met de ontwikkelaar maar dit is helaas niet mogelijk.. maar volgens mij als in ik mqttp1.py overal float() voor zet moet het goed komen lijkt me? anders moet ik denk ik een node red flow gaan maken oid..
Leuk!jacquesmulders schreef op dinsdag 10 mei 2022 @ 20:49:
ik heb wel het P1 script van @erik_bies moeten aanpassen naar dsmr reader, maar met een beetje hulp van jullie @nwmakel is het gelukt!
Vergeet niet je aanpassingen te delen, en vooral ook een korte beschrijving te doen van je set-up. Daar zullen wel meer mensen wat aan hebben
ik heb een commit geplaatst op je github, met een uitleg in de readmenwmakel schreef op dinsdag 10 mei 2022 @ 21:27:
[...]
Leuk!
Vergeet niet je aanpassingen te delen, en vooral ook een korte beschrijving te doen van je set-up. Daar zullen wel meer mensen wat aan hebben
ik weet alleen niet helemaal of ik het goed gedaan heb met de licences... aangezien ik @erik_bies zijn mqttp1 heb gebruikt/aangepast.
De omvormer heeft 2 RS485 poorten die ook meterdata (o.a. Van hun nieuwe inline 3-fasen meter) kunnen uitlezen: https://www.solaredge.com.../solaredge-inline-meter#/
Deze meter werkt niet met spoelen maar wordt tussen de hoofdschakelaar en je gebruikers gezet. Is echter gigantisch duur (400,-).
Verder vond ik deze P1 naar Modbus converter. https://shop.libra.energy...r/accessoires/p1mb-module
Heeft iemand hier ervaring mee? En zou deze de data via de modbus aansluiting in een voor de omvormer bruikbaar format aanleveren? Dan ben je met deze unit en een modbus kabel klaar. Geen idee wat hij moet kosten overigens.
[ Voor 7% gewijzigd door igela3 op 25-05-2022 22:21 ]
Tenzij deze een solaredge ondersteunde modbus energie meter kan emuleren heb je er niet zo veel aan.igela3 schreef op woensdag 25 mei 2022 @ 22:20:
Verder vond ik deze P1 naar Modbus converter. https://shop.libra.energy...r/accessoires/p1mb-module
Heeft iemand hier ervaring mee? En zou deze de data via de modbus aansluiting in een voor de omvormer bruikbaar format aanleveren? Dan ben je met deze unit en een modbus kabel klaar. Geen idee wat hij moet kosten overigens.
De solaredge ondersteund maar een zeer beperkt aantal meters, vandaar dat we de software van @nwmakel gebruiken om de meter data om te zetten naar een ondersteund formaat.
Dat maar eens uitzoeken de komende tijd.
Dank voor je antwoord iig.
Dit op basis van atmega4808, die heeft namelijk meerdere seriële poorten en hardwarematig inverter wat best handig is voor dat signaal.
Materiaalkosten zullen iets van 5 euro zijn of zo, maar tja, chips zijn momenteel niet leverbaar.
Was niet bedoelt als koppeling met omvormer, maar kan er prima in geprogrammeerd worden.
Is helaas ver boven mijn niveau. Ik kan niet programmeren en ben meestal afhankelijk van de GUI van een systeem
https://www.sossolutions.nl/slimme-meter-kabel
Voor RS485 naar SE zijn ook meerdere mogelijkheden... van basale RS485 to USB of meteen naar ethernet
Daarnaast heb je idd meerdere software mogelijkheden mbt tot uitlezen P1.
Voor interfacen naar SE heb je de software van nmakel nodig.
Software is helaas niet GUI, maar programeren hoeft ook weer niet
nb, als je enkel de SE met modbus wil uitlezen naar je homeautomation kan je o.a. gebruik mbmd dan heb je verder geen kabels etc voor nodig. (helaas zien je dan niet de meter data in je solaredge app)
Echter hebben jullie nog wat moeten aanpassen in de SolarEdge inverter of was het gewoon aansluiten de RS485 en het werkt? Want ik heb geprobeerd om met de app "SetApp" in te loggen. Echter heeft mijn installateur alles dicht gezet jammer genoeg.
Daarnaast heb ik een ouder model met schermpje, dat moet je idd het model van de opgeven. Neem aan dat het bij de setapp versie het zelfde is.
Je zal zowel als je een officiële koopt of het dhz oplost je installateur nodig hebben.
Danwel installateur rechten krijgen bij de setapp.(ik heb zelf geïnstalleerd dus had al alle rechten op mijn installatie)
Maak eerst de draadloze verbinding met de app en QR code.
Achterhaal het (draadloze) ip nummer van de inverter.
Open een webbrowser, en type in de adresbalk het gevonden ip nummer.
Je heb nu toegang als administrator.
Jammer dat het bij nieuwere inverters niet meer lijkt te werken. Ik heb het geprobeerd om via de webbrowser te connecten maar kreeg geen reactie. Naar wat andere forums gelezen te hebben hebben veel mensen hier last van sinds een bepaalde update. Dus alleen installateurs kunnen het nog, zal even kijken hoe ik een installateurs account kan aanmaken.Vermeulch schreef op vrijdag 3 juni 2022 @ 17:15:
Bij een setapp systeem is het admin wachtwoord voor de modbus instellingen niet nodig.
Maak eerst de draadloze verbinding met de app en QR code.
Achterhaal het (draadloze) ip nummer van de inverter.
Open een webbrowser, en type in de adresbalk het gevonden ip nummer.
Je heb nu toegang als administrator.
Qua Rasberry Pi welke raden jullie mij aan. Zou graag via Ethernet vanaf de Rasberry Pi de communicatie opzetten en dan bij de Solar edge een Ethernet --> RS485 modbus inverter (modbus tcp/ip -> modbus RTU) installeren.
Mijn inverter is nu met wifi verbonden met mijn thuis netwerk/het internet. Ik wil dit graag aanpassen naar bedraad om modbus over tcp te gebruiken. Ik heb mijn installateur om hulp gevraagd, hij geeft aan mij vandaag/morgen de rechten te geven om dit te kunnen aanpassen via de app. Alhoewel het dus standaard voor de gebruiker niet mogelijk is lijkt het erop dat installateurs vrij fijnmazig rechten kunnen uitdelen.Marceldeboer schreef op maandag 6 juni 2022 @ 21:20:
[...]
Jammer dat het bij nieuwere inverters niet meer lijkt te werken. Ik heb het geprobeerd om via de webbrowser te connecten maar kreeg geen reactie. Naar wat andere forums gelezen te hebben hebben veel mensen hier last van sinds een bepaalde update. Dus alleen installateurs kunnen het nog, zal even kijken hoe ik een installateurs account kan aanmaken.
Qua Rasberry Pi welke raden jullie mij aan. Zou graag via Ethernet vanaf de Rasberry Pi de communicatie opzetten en dan bij de Solar edge een Ethernet --> RS485 modbus inverter (modbus tcp/ip -> modbus RTU) installeren.
Waarom wil je een modbus inverter gebruiken? Mijn plan is om de inverter bedraad op de switch aan te sluiten en vanaf een VM op mijn NAS (maar dat zou bij jou ook een pi kunnen zijn) de data uit te lezen en in influx te zetten. Dit is een mogelijkheid:
https://github.com/rroohhh/solaredge-modbus
(Let op: er zijn bij nieuwe firmwares een aantal aanpassingen gedaan in de registerwaardes, documentatie heb ik zo 1, 2, 3 niet bij de hand.)
Welke pi dan geschikt zou zijn hangt volgens mij vooral af wat je er nog meer op wilt draaien en hoeveel geheugen dat vereist. Ik zou er een van 2GB of meer nemen, maar 1 GB voldoet vast ook nog:
Wikipedia: Raspberry Pi
Zelf draai ik mijn VM op een zelfbouw NAS met een 5+ jaar oude intel atom en de VM heeft 2GB en draait ook nog influxdb en grafana.
Inmiddels ontdekt dat modbus over tcp alleen via de setapp met een installateuraccount kan worden aangezet. Dat is dan zo gepiept; de firmware update die eerst werd uitgevoerd nam wel zomaar een kwartier in beslag. Rechten uitdelen van installateur aan gebruiker gaat alleen over dashboard informatie. Alhoewel ik nu de volledige rechten heb ziet een installateur toch echt nog (veel) meer.SVMartin schreef op dinsdag 14 juni 2022 @ 22:06:
[...]
Mijn inverter is nu met wifi verbonden met mijn thuis netwerk/het internet. Ik wil dit graag aanpassen naar bedraad om modbus over tcp te gebruiken. Ik heb mijn installateur om hulp gevraagd, hij geeft aan mij vandaag/morgen de rechten te geven om dit te kunnen aanpassen via de app. Alhoewel het dus standaard voor de gebruiker niet mogelijk is lijkt het erop dat installateurs vrij fijnmazig rechten kunnen uitdelen.
top wist niet dat die Modbus TCP/IP ondersteunt. Dat maakt leven nog veel makkelijker. Want dan ga ik misschien ook wel een PLC inzetten. Hebben op het werk nog wel een paar over die ik voor het testen kan lenen. Hoe zijn jullie achter de Modbus adressen gekomen en wat waar opstaat?SVMartin schreef op woensdag 22 juni 2022 @ 22:10:
[...]
Inmiddels ontdekt dat modbus over tcp alleen via de setapp met een installateuraccount kan worden aangezet. Dat is dan zo gepiept; de firmware update die eerst werd uitgevoerd nam wel zomaar een kwartier in beslag. Rechten uitdelen van installateur aan gebruiker gaat alleen over dashboard informatie. Alhoewel ik nu de volledige rechten heb ziet een installateur toch echt nog (veel) meer.
denk dat ik er een herfst/winter projectje van ga maken. Pi is totaal nieuw voor mij, uit eindelijk wil ik een water boiler slim aansturen met de energie die ik over heb.
https://www.solaredge.com...tation-technical-note.pdf
Uiteraard is er op tweakers niets mis met een hobby project voor de winter; Solaredge heeft zelf ook oplossingen om slim om te gaan met energie die je over hebt. Scroll naar het plaatje beneden:
https://www.solaredge.com/installers/solaredge-home
en ook deze:
https://www.solaredge.com/products/device-control#/
Dus om in mijn SolarEdge App de gegevens van mijn slimme meter/P1 poort te kunnen zien. Dus zonder dat ik veeeeelllll te dure SolarEdge hardware moet kopen en eventueel door een installateur moet laten instelleren.
Bestaat dat nu wel of niet. En als het wel bestaat, hoe/waar kan ik dat bestellen/kopen?
P.S. Ik bezit (nog) geen Raspberry pi, dus dat is voor mij geen optie.
Ik heb wel al een netwerkkabel aangelegd naast mijn SE omvormer die ik met weinig moeite kan doortrekken naar mijn meterkast.
[ Voor 15% gewijzigd door wiebje1962 op 13-07-2022 17:06 ]
15x Sonnenstromfabrik Mono 320Wp Tripl Black GL/GL (9×ZZO 6xZOO 41°) || SolarEdge SE40000H || 4430Wp in Huizen (NH)
Het is Of veel betalen voor officiële SolarEdge modus OF dhz..
Ik denk ook dat wat je zoekt niet bestaat.wiebje1962 schreef op woensdag 13 juli 2022 @ 16:47:
Ik zie een heleboel informatie over het koppelen van een P1 poort van een slimme meter met een SolarEdge omvormer, maar eigenlijk nergens iets over kant-en-klare hardware/software die ik ergens kan kopen/bestellen.
Dus om in mijn SolarEdge App de gegevens van mijn slimme meter/P1 poort te kunnen zien. Dus zonder dat ik veeeeelllll te dure SolarEdge hardware moet kopen en eventueel door een installateur moet laten instelleren.
Bestaat dat nu wel of niet. En als het wel bestaat, hoe/waar kan ik dat bestellen/kopen?
P.S. Ik bezit (nog) geen Raspberry pi, dus dat is voor mij geen optie.
Ik heb wel al een netwerkkabel aangelegd naast mijn SE omvormer die ik met weinig moeite kan doortrekken naar mijn meterkast.
Duur is overigens relatief aan de totaalprijs van de installatie en het bedrag verspreid over de levensduur.
Je zou ook nog zoiets kunnen overwegen:
http://energiemanageronli...g-met-solaredge-omvormer/
Lijkt aangepast in de nieuwste firmware:SVMartin schreef op maandag 27 juni 2022 @ 22:24:
Let op dat modbus alleen werkt via ethernet, niet over wifi.
https://www.solaredge.com/nl/setapp-inverters-firmware
Na wat zoekwerk lijkt deze post te zijn wat ik ook moet hebben!!
Nu is mijn vraag, ik ken een beetje van IT maar weinig van programmeren (ik wil bijleren). Ik heb geen raspberry pi, wel al eens van gehoord maar nog nooit gebruikt. Welke raspberry PI en andere hardware moet ik kopen om dit werkende te krijgen?
Mijn SE3000 is via ethernet aan mijn switch aangesloten. Zodat ik op de app kan zien hoeveel de installatie opwekt.
Kan ik de raspberry pi rechtstreeks via ethernet aan die zelfde switch te koppelen? En zo alle data naar mijn SE app te sturen?
Alvast bedankt voor alle info in deze topic!
[ Voor 8% gewijzigd door icerus op 05-10-2022 04:46 ]
Je kan de raspberry op de zelfde switch aansluiten.De raspbery stuurd via modbus de data naar de SE3000, de SE sluist het door naar de SE portal.
Solaredge via modbus tcp gekoppeld aan Loxone systeem.
Eastron 630 met meerdere andere meters en modbus devices gekoppeld aan een Loxone modbus master.
Kan ik de raspberry als slave in het bestaande modbus RTU (rs485) netwerk hangen en dan een specifieke eastron 630 laten uitlezen. Om vervolgens via modbus tcp van de raspberry ( netwerk verbinding ) de data naar de Solaredge te sturen?
Of zijn er betere andere manieren hoe jullie dit zouden doen?
Dat laatste is vlg mij niet mogelijk... tenzij er in de recente firmware/SE omvormers iets veranderd is, moet er een modbus de data aanleveren aan de SE, en ik denk zelfs de SE de modbus master zijn.Om vervolgens via modbus tcp van de raspberry ( netwerk verbinding ) de data naar de Solaredge te sturen?
Als modbus TCP van de SE zou werken zou de integratie heel makkelijk worden... helaas vooralsnog niet mogelijk...
[ Voor 15% gewijzigd door erik_bies op 15-10-2022 11:07 ]
Kunnen de raspberry en SE beide als slave dienen in een modbus RTU netwerk? Of is de SE altijd de master?
In geval van dat ze beide een slave kunnen zijn zou ik de ook beide in het bestaande modbus RTU netwerk kunnen hangen.
Of voorzie jij hier problemen?
Ik weet niet of dat met de nieuwere versies met setapp anders is..
Mooi uitgewerkt!
Ik begrijp alleen niet helemaal hoe de communicatie met de p1 verloopt gaat dat via een homewizard p1 meter of via een zelf bedraad iets? Ik las iets over een transistor en een weerstand maar kom er niet uit.
Groet,
Jeroen
Er zijn meerdere mogelijkheden, afhankelijk of je een soldeerbout in je hand wil nemen of meer 'off the shelf'Jeroen_cv schreef op zondag 27 november 2022 @ 19:35:
@erik_bies
Mooi uitgewerkt!
Ik begrijp alleen niet helemaal hoe de communicatie met de p1 verloopt gaat dat via een homewizard p1 meter of via een zelf bedraad iets? Ik las iets over een transistor en een weerstand maar kom er niet uit.
Groet,
Jeroen
* Arduino / ESP32 met weerstand & transistor (de weerstand & transistor zorgen ervoor dat het signaal van de P1 geinverteerd wordt en een gewoon serial signaal wordt). Dit is wat ik zelf gebruik.
* USB serial port... hier een post van 10jaar geleden :-) http://zonnigbreda.blogsp...itlezen-via-p1-poort.html
* FTDI serialtoUSB kabel (aliexpress zoek op ftdi usb to serial, +/- €2) + de transistor & weerstand als boven
* OTS bv https://www.sossolutions.nl/slimme-meter-kabel dit is eigenlijk het zelfde als de hierboven maar dan 10x de prijs... maar wel meteen klaar met het juiste stekkertje eraan
weet niet wat de homewizzard p1 is, maar ik neem aan dat het iets soortgelijks is als de laatste kabel.
Het resultaat van al deze kabels/oplossingen is het zelfde... het 'tekst bericht' dat uit de P1 poort van je meter komt wordt ingelezen op je PC/raspberry Pi etc. Daar ga je het omzetten naar het formaat dat de solaredge slikt.
@SVMartin heb jij de lokale API van de homewizard kunnen inlezen door een raspberry en zo ook kunnen zenden naar een solaredge?
Bij mij zitten de Solaredge inverter, de meter (P1 poort) en mijn Proxmox-server niet dicht bij elkaar... Als je de "P1 Ethernet mini" (van Zuidwijk) gebruikt om de P1 via ethernet uit te lezen (proxmox container met P1-reader). En een container met solaredge_meterproxy om de solaredge van data te voorzien via een "RS485 to Ethernet Converter" (van Waveshare). Zou dit werken of zie ik iets over het hoofderik_bies schreef op dinsdag 29 november 2022 @ 10:25:
[...]
Er zijn meerdere mogelijkheden, afhankelijk of je een soldeerbout in je hand wil nemen of meer 'off the shelf'
* Arduino / ESP32 met weerstand & transistor (de weerstand & transistor zorgen ervoor dat het signaal van de P1 geinverteerd wordt en een gewoon serial signaal wordt). Dit is wat ik zelf gebruik.
* USB serial port... hier een post van 10jaar geleden :-) http://zonnigbreda.blogsp...itlezen-via-p1-poort.html
* FTDI serialtoUSB kabel (aliexpress zoek op ftdi usb to serial, +/- €2) + de transistor & weerstand als boven
* OTS bv https://www.sossolutions.nl/slimme-meter-kabel dit is eigenlijk het zelfde als de hierboven maar dan 10x de prijs... maar wel meteen klaar met het juiste stekkertje eraan
weet niet wat de homewizzard p1 is, maar ik neem aan dat het iets soortgelijks is als de laatste kabel.
Het resultaat van al deze kabels/oplossingen is het zelfde... het 'tekst bericht' dat uit de P1 poort van je meter komt wordt ingelezen op je PC/raspberry Pi etc. Daar ga je het omzetten naar het formaat dat de solaredge slikt.

de Modbus over TCP en wifi benaderen lukt goed sinds de laatste update, ik zou ook graag mijn P1 data die ik reeds beschikbaar heb in Domoticz op de Modbus willen zetten.
Al diverse wegen geprobeerd maar nog geen resultaat, ook niet met de solaredge_meterproxy van Github.
Als het niet lukt kan je altijd nog de andere route proberen via de RS485 modbus
@jacquesmulders , kan jij me misschien verder helpen, zie de readme informatie niet staan.jacquesmulders schreef op woensdag 11 mei 2022 @ 09:19:
[...]
ik heb een commit geplaatst op je github, met een uitleg in de readme![]()
ik weet alleen niet helemaal of ik het goed gedaan heb met de licences... aangezien ik @erik_bies zijn mqttp1 heb gebruikt/aangepast.
Ben nooit verder gekomen dan Arduino dus dit Python gebeuren is nieuw voor me.
MQTT informatie van de P1 Meter krijg ik binnen:
/f/image/3l750L37aDNSSAlLUGKzTWby.png?f=fotoalbum_large)
Heb a een RS485 kabel liggen tussen de Solaredge omvormer en een Inepro PRO1 meter, dit werkt maar ga over naar 3fasen en die Inepro meter is gewoon te duur.
Dus nu gekocht:
- RS485 naar RX-TX TTL 3.3V 5V omvormer module SP3485
- Raspberry Pi Pico ARM microcontroller RP2040 micro-usb
Mijn probleem is dat hier 'https://github.com/nmakel/solaredge_meterproxy' niks staat over MQTT.
Heb geen idee waar te starten en jij hebt het werkend begrijp ik.
Graag je hulp want wil dit echt graag voor elkaar krijgen.
Alvast bedankt!
Ik lees met een HomeWizard P1 mijn Slimme meter uit. Hierdoor weet ik of ik een overschot aan energie heb.
Vervolgens lees ik met de Homey ook mijn SolarEdge uit via IP. Zodoende weet ik hoeveel PV energie wordt opgewekt.
Hiernaast heb ik nog een 1 fase kWh meter van HomeWizard deze zit tussen een elektrische boiler.
Heb je geen PV omvormer welke je kunt uitlezen, dan kun je ook zo'n kWh meter van HomeWizard tussen je PV installatie zetten. Deze meet heel nauwkeurig je PV productie.
Met de Homey heb ik een oplossing gemaakt waarmee ik straks de PV stroom kan verbruiken en zo veel meer kan opmaken.
Momenteel maak ik een trigger welke actief wordt als er teruggeleverd wordt. Daarnaast kijk ik of de PV installatie minimaal 1000watt opbrengt.
Zodra dit het geval is, schakel ik een relais en gaat de boiler opwarmen. Deze verwarmd met 2500watt.
Ik compenseer zo dus mijn teruglevering voor 100%.
Als de boiler op temperatuur is, schakelt deze automatisch uit. Dit zie ik omdat de tussenmeter van de boiler 0Watt aangeeft. Ik heb deze op <10watt gezet.
Ik hoop dit jaar ook een warmtepomp geplaatst te krijgen. Door de hoge gasprijzen hebben we de ruimtetemperatuur in huis nu eigenlijk te laag staan. Het is niet erg comfortabel.
Wat ik wil doen als die WP er is, is dat de boiler warm is en er toch nog teruggeleverd wordt, ik simpelweg via de Homey de Tado thermostaat 1 of 1,5 graad hoger zet dan de ingestelde (lage) waarde.
Zodoende start de warmtepomp en die gaat de woonkamer iets warmer maken dan normaal, zodat we het PV overschot omzetten in warmte en dus extra comfort.
Het mooiste zou zijn als ik een extra buffervat plaats en met zonekleppen de zones die geen warmtevraag hebben afsluit en zo het buffervat opwarm om later deze warmte-energie naar zones te sturen waar vraag naar warmte is, zonder dat de WP hier direct voor moet bijspringen.
Ik moet nog kijken of ik ook met de Homey straks een Kia Niro kan laten laden als er PV overschot is en het huis niet verwarmt hoeft te worden.
Als je er wat aan hebt... ik heb mijn solaredge_meterproxy mqtt config bij mijn uitleg gezet.Mijn probleem is dat hier 'https://github.com/nmakel/solaredge_meterproxy' niks staat over MQTT.
Heb geen idee waar te starten en jij hebt het werkend begrijp ik.
Misschien help dat om het aan de gang te krijgen:
https://zonnigbreda.blogs...meter-voor-solaredge.html
ik zie dat min commit nog niet gemerged is, dus je zal even op mijn git moeten kijken, hier staat iets over DSMR readerRedeque2 schreef op zondag 12 februari 2023 @ 10:16:
[...]
@jacquesmulders , kan jij me misschien verder helpen, zie de readme informatie niet staan.
Ben nooit verder gekomen dan Arduino dus dit Python gebeuren is nieuw voor me.
MQTT informatie van de P1 Meter krijg ik binnen:
[Afbeelding]
Heb a een RS485 kabel liggen tussen de Solaredge omvormer en een Inepro PRO1 meter, dit werkt maar ga over naar 3fasen en die Inepro meter is gewoon te duur.
Dus nu gekocht:
- RS485 naar RX-TX TTL 3.3V 5V omvormer module SP3485
- Raspberry Pi Pico ARM microcontroller RP2040 micro-usb
Mijn probleem is dat hier 'https://github.com/nmakel/solaredge_meterproxy' niks staat over MQTT.
Heb geen idee waar te starten en jij hebt het werkend begrijp ik.
Graag je hulp want wil dit echt graag voor elkaar krijgen.![]()
Alvast bedankt!
op een RASP heb ik DSMR reader draaien, deze zit aangesloten op de P1 meter.
op mijn git staat ook het eea in de readme, hoe te starten/ aan te maken.
ik heb via een usb to rs485 modbus de solaredge aangesloten.
Dacht, zal eens geen Chinese meuk kopen en dus een 'Waveshare rs485 USB' gekocht.
Device wordt herkend als /dev/ttyACM0 en niet als /dev/ttyUSB0, dit heb ik goed gezet in de config maar krijg toch fout melding.
Iemand enig idee hoe ik nu verder kom?
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
| Redeque@raspberrypi:~/solaredge_meterproxy $ python3 semp-rtu.py -v 2023-03-02 19:48:00 INFO: Created <Thread(t_update_2, initial)>: meter1 sdm630 SDM630(/dev/ttyACM0, connectionType.RTU: stopbits=1, parity=N, baud=9600, timeout=1, retries=3, unit=0x1) 2023-03-02 19:48:01 DEBUG: device: SDM630(/dev/ttyACM0, connectionType.RTU: stopbits=1, parity=N, baud=9600, timeout=1, retries=3, unit=0x1) 2023-03-02 19:48:01 INFO: Starting <Thread(t_update_2, started 1978176576)> 2023-03-02 19:48:01 DEBUG: Using selector: EpollSelector 2023-03-02 19:48:14 DEBUG: values: {} Traceback (most recent call last): File "/usr/lib/python3/dist-packages/serial/serialposix.py", line 322, in open self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK) FileNotFoundError: [Errno 2] No such file or directory: '/dev/ttyUSB0' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/Redeque/solaredge_meterproxy/semp-rtu.py", line 248, in <module> StartSerialServer( File "/home/Redeque/.local/lib/python3.9/site-packages/pymodbus/server/async_io.py", line 1261, in StartSerialServer return asyncio.run(StartAsyncSerialServer(**kwargs)) File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run return loop.run_until_complete(main) File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete return future.result() File "/home/Redeque/.local/lib/python3.9/site-packages/pymodbus/server/async_io.py", line 1254, in StartAsyncSerialServer await server.start() File "/home/Redeque/.local/lib/python3.9/site-packages/pymodbus/server/async_io.py", line 929, in start await self._connect() File "/home/Redeque/.local/lib/python3.9/site-packages/pymodbus/server/async_io.py", line 956, in _connect raise exc File "/home/Redeque/.local/lib/python3.9/site-packages/pymodbus/server/async_io.py", line 943, in _connect self.transport, self.protocol = await create_serial_connection( File "/home/Redeque/.local/lib/python3.9/site-packages/pymodbus/client/serial_asyncio/__init__.py", line 466, in create_serial_connection serial_instance = serial.serial_for_url(*args, **kwargs) File "/usr/lib/python3/dist-packages/serial/__init__.py", line 90, in serial_for_url instance.open() File "/usr/lib/python3/dist-packages/serial/serialposix.py", line 325, in open raise SerialException(msg.errno, "could not open port {}: {}".format(self._port, msg)) serial.serialutil.SerialException: [Errno 2] could not open port /dev/ttyUSB0: [Errno 2] No such file or directory: '/dev/ttyUSB0' |
1
2
3
4
| [server] # Serving serial device, connected to the SolarEdge inverter. # optional, default: /dev/ttyUSB0 #device = /dev/ttyUSB0 |
changed to
1
2
3
4
| [server] # Serving serial device, connected to the SolarEdge inverter. # optional, default: /dev/ttyUSB0 device = /dev/ttyACM0 |
Volledige config file:
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
| [server] # Serving serial device, connected to the SolarEdge inverter. # optional, default: /dev/ttyUSB0 device = /dev/ttyACM0 # Serving serial baud rate. # optional, default: 9600 #baud = 9600 # Parity setting, N, E or O # optional, default: E #parity = E parity = N # Serving serial timeout, depends on line speed. # optional, float, default: 1 #timeout = 1 timeout = 0.1 # Logging level, CRITICAL, ERROR, WARNING, INFO, DEBUG # optional, default: INFO #log_level = INFO # Masqueraded meters, comma separated. # optional, default: '' meters = meter1 [meter1] type=sdm630 device=/dev/ttyACM0 baud=9600 src_address=1 dst_address=2 # Meters defined in [server] need a config section, one per meter. # Depending on the type of meter that is to be masqueraded, you can # define a number of generic and type specific variables. # Modbus address of the meter as defined in the SolarEdge inverter. # This value needs to be unique. # optional, default: 2 #dst_address = 2 # Source meter type, which corresponds to a script in /devices. # The generic.py device returns null values. # optional, default: generic #type = generic # Masqueraded serial number. # Need not be correct, must be unique, must be an integer. # optional, default: 987654 #serial_number = 987654 # Current transformer amperage rating. # optional, default: 5 #ct_current = 50 # Current transformer direction inversion, set to 1 if required. # optional, default: 0 #ct_inverted = 0 # Offset between phases, set to 0, 90, 120 or 180. # optional, default: 0 #phase_offset = 120 # Number of seconds between value refreshes. # optional, default: 5 #refresh_rate = 5 |
hebt staan. Daar moet je connectie met de P1 meter komen (via mqtt)
[meter1]
type = mqtt
host = 192.168.1.1 [jou mqtt ip]
dst_address = 2
meterValuesTopic = /energy/meter [jou mqtt topic]
willTopic = /energy/will
refresh_rate = 15
#serial_number = "0x0D010552"
Hij maakt nu verbinding, nu nog kijken hoe ik die data als JSON aangeleverd ga krijgen want dat doet de 'smartgateways.nl' meter niet.
Heb geprobeert dsmr-reader V5 te installeren als Docker op mijn NAS maar dat gaat mijn pet te boven, dat krijg ik niet werkend.
Ga eens kijken of ik er een Json van kan maken met Node-red ofzo.
1
2
3
4
5
6
7
8
| Redeque@raspberrypi:~/solaredge_meterproxy $ python3 semp-rtu.py -v 2023-03-03 20:42:27 INFO: Created <Thread(t_update_2, initial)>: meter1 mqtt {'client': <paho.mqtt.client.Client object at 0x76015310>, 'host': '192.168.0.250', 'port': 1883, 'keepalive': 60, 'meterValuesTopic': 'dsmr/reading', 'willTopic': '/energy/will', 'willMsg': 'MeterProxy Disconnected'} 2023-03-03 20:42:27 INFO: Connected to MQTT: 192.168.0.250:1883/dsmr/reading 2023-03-03 20:42:28 DEBUG: t_update_2: no new values 2023-03-03 20:42:28 INFO: Starting <Thread(t_update_2, started 1966326848)> 2023-03-03 20:42:28 DEBUG: Using selector: EpollSelector 2023-03-03 20:42:43 DEBUG: t_update_2: no new values 2023-03-03 20:42:58 DEBUG: t_update_2: no new values |
Ik lees ook dat modbus een soort labels heeft voor de verschillende gegevens. Daar zou het dus een mismatch zijn denk ik?
Wel lees ik op de website van Xemex dat ze de modbus communicatie kunnen aanpassen. Maar dat zal wel een grote oplage ding zijn. Er is een modbus protocol voor alle omvormers, wat ze Sunspec noemen (http://sunspec.org). er is waarschijnlijk alleen niemand die het 1-2je gaat maken.
[ Voor 25% gewijzigd door rfickert op 06-03-2023 15:57 . Reden: aanvullende informatie waarom ik de vraag opnieuw stel. ]
Maar als modbus input voor meter data weet ik niet zo zeker.
mbt tot Xemex zover ik kan zien is er weinig standaard aan de modbus meter data. Zo kan je zien dat bij https://github.com/nmakel...proxy/tree/master/devices er voor de verschillende devices andere registers worden uitgelezen. Je zal zeer waarschijnlijk dan zelf de link moeten maken tussen de register addressen van de Xemex en de solaredge.
Volgens mij ben ik er niet ver vanaf alleen kom ik even niet verder met zowel de P1-reader als de Solaredge _meterproxy

Ik heb de volgende setup:
p1 (uitgang) -> p1-ethernet mini [192.168.40.84] -> p1-reader (in Debian container) op [192.168.40.70] -> solaredge_meterproxy (in Ubuntu container) op [192.168.40.81] -> Eth-R485 gateway in client mode op [192.168.40.82]-> solaredge [192.168.40.83]
config p1-ethernet-mini
Basic Settings
Name = P1
Protocol = MQTT
Socket Settings
Server = 192.168.40.84
Server Port = 4196
Local Port = 0
Buffer Size = 1400
Keep Alive(s) = 600
Timeout(s) = 0
Protocol Settings
MQTT Version = 3
MQTT Client ID = mqttP1
Subscribe Topic= meter
Subscribe QoS = 0
Publish Topic = meter
Publish QoS = 0
Ping Period(s) = 600
More Settings
Security = Disable
Route = Uart
config P1-reader:
1
2
3
| P1_ADDRESS= 192.168.40.84:4196 MQTT_BROKER= 192.168.40.70:4196 MQTT_TOPIC= meter |
Dit krijg ik als ik de P1-reader start:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| root@P1reader:~/p1-reader# poetry run python app.py Traceback (most recent call last): File "/root/p1-reader/app.py", line 26, in <module> mqtt_client.connect(os.getenv("MQTT_BROKER"), 1883, 60) File "/root/.cache/pypoetry/virtualenvs/p1-reader-69YB3R95-py3.9/lib/python3.9/site-packages/paho/mqtt/client.py", line 941, in connect return self.reconnect() File "/root/.cache/pypoetry/virtualenvs/p1-reader-69YB3R95-py3.9/lib/python3.9/site-packages/paho/mqtt/client.py", line 1075, in reconnect sock = self._create_socket_connection() File "/root/.cache/pypoetry/virtualenvs/p1-reader-69YB3R95-py3.9/lib/python3.9/site-packages/paho/mqtt/client.py", line 3546, in _create_socket_connection return socket.create_connection(addr, source_address=source, timeout=self._keepalive) File "/usr/lib/python3.9/socket.py", line 822, in create_connection for res in getaddrinfo(host, port, 0, SOCK_STREAM): File "/usr/lib/python3.9/socket.py", line 953, in getaddrinfo for res in _socket.getaddrinfo(host, port, family, type, proto, flags): socket.gaierror: [Errno -2] Name or service not known root@P1reader:~/p1-reader# |
config solaredge_meterproxy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| server] address = 192.168.40.81 port = 4196 framer = rtu log_level = DEBUG meters = meters1 [meters1] type=mqttP1 host=192.168.40.70 port=4196 src_address=1 dst_address=2 ct_current = 10 |
en dit als ik de solaredge_meterproxy start
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| root@SEmeterproxy:/solaredge_meterproxy# python3 semp-tcp.py -v 2023-05-13 21:16:46 CRITICAL: MQTT connection failed: 192.168.40.70:4196 - meter 2023-05-13 21:16:46 DEBUG: [1234, 0, 10, 10, 10, 10, 0, 0, 0, 15, 1, 10000, 10000, 10000, 64536, 64536, 64536, 1500, 120, 0, 0, 20000, 0] 2023-05-13 21:16:46 DEBUG: setValues[3] address-1601: count-23 2023-05-13 21:16:46 DEBUG: [0, 2, 4, 0, 0, 5] 2023-05-13 21:16:46 DEBUG: setValues[3] address-1651: count-6 2023-05-13 21:16:46 DEBUG: [4614, 15, 0, 0, 0, 0, 202, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 2023-05-13 21:16:46 DEBUG: setValues[3] address-1701: count-23 2023-05-13 21:16:46 INFO: Created <Thread(t_update_2, initial)>: meters1 mqttP1 {'client': <paho.mqtt.client.Client object at 0x7f352c37aeb0>, 'host': '192.168.40.70', 'port': 4196, 'keepalive': 60, 'meterValuesTopic': 'meter', 'willTopic': None, 'willMsg': 'MeterProxy Disconnected'} 2023-05-13 21:16:47 CRITICAL: t_update_2: 'instantaneousVoltageL1' 2023-05-13 21:16:47 INFO: Starting <Thread(t_update_2, started 139866344646400)> Traceback (most recent call last): File "semp-tcp.py", line 256, in <module> server = StartTcpServer( TypeError: StartTcpServer() got an unexpected keyword argument 'framer' root@SEmeterproxy:/solaredge_meterproxy# |
De P1-reader kan alleen de data nog niet van de P1-ethernet-mini afhalen, ik heb deze nu ingesteld als TCP-server (port 4196) maar dat lijkt niet te werken...
1
2
| 2023-05-14T21:18:11+0000 [INFO] Read P1 reader 2023-05-14T21:18:11+0000 [ERROR] Unable to read data from 192.168.40.80:4196: [Errno -2] Name or service not known |
TypeError: StartTcpServer() got an unexpected keyword argument 'framer'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| root@SEmeterproxy:/solaredge_meterproxy# python3 semp-tcp.py -v 2023-05-14 22:26:15 DEBUG: Started MQTT connection to server - topic: 192.168.40.85:1883 - meter 2023-05-14 22:26:15 DEBUG: [1234, 0, 10, 10, 10, 10, 0, 0, 0, 15, 1, 10000, 10000, 10000, 64536, 64536, 64536, 1500, 120, 0, 0, 20000, 0] 2023-05-14 22:26:15 DEBUG: setValues[3] address-1601: count-23 2023-05-14 22:26:15 DEBUG: [0, 2, 4, 0, 0, 5] 2023-05-14 22:26:15 DEBUG: setValues[3] address-1651: count-6 2023-05-14 22:26:15 DEBUG: [4614, 15, 0, 0, 0, 0, 202, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 2023-05-14 22:26:15 DEBUG: setValues[3] address-1701: count-23 2023-05-14 22:26:15 INFO: Created <Thread(t_update_2, initial)>: meters1 mqttP1 {'client': <paho.mqtt.client.Client object at 0x7f982f7edeb0>, 'host': '192.168.40.85', 'port': 1883, 'keepalive': 60, 'meterValuesTopic': 'meter', 'willTopic': None, 'willMsg': 'MeterProxy Disconnected'} 2023-05-14 22:26:15 INFO: MQTT connected to 192.168.40.85:1883 - topic: 'meter' with result code 0. 2023-05-14 22:26:16 CRITICAL: t_update_2: 'instantaneousVoltageL1' 2023-05-14 22:26:16 INFO: Starting <Thread(t_update_2, started 140291593012992)> Traceback (most recent call last): File "semp-tcp.py", line 256, in <module> server = StartTcpServer( TypeError: StartTcpServer() got an unexpected keyword argument 'framer' root@SEmeterproxy:/solaredge_meterproxy# |
Ketel klets heeft daar ook een video op YouTube over geplaatst. https://youtu.be/8ck1Twzc65E
Het enige wat nodig is is een plusabonnement (kosten 1 euro/maand waarbij je ook data naar oa excel kunt downloaden.
Via hun smartmeters kun je dus ook op basis van die informatie dingen gaan schakelen.
Oa krijg je nu ook te zien wat je eigen verbruik van je zonne-energie binnen je huis is.
Mogelijk is dit een alternatief, zeker voor mensen die al dit via een P1 meter aan het doen zijn. Meer plug en play dus.
[ Voor 9% gewijzigd door MacD007 op 15-05-2023 12:26 ]
Quatt WP 4,5 kW - Atag CV ketel - Honeywell T6 - 23 panelen SolarEdge
Dat is misschien wel de eenvoudigere weg... maar dan zit je wel met vendor lock-in.MacD007 schreef op maandag 15 mei 2023 @ 12:22:
.....Mogelijk is dit een alternatief, zeker voor mensen die al dit via een P1 meter aan het doen zijn. Meer plug en play dus.
ja, daar heb je gelijk, echter voor een boel lui is dit wel de enige optie die ze hebben juist omdat het gewoon plug and play is, wat ik al zei, vergeet niet dat dit hobby met programmeren in HA echt niet voor iedereen is weggelegd. De prijs voor het eenvoudige is dus ook een dergelijk vendor lock-in, hoewel hier ook maar den dele omdat je de data bv ook extern kunt downloaden.knalsmurf schreef op dinsdag 16 mei 2023 @ 09:33:
[...]
Dat is misschien wel de eenvoudigere weg... maar dan zit je wel met vendor lock-in.
Quatt WP 4,5 kW - Atag CV ketel - Honeywell T6 - 23 panelen SolarEdge
De p1-reader heb ik aan de praat
1
2
3
4
5
| root@P1reader:~/p1-reader# poetry run python app.py -vvv 2023-05-15T20:49:31+0000 [INFO] Read P1 reader 2023-05-15T20:49:36+0000 [INFO] CRC verified (0x1c0a) after 1 iteration(s) 2023-05-15T20:49:36+0000 [INFO] Telegram published on MQTT 2023-05-15T20:49:36+0000 [INFO] Read P1 reader |
Alleen de de Solaredge_meterproxy blijft nog hangen op het "framer"-issue...

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
| root@SEmeterproxy:/solaredge_meterproxy# python3 semp-tcp.py -vvv 2023-05-16 11:06:48 DEBUG: Started MQTT connection to server - topic: 192.168.40.85:1883 - meter 2023-05-16 11:06:48 DEBUG: [1234, 0, 10, 10, 10, 10, 0, 0, 0, 15, 1, 10000, 10000, 10000, 64536, 64536, 64536, 1500, 120, 0, 0, 20000, 0] 2023-05-16 11:06:48 DEBUG: setValues[3] address-1601: count-23 2023-05-16 11:06:48 DEBUG: [0, 2, 4, 0, 0, 5] 2023-05-16 11:06:48 DEBUG: setValues[3] address-1651: count-6 2023-05-16 11:06:48 DEBUG: [4614, 15, 0, 0, 0, 0, 202, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 2023-05-16 11:06:48 DEBUG: setValues[3] address-1701: count-23 2023-05-16 11:06:48 INFO: Created <Thread(t_update_2, initial)>: meters1 mqttP1 {'client': <paho.mqtt.client.Client object at 0x7ff85d034eb0>, 'host': '192.168.40.85', 'port': 1883, 'keepalive': 60, 'meterValuesTopic': 'meter', 'willTopic': None, 'willMsg': 'MeterProxy Disconnected'} 2023-05-16 11:06:48 INFO: MQTT connected to 192.168.40.85:1883 - topic: 'meter' with result code 0. Exception in thread Thread-1: Traceback (most recent call last): File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner self.run() File "/usr/lib/python3.8/threading.py", line 870, in run self._target(*self._args, **self._kwargs) File "/usr/local/lib/python3.8/dist-packages/paho/mqtt/client.py", line 3591, in _thread_main self.loop_forever(retry_first_connection=True) File "/usr/local/lib/python3.8/dist-packages/paho/mqtt/client.py", line 1756, in loop_forever rc = self._loop(timeout) File "/usr/local/lib/python3.8/dist-packages/paho/mqtt/client.py", line 1164, in _loop rc = self.loop_read() File "/usr/local/lib/python3.8/dist-packages/paho/mqtt/client.py", line 1556, in loop_read rc = self._packet_read() File "/usr/local/lib/python3.8/dist-packages/paho/mqtt/client.py", line 2439, in _packet_read rc = self._packet_handle() File "/usr/local/lib/python3.8/dist-packages/paho/mqtt/client.py", line 3033, in _packet_handle return self._handle_publish() File "/usr/local/lib/python3.8/dist-packages/paho/mqtt/client.py", line 3327, in _handle_publish self._handle_on_message(message) File "/usr/local/lib/python3.8/dist-packages/paho/mqtt/client.py", line 3570, in _handle_on_message on_message(self, self._userdata, message) File "/solaredge_meterproxy/devices/mqttP1.py", line 70, in on_message lastValues ['demand_power_active'] = demandAvg.next ( lastValues['powerImportedActual'] - lastValues['powerExportedActual'] ) KeyError: 'powerImportedActual' 2023-05-16 11:06:49 CRITICAL: t_update_2: 'instantaneousVoltageL1' 2023-05-16 11:06:49 INFO: Starting <Thread(t_update_2, started 140704682977024)> Traceback (most recent call last): File "semp-tcp.py", line 256, in <module> server = StartTcpServer( TypeError: StartTcpServer() got an unexpected keyword argument 'framer' root@SEmeterproxy:/solaredge_meterproxy# |
vlg mij moet je dan semp-rtu.py gebruiken ipv semp-tcp.py
Dit is mijn setup:erik_bies schreef op zaterdag 27 mei 2023 @ 18:52:
als ik je goed begrepen had heb je een serial modbus verbinding.
vlg mij moet je dan semp-rtu.py gebruiken ipv semp-tcp.py
p1 (uitgang) -> p1-ethernet mini [192.168.40.84] -> p1-reader (in Debian container) op [192.168.40.70] -> solaredge_meterproxy (in Ubuntu container) op [192.168.40.81] -> Eth-RS485 gateway in client mode op [192.168.40.82]-> solaredge [192.168.40.83]
De laatste stap gaat dus via een Ethernet -RS485 gateway, deze Waveshare , in de toelichting van de solaredge_meterproxy noemen ze dit een "Modbus TCP to RTU gateway"...
Vandaar dat ik voor semp-TCP.py had gekozen...
Ik heb daar geen ervaring mee, geloof niet dat ik de ' framer' error gezien heb,
De andere fout powerImportedActual lijkt dat er nog een waarde mist. Misschien heeft die in het bericht net een andere naam.(hoofdteken gevoelig)
Je zou evt om te testen of dat de reden is dat de framer fout loopt
powerImportedActual = 0
in het programma kunnen zetten, dan klopt de waarde misschien niet, maar loopt het programma wel door. (en weet je waar je verder moet zoeken)
Als ik dat in sempt-tcp.conf zet blijft hij de fout geven... of ergens in mqttp1.py?
Hebben de 2 fouten mogelijk met elkaar te maken?
Krijg ik het volgende als ik het programma start:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| root@SEmeterproxy:/solaredge_meterproxy# python3 semp-tcp.py -vvv 2023-05-27 21:58:03 DEBUG: [1234, 0, 10, 10, 10, 10, 0, 0, 0, 15, 1, 10000, 10000, 10000, 64536, 64536, 64536, 1500, 120, 0, 0, 20000, 0] 2023-05-27 21:58:03 DEBUG: setValues[3] address-1601: count-23 2023-05-27 21:58:03 DEBUG: [0, 2, 4, 0, 0, 5] 2023-05-27 21:58:03 DEBUG: setValues[3] address-1651: count-6 2023-05-27 21:58:03 DEBUG: [4614, 15, 0, 0, 0, 0, 202, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 2023-05-27 21:58:03 DEBUG: setValues[3] address-1701: count-23 2023-05-27 21:58:03 INFO: Created <Thread(t_update_2, initial)>: meter1 mqtt {'client': <paho.mqtt.client.Client object at 0x7f9b27c97b50>, 'host': '192.168.40.85', 'port': 1883, 'keepalive': 60, 'meterValuesTopic': 'meter', 'willTopic': 'will', 'willMsg': 'MeterProxy Disconnected'} 2023-05-27 21:58:03 INFO: Connected to MQTT: 192.168.40.85:1883/meter 2023-05-27 21:58:03 DEBUG: MQTT message received: {"versionInformation": 42, "timestamp": 1685013348, "equipmentIdentifier": "E0005001664446615", "electricityImportedT1": 24213413.0, "electricityExportedT1": 145998.0, "electricityImportedT2": 24563808.0, "electricityExportedT2": 214556.0, "tariffIndicator": 2, "electricityImportedActual": 123.0, "electricityExportedActual": 512.0, "powerFailures": 2, "powerFailuresLong": 2, "powerFailureEventLog": "2|0-0:96.7.19|181002193330S|0000000306|151206010212W|0000003087", "voltageSagsL1": 0.0, "voltageSagsL2": 1.0, "voltageSagsL3": 1.0, "voltageSwellsL1": 0.0, "voltageSwellsL2": 0.0, "voltageSwellsL3": 0.0, "textMessage": "", "instantaneousCurrentL1": 1.0, "instantaneousCurrentL2": 1.0, "instantaneousCurrentL3": 1.0, "instantaneousActivePowerL1Plus": 0.0, "instantaneousActivePowerL2Plus": 0.0, "instantaneousActivePowerL3Plus": 123.0, "instantaneousActivePowerL1Min": 262.0, "instantaneousActivePowerL2Min": 250.0, "instantaneousActivePowerL3Min": 0.0} 2023-05-27 21:58:04 DEBUG: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 2023-05-27 21:58:04 INFO: Starting <Thread(t_update_2, started 140304347653888)> 2023-05-27 21:58:04 DEBUG: setValues[3] address-1001: count-34 2023-05-27 21:58:04 DEBUG: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 2023-05-27 21:58:04 DEBUG: setValues[3] address-1101: count-82 Traceback (most recent call last): File "semp-tcp.py", line 256, in <module> server = StartTcpServer( TypeError: StartTcpServer() got an unexpected keyword argument 'framer' root@SEmeterproxy:/solaredge_meterproxy# |
Hij lijkt nu wel iets te lezen ... en de fout " KeyError: 'powerImportedActual' " lijkt nu weg...
Alleen nog wel de framer error...
De error:
Traceback (most recent call last):
File "semp-tcp.py", line 256, in <module>
server = StartTcpServer(
TypeError: StartTcpServer() got an unexpected keyword argument 'framer'
Dit is het stukje code waarop hij vastloopt:
1
2
3
4
5
6
7
8
9
| server = StartTcpServer( context=server_ctx, framer=framer, identity=identity, address=( confparser["server"].get("address", fallback=default_config["server"]["address"]), confparser["server"].getint("port", fallback=default_config["server"]["port"]) ) ) |
mijn config voor de tcpserver:
[server]
address = 192.168.40.81
port = 4196
# Modbus frame type, set to rtu for Modbus RTU over TCP
# optional, default: socket
#framer = socket
framer = rtu
log_level = DEBUG
Heb al geprobeerd "socket" en niks in te vullen bij "framer = ..." maar het programma blijft echter dezelfde fout geven...
De laatste stap om de meterdata aan de de Solaredge aan te leveren via de Gateway lijkt daarme nog even een lastige

Misschien is het je inmiddels gelukt om het draaiend te krijgen
Het was me nog niet gelukt om het draaient te krijgen aangezien ik ik op dit punt echt vastgelopen was. Ik ga proberen of het met een nieuwere versie van python wel werkt en kijken of dat weer nieuwe aanknopingspunten geeft...erik_bies schreef op vrijdag 27 oktober 2023 @ 23:58:
@knalsmurf zie nu pas dat je python 3.8 gebruikt. Ik kreeg het alleen met python 3.9 of hoger aan de praat
Misschien is het je inmiddels gelukt om het draaiend te krijgen
ook ik ben bezig met het uitlezen van mijn P1 meter op mijn Solaredge omvormer. Met behulp van deze post ben ik al een eind gekomen, maar loop ik toch uiteindelijk vast.
Mijn opstelling lijkt erg op die van @erik_bies en @jacquesmulders dus ik heb er vertrouwen in dat moet kunnen werken.
________________________________________________________________________
Doel:
Meter import+export weergeven in Solaredge app, (volgens de methode van Marcelrv (Github)).
________________________________________________________________________
Hardware die ik gebruik:
- Landis Gyr E350 slimme meter
- P1 to USB FTDI kabel
- Raspberry Pi4B 8GB, 32GB SD
- USB to RS485 converter
- Solaredge SE8K Set-app Omvormer (vaste kabel op RS485-1 poort)
_________________________________________________________________________
Wat ik reeds heb gedaan:
Solaredge
Import + export meter is aangemaakt in de Solaredge configuratie (Omvormer geconfigureerd als Modbus RTU adres 1, import+export meter is modbus RTU adres 2)
Raspberri Pi
P1 USB kabel is zichtbaar gekoppeld in de Pi als adres ttyUSB0
RS485 converter is zichtbaar gekoppeld in de Pi als adres ttyUSB1
Software geïnstalleerd op de Pi:
- Raspberry PI OS 64Bit
o Mosquitto 2.0.11
o Python 3.11.2
o Poetry 1.7.1
o Visual Studio Code
Python code van marcelrv in VS geïmporteerd:
https://github.com/marcelrv/p1-reader
https://github.com/marcelrv/solaredge_meterproxy
___________________________________________________________________________
Wat nu?
ik heb zelf wel eea aan programmeer ervaring maar ben nieuw betreft Python en Raspberry Pi
logisch nadenkend zou ik nog de volgende stappen moeten zetten, maar weet ik niet hoe:
- configureren Mosquitto MQTT server?
- aanpassen adressen in P1 reader code?
- aanpassen adressen in meter proxy code?
- automatisch laten starten van MQTT server en python code wanneer de Raspberry opstart?
als ik de mosquitto opstart in de terminal krijg ik de eerste foutmelding:
mosquitto -v
1704746260: mosquitto version 2.0.11 starting
1704746260: Using default config.
1704746260: Starting in local only mode. Connections will only be possible from clients running on this machine.
1704746260: Create a configuration file which defines a listener to allow remote access.
1704746260: For more details see https://mosquitto.org/documentation/authentication-methods/
1704746260: Opening ipv4 listen socket on port 1883.
1704746260: Error: Address already in use
1704746260: Opening ipv6 listen socket on port 1883.
1704746260: Error: Address already in use
het lijkt er dus op dat ik als eerstvolgende stap een config file moet opzetten voor de MQTT server
Wie kan mij verder helpen met het opzetten van de config file voor de Mosquitto?
Lijkt erop dat je mosquitto voor de 2de keer probeert te starten.ReVa schreef op maandag 8 januari 2024 @ 22:23:
1704746260: Opening ipv4 listen socket on port 1883.
1704746260: Error: Address already in use
1704746260: Opening ipv6 listen socket on port 1883.
1704746260: Error: Address already in use
het lijkt er dus op dat ik als eerstvolgende stap een config file moet opzetten voor de MQTT server
Wie kan mij verder helpen met het opzetten van de config file voor de Mosquitto?
Als je mosquitto via apt / via UI hebt geinstalleerd dan zorgt
1
| sudo systemctl enable mosquitto |
ervoor dat die bij elke herstart automatisch opgestart wordt.
ja allemaal... de eerste (config mosquitto) is meestal eenvoudig... tenzij je iets specifieks wil staat het allemaal al goed.- configureren Mosquitto MQTT server?
- aanpassen adressen in P1 reader code?
- aanpassen adressen in meter proxy code?
voor de andere 2 heb je de ip adressen nodig. Als het allemaal op dezelfde staat is het dus steeds het zelfde ip
Hallo Eric,erik_bies schreef op zondag 17 april 2022 @ 13:45:
@teacher ja ga ik zeker doen.
Ben e.a nog aan het verbeteren (zoals de usb2serial eruit en serial van hardware UART op de rpi) en schrijf dan het geheel duidelijk op.
Ik zie hier dat je een oplossing had bedacht op basis van Pi voor het uitlezen van de digitale meter en de gegevens te importeren in Solaredge. SolarEdge gebruikt een inline meter die in electriciteitskast komt waarvoor ze 650 euro vragen.
Gezien ik dat een nutteloze investering vind (zeker nu de digitale meter er is) wou ik ook een alternatieve oplossing vinden. Daarom ben ik geinteresseerd in je oplossing en hoe je dat werkende hebt gekregen. Is er ergens een beschrijving van je oplossing die je wil delen?
btw Na wat zoeken vond ik op internet een module van Xemex waarvan ik denk dat ze ook zou kunnen worden gebruikt. Deze module doet de conversie van DSMR5 (digitale teller) naar RS485 seriele bus die je kan aansluiten op de Solaredge. Weet niet wat jij hiervan denkt of dit een alternatieve oplossing kan zijn?
https://xemex.eu/products/communication-modules/p1mb/
https://xemex.eu/wp-conte...roduct-Sheet-P1MB-1.0.pdf
Voor je SolarEdge is die xemex niet te gebruiken want de SolarEdge ondersteund maar enkele soorten rs485 device.
Je moet dus of een van de ondersteunende types gebruiken of de solaredge_meterproxy gebruiken. (Die zet verschillende meters om naar de dit SolarEdge ondersteunende meter)
Maar goedkoopste is natuurlijk de P1 gebruiken.
Iets terug in het topic vind je de link naar mijn ZonnigBreda blog met wat meer details
Volg de verschillende stappen en heb de P1-meter nu goed aan het werk samen met een P1 reader ethernet. Belangrijk daar was het invullen van een grotere timeout in de app.py ''timeout(read_telegram, timeout=60).
De solaredge_meterproxy heb ik wat meer moeite mee. Volgens mij alles goed ingesteld maar ik krijg
Iemand een idee?python3 semp-tcp.py -v
2024-06-07 04:15:05 INFO: Connected to MQTT: 192.168.179.6:1883/meter
Traceback (most recent call last):
File "/root/solaredge_meterproxy/semp-tcp.py", line 159, in <module>
block_1601 = BinaryPayloadBuilder(byteorder=Endian.Big, wordorder=Endian.Little)
^^^^^^^^^^
File "/usr/lib/python3.11/enum.py", line 789, in __getattr__
raise AttributeError(name) from None
AttributeError: Big. Did you mean: 'BIG'?
(Ik ben niet zo bekend met python.)
---
Ok ik kan mijn eigen bericht beantwoorden. "Big" --> "BIG" en het werkt.
Nu het volgende issue.
Ik heb de oude display versie van de omvormer. Daarin heb ik modbus over tcp aangezet (standaard port 502). Dit werkt met de Home Assistant "SolarEdge Modbus" integratie.
Nu probeer ik dus 'solaredge_meterproxy' daarop te laten connecten op poort 502.
Dit lukt niet.
Ik denk dat dit heeft te maken dat het feit van 'solaredge_meterproxy' net als de solar edge een server is voor modbus.
Klopt dit en kan dit inderdaad niet?
[ Voor 21% gewijzigd door tinka op 07-06-2024 13:29 ]
De modbus verbinding moet data vragen en dat doet de modbus TCP van solaredge niet.(zoals je zelf al zegt omdat het een server is en geen client)
Ik heb nog wat moeten veranderen aan mqttP1.py van marcelrv. Ik heb enkele van zijn waarden niet in mijn P1 meter resultaten lijkt het (1 fase ipv 3?), maar na wat aanpassingen gaat dat goed.
Ik ben verder gegaan met een modbus dongle en direct aan de omvormer.
Ik zie in 'monitoring.solaredge.com' nu de goede resultaten verschijnen. Netjes nu met ook (eigen)verbruik.
Echter in de mysolarapp zie ik niets (android en ios).
Ik heb even contact opgenomen met solaredge en die geven aan dat er iets aan de hand is met de CT en een terugverwijzing naar de niet bestaande installer :-).
Wat is nu de beste oplossing en welke additionele hardware is er nodig om dat voor elkaar te krijgen. De Solaredge hangt via Ethernet aan het internet. de standaard RS485 poort is ongebruikt.
Ik begrijp dat een aantal opties niet werken, maar welke werken wel met minimale hardware ?
Het mooiste is natuurlijk om alles inzichtelijk te hebben in de SolarEdge App want die gebruik ik al voor het monitoren van de productie.
[ Voor 10% gewijzigd door rcarper op 17-07-2024 08:46 ]
wat je nodig hebt is een P1 dongle van HW (kost circa 30 euro, met gratis app), een plus abonement van HW (kost 12 euro per jaar, hierbij heb je naast de mogelijkheid om je SolarEdge PV te koppelen ook nog andere functies en vooral ook dat je data langer dan 12 mnd bewaard blijven, dus je kunt dus verschillende jaren vergelijken), de normale gratis opties zijn helaas hiervoor niet toerijkend. .rcarper schreef op dinsdag 16 juli 2024 @ 22:54:
Enige tijd lang met een uiters slimme ferrarismeter gewerkt, maar moet nu toch geloven aan een digitale meter. Natuurlijk kijk ik naar een mogelijkheid om een koppeling te realiseren tussen de P1 poort van de toekomstige meter en de SE2200 Solaredge Inverter.
Wat is nu de beste oplossing en welke additionele hardware is er nodig om dat voor elkaar te krijgen. De Solaredge hangt via Ethernet aan het internet. de standaard RS485 poort is ongebruikt.
Ik begrijp dat een aantal opties niet werken, maar welk werken wel met minimale hardware ?
daarnaast het je je site id van je SE PV nodig, die vind je in de App van SE en een API code (sleutel), die zul je moeten opvragen bij je installateur omdat je deze normaal gezien niet zelf in op de site kunt aanmaken (hiervoor het je admin rechten nodig).
Dus gewoon je installateur even een mailtje voor deze API sleutel. deze zou je gratis moeten krijgen.
Meer heb je niet nodig.
via de HW app krijg je dan mooie inzichten in je verbruik, opwek, teruglevering, spnning (per fase) ed.
hier een voorbeeld: dit is maar één van de vele grafieken die je kunt zien.
/f/image/HM2UKbA2zKcRKtlwReYMluYt.png?f=fotoalbum_large)
dit is één mogelijkheid, hier staan natuurlijk ook andere mogelijkheden die wel een stuk minder plug and play zijn dan de hier beschreven mogelijkheid.
[ Voor 21% gewijzigd door MacD007 op 16-07-2024 23:18 ]
Quatt WP 4,5 kW - Atag CV ketel - Honeywell T6 - 23 panelen SolarEdge
Whoop!
Moet daar dan niet nog een coil bij per fase? Op deze manier gebruik je de P1 poort niet als ik het goed begrijp, of is de S0 die in het document genoemd wordt hetzelfde?marccom schreef op vrijdag 26 juli 2024 @ 23:42:
Voor wie op zoek is naar de officiële oplossing is dit wellicht iets: https://etronixcenter.com...gm-1ph-3ph-alleen-eu.html - nog steeds geld, maar met 200 euro voordeliger nu misschien voor sommige mensen de moeite waard.
wil je dat in de app van HW hebben en dus niet in een of andere app zul je vrees ik gaan betalen, gezien de meerwaarde van dat aanbod (12 euro per jaar) en de verschillende extra mogelikheden, oa opslag van de gegevens over het jaar heen, dus direct vergelijking binnen de app lijkt dit een prima oplossing.rcarper schreef op vrijdag 26 juli 2024 @ 20:54:
Hoe kunnen we het bereiken zonder een extra abonnement op HW en een extra App? De grafieken in de Solaredge App zouden ideeal zijn.
Quatt WP 4,5 kW - Atag CV ketel - Honeywell T6 - 23 panelen SolarEdge
Nee, dat gaat niet via de P1 poort, maar via de M-Bus poort van de omvormer zelf. App dus bv via HA of andere oplossingen en niet via HW.rcarper schreef op zondag 4 augustus 2024 @ 09:25:
[...]
Moet daar dan niet nog een coil bij per fase? Op deze manier gebruik je de P1 poort niet als ik het goed begrijp, of is de S0 die in het document genoemd wordt hetzelfde?
Overigens de oplossing van HW gaat ook niet via de P! poort (direct) maar via de P1 dongel via de cloud en direct import van de SE Api.
Quatt WP 4,5 kW - Atag CV ketel - Honeywell T6 - 23 panelen SolarEdge
Momenteel lees ik (in home assistant) mijn p1 data uit via usb, dit werkt prima en komt elke 1 sec binnen.
Solaredge lees ik lokaal uit via modbus, en ivm dynamisch tarief schakel ik de panelen (ook via modbus) uit (solaredge Active Power Limit === 0 )
na 2027 is het interessanter om bij negatieve prijzen tussen de 0,00 en -0,15 (het gebied waar de opbrengst nog niet de belasting bedraagt). Dus idealiter zou ik geen eigen logica in home assistant schrijven maar gewoon de SE 0 export setting aan/uitschakelen rond die marktprijzen.
Nu dus de vraag:
1. Klopt het nog steeds dat modbus over tcp voor de meterdata naar SE toe niet werkt.
2. Werkt de 0 export setting met de p1 <> modbus bridge?
3. iemand wellicht al gekeken naar emulatie van dit ding: https://www.solaredge.com...ers-sensoren/inline-meter
voor directe netwerk monitoring
android since G1.
Kan je dit ook gebruiken als alternatief voor de Inline Meter van SolarEdge zelf ?erik_bies schreef op dinsdag 29 maart 2022 @ 23:36:
Ik wilde ook de SolarEdge aansluiten op de P1 meter om de stroom import & export door te geven.
Daarvoor 3 software van github voor gebruikt
1) MQTT broker -> Mosquitto dit om makkelijjk data te delen tussen verschillende computers/programmas
2) P1 meter uitlezen naar MQTT
daarvoor zijn veel opties. Ik heb dit gebruikt https://github.com/marcelrv/p1-reader
2) MQTT -> SolarEdge modbus
https://github.com/nmakel/solaredge_meterproxy dit om de data om te zetten in modbus data die uitgelezen wordt door de omvormer.
Je hebt hier een modbus kabel voor nodig, die zijn al voor €10 te koop
Voor de combinatie SolagEdge Omvorger en Accu moet de omvormer weten wat de momentele import en export is, en SolarEdge stelt dat dat altijd moet met de SolarEdge Inline energy meter. Dit is een stroommeter met RS485 half duplex communicatie, die sec aan de omvormer doorgeeft wat de import en export is. Helaas ondersteuind SolarEdge geen P1 signaal rechtstreeks.
Nothing is a problem once you've debugged the code
dat is inderdaad precies wat het doet. Draait hier inmiddels een jaar of 3 (sinds mijn eerste post).DaRealRenzel schreef op dinsdag 8 april 2025 @ 11:40:
[...]
Kan je dit ook gebruiken als alternatief voor de Inline Meter van SolarEdge zelf ?
Voor de combinatie SolagEdge Omvorger en Accu moet de omvormer weten wat de momentele import en export is, en SolarEdge stelt dat dat altijd moet met de SolarEdge Inline energy meter. Dit is een stroommeter met RS485 half duplex communicatie, die sec aan de omvormer doorgeeft wat de import en export is. Helaas ondersteuind SolarEdge geen P1 signaal rechtstreeks.
Im mijn geval is de afstand tussen de meter en de solarEdge wat groot, dus wilde geen extra kabel trekken, dit is een prima oplossing. Het is wat pijn om het de eerste keer werkend te krijgen, maar het kan zeker.