[vz-users] Anleitung: VZLogger als MQTT-Subscriber

Tobias Lehr tobias.lehr at me.com
Mi Apr 22 23:59:15 CEST 2020


Hallo,

ich weiß diese mail ist schon ein paar Tage alt. Aber ich habe mich gerade darin probiert und bekomme es nicht zum laufen. Ich habe das aktuelle Volkszähler image am laufen und habe die Anleitung etwas abgewandelt umgesetzt. Ziel ist es eine Steckdose mit Tasmota über mqtt auszulesen. Interessant ist für mich aber nicht die Power sondern der Zählerstand. Deshalb habe ich das Command etwas abgewandelt. Das funktioniert auch prinzipiell, wenn ich es im Terminal direkt eingebe bekomme ich einen plausiblen Wert und wenn ich im Vzlogger.log schaue sieht man das auch vzlogger etwas auswertet, dieses aber nicht an die middleware weiterreicht, bzw. ich keine Daten im Frontend angezeigt bekomme 

meine Vzlogger.conf sieht so aus:

{
  "retry": 0,
  "daemon": true,
  "verbosity": 15,
  "log": "/var/log/vzlogger.log",
  "push": [],
  "local": {
    "enabled": false,
    "port": 8080,
    "index": false,
    "timeout": 30,
    "buffer": 600
  },
  "meters": [
    {
      "enabled": true,
      "allowskip": true,
      "interval": 10,
      "aggtime": -1,
      "aggfixedinterval": false,
      "channels": [
        {
          "api": "volkszaehler",
          "uuid": "034e4720-84d8-11ea-aa37-d3ffec7b76a6",
          "identifier": "",
          "middleware": "http:/127.0.0.1:8080",
          "aggmode": "none",
          "duplicates": 0
        }
      ],
      "protocol": "exec",
      "command": "mosquitto_sub -C 1 -t tele/Frosch/SENSOR | jq -r '.ENERGY.Total'",
      "format": "$v"
    }
  ]
}

die Ausgabe aus vzlogger.log

[Apr 22 23:51:15][exec] MeterExec::read: Calling 'mosquitto_sub -C 1 -t tele/Frosch/SENSOR | jq -r '.ENERGY.Total''
[Apr 22 23:51:25][exec] MeterExec::read: Reading line: '0.23531'
[Apr 22 23:51:25][exec] MeterExec::read: string: <null>, value: 0.235310, timestamp: -1.000000
[Apr 22 23:51:25][exec] MeterExec::read: Closing process 'mosquitto_sub -C 1 -t tele/Frosch/SENSOR | jq -r '.ENERGY.Total''
[Apr 22 23:51:25][mtr0] Got 1 new readings from meter:
[Apr 22 23:51:25][mtr0] Reading: id=<null>/StringIdentifier: value=0.24 ts=1587592285032
[Apr 22 23:51:25][mtr0] Next reading in 10 seconds
[Apr 22 23:51:25][chn0] ==> number of tuples: 0
[Apr 22 23:51:25][chn0] JSON request body is null. Nothing to send now.
[Apr 22 23:51:35][exec] MeterExec::read: Calling 'mosquitto_sub -C 1 -t tele/Frosch/SENSOR | jq -r '.ENERGY.Total''
[Apr 22 23:51:45][exec] MeterExec::read: Reading line: '0.23533'
[Apr 22 23:51:45][exec] MeterExec::read: string: <null>, value: 0.235330, timestamp: -1.000000
[Apr 22 23:51:45][exec] MeterExec::read: Closing process 'mosquitto_sub -C 1 -t tele/Frosch/SENSOR | jq -r '.ENERGY.Total''
[Apr 22 23:51:45][mtr0] Got 1 new readings from meter:
[Apr 22 23:51:45][mtr0] Reading: id=<null>/StringIdentifier: value=0.24 ts=1587592305022
[Apr 22 23:51:45][mtr0] Next reading in 10 seconds
[Apr 22 23:51:45][chn0] ==> number of tuples: 0
[Apr 22 23:51:45][chn0] JSON request body is null. Nothing to send now.


damit ich vzlogger überhaupt zum laufen bekommen habe, habe ich die vzlogger.service um User=pi erweitert, da er sonst nicht gestartet ist mit der Meldung das Meter Exec nicht als root läuft. diese Info habe ich im Photovoltaikforum gefunden.

In der Vzlogger.conf habe ich bei middleware mit verschiedenen Werten getestet, unter anderem localhost/middleware.php; 127.0.0.1/middleware.php und 192.168.178.59/middleware.php (das ist die ip des Rpis auf dem das ganze läuft)

Wo könnte der Fehler liegen?

Grüße
Tobias

> Am 31.03.2020 um 18:14 schrieb Sirko <mail_ist at nurfuerspam.de>:
> 
> Hi Frank,
> 
> das kannte ich noch gar nicht, danke
> 
> Grüße
> Sirko
> 
> Am 31.03.2020 um 17:02 schrieb Frank Richter:
> http://IP/cm?cmnd=status 8

-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20200422/0740d619/attachment.html>


More information about the volkszaehler-users mailing list