PVoutput (WH-MDC05H3E5) 12880WP /// SWW Atlantic Explorer v4 270L
Het enige dat me minder aanstaat is het poortnummer van de datalogger dat getoond wordt. Het ipnummer is mijn correcte publieke IP-nummer. Daarachter wordt een portnummer gemeld dat steeds wisselt en ook niet overeenstemt met dat gebruikt wordt bij de Grott-sniffer.. dat zou 5279 moeten zijn.. Het lijkt random te worden toegewezen en elke keer te veranderen als ik die info opvraag.
/f/image/J8lhcPdg3XNRsJ4BF6RKXyM5.png?f=fotoalbum_large)
Getracht dit portnummer als volgt aan te passen middels deze beschrijving:
https://github.com/johanm...ata-via-your-Grott-Server
in de portal van Growatt en er volgt melding: succesvol maar portnummer wijzigt nog steeds voortdurend...
Zo krijg ik daarmee geen kans om via mijn docker Grott monitor het verkeer mee te lezen.
Iemand een idee of ik informatie verkeerd interpreteer?
Mijn Grott-monitor lijkt geen informatie te verwerken en ook niets te uploaden naar PVoutput.org
Panasonic K-series split 9 kW, gasloos sinds dec 23 | Tesla MY LR | PV 9,6 kWp | 2 x Zendure SF 2400 AC, 17.280 kWh
Ik zie in de logfile het volgende:
:strip_exif()/f/image/aI1tN5vq4IsaNx82NbGXPTfD.jpg?f=fotoalbum_large)
Er worden 3 waarden geupload. Dit gaat ook succesvol.
Ik mis echter de temperatuur van de omvormer, pvipmtemperature, deze is wel bekend in het systeem. Zo blijkt uit de eerste regel in deze screenshot.
In de documentatie staat veel over het aanpassen van een ini-file.
En ook over het vullen van Environment, waar ik gebruik van maak om docker te configureren..
Zoals beschreven in https://github.com/johanm.../wiki/Grott-Configuration
Ik lees daar echter niets over het uitbreiden van een vierde, nog beschikbare parameter t.b.v. PVoutput..
Weet iemand hoe de temperatuur via environment kan worden aangevuld met een extra parameter in de container?
Met belangstelling.
Panasonic K-series split 9 kW, gasloos sinds dec 23 | Tesla MY LR | PV 9,6 kWp | 2 x Zendure SF 2400 AC, 17.280 kWh
Maar nu aan het worstelen met de juiste syntax om dit in de environment op te nemen.
Daarvoor kijk ik in de Wiki bij
:no_upscale():strip_icc():fill(white):strip_exif()/f/image/0NVCeOvL34tMypf2DKwXYnOp.jpg?f=user_large)
Helaas is de syntax niet helemaal helder voor mij.. In de configuratie van de Docker-container probeer ik dan:
:no_upscale():strip_icc():fill(white):strip_exif()/f/image/oonfYDtgYhlNMJ1JW1LxfwjK.jpg?f=user_large)
Maar welke karakters ik ook gebruik, enkele aanhalingstekens, dubbele, met of zonder accolade, ik blijf in de logfile (en PVoutput) zien dat er iets niet goed wordt "begrepen"
Iemand de juiste hint?
Panasonic K-series split 9 kW, gasloos sinds dec 23 | Tesla MY LR | PV 9,6 kWp | 2 x Zendure SF 2400 AC, 17.280 kWh
Wellicht doe ik iets heel simpels fout, maar als ik het ip hier probeer in te stellen, krijg ik een set parameter failureJelte schreef op donderdag 1 juli 2021 @ 14:08:
@Nightcrawler28 Zo te zien wordt de data van de ShineLAN stick niet naar je Pi geleid. Heb je deze stap uitgevoerd?
https://github.com/johanm...ata-via-your-Grott-Server
Doe maar gewoon, dan doe je al gek genoeg...
ik wil graag de data iets sneller uitlezen van mijn growatt en ik kwam je script tegen...
uiteindelijk mooi werkend gekregen, maar de data interval blijft rond 5 minuten hangen.
via in te loggen op server.growatt.com en dan de datalogger in te stellen staat de interval er niet tussen.
door lokaal in te loggen op de shineLAN stick (verbonden met RJ45) staat er bij "data transfer interval" 5 minuten, maar dit is niet aanpasbaar.
:strip_exif()/f/image/cYP9DNGs6xkXddSMGXnOLaE7.jpg?f=fotoalbum_large)
iemand een idee?
Maar bijgaand een screenshot van mijn huidige versie 6.2 waar ik helemaal geen klachten over heb. Behalve dan dat ik graag de temperatuur van de omvormer zou willen zien in PVoutput. Maar dat verzoek heeft Johan in versie 7 verwerkt!

De tabbladen Volume en Koppelingen zijn leeg. Het tabblad Netwerk staat als Bridge ingesteld.
Hierbij de directorystructuur van Docker op de NAS. Maar voor Grott stelt dat niets voor. Misschien iets met rechten?

