MATTER im FHEM? Schon was in Planung?

Begonnen von misux, 18 Mai 2022, 15:40:21

Vorheriges Thema - Nächstes Thema

Jamo

So oder so ähnlich hab ichs auch gemacht, mit Hilfe von Gemini für die HA Automationen, und dann mqtt explorer für die MQTT Topics ist das gut machbar.
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee2MQTT, Conbee III, FB7690, Signal, Alexa (fhem-lazy), Geotracking, LaCrosse JeeLink, LoRaWan (TTN / Chirpstack), Sonos, ESPresence, HomeAssistant via MQTT, Meshtastic

m_schmid@posteo.de

HA ist relativ groß. Alternativ habe ich dies hier gefunden:
https://matterbridge.io/
Zusammen mit dem MQTT-Plugin liest sich das nach einer leichtgewichtigen Alternative.
Ich habe es - mangels Notwendigkeit - aber noch nicht selbst getestet.

Sany

Zitat von: m_schmid@posteo.de am 11 Juni 2026, 17:40:19HA ist relativ groß. Alternativ habe ich dies hier gefunden:
https://matterbridge.io/
Zusammen mit dem MQTT-Plugin liest sich das nach einer leichtgewichtigen Alternative.
Ich habe es - mangels Notwendigkeit - aber noch nicht selbst getestet.

fehlt aber doch noch etwas, was z.B. Thread-Geräte verbindet, der Thread-Border-Router. Das ist in meinem Fall eben HA mit einem Sonoff-dongle. Das für den Matter over thread part. Matter over Wifi kann HA dann natürlich auch. Und nur das, was man in fhem dann haben möchte, wird per MQTT an fhem angebunden. Ich sehe eigentlich keinen Unterschied im Aufwand wie z.B. HomematicIP an fhem anzubinden. Habe dazu einen Raspi mit Funkmodul und Debmatic. Und dann halt noch die HMCCU-Geschichte. Bei HA in einer VM auf dem Proxmox-Server ist das alles (bis auf den Sonoff-Dongle) in Software gemacht.
Vielleicht verstehe ich auch matterbridge nicht.


Aktuell ist das eh nur eine Spielwiese. Ich sehe aber z.B. bei IKEA den move von zigbee nach matter, und bisher gab es schon interessante Komponenten für eher kleines Geld. Wobei die Matter-Teile auch recht günstig sind. Jetzt müssen sie nur noch zeigen, dass sie auch so zuverlässing sind.


2ct by SANY
fhem als LXC auf Proxmox auf einem minix Z100 , weitere LXC mit ZigBee2MQTT, volvo2mqtt, MariaDB und Grafana.
[NEU: Homeassistant mit matter per mqtt an fhem].
Sowie Homematic, FS20, mySensors, Tasmota (MQTT2), Shelly(MQTT2), kein Z-Wave mehr  ....

Flachzange

Zitat von: Sany am 19 Juni 2026, 18:43:35Vielleicht verstehe ich auch matterbridge nicht.
Ohne dass ich es mir jetzt im Detail angeschaut habe: Matterbridge übernimmt dieselbe Funktion wie HA, nur dass es eben leichtgewichtiger ist und eben nur Matter macht. Einen Thread-Border-Router brauchst du in beiden Fällen, darum geht es hier ja nicht.

Sany

Bei mir ist HA der Thread Border Router, dann kann es den Rest auch gleich mitmachen (Matter, MQTT)
fhem als LXC auf Proxmox auf einem minix Z100 , weitere LXC mit ZigBee2MQTT, volvo2mqtt, MariaDB und Grafana.
[NEU: Homeassistant mit matter per mqtt an fhem].
Sowie Homematic, FS20, mySensors, Tasmota (MQTT2), Shelly(MQTT2), kein Z-Wave mehr  ....

Zeppelin

