Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Bluetooth Difference between pairing and paging, bonding

When I study Bluetooth, I am confused to understand Bluetooth connection and pairing, bonding, etc.

As far as I know, Bluetooth Connection has these steps:

  1. Inquiry - discover
  2. Paging - using the address in Inquiry process, process of forming a connection
  3. Connection - device can participate actively(Active mode) or put into other mode(Sniff, Hold...)

When we use Bluetooth devices(e.g. Smartphone, Bluetooth Heaset) it has these steps:

  1. Discovery devices
  2. Pairing(exchange other security information like address, PIN Code)
  3. Connection start

I can't match paging to pairing. Is my understanding right below?

  • Inquiry = Discover Devices
  • Paging = Pairing
  • Connection = Connection start

How can I merge above two categories?

like image 740
H.K Avatar asked Apr 04 '16 07:04

H.K


1 Answers

Not answered in 7-months! Oh, well for posterity...

Inquiry and Paging - Link Layer Connection

(Is there anyone out there? Hello!)

Inquiry and Paging are procedures and states of the Bluetooth Link Controller during the connection process.

The standard progression of states to a connection are as follows:

  1. One device performs the Inquiry procedure, a request message for devices within 10-meters to respond, if they are in range. This device is the Master.
  2. Devices that are discoverable, will respond with an Inquiry Response. Example: If you turn on the Bluetooth on your phone, it often states it is discoverable and then it will list a number of devices around you.
  3. The Master device then will initiate a connection by paging a specific Slave device.
  4. If the Slave device is amenable, it will respond with a Page response. Example: On your phone, you select the Bluetooth Headphones to connect with.

At that point lots of cool stuff happens so that the radios can match frequency hopping patterns and timing of radio packets. When it's over, and successful, you have a Link Layer connection.

Typically, there are two types of connection:

  1. Asynchronous Connection-Less (ACL) - Packet data
  2. Synchronous Connection Orientated (SCO) - Audio (or video) data, real-time.

Pairing

(security and remembering past lovers)

Bluetooth doesn't need any Security to do Service Discovery (the next stage) but all Bluetooth services need security, so pairing is nearly always done BEFORE Service Discovery BUT it doesn't have to be.

In the lowest level of pairing security, it 'just works'. Your phone says, it's connected and that's it. The link is encrypted but did you really connect to your headphones or your sister's down the hall?.

Once connected and encrypted like this, the phone may ask you if you want to stay paired with the headphones. If you select 'yes' or tick the box, your phone will remember the encryption and security keys for your headphones (as will your headphones for your phone). The next time they connect, they will recognise each other and just connect and encrypt the link without having to go through pairing again.

Now if your connecting your phone to your car by Bluetooth, you probably want better security. There are various options but typically it goes like this.

When it comes to pairing, your car system will display something like 'Pairing code 4753495' and your phone will display something similar like 'Verify pairing code 4753495 - Yes/No' - If they match, then you have a really secure connection and you absolutely know that your phone is paired with your car and not you're sister's rubbish Toyota out on the drive.

Bluetooth these days is really secure, the latest specs support US Secret Service levels of encryption and for that reason some Bluetooth firmware and devices have strict export restrictions. Older, legacy devices will still use 4-digit pin codes and are less secure.

Service Discovery

(What can you do?)

The Master will ask the Slave to tell it a little about itself and the Slave tells the Master all the cool things it can do. The Master will reciprocate too.

With our Headphones and mobile phone example, once you pressed on the Headphones in the list of devices, it will connect, pair and you will get a pop-up saying it supports things like 'Phone Media' (Handsfree / Headset Profiles) and 'Music Media' (Advance Audio Distribution Profile, Audio/Video Remote Control Profile, and some protocols under that).

Your car, in addition to Phone and Music Media, can probably do things like browse your Phone's contacts or even display text messages.

Profile/Service Connection

(Finally)

After all that, you're set up. Typically a profile/service level connection doesn't happen until you try and use it .e.g play music or make/receive a phone call but the Link Layer connection is there underneath.

So, you can start playing music on your phone and the sweet beats will magically come out of your headphones or car stereo...

Until your sister calls.

like image 162
Simon Peverett Avatar answered Oct 23 '22 19:10

Simon Peverett