hallo.
kann man mqtt devices so einstellen dass autocreate devices den bamen immer gleich behalten?
nach reboot von teslamate wird neues device angelegt und die werte von duv. verknüpfungen nicht mehr aktualisiert
Hi,
Du musst deinem MQTT "Sender" sagen, er soll jedes mal die gleiche ClientID verwenden.
Wenn das nicht geht, musst Du einen separaten MQTT2_SERVER für diese Verbindung definieren und das attr ClientID setzen. Siehe commandref:
https://fhem.de/commandref.html#MQTT2_SERVER
Schöne Weihnachten
Otto
...oder einfach in der readingList jeweils die CID-präfixe löschen, wenn sich diese Gegenstelle nicht überreden läßt, die ClientID zu behalten...
(mit (RAW-Def-) Code ist es wesentlich einfacher, konkret zu helfen...)
hmmm, schöne brocken haut ihr mir vor die füsse. werd mich schlau machen.
Na ja, jedem Anfänger sagt man, er soll Infos liefern warum also nicht dem Fortgeschrittenen, der nicht ins Wiki schaut. Ist nämlich ein "Klassiker": https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele#St.C3.A4ndig_neue_Devices.3F (https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele#St.C3.A4ndig_neue_Devices.3F)
Zitat von: satprofi am 26 Dezember 2021, 10:00:17
hmmm, schöne brocken haut ihr mir vor die füsse. werd mich schlau machen.
Naja Du hattest auch nur ein Bröckchen :)
sehe ich das richtig, wenn ich die readingList so ändere
TESLAMATE_.*:teslamate/cars/1/rated_battery_range_km:.* cars_1_rated_battery_range_km
das jede meldung mit "TESLAMATE.*" eingelesen wird, egal wie die definitation des MQTT2 client lautet?
ich würde es so machen:
teslamate/cars/1/rated_battery_range_km:.* cars_1_rated_battery_range_km
Hinweis teslamate verwendet mosquitto - dummerweise lässt sich die ClientID offenbar nicht ändern. https://docs.teslamate.org/docs/configuration/environment_variables
Zitatsehe ich das richtig, wenn ich die readingList so ändere [...]
Falls clientId immer mit TESLAMATE_ anfaengt, dann ja.
Oder auch: beim Eintreffen einer MQTT-Nachricht werden alle readingsList Eintraege erst mit $topic:$message und dann mit $clientid:$topic:$message geprueft.
Die Pruefungen fuer passende ClientIds sind etwas optimiert, bei vielen MQTT2_DEVICEs mit jeweils vielen unterschiedlichen topics sollte das einen merkbaren Unterschied ausmachen.
ok, danke.
fängt immer mit telsmate an, zusätzlich einer langen zahlenreihe, wo aber immer nur die letzten drei sich ändern.
habe es jetzt mit meinem beispiel versucht, readings werden z.zt. aktualisiert.
mal sehen was bei änderung der zahlenreihe.
Zitat von: satprofi am 27 Dezember 2021, 09:15:43
ok, danke.
fängt immer mit telsmate an, zusätzlich einer langen zahlenreihe, wo aber immer nur die letzten drei sich ändern.
habe es jetzt mit meinem beispiel versucht, readings werden z.zt. aktualisiert.
mal sehen was bei änderung der zahlenreihe.
Hast Du Lust mir ein kleines HowTo zu tippen, wie Du FHEM und TeslaMate miteinander "verbunden" hast?
Letzteres läuft auf meinem NAS in einem Docker-Container, während meine FHEM Instanz auf einem Raspberry Pi läuft. Ich würde gern einige wenige Daten aus Teslamate für mein FHEM-Dashboard verwenden wollen (z.B. den Akkustand)
Hey, magst du die Config in Fhem für TeslaMate MQTT mit uns teilen?
Bei mir läufts inzwischen seit Monaten problemlos.
1.) MQTT2-Client definieren
( https://wiki.fhem.de/wiki/MQTT2_CLIENT )
Der typische Teslamate-Port ist 1883 (je nachdem auf welchem Gerät es läuft, muss ggf. dort der Port auch noch in einer lokal aktiven Firewall freigegeben werden damit Zugriff möglich)
2.) MQTT2_DEVICE definieren
( https://wiki.fhem.de/wiki/MQTT2_DEVICE )
Bei mir läuft Teslamate in einem Docker-Container auf einer Synology Diskstation und FHEM auf einem Raspberry Pi
Zitat von: Dracolein am 29 März 2022, 17:50:48
Hast Du Lust mir ein kleines HowTo zu tippen, wie Du FHEM und TeslaMate miteinander "verbunden" hast?
Letzteres läuft auf meinem NAS in einem Docker-Container, während meine FHEM Instanz auf einem Raspberry Pi läuft. Ich würde gern einige wenige Daten aus Teslamate für mein FHEM-Dashboard verwenden wollen (z.B. den Akkustand)
sorry für späte antwort.
denke du hast es schon hinbekommen, wenn nicht dann nochmals hier:
leg die eine .env datei an
MQTT_HOST=##.##.##.##
MQTT_PORT=1883
MQTT_USERNAME=#####
MQTT_PASSWORD=#####
dann musst du in deiner docker-compose.yml folgende zeilen hinzufügen:
- MQTT_HOST=${MQTT_HOST}
- MQTT_PORT=${MQTT_PORT}
- MQTT_USERNAME=${MQTT_USERNAME}
- MQTT_PASSWORD=${MQTT_PASSWORD}
und dann teslamate neu starten docker-compose up -d
danach sollten die readings unter MQTT erscheinen
Zitat von: satprofi am 11 März 2023, 11:36:29
sorry für späte antwort.
denke du hast es schon hinbekommen, wenn nicht dann nochmals hier:
leg die eine .env datei an
MQTT_HOST=##.##.##.##
MQTT_PORT=1883
MQTT_USERNAME=#####
MQTT_PASSWORD=#####
dann musst du in deiner docker-compose.yml folgende zeilen hinzufügen:
- MQTT_HOST=${MQTT_HOST}
- MQTT_PORT=${MQTT_PORT}
- MQTT_USERNAME=${MQTT_USERNAME}
- MQTT_PASSWORD=${MQTT_PASSWORD}
und dann teslamate neu starten docker-compose up -d
danach sollten die readings unter MQTT erscheinen
Teslamate läuft bei mir schon so weit, aber wie sieht die Device Definition bei FHEM bei euch aus?
define TeslaMate MQTT2_CLIENT 192.168.***.***:1883
attr TeslaMate autocreate no
attr TeslaMate room Teslamate
define MQTT2_TeslaMate MQTT2_DEVICE TeslaMate
attr MQTT2_TeslaMate autocreate 1
attr MQTT2_TeslaMate 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\
\
\
attr MQTT2_TeslaMate room Teslamate
attr MQTT2_TeslaMate stateFormat cars_1_usable_battery_level