Mir hat die Lösung über Home Assistant nicht wirklich gut gefallen, da ich nicht nur wegen Matter Home Assistant bei mir laufen haben wollte. Ich habe mir dann ein eigenes FHEM Device geschrieben, welches mit dem matterjs-server kommuniziert, den auch Home Assistant verwendet. matterjs-server kann man sich auch Stand-Alone ohne Home Assistant installieren. Mit meinen Devices kann ich jetzt zumindest meine Lampen aus FHEM direkt ansteuern. Der Link zu meinem Projekt https://gitlab.com/zeppelin1979/fhem-matter.
Gerne könnt ihr es ebenso nutzen und auch Vorschläge für Verbesserungen machen. Es handelt sich um ein reines Hobbyprojekt und selbst programmiere ich nicht wirklich in perl. Bitte verzeiht deswegen eventuell umständliche Wege im Code.

whirly85

Hi,

@Zeppelin: Wie hast du deine Matter Geräte mit dem Matterjs-server verbunden. Ich habe den js-server als Proxmox LXC installiert und komme auch auf dessen Weboberfläche. Und dein Fhem Modul connected sich auch zu ihm. Aber ich hab es bis jetzt noch nicht hinbekommen, mein Matter-Device mit dem Server zu verbinden. Alles was ich bis jetzt gefunden habe, war dann wieder über die Home Assistant App und die will dann wieder eine HA Instanz haben, die ich ja gar nicht brauche.

Danke Dir

PS: Dein Tool ist soweit schon mal klasse - ich will nämlich auch kein HA extra nur für Matter. Daumen hoch

Zeppelin

Hi @whirly85,

ich habe Lampen von Govee, da kann ich diese mit der Govee-App ins Netz holen. In der App kann ich mir dann einen Matter-Code für jedes Device holen. Da ich zu diesem Zeitpunkt noch Home Assistant am laufen hatte, habe ich diesen Code in die HA-Oberfläche eingegeben. Ich habe auch ein set matterServer commissionCode 35325335079 eingebaut aber nicht getestet, da meine Geräte schon eingebunden waren.
Prinzipiell würde auch die Möglichkeit bestehen, die Einbindung im Netzwerk auch über den MatterJs-Server zu machen, dann muss dieser aber Kontakt zum Device per Bluetooth haben.
Ein Doku findest du unter: Matter-js API Docu. Ich werde mal versuchen einen Bluetooth Stick in meinen Server zu stecken und mal das commissioning direkt zu machen. Eine App wie Home Assistant werde ich aber wahrscheinlich nicht angehen.
Als kurzfristigen Workaround kann man auch Home Assistant kurz starten und dort das Device ins Netzwerk holen. Danach kann man ihn ja wieder beenden.

whirly85

Hi,

vielen Dank. Ich habe mein Device mit der SmartLife-App dort eingebunden und konnte dort dann den Code erzeugen. Hat dann jetzt sauber geklappt und ich kann das Device über FHEM steuern. Ich dachte, der Code, der auf dem Gerät selbst ist, ist der commission Code. Da war ich etwa auf dem Holzweg.

Saubere Arbeit - danke dir

whirly85

Zitat von: Flachzange am 19 Juni 2026, 19:51:23
Zitat von: Sany am 19 Juni 2026, 18:43:35Vielleicht verstehe ich auch matterbridge nicht.
Ohne dass ich es mir jetzt im Detail angeschaut habe: Matterbridge übernimmt dieselbe Funktion wie HA, nur dass es eben leichtgewichtiger ist und eben nur Matter macht. Einen Thread-Border-Router brauchst du in beiden Fällen, darum geht es hier ja nicht.

Ich hab mir mal die Matterbridge angeschaut und die ist nicht in die Richtung gedacht - mit ihr kannst du z.B. Shellys oder MQTT Devices in die Matter-Welt bringen. Dort kannst du keine Matter Geräte einbinden. Es erzeugt nur einen Code von sich und lässt keine Eingabe von Commission Codes oder QR-Code zu. Aber da haben wir ja jetzt was dank Zeppelin  :)

tostmann

