The Texas Instruments CC1110 Mini Development Kit is an inexpensive, full featured development kit that provides a fast way to start low-power sub-GHz (868 to 915 MHz) wireless projects.
The CC1110 Mini Development Kit (see Figure 1) is designed for rapid prototyping of wireless alarm and security systems, industrial monitoring and control applications, and wireless sensor networks. The kit includes two SmartRFCC1110-868 target boards; a CC debugger with a converter board and cables; an evaluation version of the IAR EW8051 Embedded Workbench; and a PCB antenna pretested for ETSI and FCC compliance. The user manual even suggests that you can add your own external antenna by switching the position of a resistor. Using the included source code and Gerber files, it would be easy to repurpose these boards into real world applications, which Texas Instruments has apparently seriously considered.
This article will examine the operation and capabilities of the board as well as doing range testing, which yielded some surprising results.
Figure 1: CC1110 868-MHz Mini Development Kit.
Getting Started
The kit comes with two boards pre-programmed with a test link that operates at 868.3 MHz using GFSK modulation at a bit rate of 2.4 kbps. The link test establishes point-to-point communication between the master and slave mode using TI's SimpliciTI protocol.
To run the link test, after powering up each board, press the master button on one board and the slave button on the other. Each board contains red and green LEDs, with the blinking pattern indicating their status. Within a few minutes of opening the box, the link test was up and running. Once the link is established, the master sends packets to the slave and waits 250 ms for acknowledgment. The slave remains in receive mode except to transmit acknowledgement packets back to the master. The whole cycle with the preprogrammed link test takes about 1.3 seconds, though the data rate, timing, and power can all be changed by recompiling the source code and reflashing the chip. TI provides the full source code for this application, which developers can easily modify using the IAR Embedded Workbench and the CC debugger, both of which are included with the kit. Reflashing requires downloading the SmartRF Flash Programmer and testing requires the SmartRF Studio. Both are free.
The transceiver
The kit is based around TI's CC1110 RF transceiver (see Figure 2) that includes a 26 MHz single-cycle 8051 microcontroller running at 26 MHz. Each board contains up to 32 KB of in-system programmable Flash memory; up to 4 KB of RAM; five DMA channels; plus an ADC, PWM, UART, SPI, I²S, four timers; 21 GP I/O pins; and a full speed (12 Mbps) USB 2.0 controller.
Figure 2: CC1110Fx block diagram (Courtesy of Texas Instruments).
The transceiver covers 782 to 928 MHz; output power is programmable up to 10 dBm and the data rate is programmable up to 500 kBaud. The receiver sensitivity, at 868 MHz, is rated at -110 dBm; the bandwidth is user programmable between 58 and 812 kHz. When running GSK at 868 MHz with a 1.2 kBaud data rate, the adjacent channel rejection is 38 dB and saturation is -14 dB. TI warns you not to bring the master and slave units closer than one meter to avoid saturation – the downside of running the front end wide open.
In active receive mode at 868 MHz, with the system clock running at 26 MHz and a data rate of 1.2 kBaud, the CC1110 draws 19.7 mA (minimum). Switching to transmit mode at -6 dBm output power, the chip draws only slightly more – 20.0 mA, increasing to 21 mA for 0 dBm output and 36.2 mA for 10 dBm.
The CC1110 incorporates four low-power modes, reducing current consumption in varying degrees as the application allows (figures are for minimums):
- Power Mode 0 (4.3 mA) – Same as active mode but with the CPU not running; system clock is 24 or 26 MHz.
- Power Mode 1 (220 µA) – Digital regulator is on. High-speed RC and crystal oscillators are off and the low-speed crystal or low-power RC oscillator is running.
- Power Mode 2 (0.5 µA) – Digital regulator is off. High-speed RC and crystal oscillators are off and low-power RC oscillator is running.
- Power Mode 3 (0.3 µA) – Digital regulator is off and no oscillators are running.
Starting your own application by modifying TI’s source code can save you a lot of time figuring out how to program the various power-down modes.
Check it out
Before setting out to work with the source code, I first had to install the IAR Embedded Workbench Evaluation Edition for 8051, which comes with the kit.
After trying out the pre-programmed link test, install IAR Embedded Workbench and then download and install SmartRF Studio. Plug the small red adapter board into the CC debugger and the other end to one of the target boards. Next, start SmartRF Studio and plug the debugger into your computer using the supplied USB cable. The software should immediately recognize the CC1110 board. In my case, despite having purchased a new kit, it told me the firmware on the board was out of date and updated it before going further. I double clicked on the CC1110 entry in the lower tab, which opened up the Device Control Panel (see Figure 3).
Figure 3: SmartRF Device Control Panel for CC1100 target board (Courtesy of Texas Instruments).
From the control panel you can change almost all of the CC1110’s parameters and the register settings to optimize the performance of your application. For starters you can check out the operation of the pre-programmed range test application and the effects of changing frequency, channel spacing, data rate, and so on. Figure 4 shows a graph of the connected target board running the default settings in continuous receive mode while the remote Master board is transmitting packets.
Figure 4: SmartRFCC1110 target board in continuous receive mode (Courtesy of Texas Instruments).
Just remember when you make changes to one board that you will probably need to make the same changes to the other board to maintain the link.
Rolling your own
Before you can work on the source code, you have to find it. It doesn’t come with the kit, and the Quick Start Guide says it’s available on the CC1110 Mini Dev Kit page, but it is far from clear where it is located. Do a search on the TI site for swrc113.zip, then download and unzip it, copying the source file to a place where you can conveniently find the files.
- Next start up IAR Embedded Workbench and open the project file smpl_link_srfccxx10.eww. From the Project menu, select Rebuild All and check that there are no resulting errors. You can then download and debug the program if necessary (which shouldn’t be necessary at this point).
- To use TI’s SmartRF Flash Programmer (see Figure 5) instead of the IAR workbench, start it up and it should recognize the presence of the CC1110 and the CC Debugger.
- Select the Flash image file that the Embedded Workbench kicked out in Step 1 (…\Output\smpl_link.hex).
- Select Erase, program and verify, then click on Perform actions. The window above the progress bar should eventually read “CC1110 – IDxxx: Erase, program and verify OK.”
- Restart SmartRF Studio to check out the performance of your program.
Figure 5: Flash programming completed (Courtesy of Texas Instruments).
Having to switch between two or three different programs during the course of development isn’t the same as having a completely integrated IDE, but each of the tools does what it was designed to do very well, and each will be useful during different stages of evaluation and development. Besides, if you use the Gerber files, stick with the board layout, and develop your own application by modifying the example software, you’ll get where you’re going quickly enough anyway.
2.4 GHz versus sub-GHz
The vast majority of unlicensed low-power wireless devices operate in the 2.4 GHz ISM band, which, in some environments, is becoming so crowded with Wi-Fi, Bluetooth, and other devices that it's in danger of becoming a “junk band.” The 5 GHz ISM band is currently far less crowded and offers higher speed and greater bandwidth, the trade-off being shorter range and less ability to penetrate intervening objects. When longer range is needed, the sub-GHz ISM bands at 868 MHz and 915 MHz are the preferred option.
All other considerations aside, just reducing the frequency from 2.4 GHz to 868 MHz reduces the free space path loss (FSPL) considerably, since FSPL is proportional to the square of the frequency:
Where
d is the distance from the transmitter in meters
λ is the signal wavelength in meters
Maintaining the same link budget, simply reducing the frequency of your transmitter from 2.4 GHz to 868 MHz results in an increase in range of ~3x.
Range in radio communication is generally described by Friis transmission equation (see Equation 1), which determines the link budget:
where
PR: Power available from receiving antenna (in dBm)
PT: Power supplied to the transmitting antenna (in dBm)
GR: Gain in receiving antenna (in dBi)
GT: Gain in transmitting antenna (in dBi)
λ: Wavelength (in meters)
d: Distance (in meters)
Before doing a range test, I was curious what the theoretical range would be for these devices – ignoring major variables including ground influences, multipath, and the close proximity of the metal tripod (TI warns you that the antenna lengths are optimized to reflect the presence of two AAA batteries). Working from the CC1110F32 datasheet and solving for d, I assumed:
PR: -110 dBm (max. sensitivity @ 1.2 kBaud)
PT: 10 dBm (max. output)
GR: 0
GT: 0
λ: 0.346 meters
Using these numbers, the theoretical distance d works out to be 28 km (10 km at 2.4 GHz), which is pretty optimistic for any device that uses a lossy PCB patch antenna, especially one detuned by the proximity of a metal tripod (next section). It was time to do a real-world range test.
Range testing
After a glance at the Quick Start Guide I had both boards running the pre-programmed link test in a few minutes. I tried the range test around the house where plenty of 2.4 GHz kits have failed – and when that did not faze it, I tried it outdoors on a nearby street, setting the slave unit on a tripod and holding the master unit out the car window as I drove slowly way. The farthest I could go without cresting a hill was two blocks, and there was still no sign of dropped packets. That large PCB antenna – not to mention a decent output power level – seemed to be doing a good job.
Next, I drove out to a long stretch of straight, flat road – something that's not hard to find in Central Texas. I mounted the slave unit about 12 feet up on a Buddipole tripod (see Figure 6) and proceeded to drive away. I got about one third of a mile – approximately 1,500 feet or 500 meters – before starting to get dropped packets; it was not more than another few seconds (at 30 mph) before the link was lost. Turning around I was surprised to find that the link was re-established, which can happen if you get back in range within 60 seconds before the master unit times out. I went back and repeated the test with the same results.
Figure 6: Home, home on the range.
I think 500 meters is pretty impressive for a low-power device with a PCB antenna – and a good argument for sub-GHz devices. I also appreciate that TI engineers make it easy – and even encourage you – to add an F-connector next to the PA output to connect an external antenna. With high-gain Yagis and small Pas, I could probably set up a comms link with the next county.
Summary
Sub-GHz wireless ISM bands are less crowded than their 2.4 GHz counterparts and their range is considerably less limited. This has led to substantial interest in using these bands for medical and industrial applications. Texas Instruments’ CC1110 Mini Development Kit provides an easy way to evaluate the CC1110 RF chip and then goes a long way toward developing full sub-GHz wireless applications.