Hallo zusammen,
nach stundenlanger Recherche & Studieren der ausführlichen MQTT Doku habe ich Anfänger tatsächlich eine Kommunikationsverbindung zwischen meiner FHEM-Instanz und meiner (auf anderem Gerät installierten) Teslamate-Datenlogger Instanz hinbekommen.
Dazu habe ich ein MQTT2-CLient erstellt:
Internals:
BUF
CFGFN
Clients :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
ClientsKeepOrder 1
DEF 192.168.178.10:1883
DeviceName 192.168.178.10:1883
FD 18
FUUID 62f68........
NAME TeslaMate
NR 40122
PARTIAL
STATE opened
TYPE MQTT2_CLIENT
WBCallback
clientId TeslaMate
eventCount 5
lastMsgTime 1660326727.32871
nextOpenDelay 5
MatchList:
1:MQTT2_DEVICE ^.
2:MQTT_GENERIC_BRIDGE ^.
READINGS:
2022-08-12 19:09:37 state opened
Attributes:
autocreate no
room MQTT
und danach ewig nicht verstanden, wie ich ein MQTT2-Device erstelle, bis selbiges irgendwann von allein erstellt wurde und derzeit so aussieht:
Internals:
CFGFN
CID TeslaMate
DEF TeslaMate
FUUID 62f68bc2-.........
IODev TeslaMate
LASTInputDev TeslaMate
MSGCNT 112
NAME MQTT2_TeslaMate
NR 40412
STATE ???
TYPE MQTT2_DEVICE
TeslaMate_MSGCNT 112
TeslaMate_TIME 2022-08-12 19:50:10
eventCount 121
READINGS:
2022-08-12 19:20:02 IODev TeslaMate
2022-08-12 19:39:36 cars_1_battery_level 85
2022-08-12 19:37:08 cars_1_charge_energy_added 5.27
2022-08-12 19:37:08 cars_1_charge_limit_soc 80
2022-08-12 19:46:28 cars_1_doors_open false
2022-08-12 19:44:36 cars_1_est_battery_range_km 480.0
2022-08-12 19:44:36 cars_1_ideal_battery_range_km 436.52
2022-08-12 19:50:10 cars_1_inside_temp 31.0
2022-08-12 19:46:28 cars_1_locked true
2022-08-12 19:37:56 cars_1_outside_temp 30.0
2022-08-12 19:44:36 cars_1_rated_battery_range_km 436.52
2022-08-12 19:50:10 cars_1_since 2022-08-12T17:50:10.411440Z
2022-08-12 19:50:10 cars_1_state suspended
2022-08-12 19:45:57 cars_1_trunk_open false
2022-08-12 19:38:24 cars_1_usable_battery_level 85
2022-08-12 19:44:06 cars_1_windows_open false
Attributes:
autocreate 1
readingList TeslaMate:teslamate/cars/1/charge_energy_added:.* cars_1_charge_energy_added
TeslaMate:teslamate/cars/1/battery_level:.* cars_1_battery_level
TeslaMate:teslamate/cars/1/since:.* cars_1_since
TeslaMate:teslamate/cars/1/ideal_battery_range_km:.* cars_1_ideal_battery_range_km
TeslaMate:teslamate/cars/1/rated_battery_range_km:.* cars_1_rated_battery_range_km
TeslaMate:teslamate/cars/1/state:.* cars_1_state
TeslaMate:teslamate/cars/1/est_battery_range_km:.* cars_1_est_battery_range_km
TeslaMate:teslamate/cars/1/usable_battery_level:.* cars_1_usable_battery_level
TeslaMate:teslamate/cars/1/inside_temp:.* cars_1_inside_temp
TeslaMate:teslamate/cars/1/display_name:.* cars_1_display_name
TeslaMate:teslamate/cars/1/version:.* cars_1_version
TeslaMate:teslamate/cars/1/sentry_mode:.* cars_1_sentry_mode
TeslaMate:teslamate/cars/1/locked:.* cars_1_locked
TeslaMate:teslamate/cars/1/windows_open:.* cars_1_windows_open
TeslaMate:teslamate/cars/1/doors_open:.* cars_1_doors_open
TeslaMate:teslamate/cars/1/trunk_open:.* cars_1_trunk_open
TeslaMate:teslamate/cars/1/frunk_open:.* cars_1_frunk_open
TeslaMate:teslamate/cars/1/outside_temp:.* cars_1_outside_temp
TeslaMate:teslamate/cars/1/charge_limit_soc:.* cars_1_charge_limit_soc
TeslaMate:teslamate/cars/1/time_to_full_charge:.* cars_1_time_to_full_charge
room MQTT2_DEVICE
Teslamate ist ein Datenlogger für Tesla Fahrzeuge, der einen MQTT Mosquitto Server laufen hat und diverse Variablen zum auslesen mittels MQTT zur Verfügung stellt. Die Übersicht der Topics gibt es hier:
https://docs.teslamate.org/docs/integrations/mqtt
Zu meiner Frage:
Das MQTT2-Device hat sich wie gesagt selbst erstellt, die o.g. Readings waren kurz darauf präsent.
Leider sind nicht alle Readings aus der Teslamate-Doku vorhanden, also habe ich das Attribut readingslist entsprechend manuell ergänzt in der Hoffnung, dass bei folgenden Statusaktualisierungen selbige als Readings erscheinen würden....
Leider war dies nicht der Fall und das ist meine eigentliche Frage:
Habe ich etwas falsch gemacht? Oder liegt das Problem auf Seiten von TeslaMate, dass die Daten dort nicht wie in der Doku erwähnt abrufbar sind?
Vielen Dank vorab für eine Einschätzung.
ZitatLeider sind nicht alle Readings aus der Teslamate-Doku vorhanden, also habe ich das Attribut readingslist entsprechend manuell ergänzt in der Hoffnung, dass bei folgenden Statusaktualisierungen selbige als Readings erscheinen würden....
Mit der autocreate Voreinstellung werden alle gesendeten Daten als Reading in FHEM angelegt.
readingsList manuell zu ergaenzen ist fuer diesen Zweck sinnlos.
Um mehr Daten zu bekommen muss man den Sender motivieren, diese auch zu schicken.
Okay danke. Hat man als Client Einfluss auf deine besagte ,,Motivation des Senders"?
ZitatOkay danke. Hat man als Client Einfluss auf deine besagte ,,Motivation des Senders"?
Nein.
Man kann nur per MQTT2_CLIENT subscriptions Attribut weniger bestellen als die Voreinstellung (# == gib mir alles).
Doku des Senders konsultieren. Manche kann/muss man auffordern, was zu senden. Bsp: ebus.