Wat voor foutmelding krijg je dan? Stuur eens een screenshot of log.. Want nu blijf je wel erg vaag om geholpen te kunnen worden.
Hopelijk kun je iets met deze info. Anders graag wat meer info van jouw kant waar het mis gaat.
Deze release draait al tijden voor mijn Growatt probleemloos naast 5 andere docker-containers op een DS718+
Panasonic K-series split 9 kW, gasloos sinds dec 23 | Tesla MY LR | PV 9,6 kWp | 2 x Zendure SF 2400 AC, 17.280 kWh
/f/image/RtwFfK3RFalTKsHXfOTAIu9T.png?f=fotoalbum_medium)
Het draait op een Raspberry Pi met een stukje python code.
De uiteindelijke versie moet groot worden (80cm denk ik aan). Ik gebruik nu een RPi 4, maar voor de uiteindelijke versie wil ik een Zero, anders wordt het een beetje een dure hobby. Die zijn alleen momenteel nergens te krijgen....
Xtool D1 10w laser cutter - IoT moet nooit op internet - 4x HomeWizard plug-in batterij, totaal 10,8 kWh / 3200 watt / 3200 watt, aansturing met Home Assistant - Renault Twizy ± 10000 km per jaar
Ik loop tegen een probleem aan dat als ik de status opvraag ik foutcodes krijg.
Heb het script nagekeken. Er wordt gezegd dat er wordt gezocht naar modulenaam paho, maar dit komt er nergens in voor.
[ Voor 21% gewijzigd door simso1 op 02-03-2022 23:23 ]
Geeft die aan dat het al geïnstalleerd is.redbullwaning schreef op donderdag 3 maart 2022 @ 06:41:
@simso1code:al geprobeerd
1 pip install paho-mqtt
In het overzicht van de pip list staat die ook bij.
Heb gevonden dat het een probleem kan zijn als je meerdere Python versies op je apparaat hebt staan.
Ik heb Python 2.7 Python 3 en Python 3.9 Deze staan standaard geïnstalleerd.
[ Voor 12% gewijzigd door simso1 op 03-03-2022 09:35 ]
Laat dat nu ook mijn versie zijn, ik heb alleen probleem dat met het samenvoegen van pvpowerout en pvenergytoday mijn domoticz de data van vandaag op morgen zet, en hoe ik dat eruit krijg, joost mag het weten.@Firewizard was mijn mentor..
![]() | ![]() |
De power in het log van 7.4kWh sunday is eigenlijk van zaterdag
Zie nu ook in het log dat ie pas na 16.00 uur de staafdiagram erbij ophoogt, net of dat de start/reset van 00:00 is
[ Voor 68% gewijzigd door topmusic op 13-03-2022 17:50 ]
had nog een usb wifi-x stick liggen en eens geprobeerd te flaschen.
ging makkelijk gpi00 met gnd verbinden d.m.v een paperclip en dan komt die in bootmode.
ook nog geprobeerd met een wemos d1 mini die ik nog had en kreeg hetzelfde resultaat.
je kan dus een wemos d1 via usb verbinden met je omvormer en het werkt. prima
mqtt wordt ondersteund.
elke 5 sec data
dit was het resultaat.
PVoutput (WH-MDC05H3E5) 12880WP /// SWW Atlantic Explorer v4 270L
/f/image/9T9ZmAEQVAiJJb6xhTj2siIf.png?f=fotoalbum_large)
Wat wel vreemd is, is dat alle waardes door 10 gedeeld moeten worden. Dat zie ik in de documentatie nergens terug. Een AC voltage van 234,1 V wordt bijvoorbeeld in pvgridvoltage aangegeven als 2341. Opgelost met het toevoegen van deze Flux transformatie:
1
| |> map(fn: (r) => ({r with _value: r._value / 10})) |
Dit is met een MIN3600TL-XE en Shinelink-X
Dankjewel. Dit had ik nog niet gevonden. Heb de add on nu een tijdje draaien, maar krijg MQTT niet werkend bij de sensoreren.Johan_meijer schreef op dinsdag 19 april 2022 @ 14:51:
Ik heb zelf (nog geen) Home Assistant maar er zijn genoeg mensen die het werkend hebben volgens mij.
Kijk even op Github ik heb wat dingen aan de Grott wiki toegevoegd (aangereikt door anderen).
Er is ook een add-on gebouwd: https://github.com/wjansenw/home-assistant-add-on
In de issue's/discussie is er ook wat over gediscussieerd en aanpassingen hierop geweest.
Ik hoop dat dit helpt.
Het MQTT bericht komt wel aan. Dit kan ik zien, maar bij de sensoren blijft Onbekend staan. Iemand een idee?
/f/image/cndJA5CZsoDg8p3UusBRJtMh.png?f=fotoalbum_large)
/f/image/HhFh2x24lwV992RQ27yWSgB2.png?f=fotoalbum_large)
Het heeft even wat moeite gekost om het aan de praat te krijgen, maar nadat ik hier heb gelezen dat je de ShineLanBox moest resetten om de gewijzigde IP settings door te voeren had ik het snel aan de praat.
Wat ook fijn was dat ik de yaml aanpassingen op github kon vinden. Zo staan meteen de juiste gegevens in Home Assistant. Krijg alleen het Grafana dashboard, waarvan de json file er ook op staat, niet aan de praat. Maar goed, heb zelf een eenvoudig dashboard gemaakt en dat volstaat voorlopig.
Voorheen had ik een 'scraper' draaien die elke paar minuten de data van de website haalde, maar dit is een stuk beter. Alles draait overigens in containers op een Intel NUC met Proxmox.
Johan_meijer, dank voor dit mooie stukje werk!
Ik laat tevens op een TTGO display via ESPHome de netto stroomlevering/afname zien. Als t getal rood is nemen we af van het net, groen is levering aan het net. Zo kunnen we zien wat het beste moment is om de vaatwasser/wasmachine/droger aan te zetten. Data lees ik uit via de P1 poort van de meter via Home Assistant en ESPHome. Case geprint en dan ziet het er ook prima uit
[ Voor 37% gewijzigd door Villager op 05-06-2022 08:53 ]
Gelukkig schijnt de zon niet veel gisteren en vandaag dus mis weinig data :-)
Heat Geek Getraind | WP Pana 5H - Solar 6m2 PVT icm 300liter - PV 8970WP: 27stuks - Home Assistant |
/f/image/kMYI2nHKJF2sQ03ljDHqgGUl.png?f=fotoalbum_medium)
Omdat mijn script redelijk uitgebreide logging genereert zie ik dat het vanaf 14 juni 16:25 niet meer gelukt is in te loggen bij Growatt en de productiewaarden op te halen. Nu zie ik hierboven dat ik niet de enige ben omdat Growatt heeft zitten morrelen aan hun API. Grrrrrr.
Ik heb de maker van de python module (growattServer) die ik gebruik maar even gemaild, hopelijk kan hij het fixen. Interessant genoeg is er op 15 juni een update van deze module uitgekomen, dus ik had goede hoop dat dit het probleem zou fixen, maar dat is niet zo...
Echt jammer dat dit bij Growatt niet zo robuust blijkt, dit zal om de zoveel tijd wel gebeuren ben ik bang.
-edit-
Na veel proberen, nog nog maar eens met pip uninstall the growattServer module gedeïnstalleerd en daarna weer geherinstalleerd, en het werkt.... Ik had dat vanmiddag ook al gedaan, maar ik moet iets verkeerd gedaan hebben. Hoe dan ook, mijn opbrengstmeter doet het weer - voorlopig.
-edit2-
Helaas, dat werkt toch niet, althans niet goed. Mijn Rspb Pi haalt elke 5 minuten de productiewaarde op bij Growatt, maar ik zie dat nu ± 80% van de tijd falen. Afwachten maar tot / of de maker van de python module een update uitbrengt.
[ Voor 18% gewijzigd door JeroenH op 23-06-2022 09:45 ]
Xtool D1 10w laser cutter - IoT moet nooit op internet - 4x HomeWizard plug-in batterij, totaal 10,8 kWh / 3200 watt / 3200 watt, aansturing met Home Assistant - Renault Twizy ± 10000 km per jaar
Maar nu een prangende vraag waar ik al sinds het begin mee zit. Wellicht weet hier iemand een antwoord op. Dit is mijn overzichtspagina in Home Assistant.
/f/image/CBWfTIfO67Y7erafsbkkROHh.png?f=fotoalbum_large)
Onder Energy staat het totaal aan door de panelen opgewekte energie Epv: 35,116.7 (US notatie, dus 35MWh). De hoeveelheid aan het net geleverde energie Eac is 36,950.7 (bijna 37MWh).
Ik zou verwachten dat Eac gelijk is aan Epv minus wat inwendige verliezen. Maar mijn Eac is groter dan Epv. En dat snap ik niet. Kan iemand mij dat verschil verklaren?
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
| script:
growatt7k_define_sensors:
mode: single
sequence:
- service: mqtt.publish
data:
topic: homeassistant/sensor/growatt7k/Ppv1/config
retain: 0
payload: |
{
"device" : {
"identifiers" : [ "AHxxxxxxxx" ],
"manufacturer" : "Growatt",
"model" : "Growatt 7000 TL3",
"name" : "Growatt7k",
"sw_version" : "3.1"
},
"device_class" : "power",
"name" : "Growatt Ppv1",
"state_topic" : "~/Ppv1",
"unique_id" : "growatt_ppv1",
"unit_of_measurement" : "W",
"value_template" : {% raw %}"{{ value|float }}"{% endraw %},
"~" : "growatt7k"
} |
De sensor wordt dus opgezet middels een MQTT publish. Voor elke sensor is een instructie als bovenstaand opgenomen in een script dat wordt uitgevoerd bij het opstarten van HomeAssistant.
Om precies te zijn: ik heb een programma'tje dat deze scripts genereert aan de hand van een data beschrijving. Erg handig.
Direct bijkomend voordeel is dat de omvormer nu een echt MQTT 'device' is ipv. losse MQTT sensors.
/f/image/kMYI2nHKJF2sQ03ljDHqgGUl.png?f=fotoalbum_medium)
De maker van de library heeft sinds juni geen nieuwere versie uitgebracht, en daarmee werkt het met python ophalen van de productiewaarden helaas nog altijd niet goed. Ik heb het project een tijd laten staan, maar het van de week weer eens aangezet om te kijken of het "vanzelf" beter is gaan werken. Helaas falen nog altijd veel van de inlog- of data-ophaalpogingen. Ik wist dat dit min of meer een hack was, omdat Growatt geen API biedt, maar dat het zo belabberd zou werken had ik niet gedacht. Oh well, soms moet je een project als verloren beschouwen.JeroenH schreef op dinsdag 21 juni 2022 @ 22:15:
Helaas, dat werkt toch niet, althans niet goed. Mijn Rspb Pi haalt elke 5 minuten de productiewaarde op bij Growatt, maar ik zie dat nu ± 80% van de tijd falen. Afwachten maar tot / of de maker van de python module een update uitbrengt.
Voor de info, dit is het stukje code wat inlogt bij Growatt, en de array met meetwaarden ophaalt:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| # set up Growatt stuff writelog("Starting Growatt server login") api = growattServer.GrowattApi() try: login_response = api.login("Login", "Password") writelog("Growatt API login was successful") except: writelog("ERROR Logging into Growatt API failed, stopping script") exit() # get current PV production value try: Growatt_all_values = api.plant_info(plant_id) writelog("Retrieving raw data was successful") except: writelog("ERROR Retrieving current raw data from Growatt failed, stopping script") exit() |
(writelog is een zelfgeschreven subroutine die logging naar een logfile wegschrijft)
("Login" en "Password" staan uiteraard in het echte script correct ingevoerd)
Een succesvolle run gaat als volgt:
1
2
3
4
5
6
7
| 2022-09-27 14:10:03 Starting Growatt server login
2022-09-27 14:10:04 Growatt API login was successful
2022-09-27 14:10:07 Retrieving raw data was successful
2022-09-27 14:10:07 Raw values from Growatt server: {'plantMoneyText': '3.2/€', 'optimizerType': 0, 'ammeterType': '0', 'storagePgrid': '0', 'todayEnergy': '15.2', 'storageTodayPpv': '0', 'invTodayPpv': '2931.4', 'totalEnergy': '35607.8', 'nominalPower': 30000, 'todayDischarge': '0', 'Co2Reduction': '35500.98', 'isHaveOptimizer': 0, 'storagePuser': '0', 'useEnergy': '0', 'totalMoneyText': '7477.64', 'nominal_Power': 35150, 'deviceList': [{'lost': False, 'location': '', 'eToday': '15.2', 'datalogSn': 'NAC5A331EQ', 'deviceSn': 'ELG0A40007', 'deviceStatus': 2, 'type': '1', 'powerStr': '2.93kW', 'eTodayStr': '15.2kWh', 'invType': '1', 'deviceAilas': 'ELG0A40007', 'deviceType': 'inverter', 'power': '2931.4', 'energy': '35607.8'}], 'isHavePumper': '0'}
2022-09-27 14:10:07 Current power, as extracted text from Growatt server data: 2931.4
2022-09-27 14:10:07 Current power converted to kW and float, as used for servo actuation input: 2.9314
2022-09-27 14:10:07 Value output to servo: 163 |
Maar over de periode van een dag faalt meer dan de helft van de pogingen:
1
2
| 2022-09-27 14:15:02 Starting Growatt server login 2022-09-27 14:15:03 ERROR Logging into Growatt API failed, stopping script |
Of zo:
1
2
3
| 2022-09-27 16:00:02 Starting Growatt server login 2022-09-27 16:00:05 Growatt API login was successful 2022-09-27 16:00:06 ERROR Retrieving current raw data from Growatt failed, stopping script |
Dus soms lukt het inloggen niet, en soms lukt het inloggen wel maar het ophalen niet. Uiteraard heb ik dat (in juni) handmatig geprobeerd, maar dat geeft ook geen duidelijke foutmeldingen. Ik weet nog dat het dan zeer lang duurt, en dan uiteindelijk faalt.
Ik ben niet optimistisch meer dat dit gaat werken, en ik heb geen tijd/zin om een alternatief te bouwen met het lokaal onderscheppen van de meetwaarden.
Jammer, maar op naar het volgende project
Xtool D1 10w laser cutter - IoT moet nooit op internet - 4x HomeWizard plug-in batterij, totaal 10,8 kWh / 3200 watt / 3200 watt, aansturing met Home Assistant - Renault Twizy ± 10000 km per jaar
Ik heb al een tijdje problemen om Grott aan de praat te krijgen bij Home Assistant. Ik heb Grott als add-on geinstalleerd, de Growatt-datalogger reroute naar Grott en daarna add-on gestart.
Allereerst krijg ik dan een foutmelding dat ik de add-on niet opgestart krijg:
:no_upscale():strip_icc():fill(white):strip_exif()/f/image/bBVAG4VJnl6QS0Qo2EGeBISZ.jpg?f=user_large)
Dit issue kan ik omzeilen door in Portainer de INIT uit te vinken en vanuit Portainer de add-on te starten:
:strip_exif()/f/image/f0yKxyHx83yCJhThD9UhuV9c.jpg?f=fotoalbum_large)
Het lukt wel om Grott te starten, maar dan verschijnt eerst de volgende timeout error:
:strip_exif()/f/image/lM5XSRpfU2TEWofYTqrP4fIk.jpg?f=fotoalbum_large)
Uiteindelijk start Grott verder op en krijgt de Add-on de gegevens binnen van mijn Growatt-inverter. Helaas wordt deze informatie niet doorgezonden via MQTT omdat er een error is genaamd "MQTT send failed".
In de configuratie heb ik wel het volgende staan:
1
2
3
4
5
6
7
8
| gmode: proxy gnomqtt: "False" gmqttip: 127.0.0.1 gmqttport: "5288" gmqttauth: "True" gmqtttopic: energy/grott gmqttuser: mqtt-user gmqttpassword: *password* |
Wat zijn jullie suggesties om Grott bij mij werkend te krijgen? Thanks.
Helaas krijg ik dan dezelfde melding als ik het ipadres verander naar het ipadres van de docker container op het netwerk:fenrir schreef op donderdag 10 november 2022 @ 18:01:
[...]
En als je ipadres van de docker container invult in plaats van 127.0.0.1?
MQTT send failed: [Errno 99] Address not available.
Wat mij opvalt bij het laden van Grott is dat de MQTT-settings niet overeen komen wat ik heb ingevoerd in het configuratie-scherm. Zo staan er andere instellingen bij het ip, auth, user en psw.
1
2
3
4
5
6
7
8
| gmode: proxy gnomqtt: "False" gmqttip: 192.168.1.122 gmqttport: "5288" gmqttauth: "True" gmqtttopic: energy/grott gmqttuser: mqtt-user gmqttpassword: *password* |
:no_upscale():strip_icc():fill(white):strip_exif()/f/image/WkdTm5HXbGZS7QWYvnEuKZ1D.jpg?f=user_large)
Het lijkt alsof de configuratie niet wordt opgeslagen in grott.ini.
Is er een andere manier om dit bestand te benaderen en dit desnoods handmatig aan te passen?
Ik heb de add-on Mosquitto broker draaien. De integratie heb ik alsvolgt geconfigureerd.
:strip_exif()/f/image/At7EeQsoU2SAFfrAYUd9B47E.jpg?f=fotoalbum_large)
De MQTT broker draait naar behoren; Van een esp lux-sensor krijg ik wel via deze mqtt-broker de waarde binnen.
Als ik Grott herstart dan blijf ik dezelfde foutmelding krijgen. Ook zie ik dat mijn aangepaste configuratie niet hetzelfde wordt weergegeven bij het laden van Grott.
:no_upscale():strip_icc():fill(white):strip_exif()/f/image/t5T6MHRYHp0X0d1ZfvNHjlUB.jpg?f=user_large)
:no_upscale():strip_icc():fill(white):strip_exif()/f/image/iwCOdtnYCH70u41mzP8rtIio.jpg?f=user_large)
Ik vind het vreemd dat de configuratie instellen niet bij het laden zo worden weergegeven.
[ Voor 23% gewijzigd door martijn2110 op 11-11-2022 15:24 ]
/f/image/hBcsNjqj4ya5vaB4FYyKygtu.png?f=fotoalbum_large)
Het geeft een nogal rommeling beeld zo, zeker als je wat uitzoomt.
Heb zojuist de docker image bijgewerkt, is dit een feature van de ShineLan-X module?
Verder valt mij op dat de total energy niet gelijk is aan het totaal van string 1 en het totaal van string 2.
Van klussen krijg je grijze haren
2 draadjes van de pinnen 3 en 4 van de COM poort naar de A en B aansluiting van een USB-rs485 stick die in de Raspberry pi gaat. Ik draai het python2 script op een Pi B+ en het python3 script op een Pi3B+.
Rechtstreekse upload in het script naar PVOutput en naar Domoticz.
De ComPoort op de Growatt,
:strip_exif()/f/image/EdvyHiwjUYKwZZ9Y5YRcRoSZ.jpg?f=fotoalbum_medium)
De stick,
:strip_exif()/f/image/2MdZJ8UdD7XwstEq2wUrhWme.jpg?f=fotoalbum_medium)
Blad van de Com poort plug aansluiting,
De python2 code, SYSTEMID, APIKEY, USBpoort, IP-Domoticz en idx aanpassen naar eigen cijfers
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
| #!/usr/bin/env python import subprocess from time import strftime import time from pymodbus.client.sync import ModbusSerialClient as ModbusClient import urllib import urllib2 # settings PVOutput SYSTEMID ="xxxx" APIKEY ="xxxxxxxxxxxxxx" t_date = format(strftime('%Y%m%d')) t_time = format(strftime('%H:%M')) pv_volts1=0.0 pv_volts2=0.0 pv_powerDC1=0.0 pv_powerDC2=0.0 pv_powerAC=0.0 pv1_ACtoday=0.0 pv2_ACtoday=0.0 Wh_total=0 current_temp=0.0 for i in range(1): # Read data from inverter inverter = ModbusClient(method='rtu', port='/dev/ttyUSB0', baudrate=9600, stopbits=1, parity='N', bytesize=8, timeout=1) inverter.connect() rr = inverter.read_input_registers(1,99) inverter.close() value=rr.registers[2] pv_volts1=pv_volts1+(float(value)/10) value=rr.registers[6] pv_volts2=pv_volts2+(float(value)/10) value=rr.registers[5] pv_powerDC1=pv_powerDC1+(float(value)/10) value=rr.registers[9] pv_powerDC2=pv_powerDC2+(float(value)/10) value=rr.registers[35] pv_powerAC=pv_powerAC+(float(value)/10) value=rr.registers[55] Wh_total=Wh_total+(float(value)*100) value=rr.registers[59] pv1_ACtoday=pv1_ACtoday+(float(value)/10) value=rr.registers[63] pv2_ACtoday=pv2_ACtoday+(float(value)/10) value=rr.registers[93] current_temp=current_temp+(float(value)/10) #sent all to PVOutput cmd=('curl -d "d=%s" -d "t=%s" -d "v1=%s" -d "v2=%s" -d "v5=%s" -d "v6=%s" -d "v7=%s" -d "v8=%s" -d "v9=%s" -d "v10=%s" -d "v11=%s" -d "v12=%s" -d "c1=1" -H \ "X-Pvoutput-Apikey: %s" -H \ "X-Pvoutput-SystemId: %s" \ http://pvoutput.org/service/r2/addstatus.jsp'\ %(t_date, t_time, Wh_total, pv_powerAC, current_temp, pv_volts1, pv_volts1, pv_volts2, pv_powerDC1, pv_powerDC2, pv1_ACtoday, pv2_ACtoday, \ APIKEY, SYSTEMID)) ret = subprocess.call(cmd, shell=True) # sent all to Domoticz urllib2.urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&nvalue=0&idx=115&svalue=' + str(pv_powerAC) + ';' + str(Wh_total)) urllib2.urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=109&nvalue=0&svalue=' + str(pv_volts1) + ';') urllib2.urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=110&nvalue=0&svalue=' + str(pv_volts2) + ';') urllib2.urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=111&nvalue=0&svalue=' + str(current_temp) + ';') urllib2.urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=112&nvalue=0&svalue=' + str(pv1_ACtoday) + ';') urllib2.urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=113&nvalue=0&svalue=' + str(pv2_ACtoday) + ';') # print all print ('pv_volts1 %s' %pv_volts1) print ('pv_volts2 %s' %pv_volts2) print ('pv_powerDC1 %s' %pv_powerDC1) print ('pv_powerDC2 %s' %pv_powerDC2) print ('pv1_ACtoday %s' %pv1_ACtoday) print ('pv2_ACtoday %s' %pv2_ACtoday) print ('pv_powerAC %s' %pv_powerAC) print ('Wh_total %s' %Wh_total) print ('current_temp %s' %current_temp) |
En de Python3 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
| #!/usr/bin/env python3 import subprocess from time import strftime import time from pymodbus.client.sync import ModbusSerialClient as ModbusClient from urllib.request import urlopen #settings PVOutput SYSTEMID ="xxxxx" APIKEY ="xxxxxxxxxxxxxxxxxxxxx" t_date =format(strftime('%Y%m%d')) t_time = format(strftime('%H:%M')) pv_volts1=0.0 pv_volts2=0.0 pv_powerDC1=0.0 pv_powerDC2=0.0 pv_powerAC=0.0 pv1_ACtoday=0.0 pv2_ACtoday=0.0 Wh_total=0 current_temp=0.0 for i in range(1): # Read data from inverter inverter = ModbusClient(method='rtu', port='/dev/ttyUSB1', baudrate=9600, stopbits=1, parity='N', bytesize=8, timeout=1) inverter.connect() rr = inverter.read_input_registers(1,99) inverter.close() value=rr.registers[2] pv_volts1=pv_volts1+(float(value)/10) value=rr.registers[6] pv_volts2=pv_volts2+(float(value)/10) value=rr.registers[5] pv_powerDC1=pv_powerDC1+(float(value)/10) value=rr.registers[9] pv_powerDC2=pv_powerDC2+(float(value)/10) value=rr.registers[35] pv_powerAC=pv_powerAC+(float(value)/10) value=rr.registers[55] Wh_total=Wh_total+(float(value)*100) value=rr.registers[59] pv1_ACtoday=pv1_ACtoday+(float(value)/10) value=rr.registers[63] pv2_ACtoday=pv2_ACtoday+(float(value)/10) value=rr.registers[93] current_temp=current_temp+(float(value)/10) # sent all to PVOutput cmd=('curl -d "d=%s" -d "t=%s" -d "v1=%s" -d "v2=%s" -d "v5=%s" -d "v6=%s" -d "v7=%s" -d "v8=%s" -d "v9=%s" -d "v10=%s" -d "v11=%s" -d "v12=%s" -d "c1=1" -H \ "X-Pvoutput-Apikey: %s" -H \ "X-Pvoutput-SystemId: %s" \ http://pvoutput.org/service/r2/addstatus.jsp'\ %(t_date, t_time, Wh_total, pv_powerAC, current_temp, pv_volts1, pv_volts1, pv_volts2, pv_powerDC1, pv_powerDC2, pv1_ACtoday, pv2_ACtoday, \ APIKEY, SYSTEMID)) ret = subprocess.call(cmd, shell=True) # sent all to Domoticz urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=103&nvalue=2&svalue=' + str(pv_powerAC) + ';' + str(Wh_total)) urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=104&nvalue=0&svalue=' + str(pv_volts1) + ';') urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=105&nvalue=0&svalue=' + str(pv_volts2) + ';') urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=106&nvalue=0&svalue=' + str(current_temp) + ';') urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=107&nvalue=0&svalue=' + str(pv1_ACtoday) + ';') urlopen ('http://192.168.0.20:8080/json.htm?type=command¶m=udevice&idx=108&nvalue=0&svalue=' + str(pv2_ACtoday) + ';') # print all #print ('pv_volts1 %s' %pv_volts1) #print ('pv_volts2 %s' %pv_volts2) #print ('pv_powerDC1 %s' %pv_powerDC1) #print ('pv_powerDC2 %s' %pv_powerDC2) #print ('pv1_ACtoday %s' %pv1_ACtoday) #print ('pv2_ACtoday %s' %pv2_ACtoday) #print ('pv_powerAC %s' %pv_powerAC) #print ('Wh_total %s' %Wh_total) #print ('current_temp %s' %current_temp) |
18950Wp🌞, Atlantic 270V3💧, Pana 5J🔥. Zendure 2400AC 11,5kWh🔋,Hyundai Kona 64kWh 🚗, Peblar Home ⛽, Maxima MPM 7L 🥐
Ik ben aan het kijken om dit toe te passen omdat de growatt server ver van betrouwbaar lijkt sinds begin feb. Er missen dagelijks enorme happen data:
/f/image/ceK9rTqQLiAQTtSNLhcGByjR.png?f=fotoalbum_large)
Zou wel graag de growatt server online houden (als backup omdat de totalen wel kloppen) en het dus naast elkaar draaien dus van wat ik begreep moet grott wel draaien anders gaat de data verloren. In de ochtend goed opstarten is dus vrij belangrijk voor de proxy manier.
De setup:
Growatt 4200TL-XE Wifi 1 Fase
Shinelink X RF
Minisforum GK50
Unraid 6.11.5
Allemaal in docker draaien:
-Domoticz beta 15143
-Mosquitto 2.0.15
-Grott 2.7.8, met output naar pvoutput en MQTT.
-Node Red 3.0.2 (met dit script
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
| var msg1 = {}; // pvstatus, Inverter run state
var msg2 = {}; // pv1watt, PV1 input watt (0.1W)
var msg3 = {}; // pv2watt, PV2 input watt (0.1W)
var msg4 = {}; // pvpowerin, Actual input power (0.1W)
var msg5 = {}; // pvpowerout, Actual output power (0.1W)
var msg6 = {}; // pvfrequentie, Grid frequency (0.01Hz)
var msg7 = {}; // pvgridvoltage, Three/single phase grid voltage (0.1V)
var msg8 = {}; // pvenergytoday, Today generated energy (0.1KWH)
var msg9 = {}; // pvenergytotal, Total generated energy (0.1KWH)
var msg10 = {}; // pv1voltage, PV1 voltage (0.1V)
var msg11 = {}; // pv2voltage, PV2 voltage (0.1V)
var msg12 = {}; // pv1current, PV1 input current (0.1A)
var msg13 = {}; // pv2current, PV2 input current (0.1A)
var msg14 = {}; // pvtemperature, Inverter temperature (0.1C)
var msg15 = {}; // pvipmtemperature, The inside IPM in inverter temperature (0.1C), be aware not available in all inverters!
var msg16 = {}; // combined values
// switch (msg.payload.values.pvstatus) {
// case 0 :
// msg1.payload = {"command":"udevice","idx":1001,"nvalue":0,"svalue": "Waiting"};
// break
//
// case 1 :
// msg1.payload = {"command":"udevice","idx":1001,"nvalue":1,"svalue": "Normal"};
// break
//
// case 2 :
// msg1.payload = {"command":"udevice","idx":1001,"nvalue":2,"svalue": "Fault"};
// break
// }
// msg2.payload = {"command":"udevice","idx":1002,"nvalue":0,"svalue":((msg.payload.values.pv1watt) / 10).toString()};
// msg3.payload = {"command":"udevice","idx":1003,"nvalue":0,"svalue":((msg.payload.values.pv2watt) / 10).toString()};
// msg4.payload = {"command":"udevice","idx":1004,"nvalue":0,"svalue":((msg.payload.values.pvpowerin) / 10).toString()};
msg5.payload = {"command":"udevice","idx":1005,"nvalue":0,"svalue":((msg.payload.values.pvpowerout) / 10).toString()};
// msg6.payload = {"command":"udevice","idx":1006,"nvalue":0,"svalue":((msg.payload.values.pvfrequentie) / 100).toString()};
// msg7.payload = {"command":"udevice","idx":1007,"nvalue":0,"svalue":((msg.payload.values.pvgridvoltage) / 10).toString()};
msg8.payload = {"command":"udevice","idx":1008,"nvalue":0,"svalue":((msg.payload.values.pvenergytoday) / 10).toString()};
// msg9.payload = {"command":"udevice","idx":1009,"nvalue":0,"svalue":((msg.payload.values.pvenergytotal) / 10).toString()};
// msg10.payload = {"command":"udevice","idx":1010,"nvalue":0,"svalue":((msg.payload.values.pv1voltage) / 10).toString()};
// msg11.payload = {"command":"udevice","idx":1011,"nvalue":0,"svalue":((msg.payload.values.pv2voltage) / 10).toString()};
// msg12.payload = {"command":"udevice","idx":1012,"nvalue":0,"svalue":((msg.payload.values.pv1current) / 10).toString()};
// msg13.payload = {"command":"udevice","idx":1013,"nvalue":0,"svalue":((msg.payload.values.pv2current) / 10).toString()};
msg14.payload = {"command":"udevice","idx":250,"nvalue":0,"svalue":((msg.payload.values.pvtemperature) / 10).toString()};
// msg15.payload = {"command":"udevice","idx":1015,"nvalue":0,"svalue":((msg.payload.values.pvipmtemperature) / 10).toString()};
msg16.payload = { "command": "udevice", "idx": 249, "nvalue": 0, "svalue": ((msg.payload.values.pvpowerout) / 10).toString() + ";" + ((msg.payload.values.pvenergytoday) * 100).toString() };
return [[msg14,msg16]];
// return [[msg1,msg2,msg3,msg4,msg5,msg6,msg7,ms8,msg9,msg10,msg11,msg12,msg13,msg14,msg15,msg16]]; |
Heb wat devices eruit "gecomment" omdat ik die toch niet gebruik.
Met dank aan Firewizard @ https://www.domoticz.com/...opic.php?p=258353#p258353 (toevoegen aan wiki!!))
Alles werkt naar behoren, geen foutmeldingen (inmiddels
Probleem is dat ik na een dagje draaien aan het einde een negatieve "spike" krijg om 0:00. Als ik die handmatig verwijder krijg ik een nieuwe om 23:00 die ik niet verwijder krijg. Zie onderstaand:
/f/image/3jxYyl0O6nlPH5FVTE5SynqK.png?f=fotoalbum_large)
Iemand ideeën?
Ik wil ook overstappen op Grott, maar ik zie even niet wat ik verkeerd doe.
Mijn omvormer: MIC 3300TL-X
Mijn docket compose file:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| version: '3.3'
services:
grott:
image: ledidobe/grott:2.8.2
container_name: grott
environment:
- gnomqtt=False
- gmqttip=172.16.1.2
- gmqttauth=True
- gmqttuser=mqtt
- gmqttpassword=mqttwachtwoord
- TZ=Europe/Amsterdam
ports:
- 5279:5279
restart: unless-stopped |
Mijn ShineLan-X settings:
/f/image/bAgyNwsCcgRwtshQN08hn2Yj.png?f=fotoalbum_large)
Grott draait, maar ik lijk helemaal geen data binnen te krijgen, ook worden de MQTT topics niet aangemaakt, iemand enig idee wat ik fout doe?
*Edit, als ik browse naar http://<IP>:5279, dan zie ik wel:
- ('172.16.1.71', 20736) has connected
Het lijkt er dus op dat mijn ShineLan-X de nieuwe settings niet oppakt, kan ik dat ding een schop geven op een of andere manier? Of gewoon wachten tot hij morgenvroeg weer wakker wordt?
*Edit2, Een reboot lijkt mijn probleem idd opgelost te hebben, ik moest dus de optie: Reboot Able hebben, lang leve vertalingen!
[ Voor 16% gewijzigd door Danielson op 11-10-2023 16:06 ]
Wat ik nu opmerk, is dat de pvenergytoday entity niet om middernacht wordt ge-reset naar nul, maar pas als de Growatt inverter weer online komt... Ofwel bij de eerste energie-productie van de de nieuwe dag.
De environment variable gmqttretain gebruik ik om de pvenergytoday entity geen status Unavailable te geven als er geen productie meer is.
Hoe zorg je ervoor dat pvenergytoday wel wordt ge-reset naar nul rond middernacht?
Zie ook onderstaande.
Op zich niet zo opmerkelijk; de laatste waarde die doorgegeven is door je monitoring device is wat ook gedurende de offline uren opgeslagen blijft.. :-) Als je een Helper aanmaakt in HA en je kiest voor een Utility meter, dan kan je een standaard reset naar 0 in de nacht uitvoeren.GiLMORE80 schreef op maandag 16 oktober 2023 @ 19:57:
Hoe zorg je ervoor dat pvenergytoday wel wordt ge-reset naar nul rond middernacht?
:fill(white):strip_exif()/f/image/IOBZNGCGW3UGIwHMWxWVJz5l.png?f=user_large)
Ik word zelf trouwens he-le-maal gek van de geweldige Growatt uitvinding die "ShineLanBox" heet. Elke paar dagen verliest ie de verbinding met het netwerk (direct met een ethernet kabel op het modem aangesloten) en moet ik door allerlei resets heen om 'm weer verbonden te krijgen (kostte me laatst een paar dagen tijd voordat ie weer aan de praat was).
1
2
3
4
| Oct 17 09:33:01 ubuntu grott[177]: <socket.socket fd=5, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('192.168.1.244', 5279), raddr=('192.168.1.240', 1032>
Oct 17 09:33:01 ubuntu grott[177]: - Data less then minimum record length, data not processed
Oct 17 09:48:04 ubuntu grott[177]: - Grott connection error
Oct 17 09:48:04 ubuntu grott[177]: - peer has disconnected |
Ik overweeg een kWh meter met Wifi, zoals deze van HomeWizard, maar als de ShineLanBox toch stabiel te krijgen is heeft dat uiteraard m'n voorkeur. Iemand soortgelijke ervaringen?
Ik heb in HA addon(volgens mij is dit de grott app) nu het volgende ingesteld, maar op een of andere manier kan hij geen verbinding maken met mijn wifi stick
foutmelding GRott in HA,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| 6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
[12:53:37] INFO: Preparing to start...
**********************************************************************************
- Grott - libscrc not installed, no CRC checking only record validation on length!
**********************************************************************************
Grott Growatt logging monitor : 2.7.8
Grott process configuration file
Grott process environmental variables
Traceback (most recent call last):
File "/app/grott.py", line 24, in <module>
Pulled 'ginvtype=MIN' from the environment
Pulled 'ginvtypemap=DCF3A3104L' from the environment
conf = Conf(verrel)
^^^^^^^^^^^^
File "/app/grottconf.py", line 97, in __init__
self.procenv()
File "/app/grottconf.py", line 435, in procenv
if os.getenv('ginvtypemap') != None : self.invtypemap = eval(self.getenv('ginvtypemap'))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 1, in <module>
NameError: name 'DCF3A3104L' is not defined
s6-rc: info: service legacy-services: stopping |
mijn omvormer is een Growatt MIN 3000 TL-XE
/f/image/3HEiLEpFzrhEfNcL2PAjF5PY.png?f=fotoalbum_large)
en ik aanpassingen doorgevoerd in de wifi stick die naar het ip adres kijkt van HA met de poort, 5279
iemand ervaring met de GROTT addon inplaats van de docker(of andere setup)?
bedankt alvast
![]() | ![]() |
MQTT heb ik al draaien voor andere doeleinden dus daar valt denk ik niet veel aan te configureren.
Wat ik so far heb gedaan: Grott add-on geinstalleerd, configuratie zoals in de screenshot, op server.growatt de WiFi dongle SET IP gedaan met mijn HA IP en port op 5279 en opgeslagen.
Toevallig met hetzelfde bezig op dit moment. Heb je 'n user aangemaakt in Homeassistant? Je hebt namelijk een user nodig om te authenticeren. Dit kan gewoon een native user zijn. Vervolgens kun je die gegevens dan weer in je grott.ini zetten:GerbenBK schreef op woensdag 25 oktober 2023 @ 17:50:
Vanwege de wonky growatt servers ook maar eens in grott gedoken. Heb alle stappen zo goed mogelijk gedaan maar loop vast op de connectie tussen grott en mqtt.
Ik draai grott in een docker op mijn synology en in de logs zie ik dat de data van de shinelanbox ontvangen wordt. Op homeassistant heb ik mqtt geinstalleerd maar die accepteert de login van grott niet:
In grott log zie ik - MQTT send failed: Connection refused: not authorised
In mqtt log zie ik: error: received null username or password for unpwd check
Ik start de docker met
code:
1 docker run -d -p 5279:5279 --restart on-failure -e gmqttip="192.168.1.7" -e gmqttuser=xxxx -e gmqttpassword=xxxxx ledidobe/grott
Kan iemand aangeven wat ik verkeerd doe?
:fill(white):strip_exif()/f/image/xWlAqB7F1VYC8wvLa1BpOnLr.png?f=user_large)
In je Home assistant kun je dan in de logging van de broker zien of 'ie kan verbinden.
Ik heb overigens niet het idee dat ik er zelf al ben, maar hoop dat morgen als er weer zon is ik meer kan zien dan nu.
[ Voor 4% gewijzigd door Thapous op 25-10-2023 20:34 ]
//Thapous
Thanks. De hele HA sectie in de Grott.ini heb je dus inderdaad helemaal niet nodig. Werkt als een speer nu. Straks de andere omvormers ook even omgooien zodat ze via de proxy lopen.Thapous schreef op donderdag 26 oktober 2023 @ 10:29:
[...]
Ik gebruik de gewone mqtt selectie, zie mijn volledige grott.ini:
https://gist.github.com/T...464b062606060ac60f4f1a2da
Ja mijn stappenplan is denk ik wat involledig en vooral gebaseerd op de vragen hier.HBO88 schreef op donderdag 26 oktober 2023 @ 11:11:
[...]
dank je, wil binnenkort zelf gaan proberen.
Maar, ik las ook dat je in je wifi stick een ip adres moet wijzigen, dat heb je ook gedaan? Omdat je daar niets over zegt in je stappenplan
Gehele stappenplan in vogelvlucht is:
1. Zorg dat de grott hebt draaien (kan in een docker container, of als service op een pi of een andere server).
2. Zorg dat je mqtt hebt draaien op home assistant (mosquitto).
3. Maak een nieuwe user aan op home assistant (deze dient voor mqtt)
3. Pas de config van grott aan met de gegevens van je mqtt server
:fill(white):strip_exif()/f/image/xWlAqB7F1VYC8wvLa1BpOnLr.png?f=user_large)
4. Pas je shine netwerk apparaat aan (in mijn geval een shineLAN):
/f/image/3Bwut1eYRof1AnlEVDcoV2jd.png?f=fotoalbum_large)
4.1 Resolve domain op OFF zetten
4.2 Server IP invoeren.
4.3: optioneel data transfer interval naar 1 zetten (default is 5)
5. Installeer via HACS grott: https://github.com/muppet3000/homeassistant-grott
6. Configureer grott als integratie (default instellingen)
7. Indien nacht of avond: wacht tot het de volgende dag is en je zonnepanelen ontwaken.
Troubleshooten:
Output van mqtt checken:
1
| mosquitto_sub -h 192.168.178.200 (vervang voor je eigen IP) -u username -t energy/growatt -P password |
Je zult een json payload zien als het goed is ingesteld.
Je kunt op deze manier controleren of er een json payload wordt verstuurd.
//Thapous
Loop een beetje tegen hetzelfde aan.HopNotch schreef op vrijdag 27 oktober 2023 @ 09:04:
[...]
Dit is wat jij zoekt
https://github.com/egguy/grott-home-assistant-add-on
voeg de repo toe onder addons en je kunt grott draaien in haOS.
Hoe is dit zo moeilijk
-----------------------------------------------------------
Add-on: Grott Beta branch (2.8) - An addon for Home Assistant to monitor Growatt inverters
The Growatt inverter monitor with current HA plugin integrated
-----------------------------------------------------------
Add-on version: 0.1.3
You are running the latest version of this add-on.
System: Debian GNU/Linux 11 (bullseye) (amd64 / qemux86-64)
Home Assistant Core: 2023.11.1
Home Assistant Supervisor: 2023.10.1
-----------------------------------------------------------
Please, share the above information when looking for help
or support in, e.g., GitHub, forums or the Discord chat.
-----------------------------------------------------------
s6-rc: info: service base-addon-banner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service base-addon-log-level: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service base-addon-log-level successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
[10:11:52] INFO: Preparing to start...
[10:11:54] ERROR: Got unexpected response from the API: Service not enabled
./script.sh: line 230: GROTT_CONFIG_MQTT_HOST: unbound variable
s6-rc: info: service legacy-services: stopping
s6-rc: info: service legacy-services successfully stopped
s6-rc: info: service legacy-cont-init: stopping
s6-rc: info: service legacy-cont-init successfully stopped
s6-rc: info: service fix-attrs: stopping
s6-rc: info: service base-addon-log-level: stopping
s6-rc: info: service base-addon-log-level successfully stopped
s6-rc: info: service fix-attrs successfully stopped
s6-rc: info: service base-addon-banner: stopping
s6-rc: info: service base-addon-banner successfully stopped
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped
/f/image/2UVnyzCdkv8m74HMLk3eQfci.png?f=fotoalbum_large)
of mis ik nu nog steeds allerlei prerequistites?
dit is de grott integratie van muppet
/f/image/oQVTIrk0uhTrqKtk9N9AiUpX.png?f=fotoalbum_large)
@HBO88 Dit is dan toch alles?
[ Voor 6% gewijzigd door paQ op 07-11-2023 10:20 ]
Ik doe niet aan bijgeloof. Dat brengt ongeluk.
like so: (?)HBO88 schreef op dinsdag 7 november 2023 @ 10:37:
[...]
Ja bij de instellingen van Grott: Enable grott MQTT "aan" zetten en Home assistan plugin "uit"
Als je eenmaal Mosquitto mqtt hebt draaien voor iets anders, hoef je daar niets meer in te stellen.
Ik doe niet aan bijgeloof. Dat brengt ongeluk.
Ik zie data online en in de appebbz schreef op dinsdag 7 november 2023 @ 13:40:
Zie data in de shinephone app?
Dan is de verbinding tussen omvormer en grott helemaal prima.
Als dat werkt, dan kun je in homeassistant via instellingen --> aparaten en diensten --> integraties --> grott --> en dan een apparaat toevoegen. Bij mij werkte die autodetect volgens mij gewoon
en krijg deze json feed uit de terminal:
/f/image/B8yEIofYDkufr94xD6GQR18P.png?f=fotoalbum_large)
Er verschijnt echter nada in Grott.
Ik doe niet aan bijgeloof. Dat brengt ongeluk.
Met die laatste bedoelde ik de grott integratie.ebbz schreef op dinsdag 7 november 2023 @ 13:53:
Wat bedole je met Grott?
Je hebt de integratie in home-assistant, maar ook de "echte" grott, dat stuk software wat de data ontvangt en doorsluist
Bedoel je dat je niets ziet in de grott-integratie?
In de grott add-on heb ik de omvormers zo geconfigureerd:
inverter mapping:
{ "RWJ0BGB037" : "default", "FWJ7CJM08G": "default" }
Daar komt eerder geposte json feed uit en data uit de log.
Lijkt me dus allemaal prima te kloppen.
In de grott integratie blijft het dit:
[ Voor 19% gewijzigd door paQ op 07-11-2023 13:56 ]
Ik doe niet aan bijgeloof. Dat brengt ongeluk.
nou, die kwam eerst via een andere broker binnen, en dat werkte feilloos.HBO88 schreef op dinsdag 7 november 2023 @ 16:22:
[...]
als het goed is zou dat moeten werken? Ik had mqtt ook gebruikt voor mijn heatbooster radiator fans, maar dat werkt ook gewoon prima.
Nu krijg ik alleen maar sensoren zonder verdere mogelijkheden
/f/image/0m1iX82gMPsOy1uqtF3Sctgh.png?f=fotoalbum_large)
/f/image/nO0Dk513oT3J2Y8aMKTic9O4.png?f=fotoalbum_large)
Ik doe niet aan bijgeloof. Dat brengt ongeluk.
:fill(white):strip_exif()/f/image/XyQ0T3JJTo9sJCL4J7pAkXAg.png?f=user_large)
behalve dat ik van de wifiX datalogger de interval niet krijg aangepast.
Ik kom via de browser niet in de datalogger, en in de app en online kan ik de optie niet vinden om de interval aan te passen. Kan dat kloppen?
Ik doe niet aan bijgeloof. Dat brengt ongeluk.
Ik heb op de datalogger ingesteld dat elke minuut een waarde moet worden verstuurd. In de praktijk krijg ik in HA elke 5 minuten een waarde binnen. Wat mis ik hier?

