ZHA ConBee II Source Routing

I noticed in the Phoscon release notes for 2.8.0, support for Source Routing.

Is this something that ZHA can already (or does already) take advantage of? Looks like an interesting idea.

Seems like an interesting new option to improve stability and interop of zigbee network. I am still learning here, but there does seem to be some signifiant issues with routing operation at the device level. So having routing setup done at a higher level might be able to overcome some of these interoperation issues where firmware at the device level is not being updated to fix. I note that this beta only works for routers and not end devices, from what I am seeing a lot of the current problems are with end devices not being able to route via routers that are not of same manufacture. So, I am not sure if this beta release will address these end device problems. Will be interesting to see peoples experiences. I am using ZHA, but cannot speak for what the developers of this platform are planning. From my experience trying to mix devices from different manufactures on ZHA, the current release does have significant problems with many mixes of devices. And no way that I can find to tell if you will have a problem until you add devices and see what happens.

ZHA supports source routing, at least for some implementations. For example, ZHA with ezsp (Ember) devices like the HUSBZB-1, Sonoff ZBBridge, Elelabs, and others, support this.

You need to add at a minimum a few lines in your configuration.yaml to enable it. The main variable to set is CONFIG_SOURCE_ROUTE_TABLE_SIZE which must be set to a number larger than the number of devices you have connected or plan to connnect, but not a number that is too large since it wastes the limited memory on the Zigbee chip. I use a simple formula to determine that…

table_size = (connected devices) + (pending devices) + 10.

connected devices is the current ZHA device count, pending devices is those I’m planning to install in the next couple weeks, and then I add 10 on top of that for unplanned growth.

If you have more than 30 devices, and are using an ezsp compatible device, add this to your configuration to enable source routing. Note that for the most part, larger networks will see the most benefit from source routing.

# Zigbee
zha:
  zigpy_config:
    source_routing: true
    ezsp_config:
        CONFIG_SOURCE_ROUTE_TABLE_SIZE: table_size (use formula above)
2 Likes

Hmm, I have around 50 devices… but I have a ConBee… Seems like there’s a lot of ezsp choices…
Any recommendations?

Interesting, thanks! Were is this documented? And is there a zha version level requirement?

I found this which gives an overview, and this for the ezsp values.
Not sure why its not in the ZHA documentation.

1 Like

Thanks, I think… :wink:

# Tons and tons of options

This depends on zigpy radio libraries so best would probably ask in zigpy developers discussion:

1 Like

See discussion in Missing configuration alternative for ZHA · Issue #15307 · home-assistant/home-assistant.io · GitHub

Pull request welcome home-assistant.io/source/_integrations/zha.markdown at f52cc941cea69b4b9c1df680ba7a79009df998b4 · home-assistant/home-assistant.io · GitHub

:wink:

1 Like

FYI, some info is available in zigpy wiki https://github.com/zigpy/zigpy/wiki

ZHA depends on zigpy which in turn has just started a wiki so it is not yet well documented.

1 Like