Hilfestellung: OpenWB MQTT Broker als Bridge

Antworten
CChris
Beiträge: 92
Registriert: Mo Okt 11, 2021 12:34 pm

Hilfestellung: OpenWB MQTT Broker als Bridge

Beitrag von CChris »

Hallo Zusammen,

ich brauche mal eine gewisse Hilfestellung... :-(
Zuerst einmal aber zu der Historie meines derzeitigen "Problems" in der Hoffnung, dass diese ggf. weiter hilft - oder Ihr mir anhand derer weitere Hinweise und tipps geben könnt :)

So...
Um meine OpenWB in mein Smarthome-System zu integrieren, hatte ich mich an den verlinkten Blogbeitrag gehalten.
Kurz zusammengefasst:

"2 x Broker, kein Client

Das eigentlich “Problem” besteht darin, dass die openWB als auch Home Assistant einen MQTT-Brocker implementieren.
Somit haben wir zwei Brocker (=Server) aber keinen Client.
Dieses “Problem” kann man aber mit einer Bridge im Home Assistant lösen.
...
...
Im Home Assistant benötigt es das Add-on Mosquitto broker. Es ist ziemlich wahrscheinlich, dass das Add-On bereits installiert ist, da es z.B. für Zigbee2mqtt ebenfalls benötigt wird.
"

Dazu wird eine Konfigurationsdatei für den MQTT Broker geteilt, welcher als Addon in Home-Assistant eingerichtet wird.

All dies hatte ich so vorgenommen - und es hat auch alles soweit funktioniert.
Mit einem Problem:

Wenn eine der Komponenten (entweder die Wallbox - oder HomeAssistant) neu gestartet hat, dann hat der Broker, welcher als Bridge lief, alte Daten raus geschickt.
Ich nehme an, dass dies ein Zusammenspiel zwischen retained Nachrichten und einem Reboot des Addons, also des "Bridge-Brokers" war, da dieser mit dem neustart von HomeAssistant auch neu gestartet wurde.

Zwischenzeitlich hatte ich das Setup geändert - und den "Bridge-Broker" als >man in the middle< entfernt.
Das Problem mit den alten Daten trat zwar unter ganz bestimmten Umständen immer noch ab und an auf, aber deutlich nicht mehr bei jedem Neustart.
[Dazu gibt es hier aktuell auch noch einen Thread von mir]...

Nun zum EIGENTLICHEN Problem:
Ich habe noch andere Komponenten, welche Daten über MQTT verschicken.
Diese nutzen andere Topics - und ich wollte das ganze ungern über den Broker in der OpenWB laufen lassen.

Mein neues Setup hatte ich mir daher folgender Maßen überlegt:

1. Einen Separaten Container / VM mit einem Mosquitto Broker.
Dieser läuft nun nicht mehr als Addon in HomeAssistant (und ist somit abhängig von irgendwelchen Reboots)

2. Meine Clients verbinden sich nun auf diesen Broker... -> das funktioniert auch soweit...
2022-11-04 23_00_20-MQTT Explorer.png
2022-11-04 23_00_20-MQTT Explorer.png (8.1 KiB) 2634 mal betrachtet
3. Der Broker auf der OpenWB sollte nun - sofern möglich, als Bridge konfiguriert werden und die Daten an den "Hauptbroker" senden.
Die Konfiguration dazu sieht wie folgt aus:
2022-11-04 23_02_21-openWB.png
2022-11-04 23_03_13-openWB.png
(11.41 KiB) Noch nie heruntergeladen
Problem:
Ich sehe im MQTT Explorer nicht, dass von der OpenWB etwas an meinem Broker ankommt.
Dort taucht nichts mit "owbhass/openWB" oder gar nur mit "openWB" auf...

Ich bin mir jetzt nicht Sicher, ob es ggf. an den Einstellungen für TLS liegt... ich habe in meinem lokalen Broker (noch) keine Zertifikate hinterlegt, bzw. Konfigurationen bzgl. TLS hinterlegt...

Ist ggf. "nur" das dass Problem?
Oder habe ich irgend einen anderen "grundlegenden" Fehler in meinem Setup?
PV: 13,26 kWp; SolarEdge SE12.5K
OpenWB Series2 standard (11 kWh) + HomeAsisstant Integration
hominidae
Beiträge: 1409
Registriert: Di Sep 03, 2019 4:13 pm
Has thanked: 7 times
Been thanked: 8 times

Re: Hilfestellung: OpenWB MQTT Broker als Bridge

Beitrag von hominidae »

Die IPs hast Du geschwärzt (warum eigentlich...werden wohl keine öffentlichen IPs sein) ... sind der interne Broker und openWB im gleichen IP-Netz?...sonst Firewall kontrollieren.
TLS? Ja, könnte sein...zumal Du auch den non-TLS port des internen Brokers in der openWB-Bridge angibst...kann also auch ein Port Konfigurations-Problem sein.

...Alternative: konfiguriere die Bridge einfach in Deinem internen Broker und lass die auf Seiten openWB weg. TLS brauchst Du im eigenen Netz eh nicht.
CChris
Beiträge: 92
Registriert: Mo Okt 11, 2021 12:34 pm

Re: Hilfestellung: OpenWB MQTT Broker als Bridge

Beitrag von CChris »

Hi,
...Alternative: konfiguriere die Bridge einfach in Deinem internen Broker und lass die auf Seiten openWB weg
Das war die Ausgangslage - mein "eigener" Broker war als Bridge konfiguriert, das hatte aber eben zu dem Phänomen geführt, dass ich immer wieder "alte Daten" von ihm bekommen hatte, wenn es einen neustart gab.

OK, hier KANN es daran liegen, dass der Broker damals noch als Addon in HomeAssistant mit lief - eventuell verhällt sich ein Broker der eigenständig läuft auch etwas "stabiler"... das müsste ich ggf. noch einmal testen.

Ein anderes Problem könnte dann aber sein, dass mein "Bridged-Broker" eben keine Topics von anderen Clients empfangen kann, da er eben wieder 'nur' als client läuft.
Damit bleibt der Broker auf der Wallbox wieder der Empfänger für alle anderen Geräte und muss diese an die Bridge weitergeben.

Gewonnen habe ich also nichts, wenn ich die Wallbox als Broker belasse und nur meinen eigenen als bridge konfiguriere... ?!
PV: 13,26 kWp; SolarEdge SE12.5K
OpenWB Series2 standard (11 kWh) + HomeAsisstant Integration
rleidner
Beiträge: 967
Registriert: Mo Nov 02, 2020 9:50 am
Has thanked: 5 times
Been thanked: 23 times

Re: Hilfestellung: OpenWB MQTT Broker als Bridge

Beitrag von rleidner »

Ich habe mehrere mosquitto broker laufen auf raspi, NAS als docker container.
Die bridge ist immer auf diesen brokern, also NICHT in der owb.
Die Konfiguration sieht z.B. so aus, file in .../mosquitto/conf.d:

Code: Alles auswählen

#
# bridge to openWB Wallbox
#
connection openwb
address 192.168.1.171:1883
start_type automatic
topic # in  1 from_owb/ openWB/
topic # out 1 to_owb/set/ openWB/set/
local_clientid openwb.mosquitto
try_private false
cleansession false
topics von der owb haben das prefix from_owb, topics an die owb werden auf to_owb/set geschrieben.
Bisher habe ich nicht erlebt, dass alte Daten herumschwirren würden.
Die mosquitto broker laufen aber auch sehr lange ohne restart, Nonate/Jahre.
Neben den Anwendungen, die die bridge nutzen arbeite ich in letzter Zeit vor allem direkt mit dem owb-Broker z.B. von NR.
Ein weiteres Beispiel: diese bridge läuft auf meinem test-owb.
Die sorgt dafür, dass die Daten der produktiven owb auf diese test-owb gespiegelt werden.
Auf der test-owb sind evu, pv, lp als mqtt Module konfiguriert.

Code: Alles auswählen

#
# bridge to openWB Wallbox
#
connection openwbprod
address 192.168.1.171:1883
start_type automatic
topic evu/# in  1 openWB/set/ openWB/
topic pv/# in  1 openWB/set/ openWB/
topic lp/# in  1 openWB/set/ openWB/
local_clientid openwb.mosquitto
try_private false
cleansession false
openWB-2 Standard+ | openWB EVU Kit v2 MID| 9,9kWp mit Kostal Plenticore 8.5 plus | VW ID.3, Kia EV6, Smart EQ forfour
hominidae
Beiträge: 1409
Registriert: Di Sep 03, 2019 4:13 pm
Has thanked: 7 times
Been thanked: 8 times

