Hallo, ich habe einen neuen Zweirichtungsstromzähler. Den alten Zähler konnte ich problemlos über vzlogger mit dem d0-Protokoll und den HTTP-Server-Modus auslesen. Der neue Zähler gibt seine Daten als sml aus. vzlogger decodiert auch die Daten. Hier ein Log-Auszug mit einem sml-meter [mtr0] und einem s0-meter [mtr1]:
Oct 29 09:17:08][mtr0] Got 2 new readings from meter: [Oct 29 09:17:08][mtr0] Reading: id=1-0:1.8.0*255/ObisIdentifier:1-0:1.8.0*255 value=53000.00 ts=0 [Oct 29 09:17:08][mtr0] Reading: id=1-0:2.8.0*255/ObisIdentifier:1-0:2.8.0*255 value=13000.00 ts=0 [Oct 29 09:17:08][s0] Reading S0 - returning 4 readings (n=0 n_neg = 0) [Oct 29 09:17:08][mtr1] Got 4 new readings from meter: [Oct 29 09:17:08][mtr1] Reading: id=Power/StringIdentifier: value=0.00 ts=1572337028942 [Oct 29 09:17:08][mtr1] Reading: id=Impulse/StringIdentifier: value=0.00 ts=1572337028942 [Oct 29 09:17:08][mtr1] Reading: id=Power_neg/StringIdentifier: value=0.00 ts=1572337028942 [Oct 29 09:17:08][mtr1] Reading: id=Impulse_neg/StringIdentifier: value=0.00 ts=1572337028942 [Oct 29 09:17:08][chn2] Adding reading to queue (value=0.00 ts=1572337028942) [Oct 29 09:17:08][chn3] Adding reading to queue (value=0.00 ts=1572337028942) [Oct 29 09:17:08][S0] MeterS0:HWIF_GPIO:first poll returned 0 Der Auszug zeigt, dass zwar Readings vom mtr1 korrekt decodiert werden (value=53000.00 und value=13000.00), aber nicht wie die S0 (mtr1)-Werte in die Queue gestellt werden ( Adding reading to queue ...) und damit nicht an den HTTP-Server weitergereicht werden? Ausserdem fällt auf, dass der Timestamp ts=0 ist! Ich sehe den sml-meter auch im Browser, aber keine Werte-Tupel. Hier der JSON-Auszug: { "version": "0.6.0", "generator": "vzlogger", "data": [ { "uuid": "180a", "last": 0, "interval": -1, "protocol": "sml" }, { "uuid": "180c", "last": 0, "interval": -1, "protocol": "sml" }, { "uuid": "121e", "last": 1572339709909, "interval": -1, "protocol": "s0", "tuples": [ [ 1572339562898, 0 ] .... Hier meine vzlogger Konfig (ohne die S0-meter-Definitionen): // vzlogger.conf with sml (Strom) "daemon": true, "verbosity": 15, "log": "/var/log/vzlogger.log", "retry": 30, // http retry delay in seconds // Build-in HTTP server "local": { "enabled": true, "port": 8080, "index": true, "timeout": 30, "buffer": 3600 }, // Meter configuration "meters": [ // sml meter (Strom) { "enabled": true, "protocol": "sml", "device": "/dev/ttyUSB0", "baudrate": 9600, "parity": "8n1", "skip": false, "channels": [ { "uuid": "180a", "identifier": "counter", // 1.8.1 Zaehlerstand Wirkleistung 1-0:1.8.255*255 "api": "null", "duplicates": 0 }, { "uuid": "180c", "identifier": "counter-out", // 2.8.1 Zaehlerstand Lieferg. 1-0:2.8.255*255 "api": "null", "duplicates": 0 } ] }, ] } vzlogger läuft bei mir auf OpenWrt in v0.6.0. Hat jemand eine Idee, wo der Fehler liegt? Viele Grüße