Schön zu sehen, dass hier Bewegung drin ist — Zeppelins Modul (https://gitlab.com/zeppelin1979/fhem-matter) zusammen mit dem matterjs-server ist ein direkter Weg zu Matter in FHEM ohne Home Assistant, und whirly85 hat damit ja gerade erfolgreich ein Gerät eingebunden. Ich habe das Modul heute selbst gegen denselben matterjs-server laufen lassen: es verbindet sich auf Anhieb, legt pro Knoten und Endpunkt Geräte an und schaltet meine Testlampe zuverlässig (on, off, pct).

Zwei Dinge fehlen daneben trotzdem, und um die geht es mir hier. Erstens der Thread Border Router — weiter oben im Thread wurde schon festgehalten, dass der separat nötig bleibt, sobald Geräte Matter über Thread sprechen; die IKEA-Geräte, die ich hier verwendet habe, tun das. Zweitens Bluetooth: ein fabrikneues Thread-Gerät ist noch in keinem Netz, das erste Gespräch beim Anlernen läuft über Bluetooth LE. Zeppelins README nennt Commissioning via Bluetooth selbst als offenen Punkt, das Modul lernt derzeit übers Netz an (network_only) — was ausdrücklich keine Lücke des Moduls ist: der Bluetooth-Teil des Anlernens ist Sache des Matter-Servers, nicht des FHEM-Moduls.

Beides kommt bei dem, was ich gebaut habe, aus einem Guss: ein Stick, ein Container. Der Border Router läuft vollständig in der Firmware eines ESP32-C6; die Verbindung zum Rechner ist der USB-Port des Chips, host-seitig macht ein Docker-Container daraus ein Netzwerk-Interface, über das der Rechner die Thread-Geräte per IPv6 erreicht. Auf dem Rechner läuft kein otbr-agent, kein wpantund und kein RCP/Co-Prozessor. Und derselbe Stick leiht dem Matter-Server sein Bluetooth-Funkteil: der Server steuert Scan, Verbindung und Anlernvorgang, der Stick trägt sie über die Luft. Ein Server, NUC oder eine VM ohne eigenes Bluetooth kann damit ein fabrikneues Gerät direkt mit dem Code vom Karton anlernen — angestoßen auf der Web-Seite des Matter-Servers oder über dessen API. Meine Testlampe oben wurde über das Bluetooth des Sticks angelernt — bei mir über die API des Servers — und geschaltet habe ich sie danach mit Zeppelins Modul.

Voraussetzung ist ghcr.io/matter-js/matterjs-server mit der Option --ble-proxy; der python-matter-server (ghcr.io/home-assistant-libs/python-matter-server) meldet in seiner Begrüßung keine Proxy-Unterstützung und kann das nicht. Gemessen: nachdem der Stick eine größere ATT-MTU aushandelt (247 statt der anfänglichen 23), läuft ein Anlernvorgang in 22 Sekunden durch, der vorher im BTP-Handschlag stehenblieb.

Der ganze Weg bis dorthin ist als Anleitung aufgeschrieben: https://github.com/tostmann/THBR/blob/main/fhem/README.md — Stick in Betrieb nehmen, Matter-Server aufsetzen, dem Server einmalig die Thread-Zugangsdaten des Border Routers geben, anlernen; am Ende übergibt sie an Zeppelins Modul. Die Zugangsdaten sind eine Stolperstelle, die die Anleitung eigens behandelt: ohne sie läuft ein Anlernvorgang komplett durch Zertifikate und Fabric und scheitert erst ganz am Ende.

Zur Hardware: ein ESP32-C6 mit 4 MB Flash am nativen USB-Port. Ein ESP32-C5 läuft auch, mit halb so viel Speicherreserve — und bei den hier getesteten C5 setzte der native USB-Port gelegentlich aus, bis der Chip zurückgesetzt wurde. Der ESP32-H2 kann es nicht; Espressif liefert für ihn keine Border-Router-Bibliothek. Es gibt das Ganze als Home-Assistant-Add-on und als normales Docker-Image (docker pull tostmann/thbr); der Docker-Weg hat mit HA nichts zu tun. Projekt: https://github.com/tostmann/THBR — Lizenz PolyForm Noncommercial 1.0.0, privat und nichtkommerziell frei.

Mich würde interessieren: welche Matter-Geräte stehen bei euch an — Thread-basierte wie die IKEA-Geräte hier, oder WLAN-Geräte, die ohne Border Router auskommen? Und falls jemand schon einmal an einem fabrikneuen Thread-Gerät hängengeblieben ist: an welcher Stelle?

Cheers!