Bluetooth 101. Training for Plantronics

Содержание

Слайд 2

Bluetooth 101+ Roger Garvert 28 September 2010 Training for Plantronics

Bluetooth 101+

Roger Garvert
28 September 2010

Training for Plantronics

Слайд 3

Contact Info Roger Garvert Field Application Engineer 2445 Flambeau Drive Naperville,

Contact Info
Roger Garvert
Field Application Engineer
2445 Flambeau Drive
Naperville, IL  60564
Email: roger.garvert@csr.com Direct: 

+1 630 355 0331
Cell:  +1 630 788 7553
Web: www.csr.com
Слайд 4

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 5

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 6

Robust unlicensed short range wireless standard It is an open and

Robust unlicensed short range wireless standard
It is an open and license

free standard for anyone who signs up to be an adopter
The standard is presided over by the Special Interest Group (SIG)

What is Bluetooth?

Слайд 7

Provides point-to-point connections Provides ad-hoc networking capabilities Bluetooth specification details how

Provides point-to-point connections
Provides ad-hoc networking capabilities
Bluetooth specification details how the technology

works
Bluetooth Profiles detail how specific applications work to ensure interoperability

What does Bluetooth provide?

Слайд 8

Two devices locate each other Form a connection and transfer data

Two devices locate each other
Form a connection and transfer data
“Wireless cable

replacement” scenario
The device that initiates the connection is called the Master
Any other devices the Master is connected to are referred to as Slaves

Point-to-point

Слайд 9

Point-to-multipoint – the Piconet Two devices create a point-to-point connection A

Point-to-multipoint – the Piconet

Two devices create a point-to-point connection
A third device

comes into range

The new device is discovered.
It is added to the piconet and data can be transferred

Слайд 10

Identifying Bluetooth Devices Each Bluetooth device is assigned a unique 48-bit

Identifying Bluetooth Devices

Each Bluetooth device is assigned a unique 48-bit MAC

address by the Bluetooth SIG
This is enough addresses for 281,474,976,710,656 Bluetooth units, this should last a few years even with the optimistic predictions of the analysts!
The address is split into three parts:
LAP: Lower Address Part - used to generate frequency hop pattern and header sync word
UAP: Upper Address Part - used to initialize the HEC and CRC engines
NAP: Non-significant Address Part - used to seed the encryption engine

LAP [0:23]

UAP[24:31]

NAP [32:47]

lsb

msb

Слайд 11

Bluetooth Channels A master can create two types of logical channel

Bluetooth Channels

A master can create two types of logical channel with

a slave device:
Asynchronous Connection Less (ACL): Packet Switched System provides a reliable data connection with a best effort bandwidth; depends on radio performance and number of devices in the piconet
Synchronous Connection Oriented (SCO): Circuit Switched System provides real time unreliable connection with a guaranteed bandwidth; usually used for voice based applications
The Bluetooth connections are limited to 1Mbps across the air (without EDR)
This gives a theoretical maximum of ~723kbps of useable data
Слайд 12

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 13

Spectrum Usage The 2.4GHz ISM band is a free for all

Spectrum Usage

The 2.4GHz ISM band is a free for all for

anyone who wants to use it
Direct Radio waves Visible X-rays
Current 100 kHz – 300 GHz light
Extremely Ultraviolet Gamma
low frequency FM radio radiation rays
(ELF) 88-108 MHz
Very
low frequency Microwaves
(VLF) 300 MHz – 300 GHz
mediumwave radio
550-1600 kHz
Infrared
longwave radio radiation
150-350kHz
Frequency in hertz (Hz)
kHz MHz GHz
0 102 104 106 108 1010 1012 1014 1016 1018 1020 1022

Bluetooth

The 2.4GHz ISM Band is also used by:
Microwave Ovens
Digital Cordless Phones
802.11b/g

Слайд 14

Frequency Hopping Spread Spectrum - FHSS Bluetooth splits the spectrum up

Frequency Hopping Spread Spectrum - FHSS

Bluetooth splits the spectrum up into

79 1MHz wide channels
The Bluetooth radio changes transmission frequency 1600 times a second for a 1 slot packet type
The frequency hops follow a pseudo-random sequence that meets the power density requirements for the FCC and other regulatory bodies

2.4000

Frequency, GHz

2.4020

2.4800

2.4835

Guard Band

Guard Band

Слайд 15

Benefits of FHSS Reliability - If a packet is not correctly

Benefits of FHSS

Reliability - If a packet is not correctly received

on one channel due to interference it is unlikely that there will be interference on the next channel used to re-transmit the data
Low Interference - Conversely, if Bluetooth is interfering with another system that uses a set of channels, Bluetooth will only use those channels a small proportion of the time
Security - Since the hop pattern is pseudo random it is very difficult for anyone to eavesdrop on the Bluetooth link
Слайд 16

Hop Selection and Synchronization One frequency hop lasts 625µs, this increment

Hop Selection and Synchronization

One frequency hop lasts 625µs, this increment is

called a time slot
Each Bluetooth device has a clock circuit that counts frequency hops
The address of the master of the piconet is used to seed a frequency hop calculation algorithm
The phase of the hop sequence is defined by the Bluetooth clock of the master
Device address and clock phase information is exchanged during connection negotiation
The slave synchronizes its own clock to the master’s during connection so that both devices change frequency at the same time
Слайд 17

Introduced in Bluetooth v1.2 Bluetooth shares the 2.4GHz ISM band with:

Introduced in Bluetooth v1.2
Bluetooth shares the 2.4GHz ISM band with:
802.11b/g Wi-Fi

