von Fossi » 20 Nov 2023 21:30
ok - was genau macht ein Treiber und was genau ein Service?
- Bildschirmfoto vom 2023-11-20 21-11-46.png (68.37 KiB) 1617 mal betrachtet
Das ist die Auswertung vom MQTT Explorer und dort sind bereits viele Werte der WeeWX zu sehen. Vermutlich sind diese Werte also schon im System und Treiber/Service extrahieren diese in die Gui oder wie muss ich mir das Vorstellen? Da hab ich noch nicht umrissen, wie das genau geht.
Bezüglich des KS300 - das ist ja kein geschlossenes System mehr. Letztlich auch nur eine Wippe, die über einen Reedkontakt an einem ESP8266 die Auslösungen zählt, in mm umrechnet und das Ergibnis per MQTT pushed. Das habe ich tatsächlich auch schon irgendwie in die logfiles bekommen:
Code: Alles auswählen
ov 20 21:20:59 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) MessageCallbackProvider data-> incoming topic: /MAR-ESP-06/rainfall/total, QOS: 0, retain: 0, payload: b'1500.66'
Nov 20 21:20:59 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) TopicManager data-> incoming /MAR-ESP-06/rainfall/total: 'esp_rain': '0.0'
Nov 20 21:21:06 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.gw1000: Next update in 20 seconds
Nov 20 21:21:06 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) TopicManager data-> outgoing /MAR-ESP-06/rainfall/total: 'dateTime': '1700511659.0651348', 'esp_rain': '0.0', 'usUnits': '16'
Nov 20 21:21:06 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) TopicManager data-> outgoing accumulated /MAR-ESP-06/rainfall/total: 'dateTime': '1700511666.0', 'esp_rain': '0.0', 'usUnits': '17'
Nov 20 21:21:06 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) data-> final packet is 2023-11-20 21:21:06 CET (1700511666): 'barometer': '1002.0', 'dateTime': '1700511666.0', 'daymaxwind': '2.6', 'dayRain': '16.5', 'esp_rain': '0.0', 'inHumidity': '60', 'inTemp': '20.4', 'luminosity': '0.0', 'monthRain': '34.9', 'outHumidity': '95', 'outTemp': '7.7', 'pressure': '1002.0', 'radcompensation': '1', 'rain_piezo': '0.0', 'rainRate': '0.0', 'stormRain': '31.6', 'usUnits': '17', 'UV': '0', 'uvradiation': '0.0', 'weekRain': '16.5', 'windDir': '89', 'windGust': '0.5', 'windSpeed': '0.0', 'ws90_batt': '3.04', 'ws90_sig': '4', 'yearRain': '34.9'
Nov 20 21:21:07 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.gw1000: Next update in 20 seconds
Nov 20 21:21:07 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) data-> final packet is 2023-11-20 21:21:06 CET (1700511666): 'barometer': '1002.0', 'dateTime': '1700511666', 'daymaxwind': '2.6', 'dayRain': '16.5', 'inHumidity': '60', 'inTemp': '20.4', 'luminosity': '0.0', 'monthRain': '34.9', 'outHumidity': '95', 'outTemp': '7.7', 'pressure': '1002.0', 'radcompensation': '1', 'rain_piezo': '0.0', 'rainRate': '0.0', 'stormRain': '31.6', 'usUnits': '17', 'UV': '0', 'uvradiation': '0.0', 'weekRain': '16.5', 'windDir': '89', 'windGust': '0.5', 'windSpeed': '0.0', 'ws90_batt': '3.04', 'ws90_sig': '4', 'yearRain': '34.9'
Leider weiß ich nicht, wie ich eine solche Ausgabe weiter verarbeiten kann. esp_rain wird als saldierender Zähler wiedergegeben. Wenn ich nun Wasser eingieße, erhöht sich der payload und es wird die neue Differenz erzeugt und wiedergegeben, somit kann ich die mm-Zahl schon in den Logs finden. Soweit so gut, aber noch nicht am Ziel.
VG - Markus
ok - was genau macht ein Treiber und was genau ein Service?
[attachment=0]Bildschirmfoto vom 2023-11-20 21-11-46.png[/attachment]
Das ist die Auswertung vom MQTT Explorer und dort sind bereits viele Werte der WeeWX zu sehen. Vermutlich sind diese Werte also schon im System und Treiber/Service extrahieren diese in die Gui oder wie muss ich mir das Vorstellen? Da hab ich noch nicht umrissen, wie das genau geht.
Bezüglich des KS300 - das ist ja kein geschlossenes System mehr. Letztlich auch nur eine Wippe, die über einen Reedkontakt an einem ESP8266 die Auslösungen zählt, in mm umrechnet und das Ergibnis per MQTT pushed. Das habe ich tatsächlich auch schon irgendwie in die logfiles bekommen:
[code]ov 20 21:20:59 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) MessageCallbackProvider data-> incoming topic: /MAR-ESP-06/rainfall/total, QOS: 0, retain: 0, payload: b'1500.66'
Nov 20 21:20:59 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) TopicManager data-> incoming /MAR-ESP-06/rainfall/total: 'esp_rain': '0.0'
Nov 20 21:21:06 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.gw1000: Next update in 20 seconds
Nov 20 21:21:06 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) TopicManager data-> outgoing /MAR-ESP-06/rainfall/total: 'dateTime': '1700511659.0651348', 'esp_rain': '0.0', 'usUnits': '16'
Nov 20 21:21:06 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) TopicManager data-> outgoing accumulated /MAR-ESP-06/rainfall/total: 'dateTime': '1700511666.0', 'esp_rain': '0.0', 'usUnits': '17'
Nov 20 21:21:06 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) data-> final packet is 2023-11-20 21:21:06 CET (1700511666): 'barometer': '1002.0', 'dateTime': '1700511666.0', 'daymaxwind': '2.6', 'dayRain': '16.5', 'esp_rain': '0.0', 'inHumidity': '60', 'inTemp': '20.4', 'luminosity': '0.0', 'monthRain': '34.9', 'outHumidity': '95', 'outTemp': '7.7', 'pressure': '1002.0', 'radcompensation': '1', 'rain_piezo': '0.0', 'rainRate': '0.0', 'stormRain': '31.6', 'usUnits': '17', 'UV': '0', 'uvradiation': '0.0', 'weekRain': '16.5', 'windDir': '89', 'windGust': '0.5', 'windSpeed': '0.0', 'ws90_batt': '3.04', 'ws90_sig': '4', 'yearRain': '34.9'
Nov 20 21:21:07 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.gw1000: Next update in 20 seconds
Nov 20 21:21:07 NET3-WEEWX1 python3[3619]: weewx[3619] DEBUG user.MQTTSubscribe: (Service) data-> final packet is 2023-11-20 21:21:06 CET (1700511666): 'barometer': '1002.0', 'dateTime': '1700511666', 'daymaxwind': '2.6', 'dayRain': '16.5', 'inHumidity': '60', 'inTemp': '20.4', 'luminosity': '0.0', 'monthRain': '34.9', 'outHumidity': '95', 'outTemp': '7.7', 'pressure': '1002.0', 'radcompensation': '1', 'rain_piezo': '0.0', 'rainRate': '0.0', 'stormRain': '31.6', 'usUnits': '17', 'UV': '0', 'uvradiation': '0.0', 'weekRain': '16.5', 'windDir': '89', 'windGust': '0.5', 'windSpeed': '0.0', 'ws90_batt': '3.04', 'ws90_sig': '4', 'yearRain': '34.9'
[/code]
Leider weiß ich nicht, wie ich eine solche Ausgabe weiter verarbeiten kann. esp_rain wird als saldierender Zähler wiedergegeben. Wenn ich nun Wasser eingieße, erhöht sich der payload und es wird die neue Differenz erzeugt und wiedergegeben, somit kann ich die mm-Zahl schon in den Logs finden. Soweit so gut, aber noch nicht am Ziel.
VG - Markus