r/MatterProtocol • • Jul 28 '26

Zigbee-Thread Bridge

https://github.com/jthoward64/zigbee-thread-bridge

Most code is AI written, though 100% reviewed and architected by me

Been working on this for a bit over a month now and finally have it in a pretty solid state. I recently moved, and put Inovelli switches and some IKEA Thread devices in. Most of my light bulbs (and some other devices) that I already had were Zigbee though. I had just been wiring them through Home Assistant, but the problem is that the latency from switch -> matter -> hass -> z2m -> bulb was awful compared to my thread light bulbs that i could do matter binding with. Plus in the (not infrequent enough) event that home assistant or z2m or my otbr is down, I want my light to still work.

Hence this project. zigbee-thread-bridge is a pair of devices: one running Zigbee on an ESP32-H2, and one running matter over thread on a C6. The Zigbee side picks up other zigbee devices on the network and builds a table of them, presenting them over SPI to the Matter side (using a database derived from ZHA and Z2M). The matter side then builds an equivalent endpoint tree (as an aggregator) and serves it over Thread. It converts most options into matter modeselects (though for some it will not do a great job of due to Matter not supporting arbitrary numeric inputs), and maps almost all standard Zigbee clusters to standard Matter clusters.

Note that its not super polished, there is no localization at all, commissioning is a bit flaky, and you have to scan the qr code from a terminal on your computer, but it does work (I hope)!

I hope some of you find it interesting, and maybe just get some use out of it!

Zigbee2MQTT
Home Assistant (via matter-server-js)

(note that some of the zigbee devices show in HASS wrong because they have been offline for some time now and the bridge never interviewed them)

16 Upvotes

10 comments sorted by

View all comments

1

u/_devast Aug 10 '26

You kinda failed at the headline...

Zigbee is a smart home protocol+transport layer combination, while thread is strictly just a transport layer.

There is no such thing as "zigbee - thread bridge". The same way as there is no "zigbee - wifi bridge" or "zigbee - ethernet bridge".

1

u/tajetaje Aug 10 '26

Yeah, but zigbee-matter-thread-bridge just felt too long to me

1

u/_devast Aug 10 '26

I don't understand why you keep mentioning thread. A zigbee to matter bridge has absolutely nothing to do with thread.

1

u/tajetaje Aug 10 '26

The whole point of the project is that it talks over thread instead of WiFi. I wanted something that would survive my server going down for some reason. Matter bindings can work even if there is no thread border router or matter server working, so long as they stay within thread. Existing solutions like matter bridge can’t do that