Systems
2.4GHz cordless phones
Microwave ovens
More devices = More interference.
802.11b/g does not work well with BT interferers.
AFH allows BT to avoid known ‘bad’ channels.
Increased bandwidth, reduced lost data.

Adaptive Frequency Hopping

Слайд 18

Three steps Adaptive Frequency Hopping

Three steps

Adaptive Frequency Hopping

Слайд 19

Three steps Identify Bad Channels by monitoring RSSI, BER and/or PER A B Adaptive Frequency Hopping

Three steps
Identify Bad Channels by monitoring RSSI, BER and/or PER

A

B

Adaptive Frequency

Hopping
Слайд 20

Three steps Identify Bad Channels by monitoring RSSI, BER and/or PER

Three steps
Identify Bad Channels by monitoring RSSI, BER and/or PER
Receive reserved

channel usage from host

WLAN

Adaptive Frequency Hopping

Слайд 21

Three steps Identify Bad Channels by monitoring RSSI, BER and/or PER

Three steps
Identify Bad Channels by monitoring RSSI, BER and/or PER
Receive reserved

channel usage from host
Agree with other devices on Bad Channels

Adaptive Frequency Hopping

Слайд 22

Three steps Identify Bad Channels, monitor RSSI, BER & PER Receive

Three steps
Identify Bad Channels, monitor RSSI, BER & PER
Receive reserved channel

usage from host
Agree with other devices on Bad Channels

Adaptive Frequency Hopping

Слайд 23

Three steps Identify Bad Channels, monitor RSSI, BER & PER Receive

Three steps
Identify Bad Channels, monitor RSSI, BER & PER
Receive reserved channel

usage from host
Agree with other devices on Bad Channels
Use alternative channels

Adaptive Frequency Hopping

Слайд 24

Benefits: Fewer lost packets = better audio quality Less degradation to

Benefits:
Fewer lost packets = better audio quality
Less degradation to Bluetooth and

802.11b/g networks
Greater bandwidth efficiency
Not backward compatible with v1.1 systems

Adaptive Frequency Hopping

Слайд 25

Modulation Scheme During each hop, data is transmitted using Gaussian Frequency

Modulation Scheme

During each hop, data is transmitted using Gaussian Frequency Shift

Keying, G-FSK.
FSK uses two different frequencies to transmit a binary ‘1’ or ‘0’
For Bluetooth the two frequencies are:
fc + Δ for ‘1’
fc - Δ for ‘0’ where fc = frequency of current hop and Δ = ~157kHz
Слайд 26

Modulation Example For channel 0 (Frequency 2.402GHz) During one time slot

Modulation Example

For channel 0 (Frequency 2.402GHz)

During one time slot the data

can change value every 1µs, so the transmit frequency oscillates back and forth around the center channel frequency
Слайд 27

π/4-DQPSK – 2Mbps 1MSps => 2Mbps 8-DPSK – 3Mbps 1MSps =>

π/4-DQPSK – 2Mbps
1MSps => 2Mbps

8-DPSK – 3Mbps
1MSps => 3Mbps

Bluetooth 2.0 modulation

schemes fully backwards compatible w/ Standard Rate
Same packet timing & structure, major spectral characteristics, and packet negotiation
Same radio used for all modulation schemes (FSK and PSK)
Master devices support mixed Piconets by using appropriate packets for each slave
EDR devices must support 1x and 2x data rate, 3x data rate is optional

EDR Modulation Schemes

Слайд 28

v1.2 Packets: v2.0 EDR Packets: EDR Packets

v1.2 Packets:
v2.0 EDR Packets:

EDR Packets

Слайд 29

Transmission timing A slave can only send data to the master

Transmission timing

A slave can only send data to the master after

it has received a valid packet from the master
Masters transmit in even numbered slots and slaves respond in the next odd numbered slot
Single slot packets are less then 366µs long to allow the synthesizer to retune to the next frequency hop
Слайд 30

To increase the throughput of the Bluetooth link longer packets are

To increase the throughput of the Bluetooth link longer packets are

available. These result in less time spent re-tuning the synthesizer and therefore more time spent transferring data
1, 3 and 5 slot packets are available for use in a dynamic fashion

Multi-slot packets

Слайд 31

There are 14 basic rate packet types defined, split into 4

There are 14 basic rate packet types defined, split into 4

segments:
Common Packets (both ACL & SCO)
Single slot packets
ACL 3 slot packets
ACL 5 slot packets
Each packet type has a different level of error correction and protection and different size payloads

Packet Types

Слайд 32

Bluetooth defines three levels of forward error correction No Error Correction:

Bluetooth defines three levels of forward error correction
No Error Correction:
There is

no error correction!
Data is just put in the payload and sent
1/3 FEC:
Each bit is repeated 3 times
Majority voting decides bit value
2/3 FEC:
The data is encoded using a (15,10) shortened hamming code
Every 10 bits of data are encoded into 15 bits of data
Can correct single bit errors and detect double bit errors

Forward Error Correction

Слайд 33

Common Packet Types ID Packet - consists of the device access

Common Packet Types

ID Packet - consists of the device access code

(DAC) or the inquiry access code (IAC). It has a fixed length of 68 bits. Used for Paging, Inquiry and Response routines.
NULL Packet - has no payload data and consists of only the Channel Access Code and the Packet Header, hence fixed length of 126-bits. Used for returning status information, does not need to be acknowledged.
POLL Packet - Similar to the NULL packet, has no payload but does require an acknowledge . Used by piconet master to poll slave devices.
FHS Packet - Special control packet that reveals the BT device address and the clock of the sender. See next slide for more detail of the payload structure.
Слайд 34

