datenschuft / SMA-EM

SMA Energymeter measurement
GNU General Public License v2.0
92 stars 38 forks source link

sma-em-measurement.py exception #74

Open tobiasboecker opened 2 years ago

tobiasboecker commented 2 years ago

Hallo,

nach wenigen Sekunden (mal 2 - 45) bricht das Skript mit folgender Fehlermeldung ab:

SMA-EM Serial:3xxxxxxx ----sum---- P: consume:9.7W 789.6432kWh supply:0.0W 5783.2846kWh S: consume:10.3VA 1426.9495kVAh supply:0.0VA 6343.6043VAh Q: cap 0.0var 98.5265kvarh ind 3.6var 1906.5092kvarh cos phi:0.936° ----L1---- P: consume:143.0W 1457.5441kWh supply:0.0W 1692.3941kWh S: consume:382.7VA 1740.269kVAh supply:0.0VA 2144.8487kVAh Q: cap 0.0var 9.2267kvarh ind 355.0var 1642.9982kvarh U: 235.907V I:2.232A cos phi:0.374° ----L2---- P: consume:210.9W 416.1628kWh supply:0.0W 2582.8145kWh S: consume:400.1VA 553.6013kVAh supply:0.0VA 2613.0244kVAh Q: cap 340.0var 142.7767kvarh ind 0.0var 334.013kvarh U: 235.41V I:1.89A cos phi:0.527° ----L3---- P: consume:0.0W 210.6615kWh supply:344.2W 2802.8013kWh S: consume:0.0VA 228.719kVAh supply:344.4VA 2808.3065kVAh Q: cap 11.3var 85.2706kvarh ind 0.0var 68.2455kvarh U: 236.46V I:1.626A cos phi:0.999° Version: 2.9.2.R|020902

Traceback (most recent call last): File "/opt/smaemd/sma-em-measurement.py", line 82, in print ('SMA-EM Serial:{}'.format(emparts['serial'])) KeyError: 'serial'

hevilp commented 2 years ago

habe den gleichen fehler - frisch installiert. auch wird kein verbrauch angezeigt

clown-m commented 1 year ago

habe auch das gleiche Problem, wenn ich den Patch "check len of emparts before processing #77" einfüge, dann bekomme ich manchmal den Fehler:

Traceback (most recent call last): File "/opt/smaemd/sma-em-measurement.py", line 87, in print ('P: consume:{}W {}kWh supply:{}W {}kWh'.format(emparts['pconsume'],emparts['pconsumecounter'],emparts['psupply'],emparts['psupplycounter'])) KeyError: 'pconsume'

Scheint ein generelles Problem mit der Datagram Länge zu geben, bzw. mit fehlenden Inhalten.

mkarg75 commented 1 month ago

Nur um das nochmal hochzuholen - der Fehler ist immer noch da.