Kurzbeschreibung

Moderator: c2j2

Antworten
Benutzeravatar
c2j2
Site Admin
Beiträge: 612
Registriert: 12.Mai 2023, 09:16
Wohnort: Allensbach, Bodensee
Has thanked: 21 times
Been thanked: 59 times
Kontaktdaten:

Kurzbeschreibung

Beitrag von c2j2 »

Was ist MQTT eigentlich (kurz)?

MQTT ist ein sehr schlankes Nachrichtenprotokoll, ursprünglich für IoT-Geräte mit wenig Bandbreite entwickelt. Prinzip: Ein Gerät – beispielsweise hier das OVMS-Modul im Auto (https://forum.chk.digital/viewforum.php?f=172) – „veröffentlicht" (publish) Werte unter einem bestimmten „Topic" (einer Art Adresse, ähnlich einem Verzeichnispfad, z. B. ovms/<Nutzername>/<Fahrzeug-ID>/metric/v/b/soc für den Akkustand) bei einem zentralen Server, dem sogenannten Broker. Andere Programme – z. B. eine App, Home Assistant oder eine eigene Auswertung wie meine App – „abonnieren" (subscribe) dieses Topic und bekommen dann automatisch jeden neuen Wert zugestellt, sobald er sich ändert. Man braucht also keine dauerhafte direkte Verbindung zum Auto, beide Seiten sprechen nur mit dem Broker.

Woher bekommt man einen günstigen/kostenlosen MQTT-Server?
  • Speziell für OVMS gemacht (am einfachsten, weil ohne eigene Server-Einrichtung): Dexters-Web MQTT-Server bzw. turboserv.0-c.de – Community-Broker rund um OVMS, kostenlos nutzbar
  • EMQX Cloud Serverless – dauerhaft kostenloser Tarif: 1 Mio. Session-Minuten/Monat, 1 GB Traffic/Monat, keine Kreditkarte nötig; eigener, privater Broker-Zugang
  • HiveMQ Cloud (Free/Serverless) – dauerhaft kostenloser Tarif: 100 Verbindungen, 10 GB Traffic/Monat, ebenfalls ohne Kreditkarte
  • Selbst hosten: Eclipse Mosquitto auf einem Raspberry Pi/vServer – komplett kostenlos, dafür muss man Server/Portfreigabe/TLS-Zertifikat selbst pflegen
Für den Privatgebrauch (nur der eigene SOC) reicht in allen Fällen locker die kostenlose Stufe.

SOC-Abfrage per MQTT einrichten

Dafür sind zwei Dinge nötig:

1. Das OVMS-Modul muss an einen MQTT-Broker senden ("Server V3")
Dazu im Modul selbst Serveradresse, Port (meist 8883 mit TLS) und Zugangsdaten des oben gewählten Brokers hinterlegen. Aufbau der Topics und TLS-Absicherung sind hier beschrieben:
docs.openvehicles.com – MQTT Topic Structure & TLS (kurz: Modul veröffentlicht seine Metriken unter ovms/<Nutzername>/<Fahrzeug-ID>/metric/..., der SOC steht unter .../metric/v/b/soc)

2. In der App die Anzeige einrichten
So richtet man z. B. in OVMS Connect (der MQTT-basierten Community-App) die Akkustandsabfrage ein:
  1. „Einstellungen" > „Liste der Autos"
  2. gewünschtes Auto auswählen
  3. bei „Akkustandsabfrage" den Punkt „MQTT" wählen und auf „Einstellungen" tippen
  4. im Einstellungsdialog den Server eintragen (Adresse/Port des Brokers von oben) und auf „Update" tippen – die App liest darüber den Topic-Baum vom Broker ein
  5. unten den passenden Topic auswählen, unter dem der SOC-Wert steht (endet meist auf „.../metric/v/b/soc")
Screenshot_20260826_064208.png
Screenshot_20260826_064208.png (73.61 KiB) 8 mal betrachtet
Ist das einmal eingerichtet, aktualisiert sich der angezeigte Akkustand live, sobald das Modul einen neuen Wert an den Broker sendet.
  • Autos: Nissan Leaf, Tesla M3 SR+ --- WB: SmartWB, go-eCharger V3
  • PV: 22.6 kWp Süd+Nord (ja!) --- WR: SolarEdge, Fronius --- HS: Sonnen Performance 20 kWh
Antworten

Zurück zu „MQTT“