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

Maik Weidemann m+vz at weidemann.online
Sa Dez 16 20:14:38 CET 2023


Hallo Bernd,

> [Dec 16 19:14:47][mtr2] Got 1 new readings from meter: 
Hier hat er doch einen Wert gelesen, dass ist schon ein Fortschritt 
gegenüber deinen Ursprungspost. Der hatte er Null new readings.

Hast du noch ein Format in deiner Konfig jetzt drin? mach dort doch 
jetzt nur einen leeren String "". Du lieferst ja nur eine Zahl.

Viele Grüße
Maik

Am 16.12.23 um 19:17 schrieb Bernd Kisters:
> Über script erhalte ich ähnliche Ergebnisse im Log.
>
> [Dec 16 19:14:47][exec] MeterExec::read: Calling 
> '/home/pi/mosquitto_sub.sh'
> [Dec 16 19:14:47][exec] MeterExec::read: Reading line: '2.46'
> [Dec 16 19:14:47][exec] MeterExec::read: string: <null>, value: 
> 2.460000, timestamp: -1.000000
> [Dec 16 19:14:47][exec] MeterExec::read: Closing process 
> '/home/pi/mosquitto_sub.sh'
> [Dec 16 19:14:47][mtr2] Got 1 new readings from meter:
> [Dec 16 19:14:47][mtr2] Reading: id=<null>/StringIdentifier: 
> value=2.46 ts=1702750487103
> [Dec 16 19:14:47][mtr2] waiting 30 seconds before next reading
>
> Wer ist jetzt über Script auf 2 Stellen gerundet. Hat aber keinen Effekt.
> Ich habe keine Ahnung was es noch bedarf, dass die Werte auch in die 
> DB geschrieben werden.
>
> On 16.12.2023 18:28, Stefan Bauer wrote:
>> Evtl liegt es auch an dem Hochkomma in dem Kommando…
>> Ich würde das mqtt Kommando in ein Script speichern und dann im 
>> vzlogger nur das Script aufrufen. Wenn es mehrfach benötigt wird, 
>> dann IP-Adresse und Abrufwert als Parameter übergeben…
>>
>> Von meinem iPad gesendet
>>
>>> Am 16.12.2023 um 14:24 schrieb Rupert Schöttler 
>>> <rupert.schoettler at gmx.de>:
>>>
>>> Hi Bernd,
>>>
>>>> Am 16.12.23 um 13:24 schrieb Bernd Kisters:
>>>> die Antwort nach dem Aufruf
>>>>      mosquitto_sub -h 192.168.5.69 -p 32777 -C 1 -t
>>>> evcc/warp2/meter/values  | jq -r '.power'
>>>> erfolgt unmittelbar. Die Ausgabe ist dann der z.B. Wert 2.4136343
>>>>
>>>> Wie kann ich mit dem "Format = $v" die Nachkommestellen auf 2
>>>> reduzieren?`
>>>
>>> Ich glaube zwar nicht, dass die Nachkommastellen das Problem sind, aber
>>> mir fallen spontan diese beiden Möglichkeiten ein:
>>>
>>> 1. Die Quelle liefert sie gleich "richtig" an den MQTT-Kanal.
>>>
>>> 2. Du machst einen weiteren Pipe-Befehl | nach bc oder einem ähnlichen
>>> Programm, das runden kann. Suchmaschinen oder ChatGPT helfen Dir für 
>>> die
>>> genaue Syntax.
>>>
>>>
>>> Vielleicht magst Du aber erst mal testen, ob ein exec-Befehl wie
>>>
>>> echo 2.41
>>>
>>> erfolgreich eingelesen wird. Vielleicht liegt's ja auch am 
>>> Dezimal-Punkt
>>> statt Komma oder was ganz anderem.
>>>
>>>
>>> Viel Erfolg wünscht
>>>
>>> Rupert
>>>
>



Mehr Informationen über die Mailingliste volkszaehler-users