Wednesday, November 30, 2011

Bluetooth

Bluetooth, the new technology named after the 10th Century Danish King Harold Bluetooth, is a hot topic among wireless developers. This article will provide an introduction to the technology.

Bluetooth was designed to allow low bandwidth wireless connections to become so simple to use that they seamlessly integrate into your daily life. A simple example of a Bluetooth application is updating the phone directory of your mobile phone. Today, you would have to either manually enter the names and phone numbers of all your contacts or use a cable or IR link between your phone and your PC and start an application to synchronize the contact information. With Bluetooth, this could all happen automatically and without any user involvement as soon as the phone comes within range of the PC! Of course, you can easily see this expanding to include your calendar, to do list, memos, email, etc.. This is just one of many exciting applications for this new technology! Can you imagine walking into a store and having all the sale items items automatically available on your cell phone or PDA? It is a definite possibility with Bluetooth.

The Bluetooth specification is an open specification that is governed by the Bluetooth Special Interest Group (SIG). The Bluetooth SIG is lead by its five founding companies and four new member companies who were added in late 1999. These nine companies form the Promoter Group of the Bluetooth SIG:

Founding Companies New Members
Ericsson3Com Corporation
IBM CorporationLucent Technologies
Intel CorporationMicrosoft Corporation
NokiaMotorola Inc.
Toshiba Corporation

More than 1200 additional companies are members of the Bluetooth SIG. The magnitude of industry involvement should ensure that Bluetooth becomes a widely adopted technology. The first Bluetooth products should begin to appear this year. The first Bluetooth product from Ericsson is a wireless cellular phone headset to be available in Europe in mid-2000.

System Architecture

Bluetooth communication occurs in the unlicensed ISM band at 2.4GHz. The transceiver utilizes frequency hopping to reduce interference and fading. A typical Bluetooth device has a range of about 10 meters. The communication channel can support both data (asynchronous) and voice (synchronous) communications with a total bandwidth of 1 Mb/sec. The supported channel configurations are as follows:

Configuration Max. Data Rate Upstream Max. Data Rate Downstream
3 Simultaneous Voice Channels64 kb/sec X 3 channels64 kb/sec X 3 channels
Symmetric Data433.9 kb/sec433.9 kb/sec
Asymmetric Data723.2 kb/sec or 57.6 kb/sec57.6 kb/sec or 723.2 kb/sec

The synchronous voice channels are provided using circuit switching with a slot reservation at fixed intervals. A synchronous link is referred to as an SCO (synchronous connection-oriented) link. The asynchronous data channels are provided using packet switching utilizing a polling access scheme. An asynchronous link is referred to as an ACL (asynchronous connection-less) link. A combined data-voice SCO packet is also defined. This can provide 64 kb/sec voice and 64 kb/sec data in each direction.

Introducing: The Piconet!

Bluetooth devices can interact with one or more other Bluetooth devices in several different ways. The simplest scheme is when only two devices are involved. This is referred to as point-to-point. One of the devices acts as the master and the other as a slave. This ad-hoc network is referred to as a piconet. As a matter of fact, a piconet is any such Bluetooth network with one master and one or more slaves. A diagram of a piconet is provided in Figure 1. In the case of multiple slaves, the communication topology is referred to as point-to-multipoint. In this case, the channel (and bandwidth) is shared among all the devices in the piconet. There can be up to seven active slaves in a piconet. Each of the active slaves has an assigned 3-bit Active Member address (AM_ADDR). There can be additional slaves which remain synchronized to the master, but do not have a Active Member address. These slaves are not active and are referred to as parked. For the case of both active and parked units, all channel access is regulated by the master. A parked device has an 8-bit Parked Member Address (PM_ADDR), thus limiting the number of parked members to 256. A parked device remains synchronized to the master clock and can very quickly become active and begin communicating in the piconet.

Figure 1: A piconet

Introducing: The Scatternet!

You may be wondering what would happen if two piconets were within the same coverage area. For example, you might have a piconet consisting of your cell phone and your PC, while the person in the neighboring cubicle has a piconet consisting of a cell phone, headset, and business card scanner. A diagram is presented in Figure 2 below.

Figure 2: A scatternet

Because the two piconets are so close, they have overlapping coverage areas. This scenario is provided for in the Bluetooth specification and is referred to as a scatternet. As a matter of fact, slaves in one piconet can participate in another piconet as either a master or slave. This is accomplished through time division multiplexing. In a scatternet, the two (or more) piconets are not synchronized in either time or frequency. Each of the piconets operates in its own frequency hopping channel while any devices in multiple piconets participate at the appropriate time via time division multiplexing. Returning to the example, you may want to set up your neighbor’s business card scanner to also transmit the information that is scanned to your PC so that you will have access to his business contacts information. Of course, this would have to be a mutually agreed upon usage. This brings us to the next topic, Bluetooth security.

Authentication and Privacy

While authentication and privacy could be handled at the software protocol layer, it is also provided in the Bluetooth physical layer. A particular connection can be specified to require either one-way, two-way, or no authentication. The authentication is provided using a challenge/response system. The system supports key lengths of 40 or 64 bits. The key management is left to software layers. These security mechanisms and the associated software allow a user to set up his or her devices to only communicate with each other. All Bluetooth devices implement this physical layer security in the same way. Of course, for highly sensitive applications, it is also recommended that you utilize more advanced algorithms in the network transport or application layer.

Hardware Requirements

