The In-Depth Guide to Bluetooth Classes

Bluetooth Refresher

 

Bluetooth is a name synonymous with wireless devices. When people think about Bluetooth, they usually think about Headphones, Earbuds, and streaming music. This communications technology also lets people control home automation devices like light bulbs, toys, and medical devices. For a very detailed explanation of Bluetooth, check out our Practical Guide to Bluetooth.

How Bluetooth Works

For purposes of this discussion, we are going to focus on what happens after two devices pair. Pairing is the process of connecting two Bluetooth devices together so that they can communicate. You take both devices and make sure that you’ve enabled Bluetooth. Once both radios are on, you search for the name that represents the device you’re trying to pair. For example, if you’re pairing a car to a smartphone, look for the name of your phone on your radio. Click the name, enter the PIN and viola! You should now be able to stream music and call people in your contacts list. 

What Happens Next?

Behind the scene, Bluetooth queries various services running on your device to understand more detailed and specific information about the device. In essence, it needs to know what “language” your device speaks so that it can help parley the right data so that each device understands the other. The Bluetooth specification breaks down devices into Major and Minor classes. Depending on the Class of Device (the combination of major and minor class IDs), the Bluetooth protocol loads profiles that determine how it communicates. There are 11 Major Service Classes, 32 Major class combinations, and 64 different Minor classes. Each major class and each minor class has its own class identifier in either binary or in hex. 

 

Major Service Classes

They include:

  1. Audio devices like speakers, earbuds, headsets 
  2. Capturing devices like microphones and scanners 
  3. Discovery 
  4. Information like web servers, wap servers
  5. Location identification and positioning 
  6. Networking devices 
  7. Rendering devices like printers
  8. Telephone communications like cordless telephony, modems, the headset service
  9. Transfer objects (v-inbox, v-folder)

Major Device Classes

According to the Bluetooth specifications, the Major Device Class segment is the highest level of granularity for defining a Bluetooth device. In Signils, users can sort their devices by this level of category. You can also see all of the devices that fit this category on our Statistics page. 

They include:

  1. Miscellaneous
  2. Computer (desktop, laptop, PDA, organizer)
  3. Phone (cellular phones, cordless, payphones, modems)
  4. LAN/Network Access Point 
  5. Audio/Video (headsets, speakers, stereos, video displays, VCRs)
  6. Peripheral (mice, joysticks, keyboards)
  7. Imaging (printers, scanners, cameras, display)
  8. Wearable 
  9. Toy
  10. Health
  11. Uncategorized; device code not specified
  12. Reserved

As you can see, these numbers don’t total up to 32. The total number of 32 comes from combinations of Major Class IDs. 

Minor Device Classes

According to the Bluetooth specifications, the Minor Device Class segment is the lowest level of granularity for defining a Bluetooth device. There are Minor Device Classes associated with each Major Class. We are in the process of implementing minor classes in Signils. Once we’re complete, users will be able to search, sort, and see popular devices using these more granular categories. 

  1.  
  1. Major Class: Computer (desktop, notebook, PDA, organizers, etc ) 

CoD: 000000000000000100000000 (bin) 0x100 (hex)

Minor Classes

  • Uncategorized, code for device not assigned
  • Desktop workstation
  • Server-class computer
  • Laptop
  • Handheld PC/PDA (clam shell)
  • Palm sized PC/PDA
  • Wearable computer (watch sized)
  1. Major Class: Phone (cellular, cordless, payphone, modem) 

CoD: 000000000000001000000000 (bin) 0x200 (hex)

Minor Classes

  • Uncategorized, code for device not assigned
  • Cellular
  • Cordless
  • Smartphone
  • Wired modem or voice gateway
  • Common ISDN Access
  1. Major Class: LAN/Network Access point

CoD: 000000000000001100000000 (bin) 0x300 (hex)

Minor Classes

  • Fully available
  • 1 – 17% utilized
  • 17 – 33% utilized
  • 33 – 50% utilized
  • 50 – 67% utilized
  • 67 – 83% utilized
  • 83 – 99% utilized
  • No service available
  1. Major Class: Audio/Video (headset, speaker, stereo, video display, etc)

CoD: 000000000000010000000000 (bin) 0x400 (hex)

Minor Classes

  • Uncategorized, code for device not assigned
  • Wearable Headset Device 
  • Hands-free Device 
  • Microphone
  • Loudspeaker
  • Headphones
  • Portable Audio
  • Car audio 
  • Set-top box 
  • HiFi Audio Device 
  • VCR
  • Video Camera 
  • Camcorder 
  • Video Monitor 
  • Video Display and Loudspeaker
  • Video Conferencing 
  • Gaming/Toy 
  1. Major Class: Peripheral (mouse, joystick, keyboards etc ) 

CoD: 000000000000010100000000 (bin) 0x500 (hex)

Minor Classes

  • Not Keyboard / Not Pointing Device
  • Keyboard
  • Pointing device
  • Combo keyboard/pointing device
  • sub-field for the device type
  • Uncategorized device
  • Joystick
  • Gamepad
  • Remote control
  • Sensing device
  • Digitizer tablet
  • Card Reader (e.g. SIM Card Reader)
  1. Major Class: Imaging (printing, scanner, camera, display etc) 

CoD: 000000000000011000000000 (bin) 0x600 (hex)

Minor Classes

  • Display
  • Camera
  • Scanner
  • Printer
  1. Major Class: Wearable 

CoD: 000000000000011100000000 (bin) 0x700 (hex)

