Mai 032020
 

Preparations

Hardwarewise you only need your CC2350 board, a Rasperry Pi which is newer than the first version and a bunch of (preferably) female-female cables. This does not work for Raspberry Pi 1 as it doesn’t have the required GPIOs.

From a software point of view, you would need to have WiringPi installed and have the according coordinator or repeater firmware ready. This will be explained in the later process.

Wiring

First of all, hook up your CC2530 with your Raspberry Pi. Therefore connect the following PINs.

CC2350
GND or G
RES or RST or R (reset)
P22 (DC)
P21 (DD)

Raspberry Pi
Pin 39 (GND)
Pin 35 (GPIO24, BCM19)
Pin 36 (GPIO27, BCM16)
Pin 38 (GPIO28, BCM20)

Flashing the CC2350

Make sure you have WiringPi installed. If not, follow these steps.

This should now contact the CC2350 board and return the chip id. If this return something like 0000 or ffff you have to go back and check the wiring! The result should be

Usually you will find an expected result of „a524“ on the internet. This is also a valid result, but for the USB stick type of hardware. In case you are having a CC2531, you will get „a524“ as a result. But then I would be impressed, as the wiring should be different.

Afterwards download the coordinator software and unzip it

Now erase the chip

This will give you something like
ID = a524.
erase result = 00a2.
as a result. The chip can now be programmed with the coordinator firmware using the following command

The expected result would be

This should give you a fully functional Z-Stack coordinator. This now needs to be hooked up to either your Raspberry or maybe even a ESP8266 to be used. Or connect it to a zigbee2mqtt server.

References

  • https://www.raspberrypi.org/documentation/usage/gpio/images/GPIO-Pinout-Diagram-2.png
  • https://ptvo.info/how-to-select-and-flash-cc2530-144/
  • https://www.zigbee2mqtt.io/

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

(required)

(required)