Hieronder de log van mosquitoo broker voor het mqtt verkeer. Hier zie je dat elke 5 minuten de waarde van Grott binnenkomt maar elke minuut gebeurt er ook iets, maar dan niet als grott? Wat is hier aan de hand?
2024-03-24 13:39:04: New connection from 172.30.33.4:59303 on port 1883.
2024-03-24 13:39:04: New client connected from 172.30.33.4:59303 as Grott - HA (p2, c1, k60, u'addons').
2024-03-24 13:39:04: Client Grott - HA disconnected.
2024-03-24 13:39:25: New connection from 172.30.32.2:55946 on port 1883.
2024-03-24 13:39:25: Client <unknown> closed its connection.
2024-03-24 13:41:25: New connection from 172.30.32.2:35958 on port 1883.
2024-03-24 13:41:25: Client <unknown> closed its connection.
2024-03-24 13:43:25: New connection from 172.30.32.2:50062 on port 1883.
2024-03-24 13:43:25: Client <unknown> closed its connection.
2024-03-24 13:44:05: New connection from 172.30.33.4:42191 on port 1883.
2024-03-24 13:44:05: New client connected from 172.30.33.4:42191 as Grott - HA (p2, c1, k60, u'addons').
2024-03-24 13:44:05: Client Grott - HA disconnected.
2024-03-24 13:45:25: New connection from 172.30.32.2:34680 on port 1883.
2024-03-24 13:45:25: Client <unknown> closed its connection.
2024-03-24 13:47:25: New connection from 172.30.32.2:57802 on port 1883.
2024-03-24 13:47:25: Client <unknown> closed its connection.
2024-03-24 13:49:06: New connection from 172.30.33.4:39449 on port 1883.
2024-03-24 13:49:06: New client connected from 172.30.33.4:39449 as Grott - HA (p2, c1, k60, u'addons').
2024-03-24 13:49:07: Client Grott - HA disconnected.
2024-03-24 13:49:25: New connection from 172.30.32.2:47370 on port 1883.
2024-03-24 13:49:25: Client <unknown> closed its connection.
2024-03-24 13:51:25: New connection from 172.30.32.2:34584 on port 1883.
2024-03-24 13:51:25: Client <unknown> closed its connection.
2024-03-24 13:53:25: New connection from 172.30.32.2:45512 on port 1883.
2024-03-24 13:53:25: Client <unknown> closed its connection.
2024-03-24 13:54:08: New connection from 172.30.33.4:33257 on port 1883.
[ Voor 88% gewijzigd door vandermark op 24-03-2024 14:36 ]
STRAVA | Panasonic 5kW J Monoblock
:strip_exif()/f/image/fjhaWKfcpjiUaB56WwTCMT8P.jpg?f=fotoalbum_large)
En waarom gaat de dagteller van 1 omvormer naar 0 om 12 uur 's nachts en de andere om 6 uur?
[ Voor 7% gewijzigd door Jimster op 24-03-2024 13:24 ]
Setup:
Growatt MIC 2000TL-X
ShineLAN-X
Grottserver versie 2.7.8 in Docker op Synlogy DS718+
Heeft vanaf oktober 23 goed gedraaid (althans probleem niet opgemerkt)
Dit is euvel dat ik waarneem in MQTT Explorer:
:no_upscale():strip_icc():fill(white):strip_exif()/f/image/LnoSOxZIPq1Nw73M43e10KKk.jpg?f=user_large)
Ook de value "buffered": verspringt steeds van "yes" naar "no". Geen idee wat dat betekent overigens. En of dat relevant is..
In de ShineLAN X staat de tijd correct.
Dit is de Grott.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
| # Specify grott monitor configuration
# Defaults are described
# Remove # and update the value to enable the setting
# Last updated: 2021-01-09
# Version 2.4.0
[Generic]
# Specify verbose for extended messaging
#verbose = True
# Specify minrecl for debugging purposes only (default = 100)
#minrecl = 100
# Specify mode (sniff or proxy)(> 2.1.0 proxy is default)
#mode = proxy
# Specify port and IP address to listen to (only proxy), default port 5279, 0.0.0.0 ==> own ip address
#ip = 0.0.0.0
#port = 5279
#port = 5781
# To blocks commands from outside (to channge inverter and shine devices settings) specify blockcmd = True,
# specify noipf = True if you still want be able to dest ip addres from growatt server
# Specify noipf = True if you still want be able to dest ip addres from growatt server (advice only to use
# this for a short time)
#blockcmd = True
#noipf = True
# Time = auto/server parameter enable/disable date/time retrieval from data record (server), default is
# auto: grott decides which time is used (data record if valid otherwise Server)
# If time = server Grott server time is alwas used
#time = auto
# Sendbuf = True / False parameter to enable / disable sending historical (buffered) data. Default is sendbuf = True.
#sendbuf = True
# Compat is True and valoffset needs to be set if offset / growatt protocol has been changed.
#compat = False
#valueoffset = 6
# Specify inverter id (not necessary in version >2.1.0 if compat = false!)
#inverterid = ABC1234567
# Decrypt is False if growatt communication is not encrypted (older inverters), (not necessary in version
# >2.1.0 if compat = false!)
#decrypt = True
[Growatt]
# Ip address and port of Growatt server (specify only if IP has changed)
ip = localhost
#port = 5279
port = 5781
[MQTT]
# Mqtt parameters definitions
# Be aware nomqtt = True means no MQTT processing will be done!!!!!!
nomqtt = False
ip = 192.168.1.18
port = 1883
topic= energy/growatt
#auth = False
#user = grott
#password = growatt2020
[PVOutput]
# PVOutput parameters definitions
pvoutput = True
pvuplimit = 5
apikey = xxxxxxxxxxxxxxxx
# Use this if you have one inverter
systemid = xxxxxxx
pvtemp = True
#[influx]
# Influxdb parameters definitions V1
#influx = True
#ip = 192.168.1.18
#port = 8086
#dbname = grottdb
[influx]
# Influxdb parameters definitions V2
influx = true
influx2 = true
ip = 192.168.1.18
port = 8087
user = xxxxxxxxx
password = xxxxxx
token = xxxxxxxxxxxxx
org = xxxxxxxxxxxxx
bucket = Grott
[extension]
# grott extension parameters definitions
#extension = True
#extname = grottext
#extvar = {"var1": "var1_content", "var2": "var2_content"
TZ = Europe/Amsterdam |
Iemand een idee hoe dit euvel op te lossen?
Bij voorbaat dank!
Panasonic K-series split 9 kW, gasloos sinds dec 23 | Tesla MY LR | PV 9,6 kWp | 2 x Zendure SF 2400 AC, 17.280 kWh
Ik heb hem geblokkeerd op de firewall, maar dat lijkt ook niet te werken.Tazzz schreef op dinsdag 16 juli 2024 @ 14:24:
Hey, ik heb inderdaad precies hetzelfde...
[ Voor 29% gewijzigd door Sharky op 16-07-2024 15:30 ]
This too shall pass
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
| Grott settings:
:
version: 2.8.2
verbose: True
trace: False
config file: grott.ini
minrecl: 100
decrypt: True
compat: False
invtype: default
invtypemap: {}
include_all: False
blockcmd: False
noipf: False
time: server
sendbuf: True
timezone: local
valueoffset: 6
offset: 6
inverterid: automatic
mode: proxy
grottip default
grottport 5279
_MQTT:
nomqtt False
mqttip: 172.16.1.2
mqttport: 1883
mqtttopic: energy/growatt
mqttmtopic: False
mqttmtopicname: energy/meter
mqttinverterintopic: False
mqtttretain: False
mqtttauth: True
mqttuser: mqtt
mqttpsw:
_Growatt server:
growattip: 8.209.71.240
growattport: 5279
_PVOutput:
pvoutput: False
pvdisv1: False
pvtemp: False
pvurl: https://pvoutput.org/service/r2/addstatus.jsp
pvapikey: yourapikey
pvinverters: 1
pvsystemid: systemid1
_Influxdb:
influx: False
influx2: False
database: grottdb
ip: localhost
port: 8086
user: grott
password: **secret**
organization: grottorg
bucket: grottdb
token: **secret**
_Extension:
extension: False
extname: grottext
extvar: {'none': 'none'}
Grott proxy mode started
Hostname : 6b0890b077a2
IP : 192.168.224.2 , port : 5279 |
:fill(white):strip_exif()/f/image/Zl03SkEw3zwRBI4tUDbys3qu.png?f=user_large)
Grot lijkt helemaal niets binnen te krijgen vanaf de omvormer, de log blijft stil...
blockcmd: False --> True
Overigens was het bij gisteren direct gefixt na 1 keer dit aan te passen via de UI van de addon:

