8051 Drives ZigBee Kit

Dec. 11, 2007
Silicon Laboratories has a great crop of high performance 8051 microcontrollers and one of those is packaged on each of the boards in its ZigBee development kit.

Silicon Laboratories has a great crop of high-performance 8051 microcontrollers and one of those is packaged on each of the boards in its ZigBee development kit (Fig. 1). The small case includes six modules (Fig. 2). An 802.15.4 version is available with a pair of boards. Each module has a removable antenna and a USB interface. They can be powered by a 9V battery (included) that hides under the board, by the USB interface, or by an external power supply (one included). The boards also have a JTAG interface and a USB-based JTAG interface is included with the kit. The board contains a Chipcon CC2420 transceiver linked via SPI to a C8051F121 8-bit microcontroller with an 8-channel, 8-bit ADC and a pair of 12-bit DACs. The microcontroller has a plethora of IO ports, timers, and serial ports as well. The USB interface is actually provided via another Silicon Labs microcontroller, the CP2101. The board has four buttons, over half a dozen LEDs and a potentiometer connected to the microcontroller for experimentation. Unfortunately getting access to the IO pins is not really possible so adding your own circuitry will be difficult. There is a power switch to conserve battery power if necessary along with a reset switch. The boards come preprogrammed to combine into a network and provide access to some of the built-in peripherals. The sample application (Fig. 3) displays the current temperature and the voltage through the pot. It provides a nice demo and confirms the workings of the system. Coding ZigBee Next come coding applications that can take advantage of the 802.15.4 or ZigBee protocol stacks. Unlike many module-based solutions, Silicon Labs expects you to drop an application onto the microcontroller that also houses the wireless protocol stack of your choice. To do this, you can utilize the Keil uVision IDE and debugger. Keil is now a part of Arm but it retains support and development for a range of non-ARM related products like IDE support for 8051 products. The compiler in the bundled version is limited to 4Kbytes of user code. The protocol stack is considered system code. 4Kbytes leaves a lot of space for an assembler or C-based application. Keil has some top-notch tools. Getting up-and-running will not take very long even if you have not used their products before. The demo code is included and it is a good place to start building another application. There are additional demos for blinking LEDs and so on so most of the hardware is exercised in a fashion where you can view the code. Each application is written up as an app note and the documentation on the installation CD covers each one. These can also be downloaded from the Silicon Labs website. Programming the system is done using the USB-based JTAG unit. Only one is included so you need to play with one board at a time from a programming or debugging standpoint. The code samples and app notes are a good start although it will be up to you to generate more sophisticated applications. The one thing that is lacking is any kind of network management or monitoring support. The demo application, especially the ZigBee version, provides some network configuration and monitoring tools but you will need to turn to a company like Daintree Networks for more advanced monitoring tools. The kit will have you up-and-running quickly, but it can be a higher hurdle to move into more sophisticated applications, especially when it comes to debugging larger networks as when all six boards, or more, come into play. Overall, the kit provides an excellent starting point for ZigBee development. I would fault the person that put together the installation CD in hiding the protocol stack API in one of the app notes but the content was very useful once I found it. I would also have liked to see the source for the network configuration application running on the PC. Likewise, it would have been useful to expose some of the other pins on the microcontroller. Related Links Keil Silicon Labs

About the Author

William G. Wong | Senior Content Director - Electronic Design and Microwaves & RF

I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.

You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form. 

Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below. 

You can visit my social media via these links:

I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.  

I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence. 

Sponsored Recommendations

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!