HV1 Packet - High Quality Voice packet carries 10 bytes of

HV1 Packet - High Quality Voice packet carries 10 bytes of

information and 1/3 FEC to 240-bit payload. There is no payload header in this packet. Used for voice transmission and hence never retransmitted and needs no CRC. Carries 1.25ms of speech at 64kbps and needs to be transmitted every two time slots
HV2 Packet - Lower quality voice transmission that carries 20 information bytes protected with 2/3 FEC to 240-bit payload, no CRC. Carries 2.5ms of speech at 64kbps and must be transmitted every four time slots
HV3 Packet - Lowest quality voice packet, carries 30 bytes of info with no FEC or CRC in its 240-bit payload. Carries 3.75ms of speech at 64kbps and needs to be sent every six time slots
DV Packet - This is a combined Data and Voice packet with the payload split as shown below. The voice field is not FEC protected. The Data field contains up to 10-bytes including a 1-byte payload header and a 16-bit CRC. The Data is then encoded with 2/3 FEC. If required the payload is padded with zeroes to ensure that the total number of payload bits is a multiple to 10 prior to FEC coding. The Voice field is never retransmitted but the Data field can be if errors are present

SCO Packets

Слайд 35

DM1 Packet - Data - Medium Rate, carries up to 18

DM1 Packet - Data - Medium Rate, carries up to 18

information bytes including the 1-byte payload header plus a 16-bit CRC. The data is padded with zeroes to an integer multiple of 10-bits and then 2/3 FEC
DH1 Packet - Similar to the DM1 packet except the payload is not FEC encoded hence higher data rate. The DH1 Packet can carry up to 28 information bytes plus a 16-bit CRC
DM3 Packet - This packet is a DM1 packet with an extended payload, up to 3 time slots worth. The payload can contain up to 123 information bytes including a 2 -byte payload header plus a 16-bit CRC
DH3 Packet - This packet is similar to the DM3 packet except that the payload is not FEC encoded. Therefore, it can carry up to 185 information bytes including the 2-byte payload header plus a 16-bit CRC
DM5 Packet - This is a DM1 packet with an extended payload, up to 5 time slots. The payload can contain up to 226 information bytes including the 2-byte payload header plus a 16-bit CRC.
DH5 Packet - Similar to the DM5 except that the information is not FEC encoded.Can carry up to 341 information bytes including the 2-byte payload header plus a 16-bit CRC

ACL Packets

Слайд 36

Mixing ACL and HV3 SCO packets

Mixing ACL and HV3 SCO packets

Слайд 37

Mixing ACL and HV2 SCO packets

Mixing ACL and HV2 SCO packets

Слайд 38

Slot 0 1 2 3 4 5 6 7 8 9

Slot

0

1

2

3

4

5

6

7

8

9

Master

Slave 1

Slave 2

Slave 3

One HV1 link ties up all of

the Bluetooth bandwidth
Bluetooth device can’t do anything else!

Mixing ACL and HV1 SCO Packets

Слайд 39

Bluetooth v1.1 SCO connections have serious impact on air interface usage.

Bluetooth v1.1 SCO connections have serious impact on air interface usage.
Limited

to 64kbps audio with CVSD encoding
CVSD highly susceptible to packet loss
No packet re-transmission
Bluetooth v1.2 added multi-slot SCO packet types
allows variable data rates
Larger duty cycle allows additional connections, scans, etc
Also added CRC, FEC and data re-transmission

Enhanced SCO (eSCO)

Слайд 40

EV3 Packet - Voice packet carries between 1 and 30 information

EV3 Packet - Voice packet carries between 1 and 30 information

bytes plus a 16-bit CRC code. The bytes are not protected by FEC. The EV3 packet may cover up to a single time slot.
EV4 Packet – Voice packet carries between 1 and 120 information bytes plus a 16-bit CRC code. The EV4 packet may cover to up three time slots. The information plus CRC bits are coded with a rate 2/3 FEC
EV5 Packet – Voice packet carries between 1 and 180 information bytes plus a 16-bit CRC code. The bytes are not protected by FEC. The EV5 packet may cover up to three time slots.

Bluetooth 1.2 eSCO Packets

Слайд 41

max. symmetric max. asymmetric SCO Enhanced SCO (eSCO)

max. symmetric

max. asymmetric

SCO

Enhanced SCO (eSCO)

Слайд 42

Bluetooth 2.0 EDR ACL Packets

Bluetooth 2.0 EDR ACL Packets

Слайд 43

2-EV3 Packet – Similar to EV3 packet, except that the payload

2-EV3 Packet – Similar to EV3 packet, except that the payload

is modulated using π/4-DQPSK. It has between 1 and 60 information bytes plus a 16-bit CRC code. The bytes are not protected by FEC. The 2-EV3 packet covers a single time slot.
2-EV5 Packet – Similar to EV5 packet, except that the payload is modulated using π/4-DQPSK. It has between 1 and 360 information bytes plus a 16-bit CRC code. The bytes are not protected by FEC. The 2-EV5 packet may cover up to three time slots.
3-EV3 Packet – Similar to EV3 packet, except that the payload is modulated using 8DPSK. It has between 1 and 90 information bytes plus a 16-bit CRC code. The bytes are not protected by FEC. The 2-EV3 packet covers a single time slot.
3-EV5 Packet – Similar to EV5 packet, except that the payload is modulated using 8DPSK. It has between 1 and 540 information bytes plus a 16-bit CRC code. The bytes are not protected by FEC. The 2-EV5 packet may cover up to three time slots.

