Bluetooth Justin 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 What is Bluetooth? Advantages By Design • • • • • Simple Standardized (highly interoperable) Low Power o Most common "class 2" radio consumes 2.5mW Robust o Frequency Hopping Spread Spectrum (FHSS) o Profiles Simultaneous Connection Service Classes o Voice - Circuit-Switched o Data - Best Effort 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 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 Members o • • 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 requalification There are some fees for qualification o o Not publicly available 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 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.0 o o • o Competes with low power WPAN protocols o o • Bluetooth Classic Bluetooth HS Bluetooth LE o ANT 802.15.4 (MAC and PHY of ZigBee) Nike+ No Mesh Networking Support Bluetooth "Variants" BLE and the Future of Bluetooth • Adoption of BLE enables new technology arenas Home Automation o Medical Devices o Wearable Electronics o • 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 classes o o • o Class 1: 100mW, ~100m range Class 2: 2.5mW, ~10m range Class 3: 1mW, ~1m range Modulation: Gaussian frequency-shift keying o o o Positive frequency offset -> 1 Negative frequency offset -> 0 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 slots Master transmits in even-numbered slots o Slave transmits in odd-numbered slots o One packet transmitted in each slot o Baseband Layer • • Data is transmitted in packets Connections come in two types: o o SCO (Synchronous Connection-Oriented) Reserved bandwidth Master to single slave Typically carries voice data 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 Correction o o o o 1/3-rate FEC Transmit each bit 3 times - majority wins 2/3-rate FEC Error-correcting code turns 10 bits into 15 ARQ Retransmit until acknowledged 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: Pairing o Authentication o Encryption o Connection establishment o Device discovery o 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: Send ACL/SCO data o Create piconets o Encrypt a link o Get status information o • 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 reliability o • o Guaranteed delivery (using ARQ) Best-effort delivery Important functions: o o o Multiplexing Segmentation/reassembly 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 support o • o Search for a specific profile 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.radioelectronics.com/info/wireless/bluetooth/radio-interfacemodulation.php http://www.eetimes.com/design/automotivedesign/4009313/Testing-and-Qualifying-a-BluetoothDesign www.hp.com/rnd/library/pdf/understandingBluetooth.pdf http://grouper.ieee.org/groups/802/15/Bluetooth/core_1