I'm trying to understand how to implement a Zigbee module(TI CC2530) into Linux. This module will be connected through SPI to a development card (A80 Pro from Merrii).
At this point, I'm not sure exactly what I have to do. Do I have to write a kernel driver for the CC2530 ? Or just a simple SPI controller driver ?
Also if you have any website that I can look for more informations, it will be great.
You have a number of options here:
http://www.ti.com/tool/CC2531EM-IOT-HOME-GATEWAY-RD
http://www.ti.com/tool/z-stack - Z-STACK-LINUX-GATEWAY
Out of the Box this connects to CC2531 via CDC USB. However by modifying the NPI_Gateway.cfg and the zigbeeHAgw script files you can reconfigure it to use UART or SPI. The CC2530 will need to by preogrammed with the ZNP FW available in http://www.ti.com/tool/z-stack - Z-STACK-HOME SDK under Z-Stack Home 1.2.2.42930\Projects\zstack\ZNP\CC253x, prebuilt binaries are in Z-Stack Home 1.2.2.42930\Projects\zstack\ZAP\ZNP-HexFiles\CC2530.
This option is specifically for Linux, it uses 4 application space servers to manage the Data Plane, Control Plan and Field Upgrade, offering a high level Home Automation API through protobuf over local sockets. It uses the existing CDC, UART or SPI kernel drivers. It would not lend its self to a kernel space driver.
http://www.ti.com/tool/TIDC-ZNP-HOST-SW3
https://git.ti.com/znp-host-framework/znp-host-framework
Regards, TC.