Minor Classes

  • Wrist Watch
  • Pager
  • Jacket
  • Helmet
  • Glasses
  1. Major Class: Toy 

CoD: 000000000000100000000000 (bin) 0x800 (hex)

Minor Classes

  • Robot
  • Vehicle
  • Doll / Action Figure
  • Controller
  • Game
  1. Major Class: Miscellaneous 

CoD: 000000000000000000000000 (bin) 0x (hex)

  1. Major Class: Uncategorized, specific device code not specified 

CoD: 000000000001111100000000 (bin) 0x1F00 (hex)

And Then? 

And then based on the Service, Major and/or Minor Class of Device that the protocol discovers about the device, it then loads the correct Bluetooth profiles to appropriately support the technology.

Bluetooth Profiles

A Bluetooth profile is a definition of how a manufacturer can implement Bluetooth for a particular use. A device must be able to interpret certain Bluetooth profiles, depending on the activity required. Profiles specify the behaviors that Bluetooth-enabled devices use to communicate with each other.

The SDP (service discovery protocol) defines actions for servers and clients of Bluetooth services. The specification defines a service as any feature that is usable by another (remote) Bluetooth device. See The Bluetooth Profiles—A Hierarchy of Groups). An SDP client communicates with an SDP server using a reserved channel on an L2CAP link to find out what services are available. When the client finds the desired service, it requests a separate connection. The reserved channel is dedicated to SDP communication so that a device always knows how to connect to the SDP service on any other device. An SDP server maintains its own SDP database, which is a set of service records that describe the services the server offers. Along with information describing how a client can connect to the service, the service record contains the service’s UUID, or universally unique identifier.

Bluetooth profiles are organized into a hierarchy of groups, with each group depending upon the features provided by its predecessor. 

Here is a sample of the most popularly used profiles:

Advanced Audio Distribution Profile (A2DP) – transmission or streaming of high-quality stereo audio. Portable audio players, recorders, headphones, and car stereos.

A/V Remote Control Profile (AVRCP) – remote control of Bluetooth devices alongside A2DP to allow a remote speaker or headphones to tell the audio-sending device to fast-forward, rewind, etc. Also used to control TVs, Hi-Fi equipment, etc.

Attribute Profile (ATT)

Basic Imaging Profile (BIP) – sending images between cameras or smartphones to storage devices.

Basic Printing Profile (BPP) – send texts, emails, or vCards to printers. Requires no printer device drivers.

Cordless Telephony Profile (CTP) – designed to work with cordless phones to that it could use a Bluetooth CTP gateway connected to a landline when within a home and the mobile phone network when out of range.

Device ID Profile (DIP) – allows a device to be identified beyond the limitations of Device Class. Allows the identification of manufacturer, product ID, product version, and the version of Device ID specification being met.

Fax Profile (FAX) – interface between a mobile phone or fixed line phone and a PC with fax software installed.

File Transfer Profile (FTP) – the way in which files and folders on a server can be browsed by a client device or transferring files between devices.

Generic Audio/Video Distribution Profile (GAVDP) – basis for A2DP and VDP.

Generic Access Profile (GAP) – provides the basis for 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 the Bluetooth Low Energy profile.

Generic Object Exchange Profile (GOEP) – transfer an object from one device to another. Exchange of vcards between smartphones, PDAs, etc.

Health Device Profile (HDP) – health thermometer profile (HTP), Heart Rate Profile (HRP) fall under this profile. Facilitates the transmission and reception of medical device data.

Hands-Free Profile (HFP) – facilitates placing calls from a Bluetooth device – used with car infotainment systems to support wireless calls.

Headset Profile (HSP) – allows for calls to be answered, ended, and volume adjusted from a headset. Used with A2DP so that users can switch between listening to music and making calls.

Human Interface Device (HID) – mice, keyboards, joysticks.

Mesh Profile (MESH) – allows for many-to-many communication over Bluetooth. Smart lighting, sensors, etc.

Message Access Profile (MAP) – allows exchange of messages between devices.

Phone Book Access Profile (PBABP PBA) – allows exchange of phone book objects between devices.

SIM Access Profile (SAP, SIM, rSAP) – allows car phones with built-in GSM transceivers to connect to a SIM card in a Bluetooth enabled phone, therefore the car itself doesn’t require a separate SIM.

Service Discovery Application Profile (SDAP) – how an application should use the Service Discovery Procedure (SDP) to discover service on a remote device.

Synchronization Profile (SYNC) – used in conjunction with GOEP to enable synchronization of calendar and address information items between Bluetooth enabled devices.

Video Distribution Profile (VDP) – how a Bluetooth enabled device can stream video over a Bluetooth connection.

Other Blog Posts

The intent of this guide is to introduce you to Major services, Major classes, Minor classes and their role in the Bluetooth protocol.

Signils is providing the complete guide to Bluetooth to help you learn more about this commonly used and extremely popular wireless technology. No, this is not your Father's Wi-Fi.

The New Bluetooth Standard in 2020

Bluetooth 5.2 was announced in January 2020 and will bring many new features that promise to change our Bluetooth experiences forever. From LE Audio, faster connection, improved security, and direction finding to long-range BLE beacon technology - Signils brings the new Bluetooth standard closer to you.

What’s the Difference Between Classic Bluetooth and Bluetooth Low Energy

If you are about to launch a Bluetooth utilization or development project, it is essential to know the difference between Classic Bluetooth and Bluetooth Low Energy. The naming conventions have changed and are causing confusions to this day. Signils explains in this article all the similarities and major differences in features between these two Bluetooth technologies.