FYI, Espressif as a company looks to currently be going full steam ahead with an all-in-one Thread/Zigbee to Matter bridge solution + support in official ESP-IDF and including many examples for their new ESP32-H2 SoC (ESP32-H2-DevKitC-1 V2.1 board) with 802.15.4 Thread/Zigbee (+ Bluetooth Low Energy).
Most interestingly as indirectly related to a concept similar to Tasmota’s Zigbee2Tasmota (Z2T) project and and the ideas behind ESPHome Bluetooth Proxy, Espressif has recently posted a lot of news on Espressif’s ESP Matter Solution (e.i. “esp-matter”) which uses ESP32 as a Matter-bridge for non-Matter devices such as Zigbee, Thread, and Bluetooth devices, as well as the related news about ESP32-H2 SoC (and ESP32-H2 DevKitC Board) with more news from Espressif about newly established support for Thread/OpenThread (e.i. “esp-thread”) + ZBOSS Open Initiative (ZOI) and Zigbee certification announcements (e.i. “esp-zigbee”).
In essence it seems like Espressif are currently fully focusing on embedded Zigbee gateway and Zigbee/Thread to Matter bridge implementation (with an all-in-one two-SoC gateway/bridge solution combining a ESP32-H2 for Zigbee/Thread with an ESP32-S3 for Wi-Fi). For that Zigbee/Thread/BLE to Matter-bridge solution they now even have two reference hardware designs that I linked below.
“We offer both Matter-Zigbee and Matter-BLE Mesh bridge solutions with full functional software SDK support. A Matter-Zigbee Bridge uses two SoCs (Wi-Fi + 802.15.4), they are connected via a serial interface like UART or SPI, while a Matter-BLE Mesh Bridge can be done on single SoC with both Wi-Fi and BLE interfaces.”
Espressif ESP Matter news:
https://www.espressif.com/en/news/ESP_Matter_Solution
https://www.espressif.com/en/solutions/device-connectivity/esp-matter-solution
https://www.espressif.com/en/news/ESP32_H2
https://www.espressif.com/en/news/ESP32-H2_Thread_and_Zigbee_certified
https://en.dsr-corporation.com/news/espressif-joins-zoi
esp-matter (Matter / Project CHIP) solutions:
https://medium.com/the-esp-journal/matter-bridge-for-non-matter-devices-d3b7f003a004
https://blog.espressif.com/matter-thread-border-router-in-matter-240838dc4779
https://docs.espressif.com/projects/esp-matter/en/main/esp32/
https://github.com/espressif/esp-matter
https://github.com/espressif/esp-matter/tree/main/examples/zigbee_bridge
https://github.com/project-chip/connectedhomeip/tree/master/examples/lighting-app/esp32
https://github.com/project-chip/connectedhomeip/tree/master/examples/chip-tool
esp-thread:
https://openthread.io/guides/border-router/espressif-esp32
https://github.com/espressif/esp-idf/tree/master/examples/openthread/ot_rcp
https://github.com/espressif/esp-idf/tree/master/examples/openthread/ot_cli
https://github.com/espressif/esp-thread-lib
https://github.com/espressif/esp-thread-br
https://openthread.io/vendors/espressif
esp-zigbee:
https://github.com/espressif/esp-zigbee-sdk
https://github.com/espressif/esp-zboss-lib/
https://components.espressif.com/components/espressif/esp-zboss-lib
https://github.com/espressif/esp-idf/tree/master/examples/zigbee/
https://github.com/espressif/esp-idf/blob/02605f1a31be4233b97e83a0460bb458f277dfea/examples/zigbee/esp_zigbee_rcp
https://github.com/espressif/esp-idf/tree/master/examples/zigbee/esp_zigbee_gateway
https://github.com/openthread/ot-br-posix/
https://openthread.io/platforms/co-processor
esp-protocols:
esp-protocols including esp modem (for AT commands, etc.), esp websocket client, mDNS (Zeroconf and DNS-SD), Asio, and more:
https://espressif.github.io/esp-protocols/
https://github.com/espressif/esp-protocols
https://github.com/espressif/esp-protocols/tree/master/components/esp_modem
https://github.com/espressif/esp-protocols/tree/master/components/esp_websocket_client
https://github.com/espressif/esp-protocols/tree/master/components/mdns
https://github.com/espressif/esp-protocols/tree/master/components/asio
Other indirectly related tools from Espressif:
https://github.com/espressif/esptool
https://github.com/espressif/openocd-esp32
https://github.com/espressif/esp-usb-bridge
Hardware Platforms
“ESP32-H2 DevKitC” (“ESP32-H2-DevKitC-1 V2.1”) board based on “ESP32-H2-WROOM-1” radio module:
The ESP Thread Border Router consists of two SoCs:
- An ESP32 series Wi-Fi SoC (ESP32, ESP32-C, ESP32-S, etc) loaded with ESP Thread Border Router and OpenThread Stack.
- An ESP32-H 802.15.4 SoC loaded with OpenThread RCP.
https://github.com/espressif/esp-thread-br#hardware-platforms
https://github.com/espressif/esp-idf/tree/master/examples/openthread/ot_br
https://openthread.io/guides/border-router/espressif-esp32
ESP Thread Border Router Board
The ESP Thread border router board provides an integrated module of an ESP32-S3 SoC and an ESP32-H2 RCP.
The two SoCs are connected with following interfaces:
- UART and SPI for serial communication
- RESET and BOOT pins for RCP Update
- 3-Wires PTA for RF coexistence
Standalone Modules
The SDK also supports manually connecting an ESP32-H2 RCP to an ESP32 series Wi-Fi SoC.
ESP32 pin |
ESP32-H2 pin |
GND |
G |
GPIO17 |
TX |
GPIO18 |
RX |
GPIO4 |
RST |
GPIO5 |
GPIO9 (BOOT) |
The following image shows an example connection betwe Add a package diagram. ES32-H2 and ESP32:
In this setup, only UART interface is connected, so it doesn’t support RCP Update or RF Coexistence features. You can refer to ot_br example in esp-idf as a quick start.
https://github.com/espressif/esp-idf/tree/master/examples/openthread/ot_br
https://openthread.io/guides/border-router/espressif-esp32
Provided Features
These features are currently provided by the SDK:
-
Bi-directional IPv6 Connectivity: The devices on the backbone link (typically Wi-Fi) and the Thread network can reach each other.
-
Service Discovery Delegate: The nodes on the Thread network can find the mDNS services on the backbone link.
-
Service Registration Server: The nodes on the Thread network can register services to the border router for devices on the backbone link to discover.
-
Multicast Forwarding: The devices joining the same multicast group on the backbone link and the Thread network can be reached with one single multicast.
-
NAT64: The devices can access the IPv4 Internet via the border router.
-
RCP Update: The built border router image will contain an updatable RCP image and can automatically update the RCP on version mismatch or RCP failure.
-
Web GUI: The border router will enable a web server and provide some practical functions including Thread network discovery, network formation and status query.
In the future releases, the following features will be added:
- SPI Communication
- RF Coexistence
Post-note
PS: I think esp-zigbee support is of interest for ESP32-based Zigbee remote adapter bridges, like ex. Tube’s and ZigStar Gateways:
https://github.com/tube0013/tube_gateways
https://github.com/mercenaruss/zigstar_gateways
https://github.com/codm/cc2652p2-tcp-zigbee
https://github.com/cyijun/OpenZ3Gateway