CSE 4215/5431: Mobile Communications Winter 2010 Suprakash Datta datta@cs.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cs.yorku.ca/course/4215 Some slides are adapted from the book website 11/19/2018 CSE 4215, Winter 2010
Today Bluetooth Intro (Ch 7.5) 11/19/2018 CSE 4215, Winter 2010
Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Bluetooth Basic idea Universal radio interface for ad-hoc wireless connectivity Interconnecting computer and peripherals, handheld devices, PDAs, cell phones – replacement of IrDA Embedded in other devices, goal: 5€/device (already < 1€) One of the first modules (Ericsson). 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 3
Bluetooth - contd Available globally for unlicensed users Devices within 10 m can share up to 720 kbps of capacity Supports open-ended list of applications Data, audio, graphics, video 11/19/2018 CSE 4215, Winter 2010
Applications Data and voice access points Cable replacement Real-time voice and data transmissions Cable replacement Eliminates need for numerous cable attachments for connection Ad hoc networking Device with Bluetooth radio can establish connection with another when in range 11/19/2018 CSE 4215, Winter 2010
Bluetooth - history History Special Interest Group 1994: Ericsson (Mattison/Haartsen), “MC-link” project Renaming of the project: Bluetooth according to Harald “Blåtand” Gormsen [son of Gorm], King of Denmark in the 10th century 1998: foundation of Bluetooth SIG, www.bluetooth.org 2001: first consumer products for mass market, spec. version 1.1 released 2005: 5 million chips/week Special Interest Group Original founding members: Ericsson, Intel, IBM, Nokia, Toshiba Added promoters: 3Com, Agere (was: Lucent), Microsoft, Motorola > 10000 members Common specification and certification of products 11/19/2018 CSE 4215, Winter 2010
Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 History and hi-tech… 1999: Ericsson mobile communications AB reste denna sten till minne av Harald Blåtand, som fick ge sitt namn åt en ny teknologi för trådlös, mobil kommunikation. 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 7
…and the real rune stone Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 …and the real rune stone Located in Jelling, Denmark, erected by King Harald “Blåtand” in memory of his parents. The stone has three sides – one side showing a picture of Christ. Inscription: "Harald king executes these sepulchral monuments after Gorm, his father and Thyra, his mother. The Harald who won the whole of Denmark and Norway and turned the Danes to Christianity." This could be the “original” colors of the stone. Inscription: “auk tani karthi kristna” (and made the Danes Christians) Blåtand means “of dark complexion” (not having a blue tooth…) 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 8
Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Characteristics 2.4 GHz ISM band, 79 (23) RF channels, 1 MHz carrier spacing Channel 0: 2402 MHz … channel 78: 2480 MHz G-FSK modulation, 1-100 mW transmit power FHSS and TDD Frequency hopping with 1600 hops/s Hopping sequence in a pseudo random fashion, determined by a master Time division duplex for send/receive separation Voice link – SCO (Synchronous Connection Oriented) FEC (forward error correction), no retransmission, 64 kbit/s duplex, point-to-point, circuit switched Data link – ACL (Asynchronous Connection Less) Asynchronous, fast acknowledge, point-to-multipoint, up to 433.9 kbit/s symmetric or 723.2/57.6 kbit/s asymmetric, packet switched Topology Overlapping piconets (stars) forming a scatternet 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 9
Standards Documents Core specifications Profile specifications Details of various layers of Bluetooth protocol architecture Profile specifications Use of Bluetooth technology to support various applications 11/19/2018 CSE 4215, Winter 2010
Protocol Architecture Bluetooth is a layered protocol architecture Core protocols Cable replacement and telephony control protocols Adopted protocols Radio Baseband Link manager protocol (LMP) Logical link control and adaptation protocol (L2CAP) Service discovery protocol (SDP) 11/19/2018 CSE 4215, Winter 2010
Protocol Architecture Cable replacement protocol RFCOMM Telephony control protocol Telephony control specification – binary (TCS BIN) Adopted protocols PPP TCP/UDP/IP OBEX WAE/WAP 11/19/2018 CSE 4215, Winter 2010
Usage Models File transfer Internet bridge LAN access Synchronization Three-in-one phone Headset 11/19/2018 CSE 4215, Winter 2010
Piconets and Scatternets Basic unit of Bluetooth networking Master and one to seven slave devices Master determines channel and phase Scatternet Device in one piconet may exist as master or slave in another piconet Allows many devices to share same area Makes efficient use of bandwidth 11/19/2018 CSE 4215, Winter 2010
Piconet Collection of devices connected in an ad hoc fashion Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Piconet Collection of devices connected in an ad hoc fashion One unit acts as master and the others as slaves for the lifetime of the piconet Master determines hopping pattern, slaves have to synchronize Each piconet has a unique hopping pattern Participation in a piconet = synchronization to hopping sequence Each piconet has one master and up to 7 simultaneous slaves (> 200 could be parked) P S S M P SB S P SB M=Master S=Slave P=Parked SB=Standby 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 15
Forming a piconet Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Forming a piconet All devices in a piconet hop together Master gives slaves its clock and device ID Hopping pattern: determined by device ID (48 bit, unique worldwide) Phase in hopping pattern determined by clock Addressing Active Member Address (AMA, 3 bit) Parked Member Address (PMA, 8 bit) P S SB SB S M P SB SB SB SB S SB P SB SB SB SB 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 16
Radio Specification Classes of transmitters Class 1: Outputs 100 mW for maximum range Power control mandatory Provides greatest distance Class 2: Outputs 2.4 mW at maximum Power control optional Class 3: Nominal output is 1 mW Lowest power 11/19/2018 CSE 4215, Winter 2010
Frequency Hopping in Bluetooth Provides resistance to interference and multipath effects Provides a form of multiple access among co-located devices in different piconets 11/19/2018 CSE 4215, Winter 2010
Frequency Hopping Total bandwidth divided into 1MHz physical channels FH occurs by jumping from one channel to another in pseudorandom sequence Hopping sequence shared with all devices on piconet Piconet access: Bluetooth devices use time division duplex (TDD) Access technique is TDMA FH-TDD-TDMA 11/19/2018 CSE 4215, Winter 2010
Frequency selection during data transmission Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Frequency selection during data transmission 625 µs fk fk+1 fk+2 fk+3 fk+4 fk+5 fk+6 M S M S M S M t fk fk+3 fk+4 fk+5 fk+6 M S M S M t fk fk+1 fk+6 M S M t 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 20
Physical Links between Master and Slave Synchronous connection oriented (SCO) Allocates fixed bandwidth between point-to-point connection of master and slave Master maintains link using reserved slots Master can support three simultaneous links Asynchronous connectionless (ACL) Point-to-multipoint link between master and all slaves Only single ACL link can exist 11/19/2018 CSE 4215, Winter 2010
Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Scatternet Linking of multiple co-located piconets through the sharing of common master or slave devices Devices can be slave in one piconet and master of another Communication between piconets Devices jumping back and forth between the piconets Piconets (each with a capacity of 720 kbit/s) P S S S P P M M SB S M=Master S=Slave P=Parked SB=Standby P SB SB S 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 22
Bluetooth protocol stack Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Bluetooth protocol stack audio apps. NW apps. vCal/vCard telephony apps. mgmnt. apps. TCP/UDP OBEX AT modem commands TCS BIN SDP Control IP BNEP PPP Audio RFCOMM (serial line interface) Logical Link Control and Adaptation Protocol (L2CAP) Host Controller Interface Link Manager Baseband Radio AT: attention sequence OBEX: object exchange TCS BIN: telephony control protocol specification – binary BNEP: Bluetooth network encapsulation protocol SDP: service discovery protocol RFCOMM: radio frequency comm. 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 23
Bluetooth Packet Fields Access code – used for timing synchronization, offset compensation, paging, and inquiry Header – used to identify packet type and carry protocol control information Payload – contains user voice or data and payload header, if present 11/19/2018 CSE 4215, Winter 2010
Types of Access Codes Channel access code (CAC) – identifies a piconet Device access code (DAC) – used for paging and subsequent responses Inquiry access code (IAC) – used for inquiry purposes 11/19/2018 CSE 4215, Winter 2010
Access Code Preamble – used for DC compensation 0101 if LSB of sync word is 0 1010 if LSB of synch word is 1 Sync word – 64-bits, derived from: 7-bit Barker sequence Lower address part (LAP) Pseudonoise (PN) sequence Trailer 0101 if MSB of sync word is 1 1010 if MSB of sync word is 0 11/19/2018 CSE 4215, Winter 2010
Packet Header Fields AM_ADDR – contains “active mode” address of one of the slaves Type – identifies type of packet Flow – 1-bit flow control ARQN – 1-bit acknowledgment SEQN – 1-bit sequential numbering schemes Header error control (HEC) – 8-bit error detection code 11/19/2018 CSE 4215, Winter 2010
Payload Format Payload header Payload body – contains user data L_CH field – identifies logical channel Flow field – used to control flow at L2CAP level Length field – number of bytes of data Payload body – contains user data CRC – 16-bit CRC code 11/19/2018 CSE 4215, Winter 2010
Baseband link types Polling-based TDD packet transmission Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Baseband link types Polling-based TDD packet transmission 625µs slots, master polls slaves SCO (Synchronous Connection Oriented) – Voice Periodic single slot packet assignment, 64 kbit/s full-duplex, point-to-point ACL (Asynchronous ConnectionLess) – Data Variable packet size (1, 3, 5 slots), asymmetric bandwidth, point-to-multipoint SCO ACL SCO ACL SCO ACL SCO ACL MASTER f0 f4 f6 f8 f12 f14 f18 f20 SLAVE 1 f1 f7 f9 f13 f19 SLAVE 2 f5 f17 f21 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 29
Error Correction Schemes 1/3 rate FEC (forward error correction) Used on 18-bit packet header, voice field in HV1 packet 2/3 rate FEC Used in DM packets, data fields of DV packet, FHS packet and HV2 packet ARQ Used with DM and DH packets 11/19/2018 CSE 4215, Winter 2010
ARQ Scheme Elements Error detection – destination detects errors, discards packets Positive acknowledgment – destination returns positive acknowledgment Retransmission after timeout – source retransmits if packet unacknowledged Negative acknowledgment and retransmission – destination returns negative acknowledgement for packets with errors, source retransmits 11/19/2018 CSE 4215, Winter 2010
Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Robustness Slow frequency hopping with hopping patterns determined by a master Protection from interference on certain frequencies Separation from other piconets (FH-CDMA) Retransmission ACL only, very fast Forward Error Correction SCO and ACL Error in payload (not header!) NAK ACK MASTER A C C F H SLAVE 1 B D E SLAVE 2 G G 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 32
Baseband states of a Bluetooth device Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Baseband states of a Bluetooth device standby unconnected inquiry page connecting detach transmit AMA connected AMA active park PMA hold AMA sniff AMA low power Standby: do nothing Inquire: search for other devices Page: connect to a specific device Connected: participate in a piconet Park: release AMA, get PMA Sniff: listen periodically, not each slot Hold: stop ACL, SCO still possible, possibly participate in another piconet 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 33
Power consumption/CSR BlueCore2 Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Power consumption/CSR BlueCore2 Typical Average Current Consumption1 VDD=1.8V Temperature = 20°C Mode SCO connection HV3 (1s interval Sniff Mode) (Slave) 26.0 mA SCO connection HV3 (1s interval Sniff Mode) (Master) 26.0 mA SCO connection HV1 (Slave) 53.0 mA SCO connection HV1 (Master) 53.0 mA ACL data transfer 115.2kbps UART (Master) 15.5 mA ACL data transfer 720kbps USB (Slave) 53.0 mA ACL data transfer 720kbps USB (Master) 53.0 mA ACL connection, Sniff Mode 40ms interval, 38.4kbps UART 4.0 mA ACL connection, Sniff Mode 1.28s interval, 38.4kbps UART 0.5 mA Parked Slave, 1.28s beacon interval, 38.4kbps UART 0.6 mA Standby Mode (Connected to host, no RF activity) 47.0 µA Deep Sleep Mode2 20.0 µA Notes: 1 Current consumption is the sum of both BC212015A and the flash. 2 Current consumption is for the BC212015A device only. 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 34
Example: Bluetooth/USB adapter Freie Universität Berlin Institut of Computer Science Mobile Communications 2002 Example: Bluetooth/USB adapter 11/19/2018 CSE 4215, Winter 2010 Prof. Dr.-Ing. Jochen Schiller 35
Logical Channels Link control (LC) Link manager (LM) User asynchronous (UA) User isochronous (UI) User synchronous (US) 11/19/2018 CSE 4215, Winter 2010