Now that you have a basic understanding of what the Bluetooth specification is and how Bluetooth devices can interact with each other, you are probably beginning to wonder what makes all this work in terms of real hardware and software. The remainder of this article will focus on Bluetooth hardware. We will leave a detailed software discussion for a future article.

Bluetooth hardware can be divided into two primary functions, the Radio Module and the Link Module. At this time, a complete Bluetooth hardware module including both Radio and Link subsystems costs between $25-30 in additional parts. However, within the next couple of years this is expected, by most in the industry, to approach $5.

The Radio Module

As mentioned above, Bluetooth devices operate in the 2.4GHz Industrial Scientific Medicine (ISM) band. This is an unlicensed band and, in most countries, includes the frequency range from 2400 to 2483.5 MHz. Of course, as always when dealing with international standards, there are a few exceptions. The primary geographies with exceptions are France (2446.5 to 2483.5 MHz) and Spain (2445 to 2475 MHz). At this time, Bluetooth products for these two markets are local versions that are not interoperable with the international versions which implement the full range. These localized versions have a reduced frequency band and a different hopping algorithm. However, the Bluetooth SIG is working with authorities in both countries to open the full range. For the sake of simplicity, this article will only deal with the international frequency range implementation.

The RF channels used are from 2402 to 2480 MHz with a channel spacing of 1 MHz. Frequency hopping has been implemented to reduce interference and fading. This means that every 625 usec the channel will hop to another frequency within the 2402 to 2480 MHz range. This translates to 1600 hops every second. Each piconet has a unique hopping sequence which is determined using an algorithm the uses the Bluetooth device address of the master device. All Bluetooth units in the piconet are then synchronized to this hopping sequence.

All packet transmissions are started at the beginning of one of the 625 usec time slots. A packet may last up to 5 time slots. A time division duplex scheme is used to facilitate full duplex transmission. During even numbered slots, the master may begin a transmission. During odd numbered slots, a slave may begin a transmission. In addition, these time slots can be reserved for synchronous applications such as voice data.

Bluetooth devices are classified according to three different power classes, as shown in the following table.

Power ClassMaximum OutputPower
1100 mW(20 dBm)
22.5 mW(4 dBm)
31 mW(0 dBm)

Most portable Bluetooth devices will probably be in Power Class 1 or 2 (with a nominal output power of 0 dBm) due to cost and battery life issues. A Power Class 1 device requires that you utilize a power control to limit the transmitted power over 0 dBm. While a little more costly and power hungry, this will provide up to 100m of range, which should be sufficient for home networking and other applications that require a greater range.

Bluetooth radio modules use Gaussian Frequency Shift Keying (GFSK) for modulation. A binary system is used where a one is signified by a positive frequency deviation and a zero is signified by a negative frequency deviation. The data is transmitted at a symbol rate of 1 Ms/sec. The radio module is covered in detail in Part A of the Specification of the Bluetooth System published by the Bluetooth SIG.

The Link Module

The Link Module and the closely associated Link Manager software is responsible for the baseband protocols and some other low level link functions. This includes sending/receiving data, setting up connections, error detection and correction, data whitening, power management, and authentication.

The link module is responsible for deriving the hop sequence. This is accomplished using the Bluetooth Device Address (BD_ADDR) of the master device. All Bluetooth devices are assigned a 48-bit IEEE 802 address. This 48-bit master device address is used by each of the devices in the piconet to derive the hop sequence.

The Link Module is also responsible for performing the three error correction schemes that are defined for Bluetooth:

  • 1/3 rate FEC
  • 2/3 rate FEC
  • ARQ scheme for the data

The purpose of the two FEC (forward error correction) schemes are to reduce the number of retransmissions. The ARQ scheme (automatic retransmission request) will cause the data to be retransmitted until an acknowledgement is received indicating a successful transmission (or until a pre-defined time-out occurs). A CRC (cyclic redundancy check) code is added to each packet and used by the receiver to decide whether or not the packet has arrived error free. Note that the ARQ scheme is only used for data packets, not synchronous payloads such as voice.

In order to reduce highly redundant data and minimize DC bias, a data whitening scheme is used to randomize the data. The data is scrambled by a data whitening word and then unscrambled using the same word at the receiver. This descrambling is done after the error detection/correction process.

Bluetooth provides provisions for three low power modes to conserve battery life. These states, in decreasing order of power requirements are Sniff Mode, Hold Mode, and Park Mode. While in the Sniff mode, a device listens to the piconet at a reduced rate. The Sniff interval is programmable, providing flexibility for different applications. The Hold mode is similar to the Park mode, except that the Active Member address (AM_ADDR) is retained. In the Park mode, the device’s clock continues to run and remains synchronized to the master, but the device does not participate at all in the piconet.

Hardware Implementations

Companies such as Cambridge Silicon Radio are working on single chip Bluetooth solution with roadmaps towards the $5 cost target. Cambridge Silicon Radio expects to be shipping its first silicon in volume by June of 2000. In future designs the host controller software will be frozen and the flash memory will be integrated as mask ROM into the silicon, further reducing the size of the design.

Conclusion

As you can see, the Bluetooth specification is definitely real and is being widely adopted by industry leaders. The possibilities for new applications is very exciting with this versatile technology. Hopefully this article has provided a basic understanding of the Bluetooth architecture so that you can delve into the 1082 page Bluetooth specification or some of our future, more detailed articles on the Wireless Developer Network.

No comments:

Post a Comment