目录
一、概述(Overview)
二、框架结构(Frame Structure)
三、蓝牙协议(Bluetooth Protocol)
一、概述(Overview)
什么是蓝牙?就像你们大多数人想知道任何你从未听说过的事情时所做的那样。。。试试维基百科。
它(http://en.wikipedia.org/wiki/Bluetooth)如下所示。
蓝牙是一种专有的开放式无线技术标准,用于在固定和移动设备之间进行短距离数据交换(使用2400–2480 MHz ISM波段的短波长无线电传输),从而创建具有高度安全性的个人局域网(PANs)。由电信供应商爱立信(telecoms vendor Ericsson)于1994年创建,[1]最初被认为是RS-232数据电缆的无线替代品(wireless alternative)。它可以连接多个设备,从而克服同步(synchronization)问题。
要理解任何一种通信技术,你都应该能够回答有关它的几个基本问题。换句话说,如果你能回答以下问题,我想说你已经对它有了一些大致的了解。
是有线通信吗?还是无线通信?
如果是无线通信,它使用的波长(频率)范围是什么?
典型的传输范围是什么?(它能走多远)?
您可以发送和接收的典型数据速率(rate )是多少?
典型的连接拓扑(connection topology)是什么?(是一对一连接?还是一对多连接?等等)
你能从我上面引用的维基百科定义中找到这些问题的答案吗?让我们逐一解决每一个问题。
是有线通信吗?还是无线通信?=>这就是“无线通信”。
如果是无线通信,它使用什么样的波长(频率)范围?=>它是2400~2800兆赫的频率范围,称为ISM(工业科学医学)频带。
典型的沟通范围是什么?(它能走多远)?===>它通常是几米的范围(不过维基百科的定义并没有明确说明这个范围)
您可以发送和接收的典型数据速率是多少?===>一开始,它的最大数据速率为1Mbps,现在大多为2,3Mbps(EDR)。最近的规范定义了用于更高数据速率的技术。
典型的连接拓扑是什么?(是一对一连接?还是一对多连接?等等)===它支持一对一和一对多的连接。
典型的蓝牙应用
二、框架结构(Frame Structure)
在任何类型的无线通信中,了解底层机制(underlying mechanism)的第一步是了解物理层帧结构(physical layer frame structure)和调制方案(the modulation scheme)。
1、实际通信中的跳频(Frequency Hopping in Real Communication)
蓝牙物理数据占用1MHz的射频带宽(RF bandwidth,),但蓝牙通信所需的实际频率范围超过80MHz。
这是因为发送器(sender)和接收器(reciever)在大约80兆赫的范围内为每一帧改变其通信信道(频率)。这种改变每次传输频率的方式被称为“跳频”。
每个信道(channel 的总体频率分配如下:
为了给你一些真实的跳频过程,我用信号分析仪(signal analyzer)捕捉到了真实的蓝牙通信信号。(用普通的模拟频谱分析仪(analog spectrum analyzer)很难捕捉到这种画面,你必须使用矢量频谱分析仪(vector spectrum analyzer)。但即使有矢量频谱分析仪,也不容易让设备捕捉到整个跳跃范围。你需要至少80 Mhz带宽的矢量频谱分析仪)
2、框架结构(Frame Structure)
现在让我们看看时域(time domain)中的基本传输单元(时隙或帧结构/Slot or Frame structure)。蓝牙插槽由三个主要组件(接入码、报头和有效负载/Access Code, Header and Payload)组成,如下所示。时隙的基本长度为366 us,根据有效载荷的长度,它可以扩展到1.622 ms或2.87 ms。
接入码(Access Code)和报头(Header)总是以GFSK进行调制,有效载荷(Payload)部分根据分组类型以三种不同方法之一(GFSK、1/4π DQPSK、8DPSK)进行调制。
以下是最传统的蓝牙插槽结构的框架结构。使用此结构可以实现的最大数据速率(data rate)为1Mbps,并且此结构在整个插槽中使用GFSK调制方案。
以下是用于高数据速率蓝牙时隙结构的帧结构。有了这种结构,根据有效载荷的调制方案(modulation scheme),您可以实现最大2MHz或3MHz。接入码和报头部分仍然使用GFSK调制方案,并且有效载荷部分对于2Mbps数据速率使用1/4π DQPSK,对于3Mbps使用8 DPSK。与前一个相比,您将在这个结构中看到两个额外的部分。
第一个附加组件是“防护时间(Guardtime)”。在该结构中,接入码和报头部分使用GFSK,而有效载荷部分使用DQPSK/8 DPSK。这意味着调制方案在一个时隙内发生变化。这个保护时间是为了给发射机(transmitter )一些时间来切换调制方案。
另一个附加组件是“同步(Sync)”部分。在任何基于I/Q的调制中,采样定时(sampling timing)都是非常重要的。“同步”是参考信号(reference signal)的一部分,因此接收器可以获得正确的定时参考。
3、调制(Modulation)
当您阅读前面关于插槽结构的部分时,您可能会注意到蓝牙插槽中使用了三种不同的调制方案。我将在本节中简要介绍(snapshot)这三种不同的调制方案。我认为每种情况下都有典型的星座(typical constellation)就足够了。
第一个是GFSK调制,在I/Q坐标(I/Q coordinate)中,你会看到很多点围绕着一个圆的周长(perimetor)。
以下是1/4π DQPSK的样本星座图。如果你看到右侧的星座,它看起来与8 PSK完全相同,但如果你显示你会注意到的点的轨迹(trajectory),则没有一条路径通过(0,0)点。这对放大器的效率(amplifier effieciency)和电池消耗(battery consumption)都有好处。在正常的QPSK情况下,每个点的绝对坐标携带信息,但在DQPSK中,两个连续点之间的相位差(角度差)携带信息。
以下是1/4π DQPSK的样本星座图。如果你看到右侧的星座,它看起来与8 PSK完全相同,也与1/4 DQPSK相同,但如果你显示点的轨迹,你会注意到与1/4 DQPSK不同的模式。但在这种情况下,仅仅通过观察星座几乎不可能找到8 PSK和8 DPSK之间的区别。
三、蓝牙协议(Bluetooth Protocol)
1、总体状态转换(Overal State Transition)
蓝牙通信的总体状态流程(state flow)如下。当你看到这种循环状态图(circular state diagram)时,你最好选择起点和终点之一。否则,你将继续在各状态之间循环,你的眼球将无休止地旋转—:)。
例如,我只是将“待机(Stand by)”作为第一个点,将“Tx/Rx”作为终点,然后沿着红色箭头标记的路径行进。
当你打开蓝牙设备时,它将进入待机模式(stand by mode)并开始“查询(inquire)”。(这就像向所有方向广播一条消息,说“有人在听我说话吗?如果有,请告诉我你的地址”。通过这个过程,设备可能会从多个设备获得响应。如果它找到任何想要连接的设备,它会向设备发送寻呼消息(Paging message),说:“我想连接你”。如果它得到了另一方的接受,双方将通过一个复杂的步骤进入连接模式(connected mode),这将在下一节中描述。
一旦处于连接模式,双方都可以发送(transmit)和接收(receive)数据。但是,如果长时间没有数据可以传输或接收怎么办?如果他们在这段时间里保持清醒,就会浪费大量的电池电量。为了减少电池寿命的浪费,蓝牙支持三个级别的节能模式(energy saving mode),称为嗅探(Sniff)、保持( Hold)、驻车(Park)。
在嗅探模式(Sniff mode)下,设备仍然保持与微微网(蓝牙设备之间的网络)的同步(synchronization),但Tx/Rx周期会减少。这个周期被称为“嗅探间隔(Sniff Interval)”,这个间隔是可编程的,取决于应用。
在保持模式(Hold mode)下,只有设备中的内部时钟(internal clock)在运行。因此,在这种模式下,数据传输是不可能的,但如果需要数据传输,它可以很快切换到活动模式。此HOLD(保持)模式可以由主控(Master)或从控(Slave)启动。
在驻车模式(Park mode)下,设备仍然保持与微微网(蓝牙设备之间的网络)的同步,但不会发送/接收任何数据。该设备甚至释放其MAC地址,它只是周期性地醒来听主控说话。如果它从Master收到任何请求数据事务的信号,它必须再次进行连接过程。恢复连接需要更长的时间/过程,但它最节省能源。
2、总体协议序列(Overall Protocol Sequence)
以下是wiki.wireshark.org-Bluetooth1.cap中的一个蓝牙协议日志(log)示例。只需先查看整个序列,并根据您的兴趣深入了解每条消息中的详细参数。
(1) Command Inquiry
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - Inquiry
Command Opcode: Inquiry (0x0401)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0000 0001 = ocf: 0x0001
Parameter Total Length: 5
LAP: 0x9e8b33
Inquiry Length: 16
Num Responses: 0
(2) Command Status (Inquiry)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Status
Event Code: Command Status (0x0f)
Parameter Total Length: 4
Status: Pending (0x00)
Number of Allowed Command Packets: 1
Command Opcode: Inquiry (0x0401)
(3) Inquiry Result
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Inquiry Result
Event Code: Inquiry Result (0x02)
Parameter Total Length: 15
Number of responses: 1
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Page Scan Repetition Mode: R1 (0x01)
Page Scan Period Mode: P0 (0x00)
Page Scan Mode: Mandatory Page Scan Mode (0x00)
Class of Device: 0x420204 (Phone - services: Telephony, Networking)
.100 0010 1101 1101 = Clock Offset: 0x42dd
(4) Inquiry Complete
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Inquiry Complete
Event Code: Inquiry Complete (0x01)
Parameter Total Length: 1
Status: Success (0x00)
(5) Remote Name Request
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - Remote Name Request
Command Opcode: Remote Name Request (0x0419)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0001 1001 = ocf: 0x0019
Parameter Total Length: 10
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Page Scan Repetition Mode: R1 (0x01)
Page Scan Mode: Mandatory Page Scan Mode (0x00)
.000 0000 0000 0000 = Clock Offset: 0x0000 (0 ms)
0… … … … = Clock_Offset_Valid_Flag: false (0)
(6) Command Status (Remote Name Request)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Status
Event Code: Command Status (0x0f)
Parameter Total Length: 4
Status: Pending (0x00)
Number of Allowed Command Packets: 1
Command Opcode: Remote Name Request (0x0419)
(7) Remote Name Req Complete
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Remote Name Req Complete
Event Code: Remote Name Req Complete (0x07)
Parameter Total Length: 255
Status: Page Timeout (0x04)
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Remote Name:
(8) Connect Request
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Connect Request
Event Code: Connect Request (0x04)
Parameter Total Length: 10
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Class of Device: 0x6a0204 (Phone - services: Telephony, Audio, Capturing, Networking)
Link Type: ACL connection (Data Channels) (0x01)
(9) Accept Connection Request
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - Accept Connection Request
Command Opcode: Accept Connection Request (0x0409)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0000 1001 = ocf: 0x0009
Parameter Total Length: 7
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Role: Remain Slave (0x01)
(10) Command Status (Accept Connection Request)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Status
Event Code: Command Status (0x0f)
Parameter Total Length: 4
Status: Pending (0x00)
Number of Allowed Command Packets: 1
Command Opcode: Accept Connection Request (0x0409)
(11) PIN Code Request
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - PIN Code Request
Event Code: PIN Code Request (0x16)
Parameter Total Length: 6
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
(12) PIN Code Request Reply
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - PIN Code Request Reply
Command Opcode: PIN Code Request Reply (0x040d)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0000 1101 = ocf: 0x000d
Parameter Total Length: 23
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
PIN Code Length: 4
PIN Code: 1234
(13) Command Complete (PIN Code Request Reply)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Complete
Event Code: Command Complete (0x0e)
Parameter Total Length: 10
Number of Allowed Command Packets: 1
Command Opcode: PIN Code Request Reply (0x040d)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0000 1101 = ocf: 0x000d
Status: Success (0x00)
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
(14) Connect Complete
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Connect Complete
Event Code: Connect Complete (0x03)
Parameter Total Length: 11
Status: Authentication Failure (0x05)
Connection Handle: 0x0029
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Link Type: ACL connection (Data Channels) (0x01)
Encryption Mode: Encryption Disabled (0x00)
(15) Connect Request
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Connect Request
Event Code: Connect Request (0x04)
Parameter Total Length: 10
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Class of Device: 0x6a0204 (Phone - services: Telephony, Audio, Capturing, Networking)
Link Type: ACL connection (Data Channels) (0x01)
(16) Accept Connection Request
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - Accept Connection Request
Command Opcode: Accept Connection Request (0x0409)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0000 1001 = ocf: 0x0009
Parameter Total Length: 7
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Role: Remain Slave (0x01)
(17) Command Status (Accept Connection Request)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Status
Event Code: Command Status (0x0f)
Parameter Total Length: 4
Status: Pending (0x00)
Number of Allowed Command Packets: 1
Command Opcode: Accept Connection Request (0x0409)
(18) PIN Code Request
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - PIN Code Request
Event Code: PIN Code Request (0x16)
Parameter Total Length: 6
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
(19) PIN Code Request Reply
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - PIN Code Request Reply
Command Opcode: PIN Code Request Reply (0x040d)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0000 1101 = ocf: 0x000d
Parameter Total Length: 23
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
PIN Code Length: 4
PIN Code: 1234
(20) Command Complete (PIN Code Request Reply)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Complete
Event Code: Command Complete (0x0e)
Parameter Total Length: 10
Number of Allowed Command Packets: 1
Command Opcode: PIN Code Request Reply (0x040d)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0000 1101 = ocf: 0x000d
Status: Success (0x00)
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
(21) Link Key Notification
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Link Key Notification
Event Code: Link Key Notification (0x18)
Parameter Total Length: 23
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Link Key: ec596f3306bba9e53d7b72de47c1404a
Key Type: Combination Key (0x00)
(22) Connect Complete
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Connect Complete
Event Code: Connect Complete (0x03)
Parameter Total Length: 11
Status: Success (0x00)
Connection Handle: 0x002a
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Link Type: ACL connection (Data Channels) (0x01)
Encryption Mode: Encryption only for point-to-point packets (0x01)
(23) Write Link Policy Settings
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - Write Link Policy Settings
Command Opcode: Write Link Policy Settings (0x080d)
0000 10… … … = ogf: Link Policy Commands (0x0002)
… …00 0000 1101 = ocf: 0x000d
Parameter Total Length: 4
Connection Handle: 0x002a
… … … …1 = Enable Master Slave Switch: true (1)
… … … …1. = Enable Hold Mode: true (1)
… … … .1… = Enable Sniff Mode: true (1)
… … … 1… = Enable Park Mode: true (1)
(24) Page Scan Repetition Mode Change
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Page Scan Repetition Mode Change
Event Code: Page Scan Repetition Mode Change (0x20)
Parameter Total Length: 7
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Page Scan Repetition Mode: R1 (0x01)
(25) Command Complete (Write Link Policy Settings)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Complete
Event Code: Command Complete (0x0e)
Parameter Total Length: 6
Number of Allowed Command Packets: 1
Command Opcode: Write Link Policy Settings (0x080d)
0000 10… … … = ogf: Link Policy Commands (0x0002)
… …00 0000 1101 = ocf: 0x000d
Status: Success (0x00)
Connection Handle: 0x002a
(26) Change Connection Packet Type
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - Change Connection Packet Type
Command Opcode: Change Connection Packet Type (0x040f)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0000 1111 = ocf: 0x000f
Parameter Total Length: 4
Connection Handle: 0x002a
… … … …0. = Packet Type 2-DH1: false (0)
… … … .0… = Packet Type 3-DH1: false (0)
… … … 1… = Packet Type DM1: true (1)
… … …1 … = Packet Type DH1: true (1)
… …0 … … = Packet Type 2-DH3: false (0)
… …0. … … = Packet Type 3-DH3: false (0)
… .1… … … = Packet Type DM3: true (1)
… 1… … … = Packet Type DH3: true (1)
…0 … … … = Packet Type 2-DH5: false (0)
…0. … … … = Packet Type 3-DH5: false (0)
.1… … … … = Packet Type DM5: true (1)
1… … … … = Packet Type DH5: true (1)
(27) Max Slots Change
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Max Slots Change
Event Code: Max Slots Change (0x1b)
Parameter Total Length: 3
Connection Handle: 0x002a
Maximum Number of Slots: 5
(28) Command Status (Change Connection Packet Type)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Status
Event Code: Command Status (0x0f)
Parameter Total Length: 4
Status: Pending (0x00)
Number of Allowed Command Packets: 1
Command Opcode: Change Connection Packet Type (0x040f)
(29) Remote Name Request
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - Remote Name Request
Command Opcode: Remote Name Request (0x0419)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0001 1001 = ocf: 0x0019
Parameter Total Length: 10
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Page Scan Repetition Mode: R1 (0x01)
Page Scan Mode: Mandatory Page Scan Mode (0x00)
.000 0000 0000 0000 = Clock Offset: 0x0000 (0 ms)
0… … … … = Clock_Offset_Valid_Flag: false (0)
(30) Connection Packet Type Changed
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Connection Packet Type Changed
Event Code: Connection Packet Type Changed (0x1d)
Parameter Total Length: 5
Status: Success (0x00)
Connection Handle: 0x002a
Usable packet types: DM1 HV1 2-DH1
… … … …0. = ACL Link Type 2-DH1: False (0)
… … … .0… = ACL Link Type 3-DH1: False (0)
… … … 1… = ACL Link Type DM1: True (1)
… … …1 … = ACL Link Type DH1: True (1)
… …0 … … = ACL Link Type 2-DH3: False (0)
… …0. … … = ACL Link Type 3-DH3: False (0)
… .1… … … = ACL Link Type DM3: True (1)
… 1… … … = ACL Link Type DH3: True (1)
…0 … … … = ACL Link Type 2-DH5: False (0)
…0. … … … = ACL Link Type 3-DH5: False (0)
.1… … … … = ACL Link Type DM5: True (1)
1… … … … = ACL Link Type DH5: True (1)
… … …0. … = SCO Link Type HV1: False (0)
… … .0… … = SCO Link Type HV2: False (0)
… … 0… … = SCO Link Type HV3: False (0)
(31) Command Status (Remote Name Request)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Status
Event Code: Command Status (0x0f)
Parameter Total Length: 4
Status: Pending (0x00)
Number of Allowed Command Packets: 1
Command Opcode: Remote Name Request (0x0419)
(32) Remote Name Request
Bluetooth HCI H4
[Direction: Sent (0x00)]
HCI Packet Type: HCI Command (0x01)
Bluetooth HCI Command - Remote Name Request
Command Opcode: Remote Name Request (0x0419)
0000 01… … … = ogf: Link Control Commands (0x0001)
… …00 0001 1001 = ocf: 0x0019
Parameter Total Length: 10
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Page Scan Repetition Mode: R1 (0x01)
Page Scan Mode: Mandatory Page Scan Mode (0x00)
.000 0000 0000 0000 = Clock Offset: 0x0000 (0 ms)
0… … … … = Clock_Offset_Valid_Flag: false (0)
(33) Command Status (Remote Name Request)
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Command Status
Event Code: Command Status (0x0f)
Parameter Total Length: 4
Status: Pending (0x00)
Number of Allowed Command Packets: 0
Command Opcode: Remote Name Request (0x0419)
(34) Remote Name Req Complete
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Remote Name Req Complete
Event Code: Remote Name Req Complete (0x07)
Parameter Total Length: 255
Status: Other End Terminated Connection: User Ended Connection (0x13)
BD_ADDR:000e:6d:072efa (MurataMa_07:2e:fa)
Remote Name:
(35) Disconnect Complete
Bluetooth HCI H4
[Direction: Rcvd (0x01)]
HCI Packet Type: HCI Event (0x04)
Bluetooth HCI Event - Disconnect Complete
Event Code: Disconnect Complete (0x05)
Parameter Total Length: 4
Status: Success (0x00)
Connection Handle: 0x002a
Reason: Other End Terminated Connection: User Ended Connection (0x13)