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 to a wireless headset, hearing aid/cochlear implant streamer, or car audio; alternately from a laptop/desktop to a wireless headset; also, voice can be streamed from a microphone device to a recorder on a PC.[1] 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.[2] This profile relies on AVDTP and GAVDP. It includes mandatory support for the low-complexity 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.[3] For an extended list of codecs, see List of codecs § Bluetooth.
While designed for a one-way audio transfer - CSR has developed a way to transfer a mono stream back (and enable using headsets with microphones), and incorporated it into FastStream and aptX Low Latency codecs. The patent has expired.
Some Bluetooth stacks enforce the SCMS-Tdigital 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.[4] 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:[5]
1.0 — Basic remote control commands (play/pause/stop, etc.)[6]
1.3 — all of 1.0 plus metadata and media-player state support[7]
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[8]
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[9]
1.6 — all of 1.5 plus browsing data and track information[10]
Number of items that are in a folder without downloading the list
Support for transmitting cover arts through the BIP over OBEX protocol.
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.
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 (DIP)
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 Device ID information.
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.[15]
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)
This provides a simple wireless alternative to a cable connection between a device and a printer. Unfortunately it does not set a standard regarding the actual communications to the printer, so drivers are required specific to the printer model or range. This makes this profile less useful for embedded devices such as digital cameras and palmtops, as updating drivers can be problematic.
Health Device Profile (HDP)
Health Thermometer profile (HTP) and Heart Rate Profile (HRP) fall under this category as well.
Profile designed to facilitate transmission and reception of Medical Device data. The APIs of this layer interact with the lower level Multi-Channel Adaptation Protocol (MCAP layer), but also perform SDP behavior to connect to remote HDP devices. Also makes use of the Device ID Profile (DIP).
Hands-Free Profile (HFP)
This profile is used to allow car hands-free kits to communicate with mobile phones in the car. It commonly uses Synchronous Connection Oriented link (SCO) to carry a monaural audio channel with continuously variable slope delta modulation or pulse-code modulation, and with logarithmic a-law or μ-law quantization. Version 1.6 adds optional support for wide band speech with the mSBC codec, a 16 kHz monaural configuration of the SBC codec mandated by the A2DP profile. Version 1.7 adds indicator support to report such things as headset battery level.
In 2002 Audi, with the Audi A8, was the first motor vehicle manufacturer to install Bluetooth technology in a car, enabling the passenger to use a wireless in-car phone. The following year DaimlerChrysler and Acura introduced Bluetooth technology integration with the audio system as a standard feature in the third-generation Acura TL in a system dubbed HandsFree Link (HFL). Later, BMW added it as an option on its 1 Series, 3 Series, 5 Series, 7 Series and X5 vehicles. Since then, other manufacturers have followed suit, with many vehicles, including the Toyota Prius (since 2004), 2007 Toyota Camry, 2006 Infiniti G35, and the Lexus LS 430 (since 2004). Several Nissan models (Versa, X-Trail) include a built-in Bluetooth for the Technology option. Volvo started introducing support in some vehicles in 2007, and as of 2009 all Bluetooth-enabled vehicles support HFP.[16]
Many car audio consumer electronics manufacturers like Kenwood, JVC, Sony, Pioneer and Alpine build car audio receivers that house Bluetooth modules all supporting various HFP versions.
Bluetooth car kits allow users with Bluetooth-equipped cell phones to make use of some of the phone's features, such as making calls, while the phone itself can be left in the user's pocket or hand bag. Companies like Visteon Corp., Peiker acustic, RAYTEL, Parrot SA, Novero, Dension, S1NN and Motorola manufacture Bluetooth hands-free car kits for well-known brand car manufacturers.
Most Bluetooth headsets implement both Hands-Free Profile and Headset Profile, because of the extra features in HFP for use with a mobile phone, such as last number redial, call waiting and voice dialing.
The mobile phone side of an HFP link is Audio Gateway or HFP Server. The automobile side of HFP link is Car Kit or HFP Client.
Human Interface Device Profile (HID)
Provides support for HID devices such as mice, joysticks, keyboards, and simple buttons and indicators on other types of devices. It is designed to provide a low latency link, with low power requirements. PlayStation 3 controllers and Wii remotes also use Bluetooth HID.
Bluetooth HID is a lightweight wrapper of the human interface device protocol defined for USB. The use of the HID protocol simplifies host implementation (when supported by host operating systems) by re-use of some of the existing support for USB HID in order to support also Bluetooth HID.
Keyboard and keypads must be secure. For other HID devices, security is optional.[17]
HID over GATT Profile - Bluetooth Low Energy (HOGP)
A profile that defines how a device with Bluetooth low energy wireless communications can support HID devices over the Bluetooth using the low energy protocol stack using: Generic Attribute Profile.
Headset Profile (HSP)
This is the most commonly used profile, providing support for the popular Bluetooth headsets to be used with mobile phones and gaming consoles. It relies on SCO audio encoded in 64 kbit/s CVSD or PCM and a subset of AT commands from GSM 07.07 for minimal controls including the ability to ring, answer a call, hang up and adjust the volume.
iPod Accessory Protocol (iAP)
iAP and later iAPv2 protocol are proprietary protocols developed by Apple Inc. for communication with 3rd party accessories for iPhones, iPods and iPads. Most Bluetooth drivers and stacks for Windows do not support the iAP profile since using such protocols requires a MFi license from Apple and thus is displayed as "Bluetooth Peripheral Device" or "Not Supported Bluetooth Function" in Device Manager.
Intercom Profile (ICP)
This is often referred to as the walkie-talkie profile. It is another TCS based profile, relying on SCO to carry the audio. It is proposed to allow voice calls between two Bluetooth capable handsets, over Bluetooth.
The ICP standard was withdrawn on 10-June-2010.[18]
LAN Access Profile (LAP)
LAN Access profile makes it possible for a Bluetooth device to access LAN, WAN or Internet via another device that has a physical connection to the network. It uses PPP over RFCOMM to establish connections. LAP also allows the device to join an ad-hoc Bluetooth network.
The LAN Access Profile has been replaced by the PAN profile in the Bluetooth specification.
Mesh Profile Specification[19] allows for many-to-many communication over Bluetooth radio. It supports data encryption, message authentication and is meant for building efficient smart lighting systems and IoT networks.
Application layer for Bluetooth Mesh has been defined in a separate Mesh Model Specification.[20] As of release 1.0 lighting, sensors, time, scenes and generic devices has been defined.
Additionally, application-specific properties has been defined in Mesh Device Properties[21] Specification, which contains the definitions for all mesh-specific GATT characteristics and their descriptors.
Message Access Profile (MAP)
Message Access Profile (MAP)[22] specification allows exchange of messages between devices. Mostly used for automotive handsfree use. The MAP profile can also be used for other uses that require the exchange of messages between two devices. The automotive Hands-Free use case is where an on-board terminal device (typically an electronic device as a Car-Kit installed in the car) can talk via messaging capability to another communication device (typically a mobile phone). For example, Bluetooth MAP is used by HP Send and receive text (SMS) messages from a Palm/HP smartphone to an HP TouchPad tablet.[23] Bluetooth MAP is used by Ford in select SYNC Generation 1-equipped 2011 and 2012 vehicles [24] and also by BMW with many of their iDrive systems. The Lexus LX and GS 2013 models both also support MAP as does the Honda CRV 2012, Acura 2013 and ILX 2013. Apple introduced Bluetooth MAP in iOS 6 for the iPhone and iPad. Android support was introduced in version 4.4 (KitKat).[25]
A basic profile for sending "objects" such as pictures, virtual business cards, or appointment details. It is called push because the transfers are always instigated by the sender (client), not the receiver (server).
OPP uses the APIs of OBEX profile and the OBEX operations which are used in OPP are connect, disconnect, put, get and abort. By using these API the OPP layer will reside over OBEX and hence follow the specifications of the Bluetooth stack.
This profile is intended to allow the use of Bluetooth Network Encapsulation Protocol on Layer 3 protocols for transport over a Bluetooth link.
Phone Book Access Profile (PBAP, PBA)
Phone Book Access (PBA).[26][27][28] or Phone Book Access Profile (PBAP) is a profile that allows exchange of Phone Book Objects between devices. It is likely to be used between a car kit and a mobile phone to:
allow the car kit to display the name of the incoming caller;
allow the car kit to download the phone book so the user can initiate a call from the car display.
The profile consists of two roles:
PSE - Phone Book Server Equipment for the side delivering phonebook data, like a mobile phone
PCE - Phone Book Client Equipment, for the device receiving this data, like a personal navigation device (PND)
Proximity Profile (PXP)
The Proximity profile (PXP) enables proximity monitoring between two devices. This feature is especially useful for unlocking devices such as a PC when a connected Bluetooth smartphone is nearby.
Serial Port Profile (SPP)
This profile is based on ETSI 07.10 and the RFCOMM protocol. It emulates a serial cable to provide a simple substitute for existing RS-232, including the familiar control signals. It is the basis for DUN, FAX, HSP and AVRCP. SPP maximum payload capacity is 128 bytes.
Serial Port Profile defines how to set up virtual serial ports and connect two Bluetooth enabled devices.
Service Discovery Application Profile (SDAP)
SDAP describes how an application should use SDP to discover services on a remote device. SDAP requires that any application be able to find out what services are available on any Bluetooth enabled device it connects to.
SIM Access Profile (SAP, SIM, rSAP)
This profile allows devices such as car phones with built-in GSM transceivers to connect to a SIM card in a Bluetooth enabled phone, thus the car phone itself does not require a separate SIM card and the car external antenna can be used.[29][30][31] This profile is sometimes referred to as rSAP (remote-SIM-Access-Profile),[30] though that name does not appear in the profile specification published by the Bluetooth SIG. Information on phones that support SAP can be found below:
Currently[when?] the following cars by design can work with SIM-Access-Profile:
all models with Bluetooth hands free PREMIUM; from ModelYear 2011 this module in those cars have additional HFP protocol, this give the option to support mobiles with SAP functionality - minimal functionality only use of Car Speaker and Microphone .
Many manufacturers of GSM based mobile phones offer support for SAP/rSAP. It is supported by the Android, Maemo, and MeeGo phone OSs. Neither Apple's iOS nor Microsoft's Windows Phone support rSAP; both use PBAP for Bluetooth cellphone-automobile integration.
Ameo, MDA Mail, MDA Pro, MDA touch, MDA touch plus, MDA Compact V, MDA Compact II, MDA Vario V, MDA Vario IV, MDA Vario III, MDA Vario II and I (only with newest Firmware)
This profile allows synchronization of Personal Information Manager (PIM) items. As this profile originated as part of the infrared specifications but has been adopted by the Bluetooth SIG to form part of the main Bluetooth specification, it is also commonly referred to as IrMC Synchronization.
Synchronisation Mark-up Language Profile (SyncML)
For Bluetooth, Synchronization is one of the most important areas. The Bluetooth specifications up to, and including 1.1, has Synchronization Profile that is based on IrMC. Later, many of the companies in the Bluetooth SIG already had proprietary synchronization solutions and they did not want to implement IrMC -based synchronization also, hence SyncML emerged. SyncML is an open industry initiative for common data synchronization protocol. The SyncML protocol has been developed by some of the leading companies in their sectors, Lotus, Motorola, Ericsson, Matsushita Communication Industrial Co., Nokia, IBM, Palm Inc., Psion and Starfish Software; together with over 600 SyncML Supporter companies. SyncML is a synchronization protocol that can be used by devices to communicate the changes that have taken place in the data that is stored within them. However, SyncML is capable of delivering more than just basic synchronization; it is extensible, providing powerful commands to allow searching and execution.
Video Distribution Profile (VDP)
This profile allows the transport of a video stream. It could be used for streaming a recorded video from a PC media center to a portable player, or a live video from a digital video camera to a TV. Support for the H.263 baseline is mandatory. The MPEG-4 Visual Simple Profile, and H.263 profiles 3 and 8 are optionally supported, and covered in the specification.1
Video conferencing profile (VCP): This profile is to be compatible with 3G-324M, and support videoconferencing over a 3G high-speed connection.
Tempow Audio Profile (TAP): this new audio profile was presented at Bluetooth World 2017 in Santa Clara. It enables new audio functions, upgrading current A2DP profile.[36][37]
^mucwendel (2009-10-02). "Probleme mit FSE Remote Sim Access" [Problems with FSE Remote SIM Access]. Community >> Forum — Samsung S5230 Star (in German). handyforum.samsung.de. Archived from the original on 2012-07-15. Retrieved 2013-11-19.