What are Bluetooth Profiles For?
If Bluetooth is to achieve its potential as a useful consumer technology, then it is crucial that different devices must interoperate: They must smoothly and easily work together. The Bluetooth profiles are all about interoperability.
A profile is just a description of how to use a specification to implement a given end-user function. The International Standards Organization (ISO) first came up with the idea of profiles. Profiles help interoperability in four key ways:
Implementation options are reduced, so applications share the same features.
Parameters are defined, so applications operate in similar ways.
Standard mechanisms for combining different standards are defined.
User interface guidelines are defined, giving uniformity across devices.
The profiles describe minimum implementations of the Bluetooth protocol stack for typical applications. Manufacturers can add to these, but each profile describes a minimum recipe for building a particular type of device. If a device implements an end-user function covered by a profile, then it must implement that profile (for interoperability). It may also implement a proprietary method (for flexibility).
Figure 1 shows how the Bluetooth profiles are built up in layers, with each profile relying upon the layers beneath.
The Bluetooth profiles.
Generic Access Profile
The Generic Access Profile provides a basic level of functionality that all Bluetooth devices must implement. It ensures that all Bluetooth devices should be capable of making baseband connections regardless of what higher-level functionality they support. The Generic Access Profile defines the following:
Generic procedures for discovering Bluetooth devices
Link-management aspects of connecting to Bluetooth devices
Procedures related to security levels
Common formats for user interface-level parameters (naming conventions)
The Service Discovery Application Profile rests directly on the Generic Access Profile. It defines how an application should use the Bluetooth Service Discovery Protocol (SDP), to find the capabilities of other devices in its neighborhood.
There are also three groups of profiles resting on the Generic Access Profile:
The Serial Port Profile group—All use RFCOMM serial port emulation
The Generic Object Exchange Profile group—All use OBEX object exchange
The Telephony Control Protocol Specification group—All use TCS Binary
Figure 2 shows these groups relate to one another—let's go on to look at what they do.
Bluetooth profile groups.