Frequenz aus openDTU onbattery in shelly laden?

Shelly pro "Schätzgeräte" (pro 3em, pro em50) liefern Fequenz nur mit 1 Nachkommastelle. Voll doof.

openDTU onbattery hat Frequenz ausm WR mit 2 Nachkommastellen. Müsste man doch mim http get auslesen können? Aber dazu ist die doku zu sparsam oder ich habs überlesen?

müsste doch einen json File geben oder?

und wo ist frequenz?

hier

Get inverter detail livedata

$ curl http://192.168.10.10/api/livedata/status?inv=1161716xxxxx
{"inverters":[{"serial":"1161716xxxxx","name":"Meine Solaranlage","order":0,"data_age":30824,"poll_enabled":true,"reachable":false,"producing":false,"limit_relative":100,"limit_absolute":1500,"AC":{"0":{"Power":{"v":0,"u":"W","d":1},"Voltage":{"v":0,"u":"V","d":1},"Current":{"v":0,"u":"A","d":2},"Frequency":{"v":0,"u":"Hz","d":2},"PowerFactor":{"v":0,"u":"","d":3},"ReactivePower":{"v":0,"u":"var","d":1}}},"DC":{"0":{"name":{"u":""},"Power":{"v":0,"u":"W","d":1},"Voltage":{"v":0,"u":"V","d":1},"Current":{"v":0,"u":"A","d":2},"YieldDay":{"v":0,"u":"Wh","d":0},"YieldTotal":{"v":834.2609863,"u":"kWh","d":3},"Irradiation":{"v":0,"u":"%","d":3,"max":385}},"1":{"name":{"u":""},"Power":{"v":0,"u":"W","d":1},"Voltage":{"v":0,"u":"V","d":1},"Current":{"v":0,"u":"A","d":2},"YieldDay":{"v":0,"u":"Wh","d":0},"YieldTotal":{"v":832.7069702,"u":"kWh","d":3},"Irradiation":{"v":0,"u":"%","d":3,"max":385}},"2":{"name":{"u":""},"Power":{"v":0,"u":"W","d":1},"Voltage":{"v":0,"u":"V","d":1},"Current":{"v":0,"u":"A","d":2},"YieldDay":{"v":0,"u":"Wh","d":0},"YieldTotal":{"v":843.7299805,"u":"kWh","d":3},"Irradiation":{"v":0,"u":"%","d":3,"max":385}},"3":{"name":{"u":""},"Power":{"v":0,"u":"W","d":1},"Voltage":{"v":0,"u":"V","d":1},"Current":{"v":0,"u":"A","d":2},"YieldDay":{"v":0,"u":"Wh","d":0},"YieldTotal":{"v":4.907999992,"u":"kWh","d":3}}},"INV":{"0":{"Power DC":{"v":0,"u":"W","d":1},"YieldDay":{"v":0,"u":"Wh","d":0},"YieldTotal":{"v":2515.605957,"u":"kWh","d":3},"Temperature":{"v":0,"u":"°C","d":1},"Efficiency":{"v":0,"u":"%","d":3}}},"events":2}],"total":{"Power":{"v":0,"u":"W","d":1},"YieldDay":{"v":0,"u":"Wh","d":0},"YieldTotal":{"v":2515.605957,"u":"kWh","d":3}},"hints":{"time_sync":false,"radio_problem":false,"default_password":false}}
The eventlog can be fetched with the inverter serial number as parameter:


oh nich gesehn muss ich mal mit rumspieln

1 „Gefällt mir“

habe mal chatGPT gefragt

Nur den Zahlenwert in Hz abrufen (benötigt jq):

curl -fsS 'http://192.168.10.10/api/livedata/status?inv=1161716xxxxx' \
  | jq '.inverters[0].AC["0"].Frequency.v'

Beispielausgabe: 50.02

Als kleines JSON mit Wert und Einheit:

curl -fsS 'http://192.168.10.10/api/livedata/status?inv=1161716xxxxx' \
  | jq '{netzfrequenz: .inverters[0].AC["0"].Frequency.v, einheit: .inverters[0].AC["0"].Frequency.u}'

Beispielausgabe:

{
  "netzfrequenz": 50.02,
  "einheit": "Hz"
}

Wenn der Lesezugriff geschützt ist, ergänze bei curl die Option -u admin; dann wirst du nach deinem Passwort gefragt. Authentifizierung