ich habe heute die ersten Versuche im Smarthome-Bereich mit MQTT gemacht. Ich habe ein erstes MQTT-Device in Smarthome angelegt und manuell per MQTT das Topic openWB/set/LegacySmartHome/Devices/1/Aktpower auf 100 gesetzt. Ich konnte sehen, dass der Wert auf der openWB-Oberfläche angezeigt wurde.
Als ich das automatisch gemacht habe, sah ich keine Veränderungen mehr, die Daten kamen nicht an. Im Log fand ich folgende Meldung:
Code: Alles auswählen
2024-09-06 12:02:02,383 - Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/smarthome/mqtt/watt.py", line 60, in <module>
client.loop()
File "/home/openwb/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 1120, in loop
return self._loop(timeout)
File "/home/openwb/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 1164, in _loop
rc = self.loop_read()
File "/home/openwb/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 1556, in loop_read
rc = self._packet_read()
File "/home/openwb/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 2439, in _packet_read
rc = self._packet_handle()
File "/home/openwb/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 3033, in _packet_handle
return self._handle_publish()
File "/home/openwb/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 3327, in _handle_publish
self._handle_on_message(message)
File "/home/openwb/.local/lib/python3.9/site-packages/paho/mqtt/client.py", line 3570, in _handle_on_message
on_message(self, self._userdata, message)
File "/var/www/html/openWB/packages/modules/smarthome/mqtt/watt.py", line 30, in on_message
powerc = int(msg.payload)
ValueError: invalid literal for int() with base 10: b'1.0'
Viele Grüße,
Eckhard