I have a CC2531 connected via USB to my server to read/control some Zigbee devices. I use the version with external antenna.

enter image description here

I found that the location of the server is not optimal and I would like to move the sniffer to another place (near the wifi router), where I don't have a USB connection to the server available. The router cannot run OpenWRT so I cannot connect the CC2531 to the router and expect it to work.

Adding a ES8266 to obtain a TCP-serial port would be a good solution, such as described in Zigbee2MQTT bridge however those instructions expect a CC2530, identical to CC2531 except for the lacking USB interface.

How to connect ESP8266 directly to CC2531 via serial?

  • I found an almost similar issue here: github.com/Koenkk/zigbee2mqtt/issues/442. Also If you have a NodeMCU then it will make your work a lot easier it is cheaper and an ESP8266 based board.
    – Lucifer
    Mar 6, 2020 at 5:44
  • They ask about cc2531 but then the reply talks about cc2530. I guess that what I wanted is not possible. I can either buy a cc2530 or buy a raspberry pi zero as already suggested.
    – FarO
    Mar 6, 2020 at 6:19
  • If I had an openwrt router I could use ser2net and the cc2531 on it, but I don't have one where I need it.
    – FarO
    Mar 6, 2020 at 6:22

2 Answers 2


I was able to connect to CC2531 via serial by treating it as a CC2530 and ignoring its USB: I flashed CC2530 firmware to it, then connected the serial lines as you would to a CC2530 -- to the P0.2 and P0.3 pins, and powered it via the Vcc/GND pins.

Tested by running Tasmota 8.2.0 against it and pairing one endpoint. Everything worked as expected.

As I'm writing this, the Tasmota Zigbee docs are still saying a CC2531 cannot be used, I'll get that fixed :-)

All of this was with a CC2531 made by Ebyte (model E18-2G4U04B) and the CC2530_DEFAULT_20190608 Z-Stack 1.2 coordinator firmware by Koenkk. The dongle made by TI should probably work too, though I don't have one to confirm this.

  • FWIW, I'm trying to get this documented in the Z-Stack-Firmware and in Tasmota.
    – rudo.dev
    Apr 19, 2020 at 19:06
  • I updated the documentation for zigbee2mqtt after trying it myself. Thanks
    – FarO
    Apr 8, 2021 at 11:57

The pin out for the debug connector (https://lemariva.com/blog/2019/07/zigbee-flashing-cc2531-using-raspberry-pi-without-cc-debugger) looks to be SPI not serial so unless the board exposes the raw Serial pins I doubt this will be possible.

But could you not just use a Raspberry Pi (even a Pi Zero W) and run the code on that?

  • A raspberry pi uses more power and costs much more: 30+ vs 1.5 euro/dollars. In the photo you can see a row of unpopulated contacts. Maybe one of those is the clean serial signal? I'm checking with the developer providing the firmware.
    – FarO
    Mar 5, 2020 at 11:25
  • A PI Zero W is less than $/€10 and if you were planning on running the code on the router it's probably already available for the Pi as well.
    – hardillb
    Mar 5, 2020 at 11:40
  • If it's the only option I will do it, but a ESP8266 module I already have at home, powered by the USB port of a router, costs less and is smaller than a Pi-zero plus SD card and wall power supply.
    – FarO
    Mar 5, 2020 at 15:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.