This is a standalone container based on the Sonoff iHost multiprotocol add-on (CPCD/OTBR/zigbeed), with no HAOS dependency. It works with ZHA/Zigbee2MQTT via EZSP over TCP and exposes the OTBR Web UI/API.
I do not provide any support for the software running in this container.
I have only provided a standalone version of the Silabs multiprotocol container which can run without HAOS
- Original project: https://github.com/b2un0/silabs-multipan-docker — it provided a standalone container aligned with the Home Assistant add-on: https://github.com/home-assistant/addons/tree/master/silabs-multiprotocol
- This repository: https://github.com/antoniocifu/ihost-multipan-docker — it provides a standalone container aligned with the Sonoff iHost add-on: https://github.com/iHost-Open-Source-Project/hassio-ihost-addon/tree/master/hassio-ihost-silabs-multiprotocol
This repo focuses on the iHost add-on stack and does not aim to support the Home Assistant add-on.
Based on the work by @nervousapps, m33ts4k0z, b2un0, and the iHost Open Source Project add-on.
see VERSIONS.md
see CHANGELOG.md
see DOCS.md
see BASE.md
- the container must run in
hostnetwork mode - working
IPv6in your LAN - the container must run with
--privilegedflag - the name of your network interface (try
ifconfigorip a) to setBACKBONE_IFcorrectly - the path of your Device like
/dev/tty???(/dev/serial/by-id/will not work out of the box) - Zigbee channel and Thread channel must be configured to the same
- OTBR REST API uses port
8081(fixed); Web UI is on8086.
take a look at the Dockerfile file for more information
DEVICE and BACKBONE_IF for your environment
docker run --name multipan \
--detach \
--privileged \
--network host \
--restart unless-stopped \
--volume ~/multipan/:/data \
--env DEVICE="/dev/ttyUSB0" \
--env BACKBONE_IF="eth0" \
antoniocifu/ihost-multipan-docker:latest- download the docker-compose.yml or copy the service to your existing one
- change the config in
environmentif necessary - run
docker compose up -d
Open http://HOST:8086 and configure your OTBR.
add a new Device Integration Open Thread Border Router and use as Host http://HOST:8081 as Endpoint.
- Add the Zigbee Home Automation (
ZHA) integration - Choose
EZSPas Radio type - As serial path, enter
tcp://host_ip:20108orsocket://host_ip:20108 - Port speed
115200(iHost default) - Flow control
none(iHost default). Adjust if your dongle requires otherwise.
To use this with Zigbee2MQTT change the configuration.yaml file of Zigbee2MQTT to this configuration:
serial:
port: tcp://host_ip:20108
adapter: ezsp
baudrate: 115200Restart Zigbee2MQTT.
It might take a couple of tries for Zigbee2MQTT to connect the first time, but it will work without issues afterward.
you also need the python-matter-server if you want to use Matter enabled devices with Home Assistant.
- download the newer firmware from https://github.com/iHost-Open-Source-Project/hassio-ihost-sonoff-dongle-flasher/tree/main/firmware-build
- place them into your local directory
~/multipan/firmware/(if your/dataVolume mounted to~/multipan/) - change the environment variable
FIRMWAREto the new Filename (without path) - change the environment variable
AUTOFLASH_FIRMWAREto1 - redeploy your container
This image derives from the Sonoff iHost multiprotocol add-on images on GHCR:
- ghcr.io/ihost-open-source-project/hassio-ihost-silabs-multiprotocol-aarch64:
- ghcr.io/ihost-open-source-project/hassio-ihost-silabs-multiprotocol-amd64:
- ghcr.io/ihost-open-source-project/hassio-ihost-silabs-multiprotocol-armv7: