Tutorial: Wireless Communications

  1. Category

    Wireless Communications

    I'll try to explain the acronyms
    Hello all,
    My name is Shane, but my mates call me Boris. With that comment, you can tell I'm Australian! I am a student in telecommunications engineering, and am particularly entranced by wireless communications.
    When I started designing robots in 1997, open source was yet to explode, and wireless communications was a dream in Bell Labs. Telstra Multimedia was a synonym for cable TV. But I dreamed of pumping live video feeds down phone lines (much the way that xDSL works today) and trying to get my amateur radio licence to play with packet radio.
    How times have changed! We have so many options now, and they have their pros and cons. I'll examine each technology in turn, explain it, and list these pros and cons for each. Hopefully, with this guide, you will be able to make an informed choice about the way YOUR robot will be untethered. So without further ado, lets examine the options you have, as a robot builder.

    1. Wifi
    2. Bluetooth
    3. Zigbee
    4. GSM
    5. UMTS/ HSxPA
    6. CDMA
    7. Packet Radio
    8. Exotics (for interest)

    1. Wifi
    Wifi is probably one of the most popular, and well marketed wireless communications systems today. It is, in part, matched by Bluetooth, but Wifi has superior speed, and range. As we will see in this article, there are longer range comms systems, but they have lower speeds.
    Wifi started off at 1Mbps, if you can believe that! Speed increase, due to spread spectrum systems, was fast. Backwards compatibility, not only to supprt older gear, but also to support links in higher noise environments, was a design criteria in Wifi.
    Today, most people are familiar with the 2.4GHz version of Wifi, known commonly as 802.11b/ 802.11g. Don't be scared by these numbers, its like saying "an 82 Class locomotive" or "a 2005 model Ford Falcon."
    However, Wifi is not restricted to 2.4GHz. There is also implementations on 900MHz and 5.8GHz, although these were never as popular as the 2.4GHz variety. Sure, 900MHz was the forerunner to most b/ g systems today, but due to bandwidth issues, popularity waned.
    With the speed of Wifi, one can pipe live video, commands, webserver content, and anything the twisted mind can come up with over the link, and still have bandwidth left over. However, there are problems.
    While the bandwidth of an 802.11g system might be 54Mbps (and conversely, 802.11b at 11Mbps, draft 802.11n at 108Mbps and rising) the fact that Wifi is on the microwave part of the radio spectrum means that its going to have a hard time penetrating walls made of heavy materials, such as brick, and also vegetation, such as trees and shrubs. To a lesser degree, it is affected by heavy rain.
    Additionally, the overheads (ie, the protocol dictates) for a Wifi system might not be suitable for a simple robot. Wifi acts kind of like normal ethernet, in terms of the physical and MAC layers, and this means an overhead. This also means that transmitting all that extra data, to get your computer to understand the way its meant to, can have an impact on battery life.
    At present, I am designing a robot with a dual core Intel Atom motherboard that will have Wifi. It also has a 7.2Amp/ hour SLA battery, and enough wireless options to make anyone say "You're crazy!" Too bad I've heard it all before!
    So to sum up, the pros:
    * Great bandwidth
    * Compatibility with desktop computers (and the Internet)
    * Ability to stream live video, and other multimedia
    And the cons:
    * A large protocol overhead
    * The radio will use alot of power
    * It might not be suitable for simpler robots because of implementation issues

    2. Bluetooth
    Bluetooth was originally created by Ericsson as a method of sending voice from a mobile phone to a headset wirelessly. My first mobile phone was an Ericsson A1018s, and I knew the next model up could have a large (by the standards of today) module plugged into it, and an equally as large headset could make you look geeky!
    Along the way, Bluetooth got hijacked to send data wirelessly. Soon, a requirement for a smartphone was the presence of Bluetooth, as well as a camera. But it wasn't only phones. Computers, PDAs, and even a video camera had Bluetooth modules in them. Keyboards and mice were next. Now, even the Arduino controller is available in a Bluetooth flavor.
    Bluetooth also works in the same piece of spectrum as popular Wifi, 2.4GHz. It however, has a shorter range, while you can get 100 metre modules for your computer, you would be lucky to get more than 10 metres from your phone, due to the fact its powered off a battery.
    Bluetooth also has a protocol overhead, but one can use Bluetooth as a replacement for a RS-232 serial link. This is what the Arduino Bluetooth does. Bluetooth V1.1 has a maximum speed of 1Mbps, and Bluetooth V2.0 (+EDR - Enhanced Data Rate) has a maximum speed of 3Mbps. For our serial experimentation, V1.1 will suffice. V2.0 adds support for stereo headset streaming, for phones such as the new Nokia smartphones (such as the 5800 Xpressmusic... mmm, good phone).
    However, if one is to get a cheaper adapter for their computer, they might get substandard software. Of course, with Linux, one doesn't have an issue, one can choose their software. For Plan 9, we just use ISDN haha. But on Windows, cheaper software means compatibility issues.
    Even with "proper" software, one can have an amazing time swearing their head off as their PDA refuses to sync with their desktop, but both can see a Bluetooth GPS. I'm sure that the Widcomm stack has come a long way in the time since I last had a Bluetooth PDA, but even Vista hated my Nokia N70.
    I must mention, even though the bandwidth on V1.1 is 1Mbps, Ericsson for a while marketed "robots" that were controlled from specific smartphones. One was a little toy car, barely bigger than a Matchbox car. The other was a "ball" (Japanese influence? Long live Neon Genesis) with a camera, that rolled about. You could watch a live feed of the camera on your smartphone through the control software.
    So, to recap, the pros:
    * Good bandwidth
    * Less complex than Wifi
    * Good on battery life
    * Can be used to "sever" RS-232 serial links
    And the cons:
    * Less range
    * Compatibility issues, even with official software

    3. Zigbee
    Zigbee is a new contender in the wireless game, compared to both Wifi and Bluetooth. Occupying the same sliver of the spectrum, 2.4GHz, Zigbee is a lower speed, longer range, "mesh" network. Where Wifi is a point to point, or point to multipoint structured network, Bluetooth is a point to point structured network, Zigbee can assume any network structure, and any "node" can act as a repeater, a router, or an end user agent (such as a robot).
    Zigbee can, under the right conditions, transmit up to a kilometre, at a maximum speed of about 250kbps. It also has a minuscule power requirement, even though the range is alot more compared to both Wifi and Bluetooth.
    Zigbee modules are usually programmed with AT commands (also see the GSM section below) which makes it easy for a serial console, or a serial device, such as the controller on a robot to control the module. Compare this with Wifi, which uses the complex 802.11 Media Access Control.
    One can pipe IP data, or simplistic text, and everything in between, over a Zigbee link. While it might not be enough for a live, detailed video stream, it is enough for commands, and sensor data. One could use an analog 2.4GHz "wireless A/V sender" to send a video stream, in such a situation. This would let you tailor your power output and consumption, based on the total range of the robot.
    So, in summary, the pros:
    * Extended range
    * Simplistic access method (serial console)
    * Low power consumption
    And the cons:
    * Slower speed
    * A more complex way of networking, with any node being able to assume many roles

    4. GSM
    GSM, the Global System for Mobile communications, is a digital mobile, or cellular, phone standard, developed by the Europeans. Compare this against CDMA, which was largely an American standard. GSM is the network of choice in Australia, due to compatibility issues, and monopolistic phone companies. In Europe, GSM is king. Market penetration is not as much in America, indeed, there are large tracts of population where there is no GSM signal.
    GSM started off as a 9.6kbps access method, which was hideously expensive to mere mortals in the climate that was 1998, when AMPS was phased out in Australia. In time, enhancements to GSM, such as GPRS, and EDGE, have increased the speed of the GSM network.
    It was explained to me, the backplane capacity of the network was quite small compared to other, newer, networks, such as UMTS. After photographing almost every angle I could get at of a Nokia DX200 base station without taking to it with a screwdriver, I would have to agree.
    Additionally, because this is a telephone network, you will pay for any, and all data you move around. The reason I am explaining GSM is as a springboard to mobile broadband networks, and because it is so prevalent in Australia today. My recommendation, however, would be, unless you have a specific reason to use GSM, don't use it.
    The pros:
    * In Australia, it covers something like just over 96% of the population.
    * Not much else
    The cons:
    * Expensive
    * Slow

    5. UMTS/ HSxPA
    UMTS and its offspring HSxPA, is a new development in Australia. Now the acronyms start :O UMTS is "Universal Mobile Telecommunications System" and HSPA is "High Speed Packet Access." The "x" can be Downlink or Uplink.
    At first offered on 2100MHz, and only in major suburban areas of Australia, 3rd Generation (3G) was a myth to people like me who prefer the quiet mountains life. Then Telstra exploded a plan to reuse their CDMA spectrum allocations on a 3G network that would cover 98% of the Australian population with upwards of 1.4Mbps wireless broadband.
    In time, Optus has come to the party, offering 3G on their GSM allocation, which I have nicknamed "Longreach." The quiet mountains life just got alot faster, with even my 15 year old cousin unknowingly using Longreach for her new EEE PC.
    Compared to GSM, data charges are far more moderate on 3G. And with allocations on 850MHz (Telstras NextG) and 900MHz (Optus' "Longreach") it sure whips the pants off 2100MHz in terms of penetration into buildings.
    Antennae are available for a "boost" of signal on these frequencies, and since the data rate is upwards of 1.4Mbps, you could feasibly stream a live video feed. Again, since this is a telephone network, you will be paying money for the data you move. Small modems are available, now usually the size of a USB stick. I am yet to benchmark power consumption on my cousins EEE PC running on battery, but I imagine that power usage wouldn't be astronomical.
    In summary, the pros:
    * A great bandwidth
    * Longer range, allowing for real remote operations
    * Designed as a mobile standard, thus battery life should be good
    And the cons:
    * You will pay for data you move
    * The 2100MHz variety doesn't like penetrating buildings and the like, much the same as Wifi

    6. CDMA
    CDMA (Code Division Multiple Access) is a dead standard in Australia. It was phased out a few years ago by Telstra in favour of their WCDMA (Wideband CDMA, aka UMTS/ HSxPA) network. I include it only for completeness.
    Just before CDMA was phased out in Australia, there was a push for EV-DO. EV-DO is an evolution, much like GPRS and EDGE was to GSM, for CDMA. Once again, although I loved CDMA, because where I lived, I got a better signal, its not a relevant technology in Australia these days.

    7. Packet Radio
    Finally, the grandfather of them all. Packet radio has been around in one form or another since the late 1970s. It take the premise that a two way radio (commercial, amateur, of Citizens Band) can be modulated with sounds akin to that of an analog modem.
    However, due to the bandwidth issues posed by packet radio, it was never a serious contender. In fact, few amateurs use it today, for what it was originally designed for, although position reporting using GPS data is quite popular. GPS data is perfect for such a low bandwidth system.
    Telemetry is another name given to packet radio, although sometimes, the modulation can be DTMF or other closed systems of tones, other than a direct sound modulation of the carrier. So as you can see, packet radio or telemetry is quite a slow, simplistic link.
    The pros:
    * Under the right conditions (and the right amateur licence), signals can go around the world
    * Simplistic serial communications (ergo, RS-232)
    The cons:
    * You need to have the correct amateur licence (which I don't have, after a fashion!)
    * Speeds are slow, ranging from 45bps to 10Mbps in some cases, but only on high frequency, directional links, totally unsuitable for an omnidirectional robot control

    8. Exotics
    There are many other ways to send data. However, most are totally unsuitable to robotic control, due to licencing, directional, and bandwidth constraints. Some people make use of Low Interference Potential Devices (LIPD) which mostly work on amateur frequencies, meaning if your neighbour is a ham, you can be clobbered!
    Other ways include ultra sonics, and infra red. These are ok forms of robotic control, but are extremely localised (ultra sonics) or extremely directional (infra red). Additionally, with sensors for robots working in ultra sonic and infra red ranges, it would not help having modulated data confusing your sensor readings.

    Whew! I hope that was an enlightening tutorial, and I hope I explained everything I needed to explain. About four years ago, I wrote two articles, one on wireless comms, and the other on various PCs to use on robots as controllers.
    If I get a good response to this article, I'll redo the controllers article as well, and publish it here. Thank you for reading this far, it might've been a bit dry, and the acronyms confusing, but theres something there!
    And good luck with your wireless experiments!

Replies to Tutorial: Wireless Communications
  1. Join Date
    Dec 2007
    Portland, OR

    Re: Wireless Communications

    Very informative and a good read! Thank you!

  2. WiFi Guest

    Re: Wireless Communications

    Thanks Shane. Just wanted to share as well. ZeroG Wireless has dev tools that work with Microchip PICs for Wi-Fi development: http://www.zerogwireless.com/technology/techtools.html

Closed Tutorial