首本系統(tǒng)講解藍牙4.0的原理、體系結構、硬件設計以及應用等的書籍。
作者系藍牙4.0標準參與制定者、架構師,性毋庸置疑。
本是學習藍牙4.0標準不可或缺的參考手冊。
低功耗藍牙(Bluetooth Low Energy,BLE)與傳統(tǒng)藍牙技術有著本質的不同,它為醫(yī)療、運輸?shù)阮I域的無線應用帶來了突破。只需一枚硬幣大小的電池,低功耗藍牙便可以連接并擴展各類個人局域網(wǎng)(Personal Area Network,PAN)設備和新一代傳感器,令其可靠地運行若干年。如今,該標準的主要制定者之一為每位系統(tǒng)開發(fā)者、設計師和工程師撰寫了本全面、易懂的低功耗藍牙著作。
Robin Heydon ,畢業(yè)于英國曼徹斯特大學計算機科學專業(yè),是CSR公司負責藍牙技術標準化的標準架構師,也是制定低功耗藍牙技術標準的超低功耗工作組的聯(lián)合主席。自2007年起推動低功耗藍牙技術標準的制定工作,因其貢獻卓著,2010年他入選了藍牙技術聯(lián)盟名人堂。
陳燦峰,博士畢業(yè)于北京郵電大學,2005年起分別任諾基亞(中國)研究院博士后研究員、高級研究員和主任研究員,2011年起負責諾基亞物聯(lián)網(wǎng)與軟件無線電原型系統(tǒng)組的工作,諾基亞并入微軟后擔任微軟設備部門移動設備產品創(chuàng)新組傳感器技術首席專家。目前兼任中國電子學會物聯(lián)網(wǎng)專家委員會副秘書長,中國可穿戴計算產業(yè)推進聯(lián)盟委員。先后參與國家自然科學基金項目3項、863項目2項。在無線通信和移動計算領域先后編著和參與編著6本專著,提交國內外專利申請30余項(2項已授權)。目前的主要研究方向為低功耗藍牙技術,室內外定位技術,智能家居與可穿戴設備等。
劉 嘉,
工學博士。2011年畢業(yè)于清華大學計算機網(wǎng)絡專業(yè),同年進入諾基亞(中國)研究院開展博士后研究,現(xiàn)為北京智谷公司創(chuàng)新研究員,長期從事無線網(wǎng)絡系統(tǒng)設計和性能優(yōu)化工作,發(fā)表論文近20篇,擁有國內外專利和申請50余項。閑暇之余喜歡攝影、文學和Hi-Fi音響。
譯者序
前言
第一部分 綜 述
第1章 什么是低功耗藍牙技術 2
1.1 設備類型 4
1.2 設計目標 5
1.3 術語 6
第2章 基本概念 8
2.1 紐扣電池 8
2.2 時間即能量 9
2.3 昂貴的內存 10
2.4 非對稱設計 10
2.5 為成功而設計 11
2.6 凡事皆有狀態(tài) 12
2.7 客戶端–服務器架構 12
2.8 模塊化架構 13
2.9 十億只是個小數(shù)目 14
2.10 無連接模型 14
2.11 范式 14
2.11.1 客戶端–服務器架構 14
2.11.2 面向服務的架構 15
第3章 低功耗藍牙的體系結構 19
3.1 控制器 20
3.1.1 物理層 20
3.1.2 直接測試模式 20
3.1.3 鏈路層 21
3.1.4 主機/控制器接口 22
3.2 主機 22
3.2.1 邏輯鏈路控制和適配協(xié)議 22
3.2.2 安全管理器協(xié)議 23
3.2.3 屬性協(xié)議 23
3.2.4 通用屬性規(guī)范 24
3.2.5 通用訪問規(guī)范 25
3.3 應用層 25
3.3.1 特性 26
3.3.2 服務 26
3.3.3 規(guī)范 26
3.4 協(xié)議棧劃分 27
3.4.1 單芯片解決方案 27
3.4.2 雙芯片解決方案 28
3.4.3 三芯片解決方案 28
第4章 新的使用模型 30
4.1 存在檢測 30
4.2 廣播數(shù)據(jù) 31
4.3 無連接模式 31
4.4 網(wǎng)關 32
第二部分 控 制 器
第5章 物理層 36
5.1 背景 36
5.2 模擬調制 36
5.3 數(shù)字調制 38
5.4 頻段 39
5.5 調制 40
5.6 射頻信道 41
5.7 發(fā)射功率 41
5.8 容限 42
5.9 接收機靈敏度 42
5.10 通信距離 42
第6章 直接測試模式 45
6.1 背景 45
6.2 收發(fā)機測試 46
6.2.1 測試報文格式 46
6.2.2 發(fā)射機測試 47
6.2.3 接收機測試 47
6.3 硬件接口 48
6.3.1 串口 48
6.3.2 命令與事件 48
6.4 使用HCI的直接測試模式 50
第7章 鏈路層 51
7.1 鏈路層狀態(tài)機 51
7.1.1 就緒態(tài) 52
7.1.2 廣播態(tài) 53
7.1.3 掃描態(tài) 53
7.1.4 發(fā)起態(tài) 54
7.1.5 連接態(tài) 55
7.1.6 多狀態(tài)機 55
7.2 報文 57
7.2.1 廣播與數(shù)據(jù)報文 57
7.2.2 白化 57
7.3 報文結構 59
7.3.1 比特序與字節(jié) 60
7.3.2 前導 60
7.3.3 接入地址 60
7.3.4 報頭 61
7.3.5 長度 61
7.3.6 凈荷 63
7.3.7 循環(huán)冗余校驗 63
7.4 信道 63
7.4.1 跳頻 66
7.4.2 自適應跳頻 66
7.5 設備發(fā)現(xiàn) 68
7.5.1 通用廣播 69
7.5.2 定向廣播 69
7.5.3 不可連接廣播 70
7.5.4 可發(fā)現(xiàn)廣播 70
7.6 廣播 70
7.7 建立連接 71
7.7.1 接入地址 72
7.7.2 CRC初始化 72
7.7.3 發(fā)送窗口 72
7.7.4 連接事件 73
7.7.5 信道圖 74
7.7.6 睡眠時鐘精度 74
7.8 發(fā)送數(shù)據(jù) 74
7.8.1 數(shù)據(jù)報頭 75
7.8.2 邏輯鏈路標識符 75
7.8.3 序列號 76
7.8.4 確認 76
7.8.5 更多數(shù)據(jù) 77
7.8.6 使用序列號和更多數(shù)據(jù)的例子 77
7.9 加密 79
7.9.1 AES 79
7.9.2 加密凈荷數(shù)據(jù) 80
7.9.3 消息完整性校驗 81
7.10 管理連接 82
7.10.1 連接參數(shù)更新 83
7.10.2 自適應跳頻 84
7.10.3 啟動加密 85
7.10.4 重啟加密 87
7.10.5 版本交換 87
7.10.6 功能交換 89
7.10.7 終止連接 90
7.11 魯棒性 90
7.11.1 自適應跳頻 90
7.11.2 強CRC 92
7.12 為低功耗優(yōu)化 93
7.12.1 短報文 93
7.12.2 高比特率 94
7.12.3 低開銷 95
7.12.4 確認機制 96
7.12.5 單信道連接事件 96
7.12.6 亞速率連接事件 97
7.12.7 離線加密 98
第8章 主機/控制器接口 99
8.1 介紹 99
8.2 物理接口 99
8.2.1 UART 99
8.2.2 3線UART 100
8.2.3 USB 101
8.2.4 SDIO 102
8.3 邏輯接口 102
8.3.1 HCI信道 102
8.3.2 命令數(shù)據(jù)包 102
8.3.3 事件數(shù)據(jù)包 103
8.3.4 數(shù)據(jù)包 104
8.3.5 命令流控 105
8.3.6 數(shù)據(jù)流控 106
8.4 控制器的配置 106
8.4.1 重置控制器為已知狀態(tài) 106
8.4.2 讀取設備地址 107
8.4.3 設置事件掩碼 107
8.4.4 讀取緩沖區(qū)大小 108
8.4.5 讀取控制器支持的功能 109
8.4.6 讀取控制器支持的狀態(tài) 109
8.4.7 隨機數(shù) 110
8.4.8 加密數(shù)據(jù) 110
8.4.9 設置隨機地址 111
8.4.10 白名單 112
8.5 廣播和觀察 112
8.5.1 廣播 112
8.5.2 被動掃描 114
8.5.3 主動掃描 115
8.6 發(fā)起連接 116
8.6.1 與白名單設備發(fā)起連接 116
8.6.2 與單一設備發(fā)起連接 118
8.6.3 取消連接請求 118
8.7 連接管理 119
8.7.1 更新連接 119
8.7.2 更新信道映射圖 120
8.7.3 交換功能列表 121
8.7.4 交換版本信息 121
8.7.5 加密連接 122
8.7.6 重啟加密 123
8.7.7 終止連接 125
第三部分 主 機
第9章 邏輯鏈路控制和適配協(xié)議 128
9.1 背景 128
9.2 L2CAP信道 130
9.3 L2CAP數(shù)據(jù)包結構 130
9.4 低功耗信令信道 131
9.4.1 命令拒絕 132
9.4.2 連接參數(shù)更新請求和響應 132
第10章 屬性 135
10.1 背景 135
10.1.1 精簡協(xié)議 136
10.1.2 無所不在的數(shù)據(jù) 136
10.1.3 數(shù)據(jù)與狀態(tài) 137
10.1.4 幾種常見的狀態(tài) 137
10.1.5 狀態(tài)機 138
10.1.6 服務和規(guī)范 139
10.2 屬性 142
10.2.1 屬性概述 143
10.2.2 屬性句柄 143
10.2.3 屬性類型 143
10.2.4 屬性值 144
10.2.5 數(shù)據(jù)庫、服務器和客戶端 145
10.2.6 屬性許可 145
10.2.7 接入屬性 147
10.2.8 原子操作和事務 148
10.3 分組 149
10.4 服務 150
10.4.1 擴展服務 151
10.4.2 其他服務的重用 153
10.4.3 結合服務 153
10.4.4 首要還是次要 154
10.4.5 即插即用的客戶端應用 156
10.4.6 服務聲明 157
10.4.7 包含服務 158
10.5 特性 159
10.5.1 特性聲明 159
10.5.2 特性數(shù)值 161
10.5.3 描述符 161
10.6 屬性協(xié)議 164
10.6.1 協(xié)議消息 165
10.6.2 交換MTU請求 165
10.6.3 查找信息請求 166
10.6.4 按類型值查找請求 167
10.6.5 按類型讀取請求 168
10.6.6 讀取請求 168
10.6.7 大對象讀取請求 168
10.6.8 多重讀取請求 169
10.6.9 按組類型讀取請求 169
10.6.10 寫入請求 169
10.6.11 寫入命令 169
10.6.12 簽名寫入命令 169
10.6.13 準備寫入請求與執(zhí)行寫入請求 170
10.6.14 句柄值通知 171
10.6.15 句柄值指示 171
10.6.16 錯誤響應 171
10.7 通用屬性規(guī)范 173
10.7.1 發(fā)現(xiàn)規(guī)程 174
10.7.2 發(fā)現(xiàn)服務 174
10.7.3 特性發(fā)現(xiàn) 175
10.7.4 客戶端發(fā)起規(guī)程 176
10.7.5 服務器發(fā)起規(guī)程 178
10.7.6 屬性協(xié)議數(shù)據(jù)單元(ATT PDU)到GATT規(guī)程的映射 178
第11章 安全 180
11.1 安全概念 180
11.1.1 認證 180
11.1.2 授權 181
11.1.3 完整性 181
11.1.4 機密性 182
11.1.5 隱私 182
11.1.6 加密引擎 182
11.1.7 共享機密 182
11.2 配對和綁定 185
11.2.1 配對 185
11.2.2 配對信息交換 185
11.2.3 認證 186
11.2.4 密鑰分配 187
11.2.5 綁定 188
11.3 數(shù)據(jù)簽名 188
第12章 通用訪問規(guī)范 189
12.1 背景 189
12.1.1 初次發(fā)現(xiàn) 190
12.1.2 建立初始連接 191
12.1.3 服務特性 191
12.1.4 長期關系 192
12.1.5 重連 192
12.1.6 私有地址 193
12.2 GAP角色 193
12.3 模式和規(guī)程 194
12.3.1 廣播模式和觀察規(guī)程 195
12.3.2 可發(fā)現(xiàn)性 195
12.3.3 可連接性 197
12.3.4 綁定 199
12.4 安全模式 200
12.5 廣播數(shù)據(jù) 201
12.5.1 標識 202
12.5.2 服務 202
12.5.3 本地名稱 203
12.5.4 發(fā)射功率等級 203
12.5.5 從設備連接間隔范圍 203
12.5.6 服務請求 203
12.5.7 服務數(shù)據(jù) 203
12.5.8 制造商指定數(shù)據(jù) 203
12.6 GAP服務 204
12.6.1 設備名特性 204
12.6.2 外觀特性 204
12.6.3 外圍設備隱私標識 204
12.6.4 重連地址 205
12.6.5 外圍設備首選連接參數(shù) 205
第四部分 應 用
第13章 中央設備 208
13.1 背景 208
13.2 發(fā)現(xiàn)設備 208
13.3 連接設備 209
13.4 這個設備能做什么 210
13.5 通用客戶端 211
13.6 與服務交互 211
13.6.1 可讀特性 212
13.6.2 控制點 212
13.6.3 狀態(tài)機 213
13.6.4 通知和指示 214
13.7 綁定 214
13.8 變更服務 215
13.9 實現(xiàn)規(guī)范 216
13.9.1 定義規(guī)范 216
13.9.2 查找服務 217
13.9.3 查找特性 217
13.9.4 使用特性 217
13.9.5 規(guī)范安全 217
第14章 外圍設備 219
14.1 背景 219
14.2 僅廣播 219
14.3 可發(fā)現(xiàn) 220
14.4 可連接 220
14.5 公開服務 221
14.6 特性 221
14.7 安全事項 222
14.8 為低功耗優(yōu)化 222
14.8.1 可發(fā)現(xiàn)廣播 224
14.8.2 綁定 224
14.8.3 可連接廣播 224
14.8.4 定向廣播 225
14.8.5 已連接 225
14.8.6 保持連接還是斷開 226
14.9 優(yōu)化屬性 227
第15章 測試和質量鑒定 229
15.1 啟動項目 229
15.2 選擇功能 231
15.3 一致性檢查 232
15.4 生成測試計劃 232
15.5 建立合規(guī)文件夾 232
15.6 鑒定測試 233
15.7 鑒定設計 234
15.8 合規(guī)聲明 234
15.9 產品名錄 234
15.10 結合組件 235