CC2531 Router Operations (zigbee)

UPDATE 2020/07/25: I have upgraded to a CC2530+CC2591 router ($15 on eBay) with external antenna because I found the CC2531’s range to be too short/limiting. Operations are the same, but CC2530 does not have LEDs.

If you are having trouble with the CC2531 as a zigbee router (aka repeater), follow these steps.

The CC2531 router works well with Xiaomi sensors, which are notoriously picky about what zigbee routers/repeaters/hubs they work with.

When using the CC2531 as a router, you do NOT need to connect it to a Raspberry Pi (or other computer). You can simply plug the CC2531 into a USB-A charger like a smartphone charger.

This assumes you are running the CC2531 router firmware (router-cc2531-std.hex) that is part of the zigbee2mqtt project.

You do not have to run zigbee2mqtt. The CC2531 with router firmware is a totally standalone zigbee router.

This assumes you have already paired the CC2531 router with your zigbee coordinator (aka hub, aka gateway). To pair, enable “permit” mode on your coordinator, then power-on the CC2531 and it will join the network automatically. The CC2531’s red LED will slow-blink when it is joined to the network.

After pairing, ensure Home Assistant (HA, aka hass) has entity IDs for the CC2531 router. Search for “lumi_router”:

Ensure the CC2531 is in “normal operation” mode. If you see the LED flash/blink RED once every 4 seconds, then it is in normal operation mode.

Ensure the CC2531 has an active link to the zigbee coordinator. The S1 button on the CC2531 is valuable for testing this. I call S1 the “test button”.

When you press S1, the CC2531 LED toggles between flashing-red and green, and emits that state (green = on) like a sensor. That’s all it does. It’s only for testing. Green doesn’t mean the router is doing anything different. It’s just a “sensor” for you to test the link between the CC2531 router and your coordinator.

In HA, check Developer Tools > States and the state of the entity-id for your CC2531 similar to:


The state of this entity will be “on” when the CC2531 LED is GREEN, and state will be “off” when the CC2531 LED is slow-flashing RED (every 4s).

NOTE: It may take 1 or 2 minutes for the state change to appear in the HA “States” page, so be patient.

If the entity state is “unavailable” or the state doesn’t change after 2 minutes of pressing the S1 button, then the CC2531 doesn’t have an active link with the coordinator.

  • If the CC2531 is far away, try moving it closer to the coordinator (or a known-good router) and testing again.
  • Try re-pairing the CC2531 with your coordinator. To re-pair: Power on, press and hold down the S2 button for 5 seconds.

You can also control the green/red LED on the CC2531 with HA service calls (light.turn_on), which also tests the connectivity between the router and the coordinator:

Also check the last time HA was in-contact with the CC2531:

HA 0.112 and higher: Configuration > Integrations > Zigbee Home Automation > Configure > Devices > lumi.router

HA 0.111 and lower: Configuration > Zigbee Home Automation > lumi.router


See also: Pairing Xiaomi sensor with CC2531 router


6 thoughts on “CC2531 Router Operations (zigbee)”

  1. How do you pair the CC2531 router with the zigbee2mqtt co-ordinator? Will it join the network automatically if permit join is enabled?

    1. Hi Hamish, yes, the CC2531 with router firmware will automatically join your coordinator. First enable permit-mode on your coordinator, then power-on the CC2531. Check the coordinator logs for join confirmation. The CC2531 LED will also change from blinking to steady, IIRC.

  2. How are you connecting the CC2530+CC2591 router? Looks like most are serial port. Looking at the CC2531 bare board with antenna – what are your thoughts – should be about the same as the 2530 with the antenna?

  3. @Blake, I used breadboard jumper wires to connect the CC2530+CC2591 to the Texas Instruments “CC Debugger”. Then used their “SmartRF Flash Programmer” to flash the unit. To power it, I connect it to a USB power supply that’s adjusted with a knob to 3.2V ( I’m REALLY happy with the CC2530+CC2591. It has been rock-solid and maintenance free for over a year and covers my entire house. No other routers needed.

  4. Hi
    You say “This assumes you are running the CC2531 router firmware (router-cc2531-std.hex) that is part of the zigbee2mqtt project.” but the link is broken. But looking at makes no distinction between router and coordinator download files. Also implies that a CC2531 can be a router by pressing the S2 button for 5 seconds.

    I need a Rasp Pi, that has no internet connection for electrical safety reasons, to communication to my zigbee network. So I plan to install Zigbee2MQTT on the Pi and run the CC2531 as a Router. I was expecting Router firmware but that doesn’t seem to be the case. What do you think?

  5. I am using the Router and Co-orinator. I had to recently move everything to channel 26 and the router will no longer connect. Is there a special dance I have to do to enable it?

    I have done the ‘Permit Join’ in HA Zigbee2Mqtt but its all quiet. The co-ordinator is about 5mtrs from the router.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.