bluetooth justin paupore (jpaupore) russ bielawski (jbielaws)
TRANSCRIPT
BluetoothJustin Paupore (jpaupore)Russ Bielawski (jbielaws)
What is Bluetooth?
What, exactly, is Bluetooth?
What is the purpose of Bluetooth?
What is Bluetooth?Protocol Goals
• Cable replacement technology (initially)
• Short-range wireless communication technology (unlicensed 2.4GHz band)
• Wireless Personal Area Networks (WPANs)
• Standardization of Solution to Common Problem
• Simple
• Standardized (highly interoperable)
• Low Powero Most common "class 2" radio consumes 2.5mW
• Robusto Frequency Hopping Spread Spectrum (FHSS)o Profiles
• Simultaneous Connection Service Classeso Voice - Circuit-Switchedo Data - Best Effort
• QoS
What is Bluetooth?Advantages By Design
What is Bluetooth?History
• 1998: Special Interest Group (SIG) formed
• 1999: Bluetooth 1.0
• 2000: mobile phone
• 2001: printer, laptop, hands-free in-car
• 2002: keyboard and mouse, GPS
• 2002: Bluetooth 1.1 - IEEE 802.15.1-2002
• 2004: Bluetooth 2.0 + EDR
• 2007: Bluetooth 2.1 + EDR
• 2009: Bluetooth 3.0 + HS
• 2010: Bluetooth 4.0
What is Bluetooth?Aside: The Bluetooth SIG
• Bluetooth was initially conceived by Ericsson
• The Bluetooth SIG was founded in 1998 by Ericsson, IBM, Intel, Toshiba and Nokia
• Promoter Memberso Ericsson, Intel, Lenovo, Microsoft, Motorola, Nokia,
Toshiba, Apple, Nordic Semiconductor
• Associate Members
• Adopter Members
Outline
• What is Bluetooth?
• Licensing, Patents and Certification
• Bluetooth "Variants"
• Profiles
• The Bluetooth Protocol Stack
Licensing, Patents and Certification
• Bluetooth Qualification is required to use Bluetooth trademarks
• Patents are FRAND, subject to qualification
• Embedding a qualified Bluetooth module WITH an antenna does not required re-qualification
• There are some fees for qualificationo Not publicly availableo Based upon membership status
Outline
• What is Bluetooth?
• Licensing, Patents and Certification
• Bluetooth "Variants"
• Profiles
• The Bluetooth Protocol Stack
Bluetooth "Variants"History (Again)
• 1998: Special Interest Group (SIG) formed
• 1999: Bluetooth 1.0
• 2000: mobile phone
• 2001: printer, laptop, hands-free in-car
• 2002: keyboard and mouse, GPS
• 2002: Bluetooth 1.1 - IEEE 802.15.1-2002
• 2004: Bluetooth 2.0 + EDR
• 2007: Bluetooth 2.1 + EDR
• 2009: Bluetooth 3.0 + HS
• 2010: Bluetooth 4.0
Bluetooth "Variants"EDR - Enhanced Data Rate
• Added in Bluetooth 2.0
• Allows speeds up to 3.0 Mbps theoretically, 2.1 Mbps in practice
• Adds new modulation schemes improve data rate
• Bluetooth 2.0 devices may not actually support EDR!
Bluetooth "Variants"HS - High Speed
• Added in Bluetooth 3.0
• Allows speeds up to 24.0 Mbps via Alternate MAC/PHY (AMP)
• Uses 802.11 to actually perform data transfer
• Bluetooth 3.0 devices may not actually support HS!
Bluetooth "Variants"BLE - Bluetooth Low Enegry
• Bluetooth Low Energy (BLE) is the main feature of Bluetooth 4.0
• Re-imagining of Bluetooth for 4.0o Bluetooth Classico Bluetooth HSo Bluetooth LE
• Competes with low power WPAN protocolso ANTo 802.15.4 (MAC and PHY of ZigBee)o Nike+
• No Mesh Networking Support
Bluetooth "Variants"BLE and the Future of Bluetooth
• Adoption of BLE enables new technology arenaso Home Automationo Medical Deviceso Wearable Electronics
• New product branding
Outline
• What is Bluetooth?
• Licensing, Patents and Certification
• Bluetooth "Variants"
• Profiles
• The Bluetooth Protocol Stack
Profiles
Profile Examples
• Advanced Audio Distribution Profile (A2DP)o e.g. Bluetooth Headphones
• A/V Remote Control Profile (AVRCP)
• Basic Printing Profile (BPP)
• File Transfer Profile (FTP)
• Hands-Free Profile (HFP)
• Human Interface Device Profile (HID)o e.g. Bluetooth Keyboard
• Serial Port Profile (SPP)
Profiles
• Profiles reduce the risk of poor or partial interoperability between devices
• Endpoints can and usually do support multiple profiles
What's in a profile?
• Dependencies
• Suggested user interface
• Bluetooth protocols required
• Dependencies on other profiles
Profiles
Profile Examples
• Advanced Audio Distribution Profile (A2DP)o e.g. Bluetooth Headphones
• A/V Remote Control Profile (AVRCP)
• Basic Printing Profile (BPP)
• File Transfer Profile (FTP)
• Hands-Free Profile (HFP)
• Human Interface Device Profile (HID)o e.g. Bluetooth Keyboard
• Serial Port Profile (SPP)
Outline
• What is Bluetooth?
• Licensing, Patents and Certification
• Bluetooth "Variants"
• Profiles
• The Bluetooth Protocol Stack
The Bluetooth Protocol Stack
Bluetooth Protocol Example
Radio Layer
Radio Layer
• Runs in unlicensed 2.4 GHz (ISM) band
• 79 frequency bands, separated by 1 MHz
• Transmit power classeso Class 1: 100mW, ~100m rangeo Class 2: 2.5mW, ~10m rangeo Class 3: 1mW, ~1m range
• Modulation: Gaussian frequency-shift keyingo Positive frequency offset -> 1o Negative frequency offset -> 0o 2.0 EDR adds phase-shift keying
Baseband Layer
Baseband Layer
• Master/slave setup
• Piconet: 1 master + up to 8 slaves
• Pseudorandom frequency hopping based on device address of master
• Time-division duplexing - 625µs slotso Master transmits in even-numbered slotso Slave transmits in odd-numbered slotso One packet transmitted in each slot
Baseband Layer
• Data is transmitted in packets
• Connections come in two types:o SCO (Synchronous Connection-Oriented)
Reserved bandwidth Master to single slave Typically carries voice data
o ACL (Asynchronous Connectionless) Uses slots not used for SCO links Master to all slaves in piconet Carries non-voice data (L2CAP) Only one ACL connection for the piconet
Baseband Layer
• Error Correctiono 1/3-rate FEC
Transmit each bit 3 times - majority winso 2/3-rate FEC
Error-correcting code turns 10 bits into 15o ARQ
Retransmit until acknowledgedo Type used depends on packet type - see spec
swedetrack.com/images/bluet08.htm
Link Manager Protocol (LMP)
Link Manager Protocol (LMP)
• Establishes, manages, and tears down links
• Functions include:o Pairingo Authenticationo Encryptiono Connection establishmento Device discovery
Host Controller Interface (HCI)
Host Controller Interface (HCI)
• Standard interface between Bluetooth chipsets and host devices
• Communication protocol to chipset
http://www.palowireless.com/infotooth/tutorial/hci.asp
Host Controller Interface (HCI)
• Chipset manages radio, baseband, LMP
• Exports commands such as:o Send ACL/SCO datao Create piconetso Encrypt a linko Get status information
• Allows reusing drivers and interchanging chipsets
Logical Link Control and Adaptation Protocol (L2CAP)
Logical Link Control and Adaptation Protocol (L2CAP)
• Provides abstracted data-carrying capability over ACL links
• Work around limitations of ACL
• Controllable reliabilityo Guaranteed delivery (using ARQ)o Best-effort delivery
• Important functions:o Multiplexingo Segmentation/reassemblyo Quality-of-Service
RFCOMM Protocol
RFCOMM Protocol
• Serial port emulation over L2CAP
• Carries data + flow control signals
• Can emulate multiple serial ports
Service Discovery Protocol (SDP)
Service Discovery Protocol (SDP)
• Ask devices what profiles they supporto Search for a specific profileo Get a list of all profiles
• Get necessary information for connection
Putting it All Together: SPP
Putting it All Together: SPP
• Connect with LMP
• Find info with SDP
• Start L2CAP
• Start RFCOMM
• Send data!
Conclusion
• What is Bluetooth?
• Licensing, Patents and Certification
• Bluetooth "Variants"
• Profiles
• The Bluetooth Protocol Stack
References
• http://www.bluetooth.com/
• http://www.bluetooth.org/
• http://ieee802.org/15/Bluetooth/
• http://www.palowireless.com/infotooth/
• http://www.radio-electronics.com/info/wireless/bluetooth/radio-interface-modulation.php
• http://www.eetimes.com/design/automotive-design/4009313/Testing-and-Qualifying-a-Bluetooth-Design
• www.hp.com/rnd/library/pdf/understandingBluetooth.pdf
• http://grouper.ieee.org/groups/802/15/Bluetooth/core_10_b.pdf
• https://support.apple.com/kb/HT3647