bluetooth baseband - national chung cheng university
TRANSCRIPT
![Page 1: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/1.jpg)
Bluetooth Baseband
Chingwei Yeh2001/9/10
![Page 2: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/2.jpg)
Outline
¬Introduction¬Masters, Slaves, and Piconets
¬System Timing¬Physical Links: SCO and ACL¬Bluetooth Packets
¬Logical Channels¬Synchronization
![Page 3: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/3.jpg)
¬Higher Protocol Stack¬Link Manager (LM)
¬Link Controller (LC)¬Baseband¬RF
Scope
![Page 4: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/4.jpg)
Link Controller & Baseband (1)
¬LM – Link-level and medium access
management
¬LC– Packet-level access control
¬PHY:– Baseband: packet-level processing and
timing
– RF
![Page 5: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/5.jpg)
Link Controller & Baseband (2)
¬LC: commanded by LM– Local & remote LC entities manage the
packet-by-packet process of establishing the link
– Maintain the link once established
¬Baseband: commanded by LC– Channel coding/decoding
– Low-level timing control and management
![Page 6: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/6.jpg)
Link Controller & Baseband in the Bluetooth Spec.
![Page 7: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/7.jpg)
Bluetooth Device Address
¬BD_Addr[47:32] (NAP[15:0])– Used to initialize the encryption engine stream
LFSR
¬BD_Addr[31:24] (UAP[7:0])– Used to initialize the HEC and CRC calculation
for frequency hopping
¬BD_Addr[23:0] (LAP[23:0])– Used by sync word generation and frequency
hopping
![Page 8: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/8.jpg)
Masters, Slaves, and Piconets
¬Master — the device which initiates an exchange of data
¬Slave — the device which responds to the master
![Page 9: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/9.jpg)
Time Division Multiplexing and Time Slots
¬625 µs/slot
¬CLKN (312.5 µs): 0 to 227 –1, cyclic
![Page 10: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/10.jpg)
Multi-Slot Packets
![Page 11: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/11.jpg)
Frequency Hopping
¬Hopping Mechanism– All devices in a piconet hops in synchrony
with the Master– Each device will hop once per packet*
¬Benefits– Security– Reliability
¬Tradeoff*equivalent for multi-slot packets
![Page 12: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/12.jpg)
Hopping Sequence
¬A pseudo-randomly determined frequency sequence
¬Clocks– CLKN —native clock of the device
– CLK —Master clock of the piconet• CLKN of the piconet Master device
– CLKE —estimate of CLKN of the slaves
¬Hopping sequence determined by the Master (CLK and Master LAP)
![Page 13: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/13.jpg)
Piconet and Scatternet (1)
¬Two or more units sharing the same hopping sequence form a piconet(similar to a LAN)
¬Each piconet can have – only one master
– up to seven slaves
¬Multiple piconets form a scatternet
![Page 14: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/14.jpg)
Piconet and Scatternet (2)
![Page 15: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/15.jpg)
Timing
¬Master clock synchronizes the piconet
![Page 16: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/16.jpg)
Multi-slave Timing
![Page 17: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/17.jpg)
Important Clock Ticks
0123456789101112… .27
Half-slot Rate=312.5 µs
Slot Rate=625 µs
Slot-pair Rate=1.25ms
Page/InquiryScan Rate=1.28s
Clock Wrap
![Page 18: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/18.jpg)
Simple Calculations
¬±10us, ±20ppm between the Master and Slaves– Allows for a Salve to be left alone for up to
800 slots
¬DH5:– 2870µs x 40ppm = 0.12 µs (1/8 symbol
period)
– very simple timing recovery
(20 µs / 625 µs ) / 40ppm = 800
![Page 19: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/19.jpg)
Physical Links
¬Asynchronous Connection-less (ACL)¬Synchronous Connection Oriented
(SCO)
![Page 20: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/20.jpg)
ACL
¬An ACL link is formed immediately after a connection is established.
¬A Master may have multiple ACL links to the slaves, but only one link can exist between any two devices.
¬A slave is permitted to return an ACL packet in the slave-to-master(é) slot if and only if it has been addressed in the preceding master-to-slave slot(ê).
¬Broadcast packets are ACL packets not addressed to any specific slaves.
![Page 21: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/21.jpg)
SCO
¬A SCO provides a symmetric link between Master and Slave with reserved channel bandwidth and slots.¬A Master can support up to three SCO links. ¬A slave
– can support up to three SCO links from the same master
– two SCO links if the links are originated from different masters.
¬SCO packets are never retransmitted. ¬SCO > ACL
![Page 22: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/22.jpg)
SCO
¬TSCO , DSCO , and SCO interval
¬SCO is setup via the Link Manager Protocol (LMP).– LMP control messages (e.g. broadcast) > SCO
slots
¬ Initialization– Master CLK[27:1] mod TSCO = DSCO
– Master (CLK[27], CLK[26:1]) mod TSCO = DSCO
![Page 23: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/23.jpg)
Bluetooth Packets
¬Little Endian
¬Each packet consists of 3 entities:– Access code
– Header
– Payload0–2712
![Page 24: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/24.jpg)
Access Code
¬ To catch– A broadcast packet– The packet to a specific slave
¬ Actions involved – DC offset compensation
– Clock recovery and Synchronization – Identification
0–2712
![Page 25: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/25.jpg)
Different Access Codes (1)
¬Channel Access Code (CAC)– Derived from Master’s LAP and CLKN
– Used by all devices in a piconet during connection
¬Device Access Code (DAC)– Derived from a specific device’s LAP and
CLKN
– Used in Paging/Page Scan
![Page 26: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/26.jpg)
Different Access Codes (2)
¬Inquiry Access Code (IAC)– General Inquiry Access Code (GIAC)
• Used by all devices during the inquiry procedures, as no prior knowledge of anyone’s LAP exists.
• Fixed (0x9E8B33)
– Dedicated Inquiry Access Code (DIAC)• For the inquiry of specific set of devices like printers
and handsets• 0x9E8B00 —0x9E8B3F• Generic Access Profile indicates only the Limited
Inquiry Access Code (LIAC, 0x9E8B00) should be used.• Use on a temporary basis
![Page 27: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/27.jpg)
Different Access Codes (3)
![Page 28: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/28.jpg)
Access Code Format
![Page 29: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/29.jpg)
Access Code — Preamble
¬ The sequence 1010 or 0101, depending on whether the LSB of the following sync word is 1 or 0.
¬ This gives the DC thresholding and clock recovery circuitry only 5µs to create a reliable clock signal, with which to sample and clock in the remainder of the data.
![Page 30: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/30.jpg)
Access Code — Trailer
¬The trailer sequence is either 1010 or 0101 depending on whether the MSB of the sync word is 0 or 1.
![Page 31: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/31.jpg)
Access Code — Sync Word
¬Total 64 bits.
¬The 34-bit BCH parity word is the key element of the sync word– very high autocorrelation
– very low co-correlation
Barker Sequence
LAPBCH Parity
Word34 bits 24 bits 6 bits
![Page 32: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/32.jpg)
Access Code — Sync Word
¬Sync word– Match: the packet is intended for the receiving
device.
– No-match: the radio can be shut down to conserve power.
¬The point in time at which the correlator match —Master is exactly 68µs into its slots.– This allows the Slave to re-adjust its own sub-
slot timing to match up with the Master to within 1 µs.
![Page 33: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/33.jpg)
Header
0–2712
![Page 34: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/34.jpg)
Header Protection against Erross
¬Each field is crucial — total 18 bits protected by a Forward Error Correction (FEC) code of 1/3, resulting in 54 bits.
![Page 35: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/35.jpg)
Header — AM_ADDR
¬Distinguishes the active members participating on the piconet.
¬Max. of 7 slavesà3 bits¬The all-zero address is reserved for
broadcasting packets, with the FHS packet as the only exception.
![Page 36: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/36.jpg)
Header — TYPE
¬Types of traffic: SCO, ACL, NULL, POLL, ID, FHS.
¬Types of error correction used for the payload.¬How many slots the payload will last.
![Page 37: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/37.jpg)
![Page 38: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/38.jpg)
Header — FLOW
¬ Used for flow control of packets over the ACL link.¬When the RX buffer in the recipient is full and is not
emptied, FLOW=0 is returned to stop the transmission of data temporarily. – Only applicable to ACL packets.– Packets containing only link control information
(ID, POLL, and NULL packets) or SCO packets can still be received.
¬When the RX buffer is empty, FLOW=1 is returned. – When no packet is received, or the received
header is in error, FLOW=1 is assumed implicitly.
![Page 39: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/39.jpg)
Header — ARQN
¬ARQN=1(0) informs the sender of a successful (failed) transfer of payload data with a cyclic redundancy check (CRC) code– Positive acknowledge: ACK
– Negative acknowledge: NAK
¬When no return message regarding acknowledge is received, a NAK is assumed and data is re-transmitted. NAK is also the default return information.
![Page 40: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/40.jpg)
Packet Header — SEQN
¬The SEQN bit provides a sequential numbering scheme to order the data packet stream.
¬For each new transmitted packet that contains data with CRC, the SEQN bit is inverted.
¬By comparing the SEQN of consecutive packets, correctly received retransmissions can be discarded.
![Page 41: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/41.jpg)
Header —HEC
¬Header Error Check (HEC) is simply a CRC function performed on the header. The HEC consists of an 8-bit word generated by the polynomial 647(octal representation).¬Before generating the HEC, the HEC
generator is initialized with an the Master or Slave UAP or All-zero 8-bit values, depending on the packet. ¬ If the HEC does not pass, the entire packet
is discarded.
![Page 42: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/42.jpg)
Payload
0–2712
![Page 43: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/43.jpg)
Payload Content
¬ACL packets only have the data field.¬SCO packets only have the voice field
with the exception of the DV packets.¬Voice Field
– 240 bits for HV packets
– 80 bits for DV packets
![Page 44: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/44.jpg)
Payload —Data Field (1)
Undefined
[0 or 4]
Length
[5 or 9]Flow [1]L_CH [2]
CRC [16]Payload
[0-2712]
Payload Header
[8 or 16]
![Page 45: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/45.jpg)
Payload —Data Field (2)
¬ Packets in segments 1 & 2 have a 1-byte payload header (see Packet Types)
¬ Packets in segments 3 & 4 have a 2-bytes payload header (see Packet Types)
¬ The payload header specifies the logical channel (L_CH), controls the flow on the logical channels (FLOW), and the payload length (5 bits and 9 bits for 1-byte and 2-bytes payload header, respectively).
¬ In the case of a 2-byte payload header, the length indicator is extended by four bits into the next byte. The remaining four bits of the second byte are reserved for future use and shall be set to zero.
![Page 46: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/46.jpg)
Payload Header (Data Field)
¬L_CH– 00 Undefined– 01 Continue of an L2CAP message– 10 Start of an L2CAP message– 11 LMP message
¬FLOW– Flow control at the L2CAP level (1 if L_CH=11)– Set by LM
• No real-time requirements (real-time flow control at packet level is carried out via the FLOW bit in thepacket header)
![Page 47: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/47.jpg)
CRC
¬ The 16-bit CRC code is generated by the CRC-CCITT polynomial 210041 (octal representation). Before determining the CRC code, an 8-bit value is used to initialize the CRC generator.
¬ For the CRC code in the FHS packets sent in master page response state, the UAP of the slave is used.
¬ For the FHS packet sent in inquiry response state, the DCI (all-zero) is used.
¬ For all other packets, the UAP of the master is used.
![Page 48: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/48.jpg)
Packet Types (1)
¬ It is the responsibility of LM to monitor the quality and reliability of the link and decide what packet types to use at any given time.
¬LMP_max_slot_req– LMP_accepted, LMP_not_accepted
¬Single-slot packet is used by default.
¬Asymmetric bandwidthàdifferent packet type in different transmission directions
![Page 49: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/49.jpg)
![Page 50: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/50.jpg)
Packet Types (2)
¬ Segment 1 (NULL, POLL, FHS, DM1): reserved for the four control packets common to all physical link types.
¬ Segment 2 (HV1-3, DV, DH, AUX1): reserved for packets occupying a single time slot.
¬ Segment 3 (DM3, DH3): reserved for packets occupying three time slots. ACL defined only.
¬ Segment 4 (DM5, DH5): reserved for packets occupying five time slots. ACL defined only.
![Page 51: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/51.jpg)
Common Packet Types
¬ID packet¬NULL packet
¬POLL packet¬FHS packet¬DM1 packet
![Page 52: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/52.jpg)
ID Packet
¬The identity (ID) packet consists of the device access code (DAC) or inquiry access code (IAC).
¬ It has a fixed length of 68 bits.
¬ It is a very robust packet since the only info it carries is the access code of the sender.
![Page 53: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/53.jpg)
NULL Packet
¬The NULL packet has no payload and therefore consists of the channel access code and packet header only.
¬ Its total (fixed) length is 126 bits.
¬The NULL packet is used to return link information to the source regarding the success of the previous transmission (ARQN), or the status of the RX buffer (FLOW).
![Page 54: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/54.jpg)
POLL Packet
¬ Similar to the NULL packet —does not have a payload
¬ In contrast to the NULL packet — requires a confirmation from the recipient
¬ Used by the master in a piconet to check the presence of the slaves, which must then respond even if they do not have information to send. The return packet is an implicit acknowledgement of the POLL packet.
¬ The POLL packet does not affect the ARQN and SEQN fields.
![Page 55: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/55.jpg)
FHS Packet (1)
¬ A special control packet revealing, among other things, the Bluetooth device address and the clock of the sender.
¬ The payload contains 144 information bits plus a 16-bit CRC code. The payload is coded with a rate 2/3 FEC which brings the gross payload length to 240 bits.
¬ Used in page master response, inquiry response and in master slave switch.
¬ The payload consists of 11 fields.
![Page 56: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/56.jpg)
FHS Packet (2)
BCH Parity Word
![Page 57: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/57.jpg)
FHS Packet (3)
![Page 58: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/58.jpg)
![Page 59: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/59.jpg)
FHS Packet (5)
![Page 60: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/60.jpg)
FHS Packet (6)
![Page 61: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/61.jpg)
DM1 Packet
¬Data – Medium rate
¬DM1 serves as part of segment 1 in order to support control messages in any link type. However, it can also carry regular user data.
¬Since the DM1 packet is recognized on the SCO link, it can interrupt the synchronous information to send control information.
![Page 62: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/62.jpg)
SCO Packets
¬Typically used for 64kb/s speech transmission
¬HV1 packet¬HV2 packet¬HV3 packet
¬DV packet
![Page 63: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/63.jpg)
HV1 Packet
¬High-quality Voice
¬The HV1 packet carries 10 information bytes. The bytes are protected with a rate 1/3 FEC.
¬Payload length is fixed at 240 bits.
¬No CRC. No payload header.
¬A HV1 packet can carry 1.25ms of speech at a 64 kb/s rate. In that case, an HV1 packet has to be sent every two time slots (TSCO =2).
![Page 64: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/64.jpg)
HV2 Packet
¬The HV2 packet carries 20 information bytes protected with a rate 2/3 FEC.
¬The payload length is fixed at 240 bits.
¬No payload header, No CRC.
¬ If the HV2 packet is used for voice at a 64 kb/s rate, it can carry 2.5ms of speech. In that case, an HV2 packet has to be sent every four time slots (TSCO =4).
![Page 65: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/65.jpg)
HV3 Packet
¬The HV3 packet carries 30 information bytes. The bytes are not protected by FEC.
¬The payload length is fixed at 240 bits.
¬No CRC. No payload header.
¬ If the HV3 packet is used for voice at a 64 kb/s rate, it can carry 3.75ms of speech. In that case, an HV3 packet has to be sent every six time slots (TSCO =6).
![Page 66: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/66.jpg)
DV Packet (1)
¬ The DV packet is a combined data-voice packet. ¬ The payload is divided into a voice field of 80 bits
and a data field containing up to 150 bits.¬ The voice field is not protected by FEC. The data
field contains up to 10 infor-mation bytes (including the 1-byte payload header) and includes a 16-bit CRC. The data field is encoded with a rate 2/3 FEC.
¬ The voice field is handled like normal SCO data and is never retransmitted; that is, the voice field is always new. The data field is checked for errors and is retransmitted if necessary.
![Page 67: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/67.jpg)
DV Packet (2)
![Page 68: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/68.jpg)
ACL Packets
¬DM1 packet¬DH1 packet
¬DM3 packet¬DH3 packet¬DM5 packet
¬DH5 packet¬AUX1 packet
![Page 69: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/69.jpg)
DM1 Packet
¬ The DM1 packet is a packet that carries data information only.¬ The payload contains up to 18 information bytes (including
the 1-byte payload header) plus a 16-bit CRC code. The DM1 packet may cover up to a single time slot.
¬ The information plus CRC bits are coded with a rate 2/3 FEC which adds 5 parity bits to every 10-bit segment. If necessary,extra zeros are appended after the CRC bits to get the total number of bits(information bits, CRC bits, and tail bits) equal a multiple of 10.
¬ The payload header in the DM1 packet is only 1 byte long. The length indicator in the payload header specifies the number of user bytes(excluding payload header and the CRC code).
![Page 70: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/70.jpg)
DH1 Packet
¬ This packet is similar to the DM1 packet, except that the information in the pay-load is not FEC encoded.
¬ DH1 packet can carry up to 28 information bytes plus a 16-bit CRC code.
¬ The DH1 packet may cover up to a single time slot.
![Page 71: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/71.jpg)
DM3 Packet
¬ The DM3 packet is a DM1 packet with an extended payload. The DM3 packet may cover up to three time slots.
¬ The payload contains up to 123 information bytes (including the 2-bytes payload header) plus a 16-bit CRC code. The pay-load header in the DM3 packet is 2 bytes long,
¬ The length indicator in the payload header specifies the number of user bytes (excluding payload header and the CRC code).
¬ When a DM3 packet is sent or received, the RF hop frequency shall not change for a duration of three time slots (the first time slot being the slot where the channel access code was transmitted).
![Page 72: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/72.jpg)
DH3 Packet
¬ This packet is similar to the DM3 packet, except that the information in the pay-load is not FEC encoded.
¬ DH3 packet can carry up to 185 information bytes (including the two bytes payload header) plus a 16-bit CRC code.
¬ The DH3 packet may cover three time slots. When a DH3 packet is sent or received, the hop frequency shall not change for a duration of three time slots (the first time slot being the slot where the channel access code was transmitted).
![Page 73: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/73.jpg)
DM5 Packet
¬ The DM5 packet is a DM1 packet with an extended payload. The DM5 packet may cover up to five time slots.
¬ The payload contains up to 226 information bytes (including the 2-bytes payload header) plus a 16-bit CRC code.
¬ The pay-load header in the DM5 packet is 2 bytes long. The length indicator in the pay-load header specifies the number of user bytes (excluding payload header and the CRC code). When a DM5 packet is sent or received, the hop frequencyshall not change for a duration of five time slots (the first time slot being the slot where the channel access code was transmitted).
![Page 74: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/74.jpg)
DH5 Packet
¬ This packet is similar to the DM5 packet, except that the information in the pay-load is not FEC encoded.
¬ DH5 packet can carry up to 341 information bytes (including the two bytes payload header) plus a 16-bit CRC code.
¬ The DH5 packet may cover five time slots. When a DH5 packet is sent or received, the hop frequency shall not change for a duration of five time slots (the first time slot being the slot where the channel access code was transmitted).
![Page 75: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/75.jpg)
AUX1 Packet
¬ This packet resembles a DH1 packet but has no CRC code. ¬ The AUX1 packet can carry up to 30 information bytes
(including the 1-byte payload header).
¬ The AUX1 packet may cover up to a single time slot.
![Page 76: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/76.jpg)
Packet Summary (1)
![Page 77: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/77.jpg)
Packet Summary (2)
![Page 78: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/78.jpg)
ISM Overhead
¬ACL data packets– 142 non-data bits (72b access code, 54b packet
header, 16b CRC)
¬DH5 packets in asymmetric transmission– 5 slots– 339 bytes = 2712 bits of data– 2712+142 = 2854 bits transmitted in total– 2712 bits / (6 * 625µs) = 723.2 kb/s < 1Mb/s
¬Necessary overhead to provide a robust link over the ISM band.
![Page 79: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/79.jpg)
More Calculations
¬DH5 Asymmetric (DH5, DH1)– 339 bytes / (6 * 625µs) = 723.2 kb/s
– 27 bytes / (6 * 625µs) = 57.6 kb/s
¬DH5 Symmetric (DH5, DH5)– 339 bytes / (10 * 625µs) = 433.9 kb/s
![Page 80: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/80.jpg)
Packet Summary (3)
![Page 81: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/81.jpg)
Logic Channels
¬ LC (Link Control)– Carried out via the packet header
¬ LM (Link Manager)– Typically carried by DM0 type packets with L_CH=11– DM1 is common to SCO and ACL, allowing LMP messages
to be carried over an active SCO link
¬ UA / UI (User Asynchronous)– Carried by ACL payload
¬ US (User Synchronous)– Carried by SCO payload
![Page 82: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/82.jpg)
Synchronization (1)
Correlator open RX Timeout
TMatch
TX Slot RX Slot
![Page 83: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/83.jpg)
Synchronization (2)
¬Start of packet header– TMatch + 1 µs for 68b access code
– TMatch + 5 µs for 72b access code (with trailer)
¬Offset from the Master = TMatch - 68µs– The updated CLKE and sub-slot count are
applied immediately.
![Page 84: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/84.jpg)
Link Control
Chingwei Yeh2001/9/10
![Page 85: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/85.jpg)
Outline
¬Link Control Protocol¬Link Controller States and Operations
¬Master / Slave Role Switching¬Low-power Operation
![Page 86: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/86.jpg)
Link Control Protocol
¬Carried in the LC channel¬Responsible for maintaining a link once
it has been set up
![Page 87: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/87.jpg)
ARQN
¬ARQN=0: previous receive failed– Access code failure
• A Slave fails to detect an access code (not possible)• A Master fails to detect an access code
– Header failure• Slave side: an access code is detected but HEC fails
(not possible due to corrupted AM_ADDR)• Master side: an access code is detected but HEC fails
– Payload failure• An access code is detected but CRC fails • The usual reason for re-transmission during connection
![Page 88: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/88.jpg)
SEQN
¬SEQN– Toggled each time a new packet with a CRC is
transmitted
– Remains the same otherwise
¬Used to differentiate – receiver NAK’d the previous packet
– transmitter failed to receive the receiver’s ACK
¬Same SEQNàpacket ignored, but ACK returned
![Page 89: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/89.jpg)
ARQ/SEQ under Broadcast
¬ARQ scheme is not applicable
¬Re-transmit broadcast packets a specified number of times (NBC )
¬Each new broadcast packet in a sequence is identified by toggling SEQN– Spec 1.0B resets SEQN upon each start of LMP
and L2CAP ?!
![Page 90: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/90.jpg)
Link Controller States
¬Standby¬Inquiry
¬Inquiry Scan¬Page¬Page Scan
¬Connection– Active, Hold, Sniff, Park
In Standby, Hold, Parkthe device may be drivenby a LPO with ±250ppm.
![Page 91: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/91.jpg)
Inquiry and Inquiry Scan
![Page 92: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/92.jpg)
Inquiry (1)
¬To discover all Bluetooth enabled devices in its local area¬Baseband end of the Service Discovery
Protocol (SDP)¬May be initiated one-shot or periodically
(HCI_Periodic_Inquiry_Mode) ¬ Inquired upon devices supply FHS
– CLKN, BD_ADDR, etc
![Page 93: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/93.jpg)
Inquiry (2)
¬A device in the inquiry substate does not acknowledge the inquiry response. – It just keeps probing at different hop
channels and in between listens for response packets.
¬Stops when– Instructed
– inquiryTO
![Page 94: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/94.jpg)
What to Inquire
¬No knowledge of the environment– No BD_ADDR, CLK, etc
¬Both the inquirer and inquiry scanner uses the same hopping sequence determined by GIAC LAP– Still can not communicate even the same
hopping sequence is used
![Page 95: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/95.jpg)
Inquiry Objective
¬Objective: to capture the scanners as quickly as possible.¬Only need to match the frequency for one
slot pair to allow information retrieval. ¬Basic Concept
– Use the same hopping sequence– The inquirer hops fast– The inquiry scanners hop slow– Eventually they will meet
![Page 96: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/96.jpg)
The Hop of the Inquirer
¬GIAC+CLKN(inquirer)→the hopping sequence for inquiry.
¬A train of identical GIACs at different hopping frequencies
¬Frequencies in the train is designed to surround a central frequency– Although it seems alright to use any sequence
through the spectrum, the spec. aligned the inquiry sequence to that of the page.
![Page 97: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/97.jpg)
Inquirer — Fast Hopping
¬ TX transmits on two different hop frequencies.
¬ RX listens on two different hop frequencies.
¬ ID packet (68bits)→312.5–68–20(uncertainty) = 224.5us to switch the freq. synthesizer.
![Page 98: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/98.jpg)
Inquiry Trains (1)
¬A train of identical GIACs at different hopping frequencies.
¬Frequencies in the train is designed to surround a central frequency
¬The central frequency is determined by the hopping sequence.
¬The hopping sequence is determined by the general inquiry address– GIAC LAP + 4 LSBs of the DCI (pp. 137, pp. 54)
![Page 99: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/99.jpg)
Inquiry Trains (2)
![Page 100: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/100.jpg)
Inquiry Train A
¬16 different hop frequencies in 16 slots (10 ms)
¬Train A– f(k-8), f(k-7), … ,f(k), … ,f(k+7)
– Covers –8x1.28s to 7x1.28s deviation from CLKN(inquirer)
– f(k) is one frequency in the hopping sequence, which is determined by CLKN16-12 (CLKN15-12) (changed every 1.28s, regardless of Ninquiry ≥ 256)
16 * 625µs = 10ms
![Page 101: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/101.jpg)
Inquiry Train B
¬16 different hop frequencies in 16 slots (10 ms)
¬Train B– f(k-16), f(k-15), … ,f(k-9),f(k+8) … ,f(k+15)
– Covers drifts from CLKN that are• Less than –8*1.28s• More than 7*1.28s• f(k) is one frequency in the hopping sequence, which is
determined by CLKN16-12 (CLKN15-12) (changed every 1.28s, regardless of Ninquiry ≥ 256)
![Page 102: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/102.jpg)
Inquiry Train Usage (1)
¬Ninquiry of train A → Ninquiry of train B →Ninquiry of train A → Ninquiry of train B (three train switches)
¬Ninquiry ≥ 256¬Alternately use train A and B until
– A response is received
– inquiryTO is exceeded
![Page 103: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/103.jpg)
Inquiry Train Usage (2)
¬Train A and B– Each train is repeated at least Ninquiry≥256 times
– At least three train switches must be taken place
– So, inquiry substate lasts for at least 256*10ms*4=10.24s
¬ If inquiry is activated periodically, the interval between two inquiry instances must be determined randomly (avoiding inquiry synchrony, HCI_Periodic_Inquiry_Mode )
![Page 104: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/104.jpg)
Inquiry Train Illustration
128TB… .128 TA128 TB128 TB128 TA128 TA
Ninquiry (=256)
3 train switches, 4*256*10ms = 10.24s
16151413121110987654321
128*(16*625us)=1.28s
16*625us = 10ms
![Page 105: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/105.jpg)
Entering Inquiry
¬ Inquiry can be entered from– STANDBY
– CONNECTION
¬Entering from connection– Hold or Park ACL– Interrupted by SCO — increase scan window
![Page 106: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/106.jpg)
Inquiry Scan (1)
¬A device wanting to be discovered could conduct an inquiry scan until it has responded to an inquiry, then do a mandatory page scan. If that doesn’t result in a connection, go back into inquiry scan.– Battery, radio receiver power consumption– Continuous scanning would cause existing
connections to timeout
¬So, scan in short bursts!– Short bursts (18 slots,11.25ms), short interval (≤
2.56s)
![Page 107: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/107.jpg)
Inquiry Scan (2)
¬Hop sequence is determined by GIAC.¬The phase is determined by CLKN16-12 of the
scanner. – Scan at a single hop frequency in 1.28s– Hops every 1.28s
¬Listen to GIAC/DIAC for at least 18 slots in Tscan interval (≤ 2.56s in spec, and stay in discoverable mode for at least 30.72s
![Page 108: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/108.jpg)
Entering Inquiry Scan
¬Inquiry scan can be entered from– STANDBY
– CONNECTION
¬Entering from connection– Hold or Park ACL
– Interrupted by SCO — increase scan window
![Page 109: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/109.jpg)
Inquiry Scan with SCO
¬One SCO link(HV3, TSCO = 6 slots)– Tw inquiry scan at least 36 slots(22.5ms)
¬Two SCO link(HV3, TSCO = 6 slots)– Tw inquiry scan at least 54 slots(33.75ms)
¬The inquiry scan interval shall be at most 2.56s
![Page 110: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/110.jpg)
SCO During Inquiry Scan
Correlator O
pensFor inquiry scan
2x625us
625us 366us
Ratio Settle Time150us — 200us
±10us
RX TX
ID FHS
Correlator O
pensFor inquiry scan
Inquiry ScanSlot Pair Starts
SCO SlotPair Starts
êêééêêééêêéé= 50% waste if one SCO inevery 3 slot pairs
![Page 111: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/111.jpg)
Inquiry Response (1)
¬Only slave responds (with FHS packet)¬Multiple devices may respond at the
same timeàcollision!
![Page 112: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/112.jpg)
Inquiry Response (2)
¬Response steps (to avoid collision)– Received inquiry messageàRAND 0~1023– Memorize the phase in the hopping sequence– Return to CONNECTION or STANDBY for at
least RAND time slots– inqrespTO counter starts– Listen for inquiry message with inqrespTO, and if
correctly received• Return FHS (Master collects information now)• Phase++
– Return to inquiry scan
![Page 113: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/113.jpg)
Inquiry Response (3)
¬In 1.28s, the slave responds 4 times in average.
(1.28s/625µs)/(RAND/2)=4
![Page 114: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/114.jpg)
Page and Page Scan
![Page 115: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/115.jpg)
Page
¬To establish a connection, the Master is instructed by the application to carry out the paging procedure.
¬Using the Slave’s access code and timing information gathered previously.
¬FHS packets in-between
![Page 116: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/116.jpg)
What to Page
¬The Master knows the device– BD_ADDR (DAC)
– CLKE
¬Need to make CLKE as precise as possible
¬Both the pager and page scanner use the same hopping sequence determined by DAC LAP– Still may not communicate properly even the
same hopping sequence is used
![Page 117: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/117.jpg)
Page Objective
¬Objective: to capture the offset of phase as quickly as possible.
¬Basic Concept– Use the same hopping sequence (DAC)
– The pager hops fast
– The page scanner hops slow
– Eventually they will meet
![Page 118: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/118.jpg)
The Hop of the Pager
¬DAC+CLKE(pager)→the hopping sequence for inquiry.¬A train of identical DACs at different hopping
frequencies¬Frequencies in the train is designed to
surround a central frequency¬CLKE(pager)
– Last encounter with the Slave (e.g., the previous inquiry)
![Page 119: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/119.jpg)
Pager — Fast Hopping
¬ TX transmits on two different hop frequencies.
¬ RX listens on two different hop frequencies.
¬ ID packet (68bits)→312.5-68-20(uncertainty) = 224.5us to switch the freq. synthesizer.
![Page 120: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/120.jpg)
Paging Trains (1)
¬A train of identical DACs at different hopping frequencies.
¬Frequencies in the train is designed to surround a central frequency¬The central frequency is determined by
the hopping sequence.
¬The hopping sequence is determined by the DAC
![Page 121: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/121.jpg)
Paging Trains (2)
![Page 122: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/122.jpg)
Paging Train A
¬16 different hop frequencies in 16 slots (10 ms)¬Train A
– f(k-8), f(k-7), … ,f(k), … ,f(k+7)– Covers –8*1.28s to 7*1.28s deviation from
CLKE(pager)
– f(k) is one frequency in the hopping sequence, which is determined by CLKE16-12 (pager) (CLKE15-12 (pager) in half-hop systems)
– Phase changed every 1.28s, regardless of Npage
16 * 625µs = 10ms
![Page 123: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/123.jpg)
Paging Train B
¬16 different hop frequencies in 16 slots (10 ms)¬Train B
– f(k-16), f(k-15), … ,f(k-9),f(k+8) … ,f(k+15)– Covers drifts from CLKE(pager) that are
• Less than –8*1.28s• More than 7*1.28s
– f(k) is one frequency in the hopping sequence, which is determined by CLKE16-12 (pager) (CLKE15-12 (pager) in half-hop systems)
– Phase changed every 1.28s, regardless of Npage
![Page 124: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/124.jpg)
Paging Train A & B Usage
¬Npage of train A → Npage of train B → … .¬Alternately use train A and B until
– Receive a response
– pageTO is exceeded
![Page 125: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/125.jpg)
Paging Train Illustration
128TB… .128 TA128 TB128 TB128TA128 TA
Npage (=256)
Alternately use train A and B until
a response is received or pageTO
16151413121110987654321
128*(16*625us)=1.28s
16*625us = 10ms
(Npage can be 1, 128, 256)
![Page 126: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/126.jpg)
Page Modes
¬R0: Npage ≥ 1 (16 slots,16 slots … )– Continuous, Tw page scan = Tpage scan
¬R1: Npage ≥ 128– Once in a while– Tw page scan ≥ 18 slots– Tpage scan ≤ 1.28s
¬R2: Npage ≥ 256– … .
![Page 127: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/127.jpg)
Entering Page
¬Page from– STANDBY– CONNECTION
¬Entering from connection– Hold or Park ACL– Interrupted by SCO — increase scan
window
![Page 128: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/128.jpg)
Paging with SCO (1)
![Page 129: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/129.jpg)
Paging with SCO (2)
![Page 130: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/130.jpg)
Paging Scheme
¬Mandatory paging scheme– First met
– Paging directly following inquiry
¬Optional paging/scanning scheme– After the mandatory scheme
![Page 131: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/131.jpg)
Page Scan (1)
¬Like inquiry scan, a device may enter page scan periodically to allow connection with it.
¬When page scan completes, the Slave updates CLK, sync word, and access code before entering the connection state.
![Page 132: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/132.jpg)
Page Scan (2)
¬Can be entered from – STANDBY
– CONNECTION
¬Entering from connection– Hold or Park ACL
– Interrupted by SCO →increase scan window
![Page 133: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/133.jpg)
Page Scan (3)
¬Listen for its DAC for – Tw page scan ≥ 18 slots– Tpage scan determined by SR (scan repetition)
¬Hop sequence determined by the Slave’s BD_ADDR.¬Phase in the hopping sequence is
determined by CLKE16-12 (pager) (CLKE15-12 (pager) in half-hop systems) ¬Phase changed every 1.28s, regardless of
Npage
![Page 134: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/134.jpg)
Page Scan Repetition (SR)
¬SR field in the FHS packet¬The paging unit must choose R0, R1,
or R2 accordingly.
![Page 135: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/135.jpg)
Page / Page Scan Modes
¬R0: Npage ≥ 1 (16 slots,16 slots … )– Continuous, Tw page scan = Tpage scan
¬R1: Npage ≥ 128– Once in a while– Tw page scan ≥ 18 slots– Tpage scan ≤ 1.28s
¬R2: Npage ≥ 256– … .
![Page 136: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/136.jpg)
Page Scan with SCO
¬One SCO link(HV3, TSCO = 6 slots)– Tw page scan at least 36 slots(22.5ms)
¬Two SCO link(HV3, TSCO = 6 slots)– Tw page scan at least 54 slots(33.75ms)
![Page 137: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/137.jpg)
Page Response Procedure (1)
![Page 138: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/138.jpg)
Page Response Procedure (2)
![Page 139: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/139.jpg)
Page Response Procedure (3)
![Page 140: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/140.jpg)
Slave Response
¬The ‘X’ input to hop sequence generator is fixed at CLKN16-12
¬The Slave awaits FHS within pagerespTO¬Within pagerespTO, the Slave advances to
the next phase every 1.25ms to match with the Master’s next paging frequency.¬After pagerespTO
– Page scan for one additional scan period, if not successful, return to the state prior to page scan.
![Page 141: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/141.jpg)
Master Response
¬FHS packet– Real-time Bluetooth clock (26 MSBs only),
Master’s BD_ADDR, BCH parity bits, etc (all information to construct the channel access code without requiring a math derivation from the Master’s BD_ADDR)
¬Repeat FHS with updated phase until either successful or pagerespTO¬If failed, report to LM
![Page 142: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/142.jpg)
Connection Confirmation
¬On entry, both devices move to the pager’s hop sequence. ¬To verify the success of the link set-up
– The Master transmits a POLL packet which the Slave must respond (typically with NULL).
– Both ARQN=NAK (still a response!).
¬ If everything goes well– Master transmits and starts ARQ, SEQ for real.– LMP configuration starts.– Master/Slave role switch can proceed, if desired.
![Page 143: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/143.jpg)
Connection Time-out
¬When both the Master and Slave switches to the Master’s normal hopping sequence, newconnectionTO (in terms of #slots) is ticked.
¬ If after newconnectionTO, either– POLL is not received by the Slave
– POLL response is not received by the Master
then connection is regarded “failed”, and both return to the page and page scan states
![Page 144: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/144.jpg)
Synchronization–the Slave
¬ The Slave stays synchronized to the Master during a connection by correlating against the Master’s access code (CAC) in each packet the Mater transmits, even if it’s not destined for that Slave.
¬ If AM_ADDR does not match– abort the remainder of the reception, and use packet type
field to reduce power consumption for the duration of Master’s transmission
– any device in connection state may move into Low Power mode as described above
![Page 145: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/145.jpg)
Synchronization–the Master
¬The Master must keep transmitting periodically, even if there is no data to send.
¬A NULL packet is usually used for this purpose.
![Page 146: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/146.jpg)
Connection
Active, Hold, Sniff, Park
![Page 147: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/147.jpg)
Connection Modes
¬Active¬Low-power
– Hold: Allows device to be inactive for a single short period.
– Sniff: Allows devices to be inactive except for periodic sniff slots.
– Park: Similar to Sniff, except parked devices give up their active member addresses.
![Page 148: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/148.jpg)
Connection — Active
¬The Master schedules transmission based on traffic demands to and from different slaves.
¬Constant Master transmission to keep synchronization (channel access code).
¬ If an active slave is not addressed, it may sleep until the next master transmission.
¬Type of packet→the number of slots
![Page 149: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/149.jpg)
Connection — Hold (1)
¬A device ceases to support ACL for a negotiated period of time to free up bandwidth for other operations like– Scanning, paging, inquiry.
– SCO is not affected.
¬AM_ADDR is maintained.
¬Re-synchronizes to CAC after holdTO.
![Page 150: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/150.jpg)
Connection — Hold (2)
¬HCI_Hold_Mode– Connection Handle, Max/Min hold periods
– HCI_Write_Hold_Mode_Activity
¬LMP_hold_req (1st or refresh)– LMP_accepted, LMP_not_accepted
– LMP_hold_req (negotiating different parameters)
¬LMP_hold (after the 1st hold)
![Page 151: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/151.jpg)
Connection — Sniff (1)
¬The Slave is given a pre-defined slot time and periodicity to listen for traffic.
¬The Master can only transmit at the specified time slots.
¬Starting at every Dsniff instant, repeat for Nsniff
attempt times. – Master CLKN[27:1] mod Tsniff = Dsniff
– Master (CLKN[27], CLKN[26:1]) mod TSniff = Dsniff
¬Received Master’s call(s) within Nsniff attempt
→continues listening for Sniff_Timeout
![Page 152: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/152.jpg)
Connection — Sniff (2)
¬HCI_Sniff_Mode– Connection_Handle, Max/Min Sniff periods
– Sniff_attempt, Sniff_Timeout
¬LMP_sniff_req– LMP_accepted, LMP_not_accepted
– LMP_sniff_req (negotiating sniff parameters)
¬LMP_sniff
¬HCI_Exit_Sniff_Mode, LMP_unsniff_req
![Page 153: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/153.jpg)
Connection — Park
¬Similar to Sniff, but the Slave gives up its AM_ADDR.– Cannot transmit
– Cannot be addressed directly by the Master
¬The Slave only needs to wake up at a defined “Beacon” instant to listen for broadcasts to synchronize.
![Page 154: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/154.jpg)
Park Mode
¬Purpose– Low Power
– To accommodate more than 7 slaves
¬Parked Slaves still synchronized to the channel ¬Give up AM_ADDR and receive
– PM_ADDR [8] (Parked Member Address)– AR_ADDR [8] (Access Request Address)
¬Park only one slave at a time¬All messages sent to the parked Slaves must be
carried by broadcast packets.
![Page 155: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/155.jpg)
Beacon Instants and Slots (1)
¬ Transmission for synchronization of the parked devices¬ Carrying messages to the parked devices to change the
beacon parameters
¬ Carrying general broadcast messages to the parked devices¬ Unparking of one or more parked devices
![Page 156: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/156.jpg)
Beacon Instants and Slots (2)
¬NB and TB are chosen so that there are sufficient beacon slots for a parked slave to synchronize.
¬The Slave receives beacon parameters through an LMP command.– CLK27-1 mod TB = DB for initialization 1
– (CLK27, CLK26-1) mode TB = DB for initialization 2
¬Any packet can be used for synchronization
¬May be interrupted by SCO link
![Page 157: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/157.jpg)
Beacon Access Window (1)
¬Parked slaves send requests to be unparked
¬Fixed delay Daccess after beacon instant
¬Repeat Maccess times
![Page 158: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/158.jpg)
Beacon Access Window (2)
¬ Parked Slaves can only respond if the Master has broadcast in the preceding even slot.
¬ Polling¬ Wait for the Master to broadcast an unpark message.
![Page 159: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/159.jpg)
Beacon Access Window (3)
![Page 160: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/160.jpg)
Sleeping Through Beacon Slots
¬Sleep window = NB_sleep * TB
![Page 161: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/161.jpg)
Park Mode Addressing
¬Master initiated unpark uses– PM_ADDR
– BD_ADDR
– (All zero PM_ADDR is reserved for those that can only be unparked by BD_ADDR)
¬Slave initiated unpark uses– AR_ADDR
![Page 162: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/162.jpg)
Entering Park Mode
¬HCI_Park_Mode– Connection_Handle, Max/Min interval
between beacon slots
¬LMP_park_req– (a whole lot of parameters, see the spec)– LMP_park, LMP_accepted,
LMP_not_accepted– LMP_set_broadcast_scan_window,
LMP_modify_beacon
![Page 163: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/163.jpg)
Master-Activated Unparking
¬ HCI_Exit_Park_Mode w/ connection handle.¬ LMP_unpark broadcast in a beacon slot
– PM_ADDR or BD_ADDR– A new AM_ADDR
¬ The Slave receives the unpark message →returns to active mode.
¬ The Master POLLs with the new AM_ADDR.¬ LMP_accepted to confirm the Slave has been
unparked.¬ newconnectionTO
– Master : unpark the slave in the next beacon slot– Slave : return to park with the same beacon parameters
![Page 164: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/164.jpg)
Slave-Activated Unparking (1)
¬ Send an access request message in the access window only when a broadcast packet has been received.– The message is an ID packet with Master’s DAC
¬ Listen for Master’s unpark message. If not, try in the next access window (total: Maccess windows).
¬ After the last access window, the Slave shall listen for NPOLL slots for the unpark message.
¬ Fail→sleep until the next beacon instant.
![Page 165: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/165.jpg)
Slave-Activated Unparking (2)
¬Unpark message received– The Slave listens for POLL with its
AM_ADDR, and then responds.
¬If the Master did not receive response after NPOLL + newconnectionTO– Master : send unpark message again
– Slave : return to park with the same beacon parameter
![Page 166: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/166.jpg)
Polling Schemes
¬Polling in active mode– ACL: A slave is allowed to transmit in a slot only
if it was addressed by the preceding slot.
– SCO: A slave is allowd to transmit unless the (valid) AM_ADDR in the preceding slot indicates a different slave.
¬Polling in park mode– A slave can only respond after a broadcast
packet is received in the preceding slot.
![Page 167: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/167.jpg)
Broadcast Scheme
¬All-zero AM_ADDR
¬New broadcast message shall start with the flush indication(L_CH=10)
¬Never acknowledged
¬no traffic at the beacon event→broadcast packets shall be sent.
![Page 168: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/168.jpg)
Scatternet
¬Each piconet has their own channel hopping sequence and phase as determined by the respective Master.
¬The packets are preceded by different channel access codes.
![Page 169: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/169.jpg)
Inter-Piconet Communications
¬ACL only– Hold or park the current piconet connection, then– Join the other piconet by changing channel
parameters.– Sniff mode : in between the sniff slots
¬SCO– In the non-reserved slots– Four slots in between, two for misalignment
¬Regular updates is necessary as the clocks of various piconets drift independently.
![Page 170: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/170.jpg)
Master-Slave Switch
¬Happens when slave wants to be a Master
¬Redefinition of the piconet¬New piconet parameter
![Page 171: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/171.jpg)
Master-Slave Switch Process (1)
¬Slave A and master B agree to exchange roles (LMP)
¬When confirmed, A & B do the TDD switch but keep the former hopping sequence.¬A now becomes the Master of the
piconet
![Page 172: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/172.jpg)
Master-Slave Switch Process (2)
¬A now becomes the Master of the piconet– The 1.25ms resolution in FHS is not enough to
align the slot boundary– A sends LMP packet giving the delay of the old
and new “master-to-slave” slots (0 to 1249µs, resolution=1µs)
¬After LMP time alignment, A sends FHS including the new AM_ADDR to B, still using the old piconet parameters¬After ACK (ID) by B, both A & B switch to the
new channel parameters of the new piconet.
![Page 173: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/173.jpg)
Master-Slave Switch Process (3)
¬A piconet switch is enforced on each Slave separately. For each Slave,– A sends a time alignment and FHS packets using
old parameters.– Upon ACK (ID), the Slave switches to the new
parameters.– The FHS sent to each Salve has the old
AM_ADDR in the FHS packet header and their new AM_ADDR in the FHS packet payload.
– A polls each Slave to verify the swtich within newconnectionTO. Repeat if verification failed.
![Page 174: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/174.jpg)
Link Supervision
¬Break down– Out of range
– Power failure
¬Supervision Timer (Master, Slave, SCO, ACL)– Reset when access code & HEC & correct
AM_ADDR is received
– supervisionTO negotiated at LM level, longer than hold and sniff period
– Connection is reset when supervisionTO expires
![Page 175: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/175.jpg)
Link Controller States Revisited
¬ Major states– Standby– Connection
¬ Substates– Page– Page scan– Inquiry– Inquiry scan– Master response– Slave response– Inquiry response
![Page 176: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/176.jpg)
Complicated Context Switching
¬The previous figure represents only the state of one link between two devices at any one time.
¬A Master may be in connection with one Slave while simultaneously inquiring, paging, and scanning several other devices.
¬ Inquiry/paging may last for several seconds
![Page 177: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/177.jpg)
HW/SW Partitioning
¬Needs a unique context for the LC protocol, ARQN, SEQN, and re-transmit packets of an active interaction.
¬The area of state control and link context management is at the sharp end of the hardware/software (HW/SW) partitioning problem.
![Page 178: Bluetooth Baseband - National Chung Cheng University](https://reader031.vdocuments.us/reader031/viewer/2022012423/61777aa371ae9e23f5388705/html5/thumbnails/178.jpg)
Other Baseband Topics Left
¬Hop Selection Algorithms¬Audio
¬Error Corrections and Security Related Algorithms