以藍牙4.0為例說明:
BLE包格式有:廣播包、掃描包、初始化連接包、鏈路層控制包(LL層數據包)、邏輯鏈路控制和自適應協議數據包(即L2CAP數據包)等;
其中廣播包又分為:定向廣播包和非定向廣播包;
邏輯鏈路控制和自適應協議數據包又分為:ATT指令包、信令指令包、SMP包;
1. 首先,所有的包都符合如下格式:
2. 廣播包:
3. 非定向廣播包:
4. 定向廣播包:
5. 掃描包:
6. 初始化連接包:
7. 鏈路層數據包:
8. 鏈路層控制包:
9. L2CAP層數據包:
10. 信令指令包:
11. ATT指令包:
12. SMP指令包:
SMP指令與ATT指令類似,只是channel ID為0x0006,數據格式如下:
根據操作碼不同,后面數據的格式不通同。
附:
L2CAP層的區分: