Da auf dem HA ein eigener Broker läuft und wir schon einen MQTT unter Integrationen auf den HA Broker haben, muss eine Bridge geschaffen werden, da HA nicht zwei Broker unter Integration anfragen kann.
MQTT Bridge im Mosquitto des HA anlegen (/share/pekaqy.conf):
connection pekaway_core
address 192.168.1.5:1883 (ist ip:port des core pro mqtt)
topic pkw/# both 0
dann im MQTT → Konfig → Ein Paket veröffentlichten mit Retain on:
damit das autodiscovery funktioniert. So braucht es nicht separat in einer konfig Datei angelegt werden.
homeassistant/switch/pekaway_relay1/config
{
“name”: “Relais 1”,
“unique_id”: “pekaway_relay1”,
“command_topic”: “pkw/cmnd/relay/1/POWER”,
“state_topic”: “pkw/cmnd/relay1/POWER”,
“payload_on”: “true”,
“payload_off”: “false”,
“state_on”: “true”,
“state_off”: “false”,
“optimistic”: false,
“device”: {
“identifiers”: [“pekaway_core_pro”],
“name”: “Pekaway Core Pro”,
“manufacturer”: “Pekaway”,
“model”: “Core Pro”
}
}
geht auch mit der temperatur:
homeassistant/sensor/pekaway_temperature/config
{
“name”: “Temperatur”,
“unique_id”: “pekaway_temperature”,
“state_topic”: “pkw/temp1/temp”,
“device_class”: “temperature”,
“state_class”: “measurement”,
“unit_of_measurement”: “°C”,
“device”: {
“identifiers”: [“pekaway_core_pro”],
“name”: “Pekaway Core Pro”,
“manufacturer”: “Pekaway”,
“model”: “Core Pro”
}
}
Zusammenfassung der KI:
Die MQTT-Bridge ist in deinem Aufbau genau das Bindeglied zwischen den beiden MQTT-Brokern:
┌──────────────────────┐
│ Pekaway Core Pro │
│ 192.168.1.5 │
│ Mosquitto │
└──────────┬───────────┘
│
│ MQTT Bridge
│
▼
┌──────────────────────┐
│ Home Assistant │
│ 192.168.1.3 │
│ Mosquitto Add-on │
└──────────┬───────────┘
│
▼
Home Assistant
Entities / Geräte
Warum brauchst du sie?
Der Core Pro hat seinen eigenen MQTT-Broker auf:
192.168.1.5:1883
Home Assistant verwendet aber deinen eigenen Mosquitto-Broker auf:
192.168.1.3:1883
Home Assistant verbindet sich normalerweise nur mit einem MQTT-Broker – bei dir dem Mosquitto Add-on.
Die Bridge sorgt dafür, dass Nachrichten zwischen den beiden Brokern übertragen werden.
Beispiel Relais 1
Wenn du in Home Assistant einschaltest:
HA
↓
192.168.1.3
↓ Bridge
192.168.1.5
↓
Core Pro
und:
pkw/cmnd/relay/1/POWER
true
Das Relais schaltet.
Der Core Pro meldet anschließend:
pkw/cmnd/relay1/POWER
true
und die Bridge überträgt das zurück:
Core Pro
↓
192.168.1.5
↓ Bridge
192.168.1.3
↓
Home Assistant
Dadurch kann dein HA-Switch den tatsächlichen Zustand anzeigen.
Was wäre ohne Bridge?
Dann müsstest du Home Assistant direkt mit dem MQTT-Broker des Core Pro verbinden.
Das wäre grundsätzlich auch möglich, aber dann wäre dein bisheriger HA-Mosquitto-Broker nicht der zentrale MQTT-Broker für den Core Pro.
Mit der Bridge hast du dagegen:
HA Mosquitto
│
┌────────────┼────────────┐
│ │ │
Core Pro andere weitere
via Bridge MQTT-Geräte Geräte
Das ist für dein Setup ziemlich sinnvoll.
Und die Discovery?
Das ist ein wichtiger Unterschied:
Die MQTT-Bridge selbst macht keine Home-Assistant-Discovery.
Wir haben die Discovery-Nachrichten auf dem HA-Mosquitto veröffentlicht:
homeassistant/sensor/pekaway_temperature/config
homeassistant/switch/pekaway_relay1/config
...
Home Assistant liest diese und erstellt daraus die Entities.
Die Bridge transportiert dagegen die eigentlichen Core-Pro-Daten und Befehle:
pkw/...
Kurz gesagt
Bridge = Verbindung der beiden MQTT-Broker.
MQTT Discovery = sagt Home Assistant, welche Geräte/Entities er daraus anlegen soll.
Und dein aktueller Aufbau ist damit ziemlich sauber:
Pekaway Core Pro
↓ MQTT
Core-Pro-Mosquitto
↕ Bridge
HA-Mosquitto
↓ MQTT Discovery
Home Assistant
↓
Pekaway Core Pro Gerät
├── Temperatur
├── Relais 1
├── Relais 2
├── ...
└── Relais 8
Generell mal auf dem MQTT des Core Pro lauschen:
mosquitto_sub -h 192.168.1.5 -p 1883 -t ‘pkw/#’ -v