So, ich bin jetzt ein paar Schritte weiter gekommen, aber immer noch ohne Erfolg. Die von vzlogger geparsten sml-Daten werden immer noch nicht über den HTTPd-Server ausgegeben.
Ich habe über die PIN meines DWS74-Zählers auf den erweiterten Datensatz umgestellt. Ich habe vzlogger mit der aktuellen Version 0.8.0 compiliert, installiert, für meinen sml-Zähler konfiguriert und gestartet. Die sml-Daten meines Zählers kommen in vzlogger an. Im verbose 15-Log sehe ich die geparsten Werte des Zählers als Readings, jetzt auch mit Timestamp ts, der über den Parameter "use_local_time" geliefert wird. Mir fehlen im Log die Hinweise, dass für jeden der Channel ein Logging-Thread gestartet wurde (Start logging thread for null-api. Running as daemon: yes) und die Readings auf die Queue gestellt wurden (Adding reading to queue..). Sonst ist das Log aus meiner Sicht unauffällig. So sehe ich im Browser die Daten des HTTPD-Servers: { "version": "0.8.0", "generator": "vzlogger", "data": [ { "uuid": "180a", "last": 0, "interval": -1, "protocol": "sml" }, { "uuid": "180b", "last": 0, "interval": -1, "protocol": "sml" }, { "uuid": "180c", "last": 0, "interval": -1, "protocol": "sml" } ] } Die Readings müssten dort für jeden Channel als Tupel mit Timestamp und Value erscheinen. Es sind aber keine Tupel da. Hier der Logauszug: [Nov 02 15:55:39][main] vzlogger v0.8.0 based on heads/master-0-g3c4ef603cb from Sun, 18 Aug 2019 09:36:53 +0200 started. [Nov 02 15:55:39][mtr0] Creating new meter with protocol sml. [Nov 02 15:55:39][mtr0] Meter configured, enabled. [Nov 02 15:55:39] New meter initialized (protocol=sml) [Nov 02 15:55:39] Configure channel. [Nov 02 15:55:39][chn0] New channel initialized (uuid=... api=null id=1.8.0) [Nov 02 15:55:39] Configure channel. [Nov 02 15:55:39][chn1] New channel initialized (uuid=... api=null id=1.25) [Nov 02 15:55:39] Configure channel. [Nov 02 15:55:39][chn2] New channel initialized (uuid=... api=null id=2.8.0) [Nov 02 15:55:39] Have 1 meters. [Nov 02 15:55:39][main] log level is 15 [Nov 02 15:55:39][main] daemon=1, local=1 [Nov 02 15:55:39] Daemonize process... [Nov 02 15:55:39] Opened logfile /var/log/vzlogger.log [Nov 02 15:55:39][push] No pushDataServer defined. [Nov 02 15:55:39][] ===> Start meters [Nov 02 15:55:39][mtr0] Meter connection established [Nov 02 15:55:39][mtr0] Meter thread started [Nov 02 15:55:39][mtr0] Meter is opened. Starting channels. [Nov 02 15:55:39][chn0] Logging thread started [Nov 02 15:55:39][chn1] Logging thread started [Nov 02 15:55:39][chn2] Logging thread started [Nov 02 15:55:39][http] Starting local interface HTTPd on port 8080 [Nov 02 15:55:39][] Startup done. [Nov 02 15:55:39][chn1] Start logging thread for null-api. Running as daemon: yes [Nov 02 15:55:39][chn1] Using null api- meter data available via local httpd if enabled. [Nov 02 15:55:39][chn2] Start logging thread for null-api. Running as daemon: yes [Nov 02 15:55:39][chn2] Using null api- meter data available via local httpd if enabled. [Nov 02 15:55:39][mtr0] Number of readers: 32 [Nov 02 15:55:39][mtr0] Config.daemon: 1 [Nov 02 15:55:39][mtr0] Config.local: 1 [Nov 02 15:55:39][chn0] Start logging thread for null-api. Running as daemon: yes [Nov 02 15:55:39][chn0] Using null api- meter data available via local httpd if enabled. [Nov 02 15:55:40][mtr0] Got 3 new readings from meter: [Nov 02 15:55:40][mtr0] Reading: id=1-0:1.8.0*255/ObisIdentifier:1-0:1.8.0*255 value=87463.90 ts=1572706540671 [Nov 02 15:55:40][mtr0] Reading: id=1-0:2.8.0*255/ObisIdentifier:1-0:2.8.0*255 value=20243.10 ts=1572706540671 [Nov 02 15:55:40][mtr0] Reading: id=1-0:16.7.0*255/ObisIdentifier:1-0:16.7.0*255 value=341.01 ts=1572706540671 [Nov 02 15:55:41][mtr0] Got 3 new readings from meter: [Nov 02 15:55:41][mtr0] Reading: id=1-0:1.8.0*255/ObisIdentifier:1-0:1.8.0*255 value=87464.00 ts=1572706541683 [Nov 02 15:55:41][mtr0] Reading: id=1-0:2.8.0*255/ObisIdentifier:1-0:2.8.0*255 value=20243.10 ts=1572706541683 [Nov 02 15:55:41][mtr0] Reading: id=1-0:16.7.0*255/ObisIdentifier:1-0:16.7.0*255 value=343.63 ts=1572706541683 [Nov 02 15:55:42][mtr0] Got 3 new readings from meter: [Nov 02 15:55:42][mtr0] Reading: id=1-0:1.8.0*255/ObisIdentifier:1-0:1.8.0*255 value=87464.10 ts=1572706542691 [Nov 02 15:55:42][mtr0] Reading: id=1-0:2.8.0*255/ObisIdentifier:1-0:2.8.0*255 value=20243.10 ts=1572706542691 [Nov 02 15:55:42][mtr0] Reading: id=1-0:16.7.0*255/ObisIdentifier:1-0:16.7.0*255 value=337.48 ts=1572706542691 .... Hier meine vzlogger-sml-conf: // 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", "use_local_time": true, "skip": false, "channels": [ { "uuid": "180a", "identifier": "counter", // 1.8.1 Zaehlerstand Wirkleistung 1-0:1.8.255*255 "api": "null", "duplicates": 0 }, { "uuid": "180b", "identifier": "1.25", // 1.25 Momentanleistung "api": "null", "duplicates": 0 }, { "uuid": "180c", "identifier": "counter-out", // 2.8.1 Zaehlerstand Lieferg. 1-0:2.8.255*255 "api": "null", "duplicates": 0 } ] } ] } Hat jemand noch eine Idee, was falsch sein könnte? Viele Grüße Am Mi., 30. Okt. 2019 um 14:43 Uhr schrieb Winfried Peters < winfried.pet...@gmail.com>: > Die PIN wird mir vom Netzbetreiber zugeschickt. Dann hoffe ich mal, dass > mit der hohen Auflösung der Timestamp mitkommt. > > Viele Grüße > > Am Mi., 30. Okt. 2019 um 11:32 Uhr schrieb Frank Richter < > frank.richte...@gmail.com>: > >> Aus Zählerständen in ganzen kWh lässt sich die Leistung auch nicht >> sinnvoll ableiten, deswegen würde ich mich zuallererst mal um die >> Beschaffung der PIN und die Freischaltung der höheren Auflösung kümmern. >> >> DZG ist glaub ich schonmal mit einer problematischen SML-Implementierung >> aufgefallen. >> >> Grüße >> Frank >> >> Winfried Peters <winfried.pet...@gmail.com> schrieb am Mi., 30. Okt. >> 2019, 10:44: >> >>> Es ist ein Zähler von DZG vom Typ DWS7412.2T. Er pusht periodisch jede >>> Sekunde ein Telegramm in SML 1.05-SML-frame Version 1, 9600 Bd, 8-N-1. >>> Über die DZG Software "DZG Meter View" kann ich die Daten auslesen. Das >>> Programm kann auch die Leistungen über die Zeit in einem Diagramm >>> darstellen. Das Diagramm bleibt aber leer. Was zu der Vermutung führt, dass >>> keine Zeitstempel übertragen werden, so wie es vzlogger ja auch ausweist. >>> Ich habe eine Anfrage an DZG gestellt, ob das ein Fehler in der verbauten >>> Firmware ist. >>> >>> Viele Grüße >>> >>> >>> Am Di., 29. Okt. 2019 um 23:02 Uhr schrieb Frank Richter < >>> frank.richte...@gmail.com>: >>> >>>> Von welchem Zählertyp reden wir eigentlich? >>>> >>>> Grüße >>>> Frank >>>> >>>> Am Di., 29. Okt. 2019 um 21:17 Uhr schrieb Winfried Peters < >>>> winfried.pet...@gmail.com>: >>>> >>>>> Ich habe Daniels Konfigurationsvorschläge (identfier 1.8.0 und 2.8.0 ) >>>>> getestet , mit dem gleichen (negativen) Ergebnis. >>>>> count und count-out sind übrigens von vzlogger unterstützte >>>>> OBIS-Aliase, die funktionieren (siehe vzlogger -h). >>>>> use_local_time kann ich leider in meiner alten vzlogger-Version nicht >>>>> nutzen. >>>>> Konfigurationsfehler sehe ich bisher nicht und meine These, bei ts=0 >>>>> keine Werte-Tupelübergabe an HTTPd, hat bisher auch noch keiner widerlegt. >>>>> >>>>> Viele Grüße >>>>> >>>>> Am Di., 29. Okt. 2019 um 20:41 Uhr schrieb Stefan Bauer < >>>>> s...@stefan-bauer.net>: >>>>> >>>>>> Nein, am Timestamp Wirtes nich liegen, sondern an der falschen >>>>>> Konfiguration, wie Daniel schon in seinem ersten Post geschrieben hat... >>>>>> >>>>>> Stefan >>>>>> >>>>>> Von meinem iPad gesendet >>>>>> >>>>>> Am 29.10.2019 um 20:39 schrieb Winfried Peters < >>>>>> winfried.pet...@gmail.com>: >>>>>> >>>>>> >>>>>> Ich brauch den Timestamp nicht, aber vielleicht HTTPd. Mein Problem >>>>>> ist, dass keine SML-Werte-Tupel an HTTPd übergeben werden und ich sie >>>>>> demnach nicht abfragen kann. >>>>>> Ich stelle nur Vermutungen über mögliche Ursachen an. Mir fällt im >>>>>> Log auf, dass Werte mit Timestamp an HTTPd übergeben werden, Werte mit >>>>>> ts=0 >>>>>> nicht. >>>>>> Also könnte der fehlende Timestamp eine Ursache sein, die ich leider >>>>>> nicht mit dem use_local_time überprüfen kann. >>>>>> >>>>>> Viele Grüße >>>>>> >>>>>> Am Di., 29. Okt. 2019 um 19:57 Uhr schrieb Frank Richter < >>>>>> frank.richte...@gmail.com>: >>>>>> >>>>>>> Brauchst du den Timestamp denn unbedingt, wenn du die Daten eh nur >>>>>>> vom httpd abholst? >>>>>>> >>>>>>> Am Di., 29. Okt. 2019 um 19:37 Uhr schrieb Winfried Peters < >>>>>>> winfried.pet...@gmail.com>: >>>>>>> >>>>>>>> Ojeh, gerade das wollte ich mir nicht antun. Ich hatte vor einigen >>>>>>>> Monaten schon mal einen Anlauf gemacht, ein Cross-Compile für Udo's >>>>>>>> YPORT+-Logger durchzuführen. Habe den Versuch aber aufgegeben (es ist >>>>>>>> mir >>>>>>>> nicht gelungen Dependencies, z.B. zu libsml, aufzulösen). Udo hatte >>>>>>>> mir vor >>>>>>>> ein paar Jahren schon mal mit einem neuen Image aus der Patsche >>>>>>>> geholfen. >>>>>>>> Ich hatte Udo angeschrieben. Aber er scheint nicht mehr aktiv zu sein. >>>>>>>> >>>>>>>> use_local_time funktioniert nicht, hatte ich gerade getestet. Jetzt >>>>>>>> weiss ich auch warum. >>>>>>>> >>>>>>>> Dann bleiben mir noch zwei Optionen: >>>>>>>> - ich schaffe mir einen Rasberry Pi an und bringe dort die aktuelle >>>>>>>> vzlogger-Version drauf >>>>>>>> - oder ich versuche mich nochmal am Cross-Compile. >>>>>>>> >>>>>>>> Viele Grüße >>>>>>>> >>>>>>>> Am Di., 29. Okt. 2019 um 19:02 Uhr schrieb Frank Richter < >>>>>>>> frank.richte...@gmail.com>: >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> Am Di., 29. Okt. 2019 um 14:06 Uhr schrieb Daniel Lauckner < >>>>>>>>> v...@jahp.de>: >>>>>>>>> >>>>>>>>>> Und für SML-Zähler die beim timestamp murksen gibts die Option >>>>>>>>>> "use_local_time" >>>>>>>>>> >>>>>>>>>> https://wiki.volkszaehler.org/software/controller/vzlogger/vzlogger_conf_parameter?s[]=use_local_time#sml >>>>>>>>> >>>>>>>>> >>>>>>>>> allerdings noch nicht in 0.6.0. Da wirst du neu compilieren müssen. >>>>>>>>> >>>>>>>>> Grüße >>>>>>>>> Frank >>>>>>>>> >>>>>>>>