Page 87 - Hacking Roomba
P. 87

68       Part I — Interfacing




                             Bluetooth Profiles

                             What is Bluetooth being used for? Like USB, Bluetooth defines a set of device classes to solve
                             common tasks. Devices within the same class speak the same sub-protocol of Bluetooth and
                             thus need no drivers to interoperate. Bluetooth calls these device classes profiles. Table 4-1 lists
                             a few of the most commonly used profiles.



                              Table 4-1  Common Bluetooth Profiles
                              Profile Name               Description

                              Headset Profile (HSP)      Most common profile, used for those tiny headsets for cell
                                                         phones
                              Hands Free Profile (HFP)   Used in cars to enable hands-free mode by integrating with
                                                         the car stereo
                              Human Interface Device Profile (HID) Supports keyboards and mice and other input devices
                              Object Push Profile (OPP)  Used mostly by cell phones to send vCards (virtual business
                                                         cards) and vCalendar (virtual appointment book) entries
                              Basic Printing Profile (BPP)  Allows structured access to printers
                              Dialup Networking Profile (DUN)  Provides a standard way to access the Internet
                              Serial Port Profile (SPP)  Serial port cable emulation


                             Computers with Bluetooth implement some subset of all available Bluetooth profiles. This
                             used to be a big problem, as the operating system drivers would only implement the HID and
                             DUN profiles and nothing else, making the claim Bluetooth compatible a misnomer at best.
                             Most operating systems now support all the profiles you would be likely to use.

                             The profiles provide a common task-centric set of languages that allow devices from disparate
                             manufacturers to work together. In fact, Bluetooth is named after the 10th-century Danish
                             King Bluetooth, who was famed for getting warring parties to negotiate with one another. It’s a
                             fitting sentiment for any wireless technology.


                     Parts and Tools

                             Many of the parts used in this project will be familiar from Chapter 3 since the circuit is very
                             similar. You won’t need a MAX232 transceiver chip to convert between 0–5V logic and the +/-
                             12V logic of RS232, but you will need a header socket for the BlueSMiRF module (and the
                             BlueSMiRF module itself). So for this project all the parts you will need are:

                                 Mini-DIN 8-pin cable, Jameco part number 10604
                                 General-purpose circuit board, Radio Shack part number 276-150
   82   83   84   85   86   87   88   89   90   91   92