ZHA channel selection not working

It seems no matter my configuration, bellows forms my Zigbee network on channel 15. Here is the relevant portion of my configuration:

zha:
  custom_quirks_path: /config/quirks
  zigpy_config:
    network:
      channel: 26             # What channel the radio should try to use.
      channels: [26]  # Channel mask
      extended_pan_id: "21:75:8D:19:00:4B:12:00"

I’m trying to get a Livolo switch to join my Zigbee network and they only work on channel 26. In my log when I add the ZHA integration though, I always see this:

2021-06-29 20:29:44 INFO (MainThread) [bellows.zigbee.application] Node type: EmberNodeType.COORDINATOR, Network parameters: EmberNetworkParameters(extendedPanId=74:30:b6:68:38:4d:1f:10, panId=0x0fae, radioTxPower=8, radioChannel=15, joinMethod=<EmberJoinMethod.USE_MAC_ASSOCIATION: 0>, nwkManagerId=0x0000, nwkUpdateId=0, channels=<Channels.ALL_CHANNELS: 134215680>)

Any idea why it’s not using any of my ZHA config?

If you ever created a network with default setting (15) you need to reform the network with bellows with the new channel. The config value in configuration.yaml only really does anything if it’s there before the initial setup.

The link above has some details, another way to do it is to follow the back up and restore docs (same wiki) and edit the backup text to change the channel and then restore the modified backup.