RoadTest: Anaren AIR CC2530 BoosterPack Kit
Evaluation Type: Evaluation Boards
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: Anaren AIR modules for ISM band proprietary applications. Also Amber Wireless and HopeRF products.
What were the biggest problems encountered?: The demo boards need 3 Launchpad boards for operation. The base boards only provide power and debugging communications as far as I can tell. On the MSP430 base boards the RX-TX lines have to be crossed.
First I would like to thank Element14 and TI for letting me test this wonderful product. Of all the RoadTest applications I've made to be selected for this is just incredible. I applied mostly because I'm designing a product that already uses Anaren AIR modules and though this might be a good comparison.
Hardware: The kit contains three demo boards with TI CC2530 (http://www.ti.com/product/cc2530) SOC AIR modules. The boards themselves are like any demo board from a quality manufacturer like Anaren but the AIR modules are what really catches the eye. Like all the AIR modules I have seen they are a really nice blue color on some sort of RF substrate. Considering all the functionality these modules contain they are tiny. Compared to the CC1101 modules that I have used they are only maybe twice the area. Since the modules work at 2.4 GHz they don't need any external antennas unlike my 433 MHz modules. The demo boards come configured for US regulations (probably FCC or something). Since the EU requires lower maximum transmit power in this band there is a tiny switch that limits output power for EU/ETSI compliance. I will try to compare the range with US and EU modes selected to see how much difference this makes.
The kit contained three boards with preprogrammed MSP430 MCUs. They were set up as one coordinator, one router and one endpoint. All the boards have the same hardware as far as I can tell and it should be possible to configure any board to work as any device. I may even order an extra kit to try bigger constellations. All the boards seem to have an RGB LED for user feedback, a color sensor, an IR tempertaure sensor and some switches and buttons and LEDs. Also there is an external EEPROM chip but I have yet to discover if this is required for the Zigbee operation or if this can be used for sensor data logging. I especially like the extra long pin-headers on these boards because that way I can probe the boards very easily without adding wires.
The kit also contained a small 2 AA battery pack that I think should be used to power the endpoint device but the introduction video didn't mention it and I have yet to test that.
Software: The default firmware images are set up for a small wireless sensor network. For my test I had all three boards connected to the same computer for power and the coordinator device was also monitored with a virtual terminal. The coordinator reports sensor readings from the network periodically and also listens for new devices appearing on the network. With only three devices the structure of the network is very simple. First tests reveal that the network can adapt to changing conditions like removing the router from a working network. The endpoint device can connect directly to the coordinator and still report sensor readings. I would like to test multihop networks and multiple path routing but for this I will need more than three devices. The demo software has the endpoint measuring colors with the light sensor and the router uses the IR thermometer for measurement. Both devices also report supply voltage. On the coordinator a button (S2) can be used to make the RGB LED display the sensor readings from devices.
Price: The AIR modules I use are about 15 € in single quantities from Farnell while the A2530 module is around 19 €. This is a very small difference considering that the Zigbee stack gives you a very simple interface and save countless hours of development time (trust me I know ...). I have to look a bit more into it but I think the A2530 modules could also be programmed to run your own code saving the cost of an additional MCU in some applications. One of my projects requires a device to read an ADC every few seconds and sleep for most of the remaining time. I would be very interested in integrating all the functionality inside the module saving me the cost of a MCU and additionally saving a lot of PCB realestate. In larger quantities the price difference gets even smaller. For small to medium run devices this should be an ideal module if you can live with the 2.4 GHz radio.
Price update: It seems that there are two models of this modules available: A2530E (the on in this kit) contains the CC2530 SOC + CC2591 range extender. This allows for higher output power and longer range. There is also a model without the range extender - A2530R and this seems to cost the same as the CC1101/CC2500 models. Since many applications will not need the long range it seems that these AIR modules may be the perfect choice there. The only problem I can see with using Zigbee is that Bluetooth 4 (Bluetooth Low Energy) modules can actually be in the same price range while offering better connectivity to smartphones and other devices.
Software update: I measured the power usage of the endpoint device and it seems to go from about 12.5 mA to 44 mA. According to the datasheet in the ETSI compliant configuration it should go upto 78 mA. There may be some sort of power reduction based on signal strength going on as my devices are quite close to each other at the moment. Seeing that the minimum current is a whopping 12.5 mA is a pretty good indication that the endpoint device is not using any low power features. This is surprising considering all the use cases for such modules. If I were the producer of these modules this is one thing I would change. I see no reason why he endpoint device couldn't sleep for most of the time only waking every few seconds to do its measurements, contact the radio network and go back to sleep as fast as possible. I think Zigbee standard should support such a feature (I didn't check so correct me if I'm mistaken). I will have to try and see if it is possible to change the endpoint device code so that it would use less power. For any application I can think of the endpoint would need to be battery powered. It would be nice to have the routers battery powered too but this is probably not supported by Zigbee as it would require very tight time synchronization between all the members of a network.
Power use profile: The demo boards have an onboard current measurement sensor. This is a TI INA216A2 current sense amplifier. This amplifies the voltage drop on a 200 milli-ohm resistor by 50 and provides the output for MCU measurement. I used the amplified signal as input to my scope to get a profile of the changes in current vs time for the demo software on the endpoint device.
I was not that interested in the actual current values as they can be easily measured and that has already been done by Anaren (http://www.anaren.com/air-wiki-zigbee/Module_Current_Consumption). What I was trying to see was the time it takes for the module to complete all the work needed for on packet as this can be used to compare different radio modules (considering they all have about the same sleep current or can be powered off if not needed). I'm not very familiar with Zigbee but I will try to describe what I think is happening in the screenshot. First the SOC is in a low power mode and this is the basline on the scope image. Then the MCU in the SOC wakes up and starts preparing the radio and doing whatever it needs to go on the air. This is the first low plateau in the image. The second plateau is probably RX mode as the radio listens for a free channel (Listen Before Talk). The highest peak is most likely TX mode as the radio on the demo boards has a power amplifier that can use a lot of power. On the radios I have used before with a 10 mW max output power RX and TX use almost the same current, but this radio is a lot more powerful. After TX the radio goes back to RX to be ready for the ACK packet from the router or coordinator. After that the radio goes to sleep and the MCU saves states and what-not and also goes into a low power state.
The entire cycle takes less than 7 ms and this is quite good compared to my own implementation on CC1101. For comparison Bluetooth Low Enegry was a worst case cycle time of 5 ms and usually it is a lot shorter. These modules seem very good for battery powered solutions with this short cycle time and a sleep current of under 20 uA (from Anaren's measurements). My measurement were made on the default firmware for the endpoint device as this is what I would consider the most critical energy wise. With optimized firmware and settings it may be possible to go quite a bit lower.
Module Firmware: The A2530 modules come shipped with Anaren's AIR-ZNP software but (according to http://www.anaren.com/air-wiki-zigbee/Loading_Firmware_into_the_A2530_Module) can be loaded with custom firmware. This will require a CC-Debugger device and some custom code. Since the module contains the CC2530 SOC and some passives (and optionally a PA) TI's firmware should run on the modules too. What this means is that is possible to modify excisting code and add functionality to the modules that can make an external MCU obsolete. Since the module has some GPIO it should be possible to run some simple applications straight from the SOC. Unfortunately I can't find the default Anaren image for the modules and I'm a little scared to try to modify the SOC firmware without a working image to fall back on. I do have a CC-Debugger and should get a license for one of the supported compilers required for the TI firmware (can't remember whitch one).
I will try to update this review after some more tests and measurements.
I haven't tried CCS with this module yet. I really prefer to use GCC as much as possible and for the little tests I could get by without having to install a big IDE.
These booster packs can also be used with MCU-s other than TIs and I might try to port my excisting AVR app to use these radios as a weekend project. I do like these but for my applications Bluetooth Low Energy really seems like a more suitable approach.
Hi. Were you able to integrate the code with CCS for MSP430 launchpad ?