Mijn grott.ini is overigens helemaal leeg.
Ik zie even niet wát ik nou daadwerkelijk moet aanpassen om het werkend te krijgen.
Daarnaast kreeg ik voorheen het systeem wel 'online' en de shinephone app werkend als ik alles weer 'terug' naar growatt.server.com verwees maar dat lijkt nu ook niet te werken.
Wat zie ik hier over het hoofd?
![]() |
[ Voor 37% gewijzigd door TTROX op 23-07-2024 20:33 ]
Enschede | 6720wp JinkoSolar 16x420 Z 47°
Ja en nee, er waren verschillende die delen hadden van wat ik nodig had. en die heb ik vervolgens samengebracht tot hetgeen dat ik heb draaien.TTROX schreef op woensdag 24 juli 2024 @ 20:43:
'k heb mij er ook wel eens (kort) in verdiept, toevallig ergens een goede tutorial of walktrough gevonden?
Onderstaand heb ik aangesloten op een Growatt MIN 4200TL
Ik gebruik de volgende hardware:
d1-mini
TTL to RS485 bordje
utpkabel
modbus stekker van de omvormer (wordt erbij geleverd als je die niet hebt weggegooid)
aansluiting d1-mini op ttl bord
D1mini - TTL
D2 - DE én RE
TX - DI
RX - RO
GND - GND
5V - VVC
Zie onderstaand de modbus stekker + de A en B poorten.
/f/image/qIeQO1HtIO44uP4AHQw9PMbM.png?f=fotoalbum_large)
Vervolgens heb je nog esphome:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
| ---
esphome:
name: growatt_inverter
friendly_name: Growatt inverter
esp8266:
board: d1_mini
# WiFi connection, correct these
# with values for your WiFi.
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
ap:
ssid: "Growatt inv fallback hotspot"
password: !secret wifi_ap_password
captive_portal:
# Enable logging.
logger:
baud_rate: 0
# Enable Home Assistant API.
api:
encryption:
key: !secret api_password
# Enable over-the-air updates.
ota:
platform: esphome
password: !secret ota_password
# Enable Web server.
#web_server:
# port: 80
# Sync time with Home Assistant.
time:
- platform: homeassistant
id: homeassistant_time
# Text sensors with general information.
text_sensor:
# Expose ESPHome version as sensor.
- platform: version
name: ESPHome Version
# Expose WiFi information as sensors.
- platform: wifi_info
ip_address:
name: IP
ssid:
name: SSID
bssid:
name: BSSID
# Exposed buttons.
button:
# Button to restart the inverterfan.
- platform: restart
name: Restart
uart:
- id: gw_uart
baud_rate: 9600
tx_pin: GPIO1
rx_pin: GPIO3
modbus:
uart_id: gw_uart
id: gw_modbus
flow_control_pin: GPIO4
modbus_controller:
- id: gw_modbus_c
address: 0x1
modbus_id: gw_modbus
setup_priority: -10
sensor:
# Sensors with general information.
# Uptime sensor.
- platform: uptime
name: Uptime
# WiFi Signal sensor.
- platform: wifi_signal
name: WiFi Signal
update_interval: 60s
# Sensors with project specific information
- platform: growatt_solar
update_interval: 10s
protocol_version: RTU2
inverter_status:
name: Status Code
phase_a:
voltage:
name: Voltage Phase A
current:
name: Current Phase A
active_power:
name: Power Phase A
pv1:
voltage:
name: PV1 Voltage
current:
name: PV1 Current
active_power:
name: PV1 Active Power
pv2:
voltage:
name: PV2 Voltage
current:
name: PV2 Current
active_power:
name: PV2 Active Power
active_power:
name: Grid Active Power
pv_active_power:
name: PV Active Power
frequency:
name: Frequency
energy_production_day:
name: Today's Generation
total_energy_production:
name: Total Energy Production
inverter_module_temp:
name: Module Temp
icon: mdi:thermometer
- platform: modbus_controller
address: 94
name: IPM temp
register_type: read
value_type: U_WORD
unit_of_measurement: "°C"
icon: mdi:thermometer
accuracy_decimals: 1
filters:
- multiply: 0.1
number:
- platform: modbus_controller
name: Max Output Power
address: 3
value_type: U_WORD
min_value: 0
max_value: 100
entity_category: config |
Number 100 is 100% open 0 is 0% omvormer helemaal dicht zetten.
Ik heb sinds een week ook zonnepanelen liggen icm een Growatt MIN 2500-6000TL-XH omvormer. De omvormer is dmv een Shine Link LANbox met internet verbonden.
Nu wil ik graag zo veel mogelijk data aan mijn HomeAssistant setup voeden, maar wat ik ook probeer de data update frequentie ligt laag (meerdere uren tussen nieuwe data punten).
Vandaar dat ik Grott weer even heb uitgezet en eerst begin bij de basis. Hoeveel data punten zien jullie in de Growatt online omgeving?
Ik zag gisteren bijvoorbeeld maar 8 punten:
TheMenace8 schreef op zondag 1 september 2024 @ 11:08:
Hoeveel data punten zien jullie in de Growatt online omgeving?
![]() |
Om de 5 minuten heb zie ik een datapunt in de growatt online omgeving.
In de settings van Growatt ShineLan-X heb ik de 'Data Transfer Interval' op 1 minuut staan en de Shinephone app krijgt om de minuut een update.
Enschede | 6720wp JinkoSolar 16x420 Z 47°