Re: Hilfestellung: OpenWB MQTT Broker als Bridge

Beitrag von hominidae »

CChris hat geschrieben: Fr Nov 11, 2022 11:48 am Gewonnen habe ich also nichts, wenn ich die Wallbox als Broker belasse und nur meinen eigenen als bridge konfiguriere... ?!
Es ist total egal, welch Seite die Bridge einrichtet.
Wenn Du meinst, das Du es Seitens openWB machen willst, dann mach es...und natürlich geht das auch.
Dein "Problem" habe ich seit ich die Bridge (wohlgemerkt vom zentralen Broker zur openWB) nie erlebt...und die läuft seit Ende 2018 durch.
Tailor
Beiträge: 20
Registriert: Di Jun 14, 2022 8:22 pm

Re: Hilfestellung: OpenWB MQTT Broker als Bridge

Beitrag von Tailor »

Hallo,
vielleicht kann mir jemand helfen.
Ich versuche nun seit Tagen wieder eine Verbindung via Home Assistant zur Open WB herzustellen.
Die Anbindung ist nun viele Monate stabil gelaufen und plötzlich waren die Werte alt und wurden nicht mehr aktualisiert.
Habe erst ein Problem aufgrund einer Konfig bei mir vermutet, allerdings habe ich mitlerweile MQTT und das OpenWBmqtt Plugin mehrfach gelöscht und neu aufgesetzt.
Ich stehe völlig auf dem Schlauch und komme hier nicht mehr weiter.

ich habe alles nach der Anleitung von https://tech-engineering.de/home-assistant-und-openwb/
gemacht und genau so ist es auch vorher gelaufen.

Ich habe auf der OpenWB das aktuellste Stable 1.9.295 und HA auf dem aktuellsten Release stand sowie MQTT aktuell.
Gibt es irgendetwas was ich noch versuchen kann?

Hier mal ein Log aus dem Broker von HA:
die .245 ist die OpenWB
mqtt explorer sowie mein Automower lassen sich problemlos verbinden. Der Automower läuft auch zuverlässig.
mqtt Explorer direkt auf die OpenWB funktioniert ebenfalls tadellos. Nur keine Verbindung mit Home Assistant.

Code: Alles auswählen

 2023-04-02 00:22:40: Connecting bridge newopenwb (192.168.1.245:1883)
2023-04-02 00:22:40: mosquitto version 2.0.15 running
2023-04-02 00:22:40: New connection from 192.168.1.219:63132 on port 1883.
2023-04-02 00:22:40: New client connected from 192.168.1.219:63132 as mqtt-explorer-334c9a1c (p2, c1, k60, u'mqtt-user').
2023-04-02 00:22:40: New connection from 127.0.0.1:42412 on port 1883.
2023-04-02 00:22:40: Client <unknown> closed its connection.
2023-04-02 00:22:43: New connection from 192.168.1.242:11315 on port 1883.
2023-04-02 00:22:43: New client connected from 192.168.1.242:11315 as ROBONECT40E4EB (p2, c1, k120, u'mqtt-user').
2023-04-02 00:22:48: New connection from 172.30.32.1:52999 on port 1883.
2023-04-02 00:22:48: New client connected from 172.30.32.1:52999 as 1ph2ML3sqbxOY5cv1SIFQJ (p2, c1, k60, u'mqtt-user').
E3DC Pro 19.5 + Fronius Symo | Solarleistung 19.5kwp Süd
OpenWB Series2 Standard+
EV: Mini Cooper SE
hominidae
Beiträge: 1409
Registriert: Di Sep 03, 2019 4:13 pm
Has thanked: 7 times
Been thanked: 8 times

Re: Hilfestellung: OpenWB MQTT Broker als Bridge

Beitrag von hominidae »

Ich würde HA und openWB Broker über einen eigenen, lokalen Broker trennen. Da braucht es keinerlei Plugins.
Also, kurz:
  • eigenen mosquitto Broker aufsetzen
  • HA aufsetzen, mit lokalen Broker verbinden
  • im lokalen Broker eine Bridge zur openB aufsetzen...nicht die Konfig einer mqtt-Bridge aus openWB oder aus HA verwenden.
Das läuft äußerst stabil und wechselwirkungsfrei.
Antworten