bluetooth 構成メモ
LL 層のステート
ネットワークの中でデバイスの状態を制御するレイヤー。 とりあえず理解するための図
GAP (Generic Access Profile)
BLE デバイスがどのように振る舞うかを管理するプロファイル。 役割、動作、セキュリティの三つを管理している。
ROLE の種類
Broadcaster,Observer,Peripheral,Central
Role | Type |
---|---|
Broadcaster | ブロードキャスト型 |
Observer | ブロードキャスト型 |
Peripheral | 接続型 |
Central | 接続型 |
iOS の iBeacon は BLE デバイスを Broadcaster として利用していて、Advertisement Packet を送出している。
上の図の例だと、アドバタイジングパケットを送出している BLE デバイスが Peripheral であり、iOS 機器が Central になる。
接続型の接続フロー
- Peripheral がアドバタイジングパケットを送信
- Central がスキャニングを実施
- Central がアドバタイジングパケットから接続可能なデバイス(Pheripheral)一覧を取得
- Pheripheral に接続
- 接続した Pheripheral のサービス一覧を取得
- サービスのキャラクタリスティック(データ)一覧を取得
そしてこのキャラクタリスティックに Read や Write することでデータをやりとりする。