Zigbee is moving to single-chip solutions that combine a Zigbee transceiver with a microcontroller. However, this does not give the flexibility that a two-chip solution provides. I’ll be taking a look at single-chip development kits in the future, but right now we examine three development kits from Ember, Silicon Labs, and Microchip.
Ember is a company targeting the Zigbee market with its own Zigbee transceiver while Silicon Labs and Microchip are microcontroller vendors. The design of the kits reflect this. For example, Ember’s kit is designed around a module that contains an Atmel Mega128L microcontroller and Ember’s EM2420 ZigBee chip suitable for deployment. The base board can support different modules because Ember provides single-chip solutions as well as support for other microcontrollers.
Silicon Labs’ and Microchip’s offerings are tied to their microcontrollers. Microchip’s board puts the ZigBee chip on a plug-in module that could, in theory, be used in a product but is really intended to provide designers with the ability to check out additional ZigBee chips. Silicon Labs has a single board designed to highlight one combination of chips.
One major implication about the offerings is based on the amount of time the vendors have been dealing with ZigBee. Ember’s offering is the most mature, since they were in on the ground level. Silicon Labs and Microchip waited for the standard and transceiver chip availability, so their offerings are not as polished.
Still, a developer’s choice will be dictated by a range of issues, including experience with the microcontroller. Likewise, most everyone’s experience with ZigBee will be minimal. So read on and see what may be the best fit for you.
Ember Development Kit
Ember’s QuickStart kit contains half a dozen sophisticated boards (see Fig. 1) making the kit rather expensive ($4995). It also comes with a pair of ZigBee stacks that are very mature and provide support for the range of ZigBee network configurations, including mesh support. It also comes with Ember Studio (see Fig. 2), a sophisticated Java-based diagnostic, programming, and network-management tool. If you are pushing the envelope on ZigBee flexibility, then put Ember at the top of your list.
The development boards are actually rather large but designed for use with a number of different configurations. This makes Ember’s offering one of the most flexible around. The base board has Ethernet support along with jumpers and connectors for development purposes, including a JTAG interface for the ZigBee module. The board supports two modules: a ZigBee module and a Rabbit Semiconductor RCM3400 with a Rabbit 3000 microcontroller. The latter is not the microcontroller that supports ZigBee. Rather, the Rabbit 3000 is used to program and manage the microcontroller on Ember’s ZigBee module.
This combination of modules and Ethernet has a number of implications that greatly simplify development. For example, it is possible to connect all the boards to an Ethernet network, which provides a very fast interface for reprogramming the ZigBee modules. This time can be significant when working with a large number of modules. Even half a dozen will be a lot. It is also possible to reprogram the ZigBee module even if the code in the module has a problem. Many kits require reprogramming on an individual module basis using JTAG or other debug interfaces. Finally, debugging a ZigBee network configuration problem is significantly easier if there is another way to get to the board. In this case, it is through Ethernet and the Rabbit Semiconductor module.
Just to simplify things, Ember’s board supports battery operation or Power over Ethernet (POE). POE makes it possible to just plug the unit into a POE switch or hub and be up and running in almost no time. The board gets its IP address via DHCP and the Ember Studio application automatically discovers nodes on the Ethernet network as well as tracking the nodes found via the wireless network.
Ember’s solution hits the mark for Plateau 1 (see “Developing Arms,” ED Online 11307) that covers out-of-the-box demonstrations. The boards and modules are preprogrammed with Ember’s sample application and stack that works with Ember Studio. Creating, configuring, and testing a system takes less than an hour. It actually takes more time to read the documentation to cover all the options available.
Network autodiscovery leads to a map showing how each node is connected to its neighbors. ZigBee has nodes with different capabilities, including a coordinator, router, and end node. I won’t go into details of ZigBee here, but you can check out more architecture details at the ZigBee Alliance website (www.zigbee.org).
This plateau shows how Ember Studio shines. Ember Studio provides access to the routing tables in each node. It can ping any node and each node has a speaker so you can hear, as well as see, what node is involved in the operation. Ember Studio has many more features that I can’t cover here, but it’s safe to say that it is one of the most sophisticated tools in this review.
Moving to Plateau 2—Hello World—highlights Ember’s sample applications. A 30-day evaluation version of IAR’s Embedded Workbench is included along with plenty of sample code and two ZigBee stacks. One handles the generic version of ZigBee while the other handles Ember’s enhanced version.
Ember hits the mark at Plateau 2 as well, because generating the application is only part of the task. Programming the modules is the other part. Unlike most embedded development, ZigBee includes many nodes that typically must be reprogrammed. Ember Studio’s backchannel Ethernet link makes quick work. Just select the application code generated using the IAR tools and then the nodes to be programmed. The process takes minutes rather than hours. This time can be a problem with the other kits that deal with each board via a dedicated debug connection. JTAG is available on Ember’s boards if the option is required, but remote debugging will more likely suffice.
Plateau 3 is reasonable with Ember’s kit. However, the 30-day time limitation on the development tools makes it less than desirable, requiring movement to Plateau 4 and full licensing of the development tools. That will significantly raise the overall cost of the solution, but it can easily save more than that amount given the Ember tools and stack sophistication.
One use for a ZigBee network is sensor networks. This makes the bundling of a 30-day evaluation of Daintree Networks’ Sensor Network Analyzer (SNA) package significant. It includes firmware for the ZigBee microcontroller as well as a Windows-based application that can control and manage a ZigBee sensor network. You need to download the software and key via the Internet, but a high-speed link handles this in minutes. Because documentation and sample code are provided, it’s possible to evaluate SNA within a day—at least for its basic operation.
Although somewhat on the expensive side, Ember’s QuickStart kit is actually a bargain because of how well it streamlines the development process.
Silicon Labs Development Kit
Silicon Labs has put together a nice package with its 2.4-GHz ZigBee Development Kit. It includes six development boards (see Fig. 3) with external antennas like those found on Ember’s modules. Each board contains Silicon Labs’ 8051-based C8051F131 with an on-chip 10-bit ADC and a Chipcon CC2420 ZigBee transceiver chip.
The board has a JTAG interface and it can run off power from the USB interface, a 9-V battery, or an external power supply (not included). The built-in board interfaces include a temperature sensor, LEDS, buttons, and a potentiometer. The kit comes with a single USB-based JTAG interface.
Getting to Plateau 1 is simple but tedious. The modules come with the demonstration program installed, but each module is identical. Each must be connected to a Windows PC running the Silicon Lab’s ZigBee Demo program (see Fig. 4). Each module is then assigned a node ID letter. Labels are provided so it is easy to see each module’s designation. It is then a matter of powering all but the main module using the supplied 9-V batteries to get the network running.
The demo program is more primitive than Ember Studio’s program, but it does provide some similar functions such as the ability to poll a node or see the routing tables. It does not provide the capability to diagnose problems at the code level, but it is very handy for checking out the hardware and the network. It has some new demos, such as tracking the potentiometer setting of a particular board in a running graph.
Silicon Labs provides a version of Keil’s uVision IDE customized for the company’s microcontrollers. There are sufficient demo apps to make Plateau 2 homey, although programming each module takes awhile since each must be plugged into the PC to be programmed. It would be handy to do programming over the wireless network for smaller programs, but the USB or JTAG interfaces are faster for programs that will fill up the flash memory.
Plateaus 3 and 4 are the same, as there is no restriction on the development tools. Likewise, the ZigBee protocol stack documentation provides sufficient information for developing your own application. Diagnostics are primarily those available through the JTAG interface and what you build into the application.
The ability to hook all the modules up to a single PC via the USB link has significant benefits when it comes to configuration and diagnostics. It may take a rather substantial USB hub to handle the half dozen modules, but it is well worth the investment depending upon how development occurs and how many modules are changed and tested at one time.
Microchip Development Kit
PIC developers will be happy to see Microchip’s PICDEM Z ZigBee development boards. Microchip supplied four PIC18-based boards (see Fig. 5) versus the two normally found in the kit. This allowed me to test out their demo application that supports up to four boards. Likewise, the boards were already programmed, saving a little time. Still, it is very easy to program the boards using Microchip’s MPLAB since the binary file is already supplied. It was no more difficult than downloading the other sample applications or my own.
The boards contain a PIC18 in a DIP socket so the kit can be used with range of PIC products. The board also has a nice patch area, making it more flexible for hardware integration development than the other two offerings. There is a Chipcon CC2420 ZigBee chip on module with a built-in PC board antenna to round out the configuration. This approach allows future modules to be tested using the same board. It is possible to solder in an external antenna mount, but the board-based solution is sufficient for many applications and is good enough for testbench work.
Microchip has a minimal solution for Plateau 1. The interface to the main demo application is via the serial port and a terminal application (see Fig. 6). On the plus side, the latter can run on any system, although the MPLAB development tools are designed for Windows. Also, the C compiler is an option.
Plateau 2 utilizes the demo applications that really need to be built using MPLAB in the stock kit. The application only provides the ability to check out the network and turn some LEDs on and off, but that is more than sufficient to demonstrate the ZigBee stack.
Microchip’s stack is small (20k for the coordinator) and less functional than the other two offerings. Configuration is designed for fixed architecture networks, but that is likely to be the first approach to most ZigBee applications anyway. Microchip will be providing mesh support and other ZigBee features in the future.
Developers will probably want to invest in a pair of MPLAB ICD 2 programming and debug systems for Plateaus 3 and 4 (actually the same since there is no restriction on the development tools). These are not included in the kit, which is typical for Microhip’s offerings that separate out the development hardware. The software is available for free and only works with Microchip’s hardware and microcontrollers.
Microchip’s offering is the least expensive solution and easy enough to use with under half a dozen network nodes. Things may get a little more difficult when a lot of nodes are involved. The application will have to be well debugged before programming a dozen systems.
Although Microchip’s ZigBee stack is the least developed, it is something that will improve over time as will the demo and support software. At this point, it is more than sufficient for a determined developer to take and run with. The patch area also makes the platform ideal for prototyping, not just learning about ZigBee.
All three kits let you reach Plateau 3 quickly. Microchip’s offering hits Plateau 4 out of the box. Which kit you choose depends upon your expertise with the microcontrollers, ZigBee, and the level of sophistication that your application requires. Ember handles a high level of sophistication, but you may be limited on your choice of microcontroller. Ember is working to get other microcontrollers supported by additional modules. It already provides support and stacks for other microcontroller architectures.
Developers familiar with the 8051 will feel very comfortable with Silicon Labs’ offering. Likewise, PIC programmers will find Microchip’s package almost perfect.
| Daintree Networks|