Bluetooth 2.0 EDR eSCO Packets

Слайд 44

Bluetooth defines 3 power classes for devices: Class 1: 0dBm to

Bluetooth defines 3 power classes for devices:
Class 1: 0dBm to +20dBm

(1mW to 100mW)
Class 2: -6dBm to +4dBm (250µW to 2.5mW)
Class 3: <0dBm ( <1mW)
These power classes translate into approximate distances often used when discussing Bluetooth:
Class 1: 100 Meters
Class 2: 10 Meters
Class 3: <10 Meters

Power Classes

Слайд 45

For a Bluetooth device to discover new devices that are in

For a Bluetooth device to discover new devices that are in

range it must perform an inquiry
A device that wants to be found by another device must be in inquiry scan mode
Once a device has been found it must be paged to initiate a connection
A device that wants to be connected to must be in Page Scan Mode.
A device that wants to connect to a particular device must be in Page Mode

Discovering and Connecting to Other Devices

Слайд 46

Inquiry Inquiry response Inquiry Repeated Inquiries Inquiry mode Inquiry scan mode Discovering a Bluetooth Device

Inquiry

Inquiry response

Inquiry

Repeated Inquiries

Inquiry mode

Inquiry scan mode

Discovering a Bluetooth Device

Слайд 47

Page (ID packet with headset’s ID) Page response (ID packet with

Page (ID packet with headset’s ID)

Page response (ID packet with headset’s

ID)

Frequency Hop Synchronization packet

acknowledge (ID packet with headset’s ID)

Both devices move
to paging device’s hop sequence

Probe new connection (Poll packet)

Confirm connection (NULL packet)

LMP configures connection

Page mode

Page scan mode

Connect request

Connect accept

Establishing a baseband connection

Слайд 48

Secure Simple Pairing (SSP) Feature of Bluetooth 2.1 Enables easier connectivity

Secure Simple Pairing (SSP)

Feature of Bluetooth 2.1
Enables easier connectivity between devices

and better use of security features
Слайд 49

Input/Output Capabilities Four I/O capabilities defined Display Only Display Yes/No Keyboard

Input/Output Capabilities

Four I/O capabilities defined
Display Only
Display Yes/No
Keyboard Only
No Input No Output
The

I/O capabilities are used to determine which association model is used
Слайд 50

“Just Works” User chooses to “add a device”

“Just Works”

User chooses to “add a device”

Слайд 51

The mouse is automatically selected and paired to the computer –

The mouse is automatically selected and paired to the computer –

no further user action is required! Data is encrypted.

3.

“Just Works”

Слайд 52

Step 1 – User enables technology on PC and activates connection

Step 1 – User enables technology on PC and activates connection

from phone
Step 2 – User selects “ADD”
Step 3 – Phone displays ‘laptop’ and asks user if he/she wishes to connect
Step 4 – Phone displays 6-digit number and asks user to confirm
Same for mobile phone to car kit and mobile to stereo headset

User is asked to confirm 6-digit number on both ends

102466

Numeric Comparison

Слайд 53

Step 1 – User powers on keyboard and activates connection from

Step 1 – User powers on keyboard and activates connection from

phone
Step 2 – User selects “ADD” on the phone
Step 3 – Phone displays ‘keyboard’
Step 4 – User is asked to enter 6-digit number on the keyboard and press “Enter”

User is asked to enter 6-digit number on keyboard

Passkey Entry

Слайд 54

Feature of Bluetooth 2.1 Problem: Takes a long time to find

Feature of Bluetooth 2.1
Problem:
Takes a long time to find devices, work

out what they are called, and what you can do with them…
Solution:
Include information in the inquiry response
Name of Device
Profiles supported
Etc.
Side effects
Task oriented actions quicker as devices can get filtered quickly
Can transmit other information: time, location, etc.

Extended Inquiry Response

Слайд 55

To help reduce power consumption, there are three Bluetooth low power

To help reduce power consumption, there are three Bluetooth low power

modes
Sniff Mode (The most used)
Hold Mode
Park Mode
Slaves can request to be placed in any of these modes
Masters can ask a slave to enter one of these modes
Masters can also force a slave into one of these modes if it has previously accepted the mode

Low Power Modes

Слайд 56

Feature of Bluetooth 2.1 Problem: HID devices want low power and

Feature of Bluetooth 2.1
Problem:
HID devices want low power and low latency
Solution:
Laptop

transmits packets at required latency to mouse to give low latency
Mouse ignores laptop most of the time
Side effects
Better scatternet support
Mouse has 2-3 times better battery life
Keyboard has 10x better battery life

Sniff Subrating

Слайд 57

Devices agree upon a time delay during which no communication will

Devices agree upon a time delay during which no communication will

occur
During the silent periods the slave can sleep or perform other functions
After the silent period the slave wakes up and ‘sniffs’ for a number of slots for its AM_ADR. If there is no data it goes back to sleep
Any active SCO connections between the devices must still be supported
Difference between sniff and hold mode:
Hold mode is a one shot deal during which no communication occurs
Sniff mode defines a repeating period during which no communication occurs

Sniff Mode

Слайд 58

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 59

Bluetooth stack is loosely based around the OSI model HCI layer

Bluetooth stack is loosely based around the OSI model
HCI layer is

not a real layer, it is a hardware interface
Audio data bypasses the upper layers and is sent straight to the application

Bluetooth Radio

Bluetooth Baseband (Link Controller)

Link Manager (LM)

Host Controller Interface (HCI)

L2CAP

SDP

RFCOMM

TCS-BIN

Adapted Protocols (TCP/IP, WAP)

Application Code and User Interface

Hardware

Firmware

Software

Bluetooth Protocol Stack

Слайд 60

Bluetooth Radio Bluetooth Baseband (Link Controller) Link Manager (LM) Host Controller

Bluetooth Radio

Bluetooth Baseband (Link Controller)

Link Manager (LM)

Host Controller Interface (HCI)

L2CAP

SDP

RFCOMM

TCS-BIN

Adapted Protocols

(TCP/IP, WAP)

Application Code and User Interface

Audio

The Link Manager (LM)

Слайд 61

Manages link set-up Manages security Manages piconet connections Provides test modes

Manages link set-up
Manages security
Manages piconet connections
Provides test modes for simplified testing
Link

manager messages have higher priority than user data
LMP messages are not specifically acknowledged
LM assumes LC provides error free link
But, LC cannot supply 100% error free link!

The Link Manager (LM)

Слайд 62

Link Set-up Procedures: Processes results of Inquiry and Page “Non-connection” oriented

Link Set-up Procedures:
Processes results of Inquiry and Page
“Non-connection” oriented commands
Device Name,

Class of Device, etc.
Security Procedures:
Authentication, Authorization, Encryption
Safer+ algorithm up to 128-bit encryption key
Remember there are regional encryption laws to abide by!
Pairing and Bonding

The Link Manager (LM) cont

Слайд 63

Piconet Connection Management: Packet type adjustment based on channel quality Switch

Piconet Connection Management:
Packet type adjustment based on channel quality
Switch between 1,3

and 5 slot packets
Master-Slave role switching
Low Power Modes
Sniff, Park and Hold
Quality of Service contracts
Transmit power control

The Link Manager (LM) cont.

Слайд 64

Bluetooth Radio Bluetooth Baseband (Link Controller) Link Manager (LM) Host Controller

Bluetooth Radio

Bluetooth Baseband (Link Controller)

Link Manager (LM)

Host Controller Interface (HCI)

L2CAP

SDP

RFCOMM

TCS-BIN

Adapted Protocols

(TCP/IP, WAP)

Application Code and User Interface

Audio

The Host Controller Interface (HCI)

Слайд 65

The HCI interface defines a physical connection between a host (e.g.

The HCI interface defines a physical connection between a host (e.g.

PC) and a host controller (e.g. Bluetooth module)
The specification defines three interfaces:
USB v1.1
RS-232
UART
It also defines messages that are passed across the HCI interface

Higher Layers

Audio

L2CAP

Control

HCI Driver

Physical Bus Driver

HCI
Packets

Physical Bus Driver

HCI Driver

Link Manager

Link Controller

Radio

Host

Bluetooth Module

Host Controller Interface (HCI)

Слайд 66

Hostless system Host based system HCI - Not really a layer!

Hostless system

Host based system

HCI - Not really a layer!

Слайд 67

Independent of hardware implementation Standard interface to Link Manager and Link

Independent of hardware implementation
Standard interface to Link Manager and Link Controller
HCI

Command groups:
Link Control (Inquiry, Paging, Encryption, etc.)
Link Policy (Hold, Sniff, Park, QoS)
Host Controller and Baseband Commands (PINs, event masks, timeouts, etc.)
Informational Parameters (Device address, country code, buffers)
Status (Link Quality, RSSI, Failed connections)
Testing (Test mode commands)
Vendor specific commands

HCI cont.

Слайд 68

Bluetooth Radio Bluetooth Baseband (Link Controller) Link Manager (LM) Host Controller

Bluetooth Radio

Bluetooth Baseband (Link Controller)

Link Manager (LM)

Host Controller Interface (HCI)

L2CAP

SDP

RFCOMM

TCS-BIN

Adapted Protocols

(TCP/IP, WAP)

Application Code and User Interface

Audio

Logical Link Control and Adaptation Protocol (L2CAP)

Слайд 69

Logical Link Control Multiplexing: many logical links onto one physical link

Logical Link Control
Multiplexing: many logical links onto one physical link
Adaptation
Segmentation &

reassembly: adapts large packets to baseband size
Protocol
A well defined set of signaling rules understood by all devices

Logical Link Control and Adaptation Protocol (L2CAP)

Слайд 70

L2CAP adds a Destination Channel ID to every packet The DCID

L2CAP adds a Destination Channel ID to every packet
The DCID is

used to identify and direct packets to the appropriate handler

L2CAP Multiplexing

Слайд 71

L2CAP Segmentation and Reassembly

L2CAP Segmentation and Reassembly

Слайд 72

No Traffic This level indicates that no traffic will be sent

No Traffic
This level indicates that no traffic will be sent out.

Traffic will be incoming only
Best Effort
Default level of service for all links
All values included in the QoS request should be viewed as hints and may be entirely ignored
Guaranteed
Remote device will attempt to honor the service level
Cannot overcome radio level interference
Not likely to be able to be maintained under poor radio conditions.
Best level of QoS for adding multiple connections

L2CAP Quality of Service

Слайд 73

Bluetooth Radio Bluetooth Baseband (Link Controller) Link Manager (LM) Host Controller

Bluetooth Radio

Bluetooth Baseband (Link Controller)

Link Manager (LM)

Host Controller Interface (HCI)

L2CAP

SDP

RFCOMM

TCS-BIN

Adapted Protocols

(TCP/IP, WAP)

Application Code and User Interface

Audio

Service Discovery Protocol (SDP)

Слайд 74

SDP servers maintain a database on services offered Made up of

SDP servers maintain a database on services offered
Made up of service

records.
Servers maintain their own database, there is no central registry.
SDP allows clients to search for services.
based on attributes and service classes.
SDP uses connections set up via the usual Inquiry and Paging operations.

Service Discovery Protocol (SDP)

Слайд 75

Service search attribute request for DUN Set up L2CAP link to

Service search attribute request for DUN

Set up L2CAP link to SDP

Return

service record for DUN

Disconnect L2CAP

Set up baseband link

SDP Server

SDP Client

SDP Example

Слайд 76

Bluetooth Radio Bluetooth Baseband (Link Controller) Link Manager (LM) Host Controller

Bluetooth Radio

Bluetooth Baseband (Link Controller)

Link Manager (LM)

Host Controller Interface (HCI)

L2CAP

SDP

RFCOMM

TCS-BIN

Adapted Protocols

(TCP/IP, WAP)

Application Code and User Interface

Audio

RFCOMM

Слайд 77

Serial cable replacement Up to 60 emulated serial port connections per

Serial cable replacement
Up to 60 emulated serial port connections per RFCOMM

session
Depending on implementation, multiple RFCOMM sessions are possible
Large base of legacy applications using serial communications
Uses GSM TS 07.10 standard
Credit Based Flow Control
Negotiated credit tokens determine data flow
RS-232 control signal emulation
RS-232 flow control emulation
Software (Xon/Xoff)
Hardware (CTS/RTS)

RFCOMM

Слайд 78

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 79

Basic set of standards for common usage models. Reduces set of

Basic set of standards for common usage models.
Reduces set of requirements

for each usage model.
Ensures interoperability
Radio Level – ensures devices can contact each other.
Protocol Level – ensures devices can communicate.
User/usage Level:
Ensures application can interoperate.
Ensures user can interact with the device.

Bluetooth Profiles

Слайд 80

Generic Access Profile Serial Port Profile Telephony Control Protocol Specification Generic

Generic Access Profile

Serial Port Profile

Telephony Control Protocol Specification

Generic

Object Exchange Profile

Dial Up Networking
Profile

File Transfer Profile

Cordless Telephony
Profile

Service Discovery
Application Profile

Intercom
Profile

FAX Profile

Headset Profile

Object Push Profile

Synchronisation Profile

LAN Access Profile

Bluetooth foundation profiles

Слайд 81

Generic Access Profile defines: generic procedures for discovering Bluetooth devices. link

Generic Access Profile

defines:
generic procedures for discovering Bluetooth devices.
link management aspects

of connecting to Bluetooth devices.
procedures related to security levels.
Common formats for parameters accessible on the user interface level (naming conventions).
All other profiles rest on Generic Access Profile.

Generic Access Profile

Слайд 82

Generic Access Profile Serial Port Profile Service Discovery Application Profile Simulated

Generic Access Profile

Serial Port Profile

Service Discovery
Application Profile

Simulated serial

port.
Uses RFCOMM.
Derived from GSM TS07.10.

Profile building blocks

Слайд 83

LAN access Headset Serial Port FAX, Dial up Networking Serial Port Profiles

LAN access

Headset

Serial Port

FAX, Dial up Networking

Serial Port Profiles

Слайд 84

Generic Access Profile Serial Port Profile Service Discovery Application Profile Generic

Generic Access Profile

Serial Port Profile

Service Discovery
Application Profile

Generic Object

Exchange Profile

Object exchange.
Allows put & get data objects.
Uses IrDA standard OBEX.

Profile Building blocks

Слайд 85

File Transfer Object Push Synchronisation files Business Card Business Card Data

File Transfer
Object Push
Synchronisation

files

Business Card

Business Card

Data to be synchronized

Synchronized data

Synchronize me

OBEX Profiles

Слайд 86

A2DP- Advanced Audio Distribution Profile AVRCP - A/V Remote Control Profile

A2DP- Advanced Audio Distribution Profile
AVRCP - A/V Remote Control Profile
BIP -

Basic Imaging Profile
BPP - Basic Printing Profile
CTP - Cordless Telephony Profile
DID - Device ID Profile
DUN - Dial-Up Networking Profile
FAX - Fax Profile
FTP - File Transfer Profile
GAVDP - Generic A/V Distribution Profile
GOEP - Generic Object Exchange Profile
HCRP - Hardcopy Cable Replacement Profile
HDP - Health Device Profile

HFP - Hands-Free Profile
HSP - Headset Profile
HID - Human Interface Device Profile
ICP - Intercom Profile
MAP - Message Access Profile
OPP - Object Push Profile
PAN - Personal Area Network Profile
PBAP - Phone Book Access Profile
SAP - SIM Access Profile
SDAP - Service Discovery Application Profile
SPP - Serial Port Profile
SYNCH - Synchronization Profile
VDP - Video Distribution Profile

Profiles

Слайд 87

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 88

Generic Access Profile Serial Port Profile Handsfree Profile HFP Profile Dependency

Generic Access Profile

Serial Port Profile

Handsfree Profile

HFP Profile Dependency

Слайд 89

Configuration and Roles Audio Gateway (AG) gateway for the audio input/output

Configuration and Roles

Audio Gateway (AG)
gateway for the audio input/output
typically a cell

phone
Hands-Free Unit (HF)
AG’s remote audio input/output
means of remote control

HFP

AG

HF

Слайд 90

Feature Requirements Must support CVSD Only one audio connection per service

Feature Requirements

Must support CVSD
Only one audio connection per service level connection

(SLC)
Can have an SLC without an audio connection
Must have an SLC with an audio connection

See specification for complete list
of features and required support

Слайд 91

Establishing a Service Level Connection AG HF RFCOMM established AT+BRSF +BRSF:

Establishing a Service Level Connection

AG

HF

RFCOMM established

AT+BRSF

+BRSF:

features>

OK

AT+CIND=?

+CIND…

OK

AT+CIND

+CIND…

OK

AT+CMER=

OK

AT+CHLD=?

+CHLD:…

OK

SLC established

Supported features

Call indicator support

Current status of call indicators

Enable indicator status update

Call hold indicator

Event or action by HF or AG

NOTE: HF or AG can also release SLC

Слайд 92

Transferring Status Information AG HF SLC established +CIEV:... Event in AG

Transferring Status Information

AG

HF

SLC established

+CIEV:...

Event in AG

Unsolicited events can be reported from

AG to HF
Service
Call status
Call setup
Call hold status
Signal
Roam status
Battery level
Слайд 93

Answering a call - in-band ring tone AG HF SLC established

Answering a call - in-band ring tone

AG

HF

SLC established

+CIEV (callsetup=1)

RING (ALERT)

+CLIP:…

In band

ring tone (ALERT)

ATA (ANSWER)

OK

+CIEV: (call=1)

+CIEV: (callsetup=0)

Call active

User answers call

Incoming call on AG

Audio connection setup

Audio connection established

AG is ringing
Repeated as necessary

Call active

Слайд 94

Answer/end call – no in-band ring tone AG HF SLC established

Answer/end call – no in-band ring tone

AG

HF

SLC established

+CIEV (callsetup=1)

RING (ALERT)

+CLIP:…

ATA (ANSWER)

OK

+CIEV:

(call=1)

+CIEV: (callsetup=0)

Call active

User ends call

Incoming call on AG

Audio connection setup

Audio connection established

AG is ringing
Repeated as necessary

Call active

HF alerts user

AT+CHUP

OK

+CIEV: (call=0)

User answers call

Слайд 95

Three-way call – hold active/accept waiting AG HF In active call

Three-way call – hold active/accept waiting

AG

HF

In active call

+CCWA:…

+CIEV (callsetup=1)

AT+CHLD=2

OK

+CIEV: (callsetup=0)

In active

call

Audio connection established

User accepts
waiting call

+CIEV: (callhold=1)

Слайд 96

Call Control Audio connection setup Audio connection release Answer incoming call

Call Control

Audio connection setup
Audio connection release
Answer incoming call from AG
Change in-band

ring tone setting
Reject incoming call from HF
Reject incoming call from AG
Audio connection transfer toward HF
Audio connection transfer toward AG
Place call with phone number supplied by HF

Memory dialing from HF
Last number re-dial from HF
Call waiting notification activation
Three way calling – third party called from HF
Calling line identification notification
Disabling EC/NR
Voice recognition activation
Remote volume control

See specification for examples of these, and other use cases

Слайд 97

Common AT Command and Result Codes AG may also send the

Common AT Command and Result Codes

AG may also send the following

result codes:

ERROR
OK
NO CARRIER
BUSY
NO ANSWER
DELAYED
BLACKLISTED
RING

See specification for complete
list of commands and result codes

Слайд 98

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 99

Generic Access Profile Generic Audio/Video Distribution Profile Advanced Audio Distribution Profile

Generic Access Profile

Generic Audio/Video Distribution Profile

Advanced Audio
Distribution Profile

A2DP Profile

Dependency

Audio/Video
Remote Control Profile

Слайд 100

Configuration and Roles Source (SRC) Source of digital audio stream that

Configuration and Roles

Source (SRC)
Source of digital audio stream that is delivered

to the sink of the piconet
Media player, phone, PC
Sink (SNK)
Acts as a sink of the digital audio stream that is delivered by the source
Stereo headset, wireless speakers, car audio system

SNK

SRC

A2DP

Слайд 101

Audio Codec Interoperability Requirements Must support SBC Optional support for MP3,

Audio Codec Interoperability Requirements

Must support SBC
Optional support for MP3, AAC, ATRAC
Support

can be extended to non-A2DP codecs
Слайд 102

Codec Specific Information Elements AVDTP signaling procedure negotiates codec parameters Parameters

Codec Specific Information Elements

AVDTP signaling procedure negotiates codec parameters
Parameters part of

Codec Specific Information Elements
Sampling frequencies
Channel modes (mono, dual channel, stereo, joint stereo)
Bit rates
Other information specific to selected codecs
Слайд 103

AVDTP Signaling Procedures SNK SRC User initiated action/event IDLE Stream Endpoint

AVDTP Signaling Procedures

SNK

SRC

User initiated
action/event

IDLE

Stream Endpoint Discovery

Get Capabilities

Stream Configuration

Stream Establishment

Audio streaming
setup

OPEN

Start

Streaming

STREAMING

User initiated
action/event

Audio streaming

Слайд 104

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 105

Generic Access Profile Generic Audio/Video Distribution Profile Advanced Audio Distribution Profile

Generic Access Profile

Generic Audio/Video Distribution Profile

Advanced Audio
Distribution Profile

AVRCP Profile

Dependency

Audio/Video
Remote Control Profile

Слайд 106

Configuration and Roles Controller (CT) Initiates transaction by sending command to

Configuration and Roles

Controller (CT)
Initiates transaction by sending command to target
Headsets, remote

controls
Target (TG)
Receives command and generates a response frame
Media player, TV, tuner

SRC

SNK

AVRCP

A2DP

CT

TG

SRC

TG

A2DP

SNK

AVRCP

SRC

Слайд 107

Feature Requirements

Feature Requirements

Слайд 108

Procedure of AV/C Command TG CT User initiated action/event Connection Establishment

Procedure of AV/C Command

TG

CT

User initiated
action/event

Connection Establishment

AV/C Command

AV/C Interim Response

AV/C Response

Connection

must be
established before
commands initiate from
controller

Interim responses may
be associated with
VENDOR DEPENDENT
commands

UNIT INFO
SUBUNIT INFO
VENDOR DEPENDENT
PASS THROUGH

TRCP(100)

Слайд 109

AV/C Command Types UNIT INFO 1394 Trade Association AV/C Digital Interface

AV/C Command Types

UNIT INFO
1394 Trade Association AV/C Digital Interface Command Set
SUBUNIT

INFO
1394 Trade Association AV/C Digital Interface Command Set
VENDOR DEPENDENT
Allows own set of AV/C commands
PASS THROUGH
Used to transfer user operation information from CT to Panel subunit of TG
Слайд 110

A/V Categories A/V categories specified to ensure interoperability Four Categories Player/Recorder

A/V Categories

A/V categories specified to ensure interoperability
Four Categories
Player/Recorder
Monitor/Amplifier
Tuner
Menu
Each category has operations

which are:
Mandatory for the TG
Optional
Not supported
It is mandatory for CT to support
At least one category
At least one operation
Слайд 111

Supported Operations in TG See specification for complete list of operations

Supported Operations in TG

See specification for complete list of operations

Слайд 112

Newer AVRCP Versions AVRCP 1.3 - adds support for metadata Query

Newer AVRCP Versions

AVRCP 1.3 - adds support for metadata
Query capabilities
Query application

settings
Attributes for currently selected media track
Event notifications
Continuation (i.e. segmentation/re-assembly)
Group navigation
AVRCP 1.4
Media player selection
Browsing
Searching
Advanced volume control
Слайд 113

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 114

Generic Access Profile Serial Port Profile Generic Object Exchange Profile PBAP

Generic Access Profile

Serial Port Profile

Generic Object Exchange Profile

PBAP

Profile Dependencies

Phone Book
Access Profile

Слайд 115

PBAP Overview Client-server interaction model Tailored for hands-free usage case Read

PBAP Overview

Client-server interaction model
Tailored for hands-free usage case
Read only – cannot

alter content
More feature-rich than OPP
Слайд 116

Configuration and Roles Phone book Server Equipment (PSE) Contains source phonebook

Configuration and Roles

Phone book Server Equipment (PSE)
Contains source phonebook objects
Phone
Phone book

client equipment (PCE)
Retrieves phone book objects from server
Accessory in automobile, car kit, headset

PCE

PSE

PBAP

Слайд 117

Phone Book Objects and Representations Based upon IR Mobile Communications specification

Phone Book Objects and Representations

Based upon IR Mobile Communications specification
Five types

of phone book objects
Main phone book – entries are vCard 2.1 or 3.0 in XML format
Incoming call history
Outgoing call history
Missed call history
Combined call history
Object representations
File representation
Folder representation
Слайд 118

PBAP Features and Functions PCE must support either Download or Browsing

PBAP Features and Functions

PCE must support either Download or Browsing feature

and functions associated with that feature
Слайд 119

Phone Book Download Sequence Example PCE connects to Phone Book Access

Phone Book Download Sequence Example

PCE connects to
Phone Book Access
service of the

PSE

PCE downloads
phone book object
(PullPhonebook)

PCE terminates the
Phone Book Access
connection with the PSE

PCE can perform
successive downloads

Слайд 120

Phone Book Browsing Sequence Example PCE connects to Phone Book Access

Phone Book Browsing Sequence Example

PCE connects to Phone Book
Access Service

of PSE

PCE sets current folder to telecom
or SIM1/telecom (SetPhonebook)

PCE retrieves vCard listing object
of phone book (PullvCardListing)

PCE sets current folder to phone
book of interest (SetPhonebook)

PCE retrieves phone book entry
(PullvCardEntry)

PCE terminates the Phone Book
Access connection with the PSE

Repeat for number of
vCards of interest

May be repeated for
other phone book
repositories

Слайд 121

Bluetooth Overview Bluetooth Air Interface & Baseband Bluetooth Protocol Stack Bluetooth

Bluetooth Overview
Bluetooth Air Interface & Baseband
Bluetooth Protocol Stack
Bluetooth Profiles
HFP
A2DP
AVRCP
PBAP
New Bluetooth Standards

Agenda

Слайд 122

Bluetooth 3.0+HS Alternate MAC/PHY (AMP) Enables high speed using other radio

Bluetooth 3.0+HS

Alternate MAC/PHY (AMP)
Enables high speed using other radio technologies (e.g.

802.11)
Bluetooth Basic Rate acts as control channel
Can use 802.11 as high speed bearer channel when needed
Enhanced Power Control
Faster and more responsive power control
Слайд 123

Bluetooth 4.0 (BTle) Used to transfer simple data sets between compact

Bluetooth 4.0 (BTle)

Used to transfer simple data sets between compact devices
Opens

up whole new classes of Bluetooth applications
watches, sneakers, TV remote controls, medical sensors, etc.
Takes less time to make a connection than conventional Bluetooth.
Consumes approximately 98% less power than Bluetooth Basic Rate
Слайд 124

Bluetooth Listens frequently Listens for a longer time On 1% Bluetooth

Bluetooth
Listens frequently
Listens for a longer time
On 1%
Bluetooth low energy
Transmits quickly
Listens quickly
Turned

off 99.9% of the time

Why is Bluetooth low energy low power?

Слайд 125

Why is Bluetooth low energy low power?

Why is Bluetooth low energy low power?