Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Application Report On CC2530 Mini Kit Mesh Network


Published on

  • Be the first to comment

Application Report On CC2530 Mini Kit Mesh Network

  1. 1. CC2530 ZigBee Network Processor Mini Kit Enabling two-ways communication with Mesh network capability AbstractThe CC2530 Mini Kit default 4 examples code - Hardware Interface Examples,ZNP Interface Examples, Communication Examples, Simple ApplicationExamples – does not cover on how to enable two-ways communication andonly provided a star network structure instead of a stable mesh networkstructure. Upon running the Simple Application Examples, once the end devicejoins the coordinator through a router, the connection will crash after the enddevice sends the 3rd message. Therefore, this application report will addresson these issues and enabling the mesh network capability of the CC2530ZNPMini Kit.Related code and additional information are provided. ContentsIntroduction 2CC2530 ZigBee Network Processor 2ZigBee PRO Stack 3Enabling Two-Ways Communication 3Wireless Doorbell Examples 4Using Router as Range Extender 6Reference 7CC2530ZNP Mini Kit Application Report Page 1 of 73/5/2011
  2. 2. 1. Introduction The application report is an additional built-on modification of the original examples. It is recommended that you familiarize yourself with the original examples first before using this. See reference for the tutorial on the original examples wiki site. The ZigBee Network Processor Mini Development Kit is designed to give a simple introduction to ZigBee wireless networks. The examples provided are designed to be small, easy to use building blocks of code, which can be easily incorporated into your application. The example in this document is written for ease of use first, performance second. There is most likely a faster way to do everything, but we wanted to ensure that the examples are easy to understand. 2. CC2530 ZigBee Network Processor There are two approaches to use CC2530 ZigBee Network Processor. CC2530ZNP Mini kit MSP430F2274 32K flash/1K RAM Mini-kit Example applications CC2530ZNP SPI SPI SPI/UART/USB ZigBee Stack/MAC IEEE 802.15.4 Radio The Mini Kit approach will ensure a faster development time. It allows easy testing and prototyping simple ZigBee applications. It is easy to understand and smaller in code size compared to the other approaches. It is also portable to other TI platforms. Limitation of the mini kit includes, no ZigBee profile support and no operating system abstraction layer. The Mini Kit operates based on interrupt service routine.CC2530ZNP Mini Kit Application Report Page 2 of 73/5/2011
  3. 3. 3. ZigBee PRO Stack The CC2530ZNP is a cost-effective, low power, ZigBee processor that provides full ZigBee functionality with a minimal development effort. In this solution, the ZigBee PRO stack runs on a CC2530 ZigBee SoC and the application runs on an external microcontroller (MSP430 F2274). The CC2530ZNP handles all the ZigBee protocol tasks, and leaves the resources of the application microcontroller free to handle the application. To understand more on the ZigBee PRO stack, see reference for CC2530ZNP Interface Specification. 4. Enabling Two-Ways Communication To enable broadcast, take a look at AfSendData and its parameter. AfSendData actually uses Af_Data_Request from the API. The detail of Af_Data_Request can be found in CC2530ZNP Interface Specification. Variation of the DestinationShortAddress: 1. ALL_DEVUCES 2. ALL_ROUTERS_AND_COORDINATORS 3. 0 (send to coordinator only) If received afSendData error -31, it means the sender received a message but it wasn’t the type expected. Check receiver side’s code to make sure the code flowchart is correct. To simplify the problem, sleeping function is disabled in the example. If enable, make sure the interrupt wake-up is properly functioning or elseCC2530ZNP Mini Kit Application Report Page 3 of 73/5/2011
  4. 4. the sleeping device will never receive the message. 5. Wireless Doorbell Example In this setup configuration, access point means coordinator and the rest is end device. When pressing the button on the coordinator, all end device led will lights up as well. When pressing button on the end device, the coordinator and other end device led will lights up. #define SEND_MESSAGE_ON_MOTION: Once a motion is detected, the led will be triggered just like a button pressed. #define SEND_MESSAGE_ON_TIMER: The end-device will report the device status every few second back to the coordinator. The purpose of SEND_MESSAGE_ON_TIMER is to demonstrate how to receive and parse messages from the other devices. The coordinator checks if the received message is an info message, and if so then it parses the message and displays it.CC2530ZNP Mini Kit Application Report Page 4 of 73/5/2011
  5. 5. Example Code Flowchart:CC2530ZNP Mini Kit Application Report Page 5 of 73/5/2011
  6. 6. 6. Using Router as Range Extender By using the router (range extender), we can now modify the above network structure in part 5 to the structure below. After you turn the router on, the led will light up once it joined a network (either join a coordinator or another router). After that, all is done, nothing else is required. You can also see the join message from the coordinators hyperTerminal window. If one router connected to another router, which connected to a coordinator, you will be able to see 2 routers join message from the coordinators hyperTerminal.CC2530ZNP Mini Kit Application Report Page 6 of 73/5/2011
  7. 7. 7. Reference 1. CC2530ZNP Mini kit product page – mini.html 2. Wiki page documentation – 3. CC2530ZNP Interface Specification (SWRA312) 4. CC2530ZNP Mini Kit Quick Start Guide (SWRU268A)CC2530ZNP Mini Kit Application Report Page 7 of 73/5/2011