In order to use Bluetooth, a device must be compatible with the subset of Bluetooth profiles (often called services or functions) necessary to use the desired services. A Bluetooth profile is a specification regarding an aspect of Bluetooth-based wireless communication between devices. It resides on top of the Bluetooth Core Specification and (optionally) additional protocols. While the profile may use certain features of the core specification, specific versions of profiles are rarely tied to specific versions of the core specification, making them independent of each other. For example, there are Hands-Free Profile (HFP) 1.5 implementations using both Bluetooth 2.0 and Bluetooth 1.2 core specifications.
The way a device uses Bluetooth depends on its profile capabilities. The profiles provide standards that manufacturers follow to allow devices to use Bluetooth in the intended manner. For the Bluetooth Low Energy stack, according to Bluetooth 4.0 a special set of profiles applies.
A host operating system can expose a basic set of profiles (namely OBEX, HID and Audio Sink) and manufacturers can add additional profiles to their drivers and stack to enhance what their Bluetooth devices can do. Devices such as mobile phones can expose additional profiles by installing appropriate apps.
At a minimum, each profile specification contains information on the following topics: Dependencies on other formats Suggested user interface formats Specific parts of the Bluetooth protocol stack used by the profile. To perform its task, each profile uses particular options and parameters at each layer of the stack. This may include an outline of the required service record, if appropriate.
This article summarizes the current definitions of profiles defined and adopted by the Bluetooth SIG and possible applications of each profile.
Advanced Audio Distribution Profile (A2DP)
This profile defines how multimedia audio can be streamed from one device to another over a Bluetooth connection (it is also called Bluetooth Audio Streaming). For example, music can be streamed from a mobile phone, laptop, or desktop to a wireless headset, hearing aid/cochlear implant streamer, or car audio; voice can be streamed from a microphone device to a recorder on a mobile phone or computer. The Audio/Video Remote Control Profile (AVRCP) is often used in conjunction with A2DP for remote control on devices such as headphones, car audio systems, or stand-alone speaker units. These systems often also implement Headset (HSP) or Hands-Free (HFP) profiles for telephone calls, which may be used separately.
Each A2DP service, of possibly many, is designed to uni-directionally transfer an audio stream in up to 2 channel stereo, either to or from the Bluetooth host.Advanced Audio Distribution Profile, Adopted Version 1.0 This profile relies on AVDTP and GAVDP. It includes mandatory support for the low-complexity but the low-bitrate SBC codec (not to be confused with Bluetooth's voice-signal codecs such as CVSDM), and supports optionally MPEG-1 Part 3/MPEG-2 Part 3 (MP2 and MP3), MPEG-2 Part 7/MPEG-4 Part 3 (AAC and HE-AAC), and ATRAC, and is extensible to support manufacturer-defined codecs, such as aptX and LDAC. For an extended list of codecs, see .
While designed for a one-way audio transfer - CSR has developed a way to transfer a mono stream back (and enable use of headsets with microphones), and incorporated it into FastStream and aptX Low Latency codecs. The patent has expired.
Some Bluetooth stacks enforce the SCMS-T digital rights management (DRM) scheme. In these cases, it is impossible to connect certain A2DP headphones for high quality audio, while some vendors disable the A2DP functionality altogether to avoid devices rejecting A2DP sink.
Attribute Profile (ATT)
The ATT is a wire application protocol for the Bluetooth Low Energy specification. It is closely related to Generic Attribute Profile (GATT).
Audio/Video Remote Control Profile (AVRCP)
This profile is designed to provide a standard interface to control TVs, Hi-Fi equipment, etc. to allow a single remote control (or other device) to control all of the A/V equipment to which a user has access. It may be used in concert with A2DP or VDP. It is commonly used in car navigation systems to control streaming Bluetooth audio.
It also has the possibility for vendor-dependent extensions.
AVRCP has several versions with significantly increasing functionality: 1.0 — Basic remote control commands (play/pause/stop, etc.) 1.3 — all of 1.0 plus metadata and media-player state support The status of the music source (playing, stopped, etc.) Metadata information on the track itself (artist, track name, etc.). 1.4 — all of 1.3 plus media browsing capabilities for multiple media players Browsing and manipulation of multiple players Browsing of media metadata per media player, including a "Now Playing" list Basic search capabilities Support for Absolute volume 1.5 — all of 1.4 plus specification corrections and clarifications to absolute volume control, browsing and other features 1.6 — all of 1.5 plus browsing data and track information Number of items that are in a folder without downloading the list Support for transmitting cover arts through the BIP over OBEX protocol. 1.6.1 and 1.6.2 correct minor errors in tables.
Basic Imaging Profile (BIP)
This profile is designed for sending images between devices and includes the ability to resize, and convert images to make them suitable for the receiving device. It may be broken down into smaller pieces: Image Push Allows the sending of images from a device the user controls. Image Pull Allows the browsing and retrieval of images from a remote device. Advanced Image Printing print images with advanced options using the DPOF format developed by Canon, Kodak, Fujifilm, and Matsushita Automatic Archive Allows the automatic backup of all the new images from a target device. For example, a laptop could download all of the new pictures from a camera whenever it is within range. Remote Camera Allows the initiator to remotely use a digital camera. For example, a user could place a camera on a tripod for a group photo, use their phone handset to check that everyone is in frame, and activate the shutter with the user in the photo. Remote Display Allows the initiator to push images to be displayed on another device. For example, a user could give a presentation by sending the slides to a video projector.
Basic Printing Profile (BPP)
This allows devices to send text, e-mails, vCards, or other items to printers based on print jobs. It differs from HCRP in that it needs no printer-specific drivers. This makes it more suitable for embedded devices such as mobile phones and digital cameras which cannot easily be updated with drivers dependent upon printer vendors.
Common ISDN Access Profile (CIP)
This provides unrestricted access to the services, data and signalling that ISDN offers.
Cordless Telephony Profile (CTP)
This is designed for cordless phones to work using Bluetooth. It is hoped that mobile phones could use a Bluetooth CTP gateway connected to a landline when within the home, and the mobile phone network when out of range. It is central to the Bluetooth SIG's "3-in-1 phone" use case.
Device ID Profile (real cDIP)
This profile allows a device to be identified above and beyond the limitations of the Device Class already available in Bluetooth. It enables identification of the manufacturer, product id, product version, and the version of the Device ID specification being met. It is useful in allowing a PC to identify a connecting device and download appropriate drivers. It enables similar applications to those the Plug-and-play specification allows.
This is important in order to make best use of the features on the device identified. A few examples illustrating possible uses of this information are listed below:
In PC-to-PC usage models (such as conference table and file transfer), a PC may use this information to supplement information from other Bluetooth specifications to identify the right device to communicate with. A cellular phone may use this information to identify associated accessories or download Java apps from another device that advertises its availability. In PC to peripheral usage models (such as dial up networking using a cellular phone), the PC may need to download device drivers or other software for that peripheral from a web site. To do this the driver must know the proper identity of the peripheral. Devices are expected to provide some basic functionality using only the Bluetooth profile implementation, and that additional software loaded using the Device ID information should only be necessary for extended or proprietary features. Likewise, devices which access a profile in another device are expected to be able provide the basic services of the profile regardless of the presence or absence of Real cutz ID information.
Dial-up Networking Profile (DUN)
This profile provides a standard to access the Internet and other dial-up services over Bluetooth by utilising a virtual COM port associated with a virtual modem. The most common scenario is accessing the Internet from a laptop by dialing up on a mobile phone, wirelessly. It is based on Serial Port Profile (SPP), and provides for relatively easy conversion of existing products, through the many features that it has in common with the existing wired serial protocols for the same task. These include the AT command set specified in European Telecommunications Standards Institute (ETSI) 07.07, and Point-to-Point Protocol (PPP).
DUN distinguishes the initiator (DUN Terminal) of the connection and the provider (DUN Gateway) of the connection. The gateway provides a modem interface and establishes the connection to a PPP gateway. The terminal implements the usage of the modem and PPP protocol to establish the network connection. In standard phones, the gateway PPP functionality is usually implemented by the access point of the Telco provider. In "always on" smartphones, the PPP gateway is often provided by the phone and the terminal shares the connection.
Fax Profile (FAX)
This profile is intended to provide a well-defined interface between a mobile phone or fixed-line phone and a PC with Fax software installed. Support must be provided for ITU T.31 and / or ITU T.32 AT command sets as defined by ITU-T. Data and voice calls are not covered by this profile.
Generic Audio/Video Distribution Profile (GAVDP)
GAVDP provides the basis for A2DP and VDP, the basis of the systems designed for distributing video and audio streams using Bluetooth technology.
The GAVDP defines two roles, that of an Initiator and an Acceptor: Initiator (INT) – This is the device that initiates a signaling procedure. Acceptor (ACP) – This is the device that shall respond to an incoming request from the INT Note: the roles are not fixed to the devices. The roles are determined when you initiate a signaling procedure, and they are released when the procedure ends. The roles can be switched between two devices when a new procedure is initiated.The Baseband, LMP, L2CAP, and SDP are Bluetooth protocols defined in the Bluetooth Core specifications. AVDTP consists of a signaling entity for negotiation of streaming parameters and a transport entity that handles the streaming.
Generic Access Profile (GAP)
Provides the basis for all other profiles. GAP defines how two Bluetooth units discover and establish a connection with each other.
Generic Attribute Profile (GATT)
Provides profile discovery and description services for Bluetooth Low Energy protocol. It defines how ATT attributes are grouped together into sets to form services.GATT
Generic Object Exchange Profile (GOEP)
Provides a basis for other data profiles. Based on OBEX and sometimes referred to as such.
Hard Copy Cable Replacement Profile (HCRP)