Kan de Egguy addon hierop worden aangepast? Nu moet ik elke keer na een herstart de uitschieters verwijderen.
[ Voor 12% gewijzigd door vandermark op 21-01-2025 11:05 ]
STRAVA | Panasonic 5kW J Monoblock
Weet iemand of dit normaal is?
Ik gebruik deze combi. Growatt Shinelink en ShineLan ->GROTT->InfluxDB -> Grafana. Alles draait in een docker omgeving, TZ = Europe/Amsterdam. Tijd lijkt goed te lopen. Timestamp 09:30
Logging in GROTT:
:strip_exif()/f/image/zTqzTRL9SrqE5SAQtAzR7zVs.jpg?f=fotoalbum_large)
Logging in Growatt web
:strip_exif()/f/image/filE2k8tbIsaAzdDuk4NxHa4.jpg?f=fotoalbum_large)
Grafana data uit InfluxDB
Ok ik zie dat ik de verkeerde waarde gebruikt voor actuele output waarde van de Growatt omvormertimbak02 schreef op maandag 3 februari 2025 @ 10:07:
Hallo allemaal, sinds kort gebruikt ik ook GROTT om data naar mijn lokale "store" sturen. Ik merk op dat er een latency zit in de data die naar, in mijn geval influxdb wordt gestuurd.
Weet iemand of dit normaal is?
Grafana data uit InfluxDB
[Afbeelding]
"epv1today" -> pvpowerout
hier is de command-log:
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
| - Grottserver - Version: 0.0.14e
- GrottHttpserver - Ready to listen at: 0.0.0.0:5782
- Grottserver - Ready to listen at: 0.0.0.0:5781
- GrottHttpserver - server listening
- GrottHttpserver - Response interval wait time: 0.5
- GrottHttpserver - Datalogger ResponseWait: 5
- GrottHttpserver - Inverter ResponseWait: 10
- Grottserver - server listening
- Grottserver - Socket connection received from ('127.0.0.1', 47594)
- Grottserver - Send queue created for : 127.0.0.1_47594
- Grottserver - input received: <socket.socket fd=4, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('0.0.0.0', 5781)>
- Grottserver - Data received from : 127.0.0.1:47594
- Grottserver - Original Data:
\x00\x01\x00\x02\x00\x0c\x01\x16\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43
- Grottserver - Plain record:
00010002000c011659555a30383139323043
- Grottserver - 16 - Ping response:
\x00\x01\x00\x02\x00\x0c\x01\x16\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43
- Grottserver - Datalogger id added by Ping: {'ip': '127.0.0.1', 'port': 47594, 'protocol': '02'}
- Grottserver - Put response on queue: 127.0.0.1_47594 msg:
\x00\x01\x00\x02\x00\x0c\x01\x16\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43
- Grottserver - get response from queue: 127.0.0.1_47594 msg:
\x00\x01\x00\x02\x00\x0c\x01\x16\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43
- Grottserver - Data received from : 127.0.0.1:47594
- Grottserver - Original Data:
\x00\x01\x00\x02\x00\xd9\x01\x04\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x34
\x46\x5a\x47\x38\x32\x31\x30\x33\x37\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00
\x2c\x00\x01\x00\x00\x03\xff\x0b\x09\x00\x00\x00\x00\x01\x1a\x0b\x0a\x00\x02
\x00\x00\x02\xe5\x00\x00\x03\xe9\x13\x89\x08\xeb\x00\x04\x00\x00\x03\xf8\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x35
\x00\x05\x52\x48\x0b\x79\x17\x1a\x01\x37\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x01\x85\x0e\x00\x00\x00\x00\x00\x00\x2d\x00\x59
\x4e\x20\x00\x00\x00\x00\x00\x00\x00\x98\x00\x02\x8a\x91\x00\x00\x00\x9f\x00
\x02\xd0\x60\x00\x05\x5a\xf1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
- Grottserver - Plain record:
0001000200d9010459555a3038313932304334465a47383231303337000000000000020000002
c0001000003ff0b0900000000011a0b0a0002000002e5000003e9138908eb0004000003f80000
000000000000000000000000000000000135000552480b79171a0137000000000000000000000
0000000000001850e0000000000002d00594e20000000000000009800028a910000009f0002d0
6000055af10000000000000000000000000000000000020000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000
- Grottserver - 0104 data record received
- Grottserver - Response:
\x00\x01\x00\x02\x00\x03\x01\x04\x00
- Grottserver - Put response on queue: 127.0.0.1_47594 msg:
\x00\x01\x00\x02\x00\x03\x01\x04\x00
- Grottserver - get response from queue: 127.0.0.1_47594 msg:
\x00\x01\x00\x02\x00\x03\x01\x04\x00
- Grotthttpserver - Get received
- Grotthttpserver - datalogger get received : {}
192.168.50.19 - - [02/May/2025 20:26:55] "GET /datalogger HTTP/1.1" 200 -
- Grotthttpserver - http response send: 200 text/html b'{"YUZ081920C": {"ip": "127.0.0.1", "port": 47594, "protocol": "02"}}'
- Grotthttpserver - Get received
192.168.50.19 - - [02/May/2025 20:26:55] "GET /favicon.ico HTTP/1.1" 200 -
- Grotthttpserver - http response send: 200 text/html b'<h2>Welcome to Grott the growatt inverter monitor</h2><br><h3>Made by Ledidobe, Johan Meijer</h3>'
- Grotthttpserver - Get received
- Grotthttpserver - inverter get received : {}
192.168.50.19 - - [02/May/2025 20:27:26] "GET /inverter HTTP/1.1" 200 -
- Grotthttpserver - http response send: 200 text/html b'{"YUZ081920C": {"ip": "127.0.0.1", "port": 47594, "protocol": "02"}}'
- Grotthttpserver - Get received
192.168.50.19 - - [02/May/2025 20:27:26] "GET /favicon.ico HTTP/1.1" 200 -
- Grotthttpserver - http response send: 200 text/html b'<h2>Welcome to Grott the growatt inverter monitor</h2><br><h3>Made by Ledidobe, Johan Meijer</h3>'
- Grottserver - Data received from : 127.0.0.1:47594
- Grottserver - Original Data:
\x00\x01\x00\x02\x00\xd9\x01\x04\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x34
\x46\x5a\x47\x38\x32\x |
hier de printcsreens van de datalogger + inverter calls:
:strip_exif()/f/image/IuL3yu6XqgvbKv00QYCdiCt6.jpg?f=fotoalbum_large)
:strip_exif()/f/image/cGSkO9r2QWiY78RFf1wYqZ2x.jpg?f=fotoalbum_large)
hopelijk ben je hier al iets mee...
Ik heb nu eens de inverter uitgeschakeld, de server gestart, grott gestart en nadien de inverter terug opgestart... wat blijkt:Johan_meijer schreef op zondag 4 mei 2025 @ 13:13:
Ok! Ik zie denk ik de reden.
De 02 in layout geeft het protocol aan (wel of niet encrypted, extend layout of niet etc).
Dit is een redelijk oud protocol (bij mij is dit in de loop van de jaren door firmware upgrades van de datalogger via 05 naar 06 gegaan),
In principe kan Grott hiermee omgaan. Ik was er alleen niet bewust van dat ook bij de opstart de communicatie stroom mogelijk anders was (dus grottserver mist de inverter initialisatie).
Normaal komen er een paar pings (de 16), een inverter initialisatie record (03 en soms ook voor andere devices zoals de smart meter) en dan komt pas de datastroom op gang (04).
Dat lijkt bij jou anders. Dat geeft niet maar daar moet Grott wel voor worden aangepast.
Zou je een stukje log kunnen sturen van het gedeelte dat Grott is opgestart en dat je inverter "aan" (dus bv Grott starten en dan pas de inverter aanzetten als dat kan). Dan kan ik dat aanpassen in de Grott communicatie stroom voor het 02 protocol.
Ik hoop dat ik duidelijk genoeg ben. Je mag het sturen naar grott@ledidobe.nl.
0103 en 0104 komen binnen.
ook grottserver rapporteert nu een inverternummer.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
| Grott proxy mode started
Hostname : SmartApplianceEnabler
IP : 127.0.1.1 , port : 5279
- ('192.168.50.19', 6907) has connected
- Growatt packet received:
<socket.socket fd=5, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('127.0.0.1', 38220), raddr=('127.0.0.1', 5781)>
- Growatt command block checking started
- Data less then minimum record length, data not processed
- Growatt packet received:
<socket.socket fd=6, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('192.168.50.42', 5279), raddr=('192.168.50.19', 6907)>
- Growatt command block checking started
- Data less then minimum record length, data not processed
- Growatt packet received:
<socket.socket fd=5, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('127.0.0.1', 38220), raddr=('127.0.0.1', 5781)>
- Growatt command block checking started
- Growatt original Data:
\x00\x01\x00\x02\x00\xd9\x01\x03\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x34
\x46\x5a\x47\x38\x32\x31\x30\x33\x37\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00
\x2c\x01\x01\x00\x01\x00\x00\x00\x64\x00\x64\x27\x10\x00\x00\xb3\xb0\x0e\x10
\x41\x48\x31\x2e\x30\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x04\x03\xe8\x00
\x1e\x07\x44\x0a\x46\x12\x91\x14\x1e\x34\x46\x5a\x47\x38\x32\x31\x30\x33\x37
\x00\x10\xf1\x51\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x07\x35\x0a\x46\x12
\x91\x13\x99\x07\x9e\x09\xe2\x12\x93\x13\x8d\x00\xd2\x02\x01\x00\x2d\x00\x59
\x07\xe9\x00\x05\x00\x04\x00\x0d\x00\x0b\x00\x16\x03\xe8\x03\xe8\x03\xe8\x03
\xe8\x03\xe8\x03\xe8\x03\xe8\x03\xe8\x47\x72\x6f\x77\x61\x74\x74\x20\x49\x6e
\x76\x65\x72\x74\x65\x72\x61\x68\x62\x61\x31\x34\x31\x32\x00\x00\x00\x00\x01
\x31\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x13\x9c\x00\xc8
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
- Grott automatic protocol detection
- Grott data record length 223
- layout : T020103
- no matching record layout found, try generic
- Record layout used : T020103
- Growatt data decrypted V2
- Grott Growatt data decrypted
- Growatt plain data:
0001000200d901031e27354759454d75422c43272e337f405e4752437447726f7761767447724
37660747547726f1361105357726fc4d17a64063a5e5951747447726f7761747547766c9f616a
7303782965f0606a733435305946457741587771852547736f7761747447726f70547e3255e37
cee66ea7da560fc64ec74a645736f5a612d73ae726a7765747947796f61629c77af7187748977
9c449a6c9f629c33351d18161500540e1c19121300113513071500454076406f7761747576726
f7760747447726f776174744661f377a9747447726f7761747447726f7761
- Grott data ack record or data record not defined no processing done
- Growatt packet received:
<socket.socket fd=6, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('192.168.50.42', 5279), raddr=('192.168.50.19', 6907)>
- Growatt command block checking started
- Data less then minimum record length, data not processed
- Growatt packet received:
<socket.socket fd=6, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('192.168.50.42', 5279), raddr=('192.168.50.19', 6907)>
- Growatt command block checking started
- Grott: Shine Configure command detected
- Grott: Record blocked: 0118
\x00\x01\x00\x02\x00\x23\x01\x18\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x00
\x1f\x00\x13\x32\x30\x32\x35\x2d\x30\x35\x2d\x30\x34\x20\x31\x35\x3a\x32\x35
\x3a\x32\x33
- Growatt packet received:
<socket.socket fd=5, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('127.0.0.1', 38220), raddr=('127.0.0.1', 5781)>
- Growatt command block checking started
- Growatt original Data:
\x00\x01\x00\x02\x00\xd9\x01\x04\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x34
\x46\x5a\x47\x38\x32\x31\x30\x33\x37\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00
\x2c\x00\x00\x00\x00\x00\x00\x0d\xac\x00\x00\x00\x00\x00\x00\x0d\xd6\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x13\x88\x08\xf4\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x77
\x00\x05\x53\x81\x0b\x7b\xbc\x32\x01\x53\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x01\x86\x0e\x0a\x00\x00\x00\x00\x00\x2d\x00\x59
\x4e\x20\x00\x00\x00\x00\x00\x00\x00\x39\x00\x02\x8b\x28\x00\x00\x00\x3f\x00
\x02\xd1\x05\x00\x05\x5c\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
- Grott automatic protocol detection
- Grott data record length 223
- layout : T020104
- no matching record layout found, try generic
- Record layout used : T02NNNN
- Grott Growatt unencrypted data used
- Growatt plain data:
0001000200d9010459555a3038313932304334465a47383231303337000000000000020000002
c0000000000000dac0000000000000dd600000000000000000000138808f40000000000000000
000000000000000000000000000000000077000553810b7bbc320153000000000000000000000
0000000000001860e0a00000000002d00594e20000000000000003900028b280000003f0002d1
0500055c2d0000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000
- Growatt new layout processing
- decrypt : False
- offset : 6
- record layout : T02NNNN
- Grott data record date/time processing started
- no or no valid time/date found, grott server time will be used (buffer records not sent!)
- Grott values retrieved:
- datalogserial : YUZ081920C
- pvserial : 4FZG821037
- pvstatus : 0
- pvpowerin : 0.0
- pv1voltage : 350.0
- pv1current : 0.0
- pv1watt : 0.0
- pv2voltage : 354.2
- pv2current : 0.0
- pv2watt : 0.0
- pvpowerout : 0.0
- pvfrequentie : 50.0
- pvgridvoltage : 229.2
- pvgridcurrent : 0.0
- pvgridpower : 0.0
- pvgridvoltage2 : 0.0
- pvgridcurrent2 : 0.0
- pvgridpower2 : 0.0
- pvgridvoltage3 : 0.0
- pvgridcurrent3 : 0.0
- pvgridpower3 : 0.0
- pvenergytoday : 11.9
- pvenergytotal : 34905.7
- totworktime : 26758.1
- pvtemperature : 33.9
- pvipmtemperature : 39.0
- epv1today : 5.7
- epv1total : 16669.6
- epv2today : 6.3
- epv2total : 18458.1
- epvtotal : 35127.7
- MQTT jsonmsg:
{"device": "4FZG821037", "time": "2025-05-04T15:25:29", "buffered": "no",
"values": {"datalogserial": "YUZ081920C", "pvserial": "4FZG821037",
"pvstatus": 0, "pvpowerin": 0, "pv1voltage": 3500, "pv1current": 0,
"pv1watt": 0, "pv2voltage": 3542, "pv2current": 0, "pv2watt": 0,
"pvpowerout": 0, "pvfrequentie": 5000, "pvgridvoltage": 2292,
"pvgridcurrent": 0, "pvgridpower": 0, "pvgridvoltage2": 0, "pvgridcurrent2":
0, "pvgridpower2": 0, "pvgridvoltage3": 0, "pvgridcurrent3": 0,
"pvgridpower3": 0, "pvenergytoday": 119, "pvenergytotal": 349057,
"totworktime": 192658482, "pvtemperature": 339, "pvipmtemperature": 390,
"epv1today": 57, "epv1total": 166696, "epv2today": 63, "epv2total": 184581,
"epvtotal": 351277}}
- Grott MQTT topic used : energy/growatt
- MQTT message message sent
- Grott Send data to PVOutput disabled
- Grott Send data to Influx disabled
- Grott extension processing disabled |
als ik dan de datalogger en inverter oproep krijg ik volgende data. ziet dit er goed uit?
op beide calls dezelfde data?
:strip_exif()/f/image/fJorfGSDujKBMBjsBW4eXupC.jpg?f=fotoalbum_large)
:strip_exif()/f/image/uvYLIYW10RU8qYut4XiBFzYe.jpg?f=fotoalbum_large)
een get api-call op register 3 van de inverter geeft wel nog steeds een fout.
:strip_exif()/f/image/a4HOxt2BhzBp5Nn60aYIL9sk.jpg?f=fotoalbum_large)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
| - Grotthttpserver - Get received
- Grotthttpserver - inverter get received : {'command': ['register'], 'register': ['3'], 'inverter': ['4FZG821037'], 'format': ['dec']}
- Grotthttpserver: get command: register
- Grotthttpserver: selected deviceid : 01
- Grotthttpserver - unencrypted get command:
\x00\x01\x00\x02\x00\x10\x01\x05\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x00
\x03\x00\x03
- Grotthttpserver: Get command created :
\x00\x01\x00\x02\x00\x10\x01\x05\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x00
\x03\x00\x03
- Grotthttpserver - wait for GET response
- Grottserver - get response from queue: 127.0.0.1_38220 msg:
\x00\x01\x00\x02\x00\x10\x01\x05\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x00
\x03\x00\x03
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
- Grotthttpserver - wait for GET response
192.168.50.26 - - [04/May/2025 15:53:33] "GET /inverter?command=register®ister=3&inverter=4FZG821037&format=dec HTTP/1.1" 400 -
- Grotthttpserver - http response send: 400 text/body b'no or invalid response received'
- Grottserver - Data received from : 127.0.0.1:38220
- Grottserver - Original Data:
\x00\x01\x00\x02\x00\xd9\x01\x04\x59\x55\x5a\x30\x38\x31\x39\x32\x30\x43\x34
\x46\x5a\x47\x38\x32\x31\x30\x33\x37\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00
\x2c\x00\x01\x00\x00\x27\x74\x0c\x03\x00\x0f\x00\x00\x12\x66\x0c\x0b\x00\x11
\x00\x00\x15\x0e\x00\x00\x26\xab\x13\x87\x09\x0c\x00\x2a\x00\x00\x26\xba\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e
\x00\x05\x53\x88\x0b\x7b\xc9\x80\x01\x65\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x01\x8f\x0e\x00\x00\x00\x00\x00\x00\x2d\x00\x59
\x4e\x20\x00\x00\x00\x00\x00\x00\x00\x3c\x00\x02\x8b\x2b\x00\x00\x00\x42\x00
\x02\xd1\x08\x00\x05\x5c\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
- Grottserver - Plain record:
0001000200d9010459555a3038313932304334465a47383231303337000000000000020000002
c0001000027740c03000f000012660c0b00110000150e000026ab1387090c002a000026ba0000
00000000000000000000000000000000007e000553880b7bc9800165000000000000000000000
00000000000018f0e0000000000002d00594e20000000000000003c00028b2b000000420002d1
0800055c330000000000000000000000000000000000150000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000 |
Ik heb een ShineLAN module met een RS232 aansluiting.
Ik kan naar de webinterface van deze module gaan via het IP ervan en login admin|admin.
Maar mijn opties zijn blijkbaar iets beperkter dan de andere screenshots die ik tegenkom.
/f/image/chFT49kdQZ8hZOoRXAFxaUR3.png?f=fotoalbum_large)
Als ik het IP via server.growatt.com > data logger settings aanpas, heb ik hetzelfde probleem.
Het lukt het me ook niet om het IP van de lokale grott proxy te gebruiken.
:strip_exif()/f/image/MP7jpqoLMYCxMTuOMxmVG7l3.png?f=user_large)
Dit komt zelfs niet in de logs van grott tevoorschijn.
Maar als ik de poort test via Powershell, zie ik dit wel in de logs.
:strip_exif()/f/image/diO2B7tG4wUpspzKwLwYtlki.png?f=user_large)
:strip_exif()/f/image/wWIq5NLDHEvwfFCikHi5hxY7.png?f=user_large)
Dit zijn de parameters van grott:
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
| version: 2.7.8
verbose: True
trace: False
config file: grott.ini
minrecl: 100
decrypt: True
compat: False
invtype: default
invtypemap: {}
include_all: False
blockcmd: False
noipf: False
time: auto
sendbuf: True
timezone: local
valueoffset: 6
offset: 6
inverterid: automatic
mode: proxy
grottip default
grottport 5279
_MQTT:
nomqtt False
mqttip: 192.168.10.3
mqttport: 1883
mqtttopic: energy/growatt
mqttmtopic: False
mqttmtopicname: energy/meter
mqttinverterintopic: False
mqtttretain: False
mqtttauth: False
mqttuser: grott
mqttpsw: **secret**
_Growatt server:
growattip: 47.91.67.66
growattport: 5279
_PVOutput:
pvoutput: False
pvdisv1: False
pvtemp: False
pvurl: https://pvoutput.org/service/r2/addstatus.jsp
pvapikey: yourapikey
pvinverters: 1
pvsystemid: systemid1
_Influxdb:
influx: False
influx2: False
database: grottdb
ip: localhost
port: 8086
user: grott
password: **secret**
organization: grottorg
bucket: grottdb
token: **secret**
_Extension:
extension: False
extname: grottext
extvar: {'none': 'none'} |
BE | 3x Marstek Venus 5.12kwh V151 + CT003 V114 3-fase | PV Omvormer Growatt 5500MTL-S
@corsat bij de instellingen van de addon (zie ook https://www.home-assistant.io/integrations/mqtt/)corsat schreef op donderdag 23 oktober 2025 @ 08:49:
Goede vraag over de mqtt, moet eerst even uitzoeken hoe deze aangezet moet worden.
De refresh tijd kan je evt aanpassen met command (in bijv postman)
PUT http://[your-ip]:5782/datalogger?command=register®ister=4&datalogger=[datalogger-id]&value=0.1
[ Voor 12% gewijzigd door gerjanvdb op 23-10-2025 16:20 ]
Oke, mocht je wat logs hebben, dan kan ik altijd even meekijken evt. Wellicht werkt de versie van mijn repo dan ook wel daarna. Heb nog wel een build error gefixed (een collega heeft deze nu ook draaien)corsat schreef op maandag 3 november 2025 @ 18:26:
Ik heb deze versie nu geïnstalleerd en gestart maar ergens staat er nog iets niet goed blijkbaar. De grottserver start wel maar er lijkt geen communicatie te zijn. Heb deze week weer wat tijd om eea na te lopen.
@corsat ik verwacht dat de datalogger nog niet het juiste IP adres heeft van HA. Wellicht kan je dat bij de server domain kan invullen (en misschien de datalogger rebooten), zie:
[ Voor 32% gewijzigd door gerjanvdb op 05-11-2025 13:29 ]
Ik heb sinds 7:42 op 22 december in 1 keer geen registratie meer via Grott.
Krijg een error van Cloudflare in de historie van Grott.
HA versie: 2025.12.4
Grott versie: 2.8.3
/f/image/Ciw8VQdFx9NpUQzzRiPKJZSI.png?f=fotoalbum_large)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
| <!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en-US"> <![endif]-->
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en-US"> <![endif]-->
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en-US"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en-US"> <!--<![endif]-->
<head>
<title>link | 524: A timeout occurred</title>
<meta charset="UTF-8" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<meta name="robots" content="noindex, nofollow" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<link rel="stylesheet" id="cf_styles-css" href="/cdn-cgi/styles/main.css" />
</head>
<body>
<div id="cf-wrapper">
<div id="cf-error-details" class="p-0">
<header class="mx-auto pt-10 lg:pt-6 lg:px-8 w-240 lg:w-full mb-8">
<h1 class="inline-block sm:block sm:mb-2 font-light text-60 lg:text-4xl text-black-dark leading-tight mr-2">
<span class="inline-block">A timeout occurred</span>
<span class="code-label">Error code 524</span>
</h1>
<div>
Visit <a href="https://www.cloudflare.com/5xx-error-landing?utm_source=errorcode_524&utm_campaign=link" target="_blank" rel="noopener noreferrer">cloudflare.com</a> for more information.
</div>
<div class="mt-3">2025-12-26 14:52:12 UTC</div>
</header>
<div class="my-8 bg-gradient-gray">
<div class="w-240 lg:w-full mx-auto">
<div class="clearfix md:px-8">
<div id="cf-browser-status" class=" relative w-1/3 md:w-full py-15 md:p-0 md:py-8 md:text-left md:border-solid md:border-0 md:border-b md:border-gray-400 overflow-hidden float-left md:float-none text-center">
<div class="relative mb-10 md:m-0">
<span class="cf-icon-browser block md:hidden h-20 bg-center bg-no-repeat"></span>
<span class="cf-icon-ok w-12 h-12 absolute left-1/2 md:left-auto md:right-0 md:top-0 -ml-6 -bottom-4"></span>
</div>
<span class="md:block w-full truncate">You</span>
<h3 class="md:inline-block mt-3 md:mt-0 text-2xl text-gray-600 font-light leading-1.3">
Browser
</h3>
<span class="leading-1.3 text-2xl text-green-success">Working</span>
</div>
<div id="cf-cloudflare-status" class=" relative w-1/3 md:w-full py-15 md:p-0 md:py-8 md:text-left md:border-solid md:border-0 md:border-b md:border-gray-400 overflow-hidden float-left md:float-none text-center">
<div class="relative mb-10 md:m-0">
<a href="https://www.cloudflare.com/5xx-error-landing?utm_source=errorcode_524&utm_campaign=link" target="_blank" rel="noopener noreferrer">
<span class="cf-icon-cloud block md:hidden h-20 bg-center bg-no-repeat"></span>
<span class="cf-icon-ok w-12 h-12 absolute left-1/2 md:left-auto md:right-0 md:top-0 -ml-6 -bottom-4"></span>
</a>
</div>
<span class="md:block w-full truncate">Amsterdam</span>
<h3 class="md:inline-block mt-3 md:mt-0 text-2xl text-gray-600 font-light leading-1.3">
<a href="https://www.cloudflare.com/5xx-error-landing?utm_source=errorcode_524&utm_campaign=link" target="_blank" rel="noopener noreferrer">
Cloudflare
</a>
</h3>
<span class="leading-1.3 text-2xl text-green-success">Working</span>
</div>
<div id="cf-host-status" class="cf-error-source relative w-1/3 md:w-full py-15 md:p-0 md:py-8 md:text-left md:border-solid md:border-0 md:border-b md:border-gray-400 overflow-hidden float-left md:float-none text-center">
<div class="relative mb-10 md:m-0">
<span class="cf-icon-server block md:hidden h-20 bg-center bg-no-repeat"></span>
<span class="cf-icon-error w-12 h-12 absolute left-1/2 md:left-auto md:right-0 md:top-0 -ml-6 -bottom-4"></span>
</div>
<span class="md:block w-full truncate">link</span>
<h3 class="md:inline-block mt-3 md:mt-0 text-2xl text-gray-600 font-light leading-1.3">
Host
</h3>
<span class="leading-1.3 text-2xl text-red-error">Error</span>
</div>
</div>
</div>
</div>
<div class="w-240 lg:w-full mx-auto mb-8 lg:px-8">
<div class="clearfix">
<div class="w-1/2 md:w-full float-left pr-6 md:pb-10 md:pr-0 leading-relaxed">
<h2 class="text-3xl font-normal leading-1.3 mb-4">What happened?</h2>
<p class="mb-2">The origin web server timed out responding to this request.</p><p>The likely cause is an overloaded background task, database or application, stressing the resources on the host web server.</p>
</div>
<div class="w-1/2 md:w-full float-left leading-relaxed">
<h2 class="text-3xl font-normal leading-1.3 mb-4">What can I do?</h2>
<h3 class="text-15 font-semibold mb-2">If you're a visitor of this website:</h3>
<p class="mb-6">Please try again in a few minutes.</p>
<h3 class="text-15 font-semibold mb-2">If you're the owner of this website:</h3>
<p>Please refer to the <a rel="noopener noreferrer" href="https://developers.cloudflare.com/support/troubleshooting/http-status-codes/cloudflare-5xx-errors/error-524/">Error 524</a> article:</p>
<ul class="ml-4">
<li>Contact your hosting provider; check for long-running processes or an overloaded web server.</li>
<li>Use status polling of large HTTP processes to avoid this error.</li>
<li>Run the long-running scripts on a <a rel="noopener noreferrer" href="https://developers.cloudflare.com/dns/proxy-status/#dns-only-records">grey-clouded subdomain</a>.</li>
<li>Enterprise customers can <a rel="noopener noreferrer" href="https://developers.cloudflare.com/support/troubleshooting/http-status-codes/cloudflare-5xx-errors/error-524/#resolution-on-cloudflare">increase the timeout setting</a> globally or for specific requests using Cache Rules.</li>
</ul>
</div>
</div>
</div>
<div class="cf-error-footer cf-wrapper w-240 lg:w-full py-10 sm:py-4 sm:px-8 mx-auto text-center sm:text-left border-solid border-0 border-t border-gray-300">
<p class="text-13">
<span class="cf-footer-item sm:block sm:mb-1">Cloudflare Ray ID: <strong class="font-semibold">9b416384b8855c45</strong></span>
<span class="cf-footer-separator sm:hidden">•</span>
<span id="cf-footer-item-ip" class="cf-footer-item hidden sm:block sm:mb-1">
Your IP:
<button type="button" id="cf-footer-ip-reveal" class="cf-footer-ip-reveal-btn">Click to reveal</button>
<span class="hidden" id="cf-footer-ip">86.85.181.150</span>
<span class="cf-footer-separator sm:hidden">•</span>
</span>
<span class="cf-footer-item sm:block sm:mb-1"><span>Performance & security by</span> <a rel="noopener noreferrer" href="https://www.cloudflare.com/5xx-error-landing?utm_source=errorcode_524&utm_campaign=link" id="brand_link" target="_blank">Cloudflare</a></span>
</p>
<script>(function(){function d(){var b=a.getElementById("cf-footer-item-ip"),c=a.getElementById("cf-footer-ip-reveal");b&&"classList"in b&&(b.classList.remove("hidden"),c.addEventListener("click",function(){c.classList.add("hidden");a.getElementById("cf-footer-ip").classList.remove("hidden")}))}var a=document;document.addEventListener&&a.addEventListener("DOMContentLoaded",d)})();</script>
</div><!-- /.error-footer -->
</div>
</div>
</body> |
Mooi dat het nog goed werkt.Tsuranim schreef op maandag 2 maart 2026 @ 22:01:
[...]
Het werkt nog steeds goed. Maar ik loop vast op de volgende stap: aanpassen maximaal vermogen, door het volgende commando: PUT "http://192.168.1.115:5782/inverter?command=register®ister=3&inverter=[serial]&value={{ percentage }}"
Maar het lijkt dat grott-server niet is opgestart. Ik zie in de home-asssistent GUI configuration wel de keuze port-number grott-server. Maar geen mogelijkheid om de server aan te zetten. Ik zie het ook niet terugkomen in de logs.
(reden waarom het ook lijkt dat de server niet gestart is: ook bij met browser naar 192.68.1.115:5782 gaan geeft "192.168.1.115 heeft geweigerd verbinding te maken.")
klopt het dat deze server voor het verwerken van commando's niet automatisch gestart wordt? En kan ik dit in de GUI configuratie aanzetten. En indien niet, weet jij hoe hett in de ini moet worden aangezet?
Om bij de webserver te komen van buiten HA moet je inderdaad onderstaande poort ingevuld hebben (daarna wel even de addon restarten). Onderstaand command werkt alleen als de omvormer aan is (er voldoende zonlicht is). De server zou wel automatisch moeten opstarten. Lukt bijv. 'GET http://[your-ip]:5782/datalogger?command=register®ister=4&datalogger=[datalogger-id]' daarna wel met het juiste datalogger id? Het ip adres zou je HA ip adres moeten zijn.
:no_upscale():strip_icc():strip_exif()/f/image/3HVDeghz3sWvzgQMyRUCgM1Z.jpg?f=user_large)
Datalogger is een ShineLan-X.
[ Voor 3% gewijzigd door Hieke op 15-03-2026 11:20 ]
Panasonic K-series split 9 kW, gasloos sinds dec 23 | Tesla MY LR | PV 9,6 kWp | 2 x Zendure SF 2400 AC, 17.280 kWh
:strip_exif()/f/image/JZ4waeCKUbAwFIuVD8P6q1Td.jpg?f=fotoalbum_large)
/f/image/8ckbpyXcAkTpFgUkT9NVLAHz.png?f=fotoalbum_large)
/f/image/CvNxYEdu431BV2vpGeM99dmV.png?f=fotoalbum_large)
/f/image/Hpyt4zouzxjJwfpowM88IOMo.png?f=fotoalbum_large)
:strip_exif()/f/image/mLp55WZq9SBdO2rsobwtY1V4.jpg?f=fotoalbum_large)
:strip_exif()/f/image/mtsiqh5xA6JzBfjrjpflurCl.jpg?f=fotoalbum_large)
:strip_exif()/f/image/ok9KIqCkYOoNpWhcRL4mhN13.jpg?f=fotoalbum_large)
:strip_exif()/f/image/RposKI3FeYajv7rNfbvffogs.jpg?f=fotoalbum_large)
:strip_exif()/f/image/qtDUaFsd2trTnCu7LuRc7369.jpg?f=fotoalbum_large)
:strip_exif()/f/image/Ahu7WF14JZQpFnJQRExbyFYr.jpg?f=fotoalbum_tile)
:strip_exif()/f/image/zW7I3FMNfifnri4mtYRTBMFm.jpg?f=fotoalbum_tile)
:strip_exif()/f/image/BHRZh07a2W8p8MZvstbeopfp.jpg?f=fotoalbum_large)
:strip_exif()/f/image/nrtYt5GxOvjXdptH8igbtNWA.jpg?f=fotoalbum_tile)
:strip_exif()/f/image/sfKkUmBXbxxYcEAgPJrKbVYx.jpg?f=fotoalbum_tile)
/f/image/2qjpU3QHhFRQfmgnIa4YkVGE.png?f=fotoalbum_tile)
/f/image/SCfDhRUMdHJIlLRte732Q29l.png?f=fotoalbum_large)
/f/image/Ibpw94UDTmIQSd54RYVp8pHI.png?f=fotoalbum_tile)