Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Bluetooth meshの基礎

284 views

Published on

Bluetooth meshの基礎とデモを行いました

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Bluetooth meshの基礎

  1. 1. Bluetooth mesh(BTmesh) 株式会社ピクセラ 先端技術開発部 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 2018年9月13日
  2. 2. アジェンダ 1.概要 2.プロビジョニング 3.デモ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 2
  3. 3. Bluetooth mesh(BT mesh)の特徴 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 3 BLEの通信方式を応用したmeshネットワーク 中継を繰り返すことで長距離通信可能 理論上は台数制限なし (ユニキャストアドレスは2バイト)
  4. 4. BT meshの誤解1 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 4 BT meshの誤解1: Bluetooth5 の機能の一つにmesh機能がある 実際は ・Bluetooth 5とは関係ない ・mesh機器は BLE機能+mesh機能 mesh機器 BLE Mesh ハードウェアは共通 BT mesh用のソフトウェア BLEソフトウェア (4.1でも5でもいい)
  5. 5. BT meshの誤解2 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 5 BT meshの誤解2: BT mesh は BLE機器を1つだけ改造すれば メッシュネットワークを構成できる 実際は ・ ハードウェアは互換 ・ ソフトウェアスタックは別物 (実際はメモリ容量の関係でハードウェアの変更が必要) BLE BLE BLE 3つの機器でmeshにしたい → すべて対応が必要 ここだけmesh対応しても中継できない
  6. 6. BT meshの誤解3 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 6 BT meshの誤解3 : BT mesh対応製品があるので買ってくればつながる 実際は ・Bluetooth SIGに準拠した(SIG mesh)のほかに メーカー独自のmesh機能を持った製品もあるので注意 タブレット SIG mesh 独自 mesh 通信可通信可 通信不可 の場合あり ×
  7. 7. BT meshの誤解4 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 7 BT meshの誤解4 : BT mesh対応すれば無条件に通信距離がのびる 実際は ・1つ1つはただのBLEで単体の性能が上がるわけではない ・Mesh対応にはトレードオフがある BLE温度センサー 電池で1年動作 26 ℃ 実用で5m BT mesh温度センサー ? ℃ 距離は伸びない BT mesh温度センサー 26 ℃ BT mesh温度センサー 中継機能は 電池寿命が短い Mesh 対応
  8. 8. フラッド型ネットワーク © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 8 BT meshはフラッド型のメッシュネットワーク ・ ブロードキャストを繰り返して通信する 1 2 3 4 機器1が機器4をONにする 1がブロードキャスト 1 2 3 4 2,3がブロードキャスト ON × 届かない × 届かない
  9. 9. ノード © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 9 ノード(Node) : BT meshネットワーク内の各デバイス ノードの種類 ・ Relay Node(右図R) 通信を中継 ・ Proxy Node(右図P) BLE機器と通信 ・ Low Power Node(右図L) スリープするノード ・ Friend Node(右図F) Low Power Nodeのデータをキャッシュ ・ Leaf Node(右図LN) 特別なことは何もしない末端のノード P R R F L BLE対応 タブレット L N
  10. 10. エレメント © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 10 エレメント(element) : ノードに属する物理的な機器 例:3つのエレメントを持ったノード複数のエレメントも可能
  11. 11. モデル © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 11 モデル(model) : エレメントの持つ具体的な機能 例 「ON/OFF」,「 明るさ」を制御できる電球は Generic ON/OFF Generic Level というモデルを持たせれば対応可能
  12. 12. 機器の制御 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 12 各エレメントはモデルを介して制御する モデル(サーバー) Generic ON/OFF Generic Level モデル(クライアント) Generic ON/OFF モデル(クライアント) Generic Level ON/OFF 制御が可能 ON/OFF制御 明るさ制御 明るさ 制御が可能 モデル(サーバー) Generic ON/OFF Generic Level
  13. 13. セキュリティ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 13 セキュリティは必須 3つの鍵を持つ ・NetKey ネットワーク共通の鍵 ・AppKey グループで共通の鍵 ・DevKey デバイス固有の鍵 ネットワーク構成後の通信は NetKeyとAppKeyを使用 NetKey AppKeyDevKey DevKey DevKey DevKey DevKey AppKey
  14. 14. プロビジョニング © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 14 BT meshにはペアリングという操作はない プロビジョニング ・ BT meshネットワークに参加させるための操作 プロビジョナー ・ ネットワークへの追加、削除を管理を行う機器
  15. 15. プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 15 5つのステップで行う 1. ビーコニング 2. インビテーション 3. パブリックキーの交換 4. 認証 5. プロビジョニングデータの配布 最終的に暗号鍵(NetKey)を共有することが目的 プロビジョナーと追加デバイス間で1:1の通信を行う (BLE のMesh Provisioning ServiceのGATTサービスと通信を行う)
  16. 16. プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 16 1.ビーコニング 従来のBLEの接続操作と同じ プロビジョナー (セントラル) 追加対象 (ペリフェラル) BD_ADDR (xx:xx:xx:xx:xx:xx) 発見 Mesh Provisioning Service 発見 アドバタイズ開始 スキャン開始 接続 Unprovisioned device beacon サービスのスキャン
  17. 17. プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 17 2.インビテーション 機器の持つ基本的な機能の問い合わせ プロビジョナー (セントラル) 追加対象 (ペリフェラル) 内容 ・エレメントの数 ・対応するセキュリティアルゴリズム ・パブリックキー交換方法 ・値を入力するタイプのデバイスか? ・値を出力するタイプのデバイスか? Provisioning Invite Provisioning Capability
  18. 18. プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 18 3.パブリックキーの交換 共通鍵を送るための公開暗号鍵の送り方で2通りの方法がある OOB(Out-of-band)使用する 例) QRコード、キーコード、NFC, IRなど (Bluetooth以外) プロビジョナー (セントラル) 追加対象 (ペリフェラル) Provisioning start 追加対象の公開鍵表示追加対象の公開鍵入力 プロビジョナーの公開鍵送信
  19. 19. プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 19 3.パブリックキーの交換 共通鍵を送るための公開暗号鍵の送り方で2通りの方法がある OOB(Out-of-band)使用しない プロビジョナー (セントラル) 追加対象 (ペリフェラル) Provisioning start 追加対象の公開鍵表示 プロビジョナーの公開鍵送信
  20. 20. 概要 プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 20 4.認証 プロビジョニング対象の確認 a. 対象機器がOOBデータを出力する場合 プロビジョナー (セントラル) 追加対象 (ペリフェラル) ランダム値の表示 追加対象が表示した ランダム値の入力 値のディスプレイ表示 特定回数の点滅 など
  21. 21. 概要 プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 21 4.認証 プロビジョニング対象の確認 b. 対象機器にOOBデータを入力する場合 プロビジョナー (セントラル) 追加対象 (ペリフェラル) ランダム値の表示 追加対象が表示した ランダム値の入力 指定回数のボタン押し など 入力完了
  22. 22. 概要 プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 22 4.認証 プロビジョニング対象の確認 c. Static OOB または No OOB プロビジョナー (セントラル) 追加対象 (ペリフェラル) ランダム値生成ランダム値生成
  23. 23. 概要 プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 23 4.認証 確認値のチェック これまでにやり取りした値を使って、確認値を規格で決められた方法で計算 プロビジョナー (セントラル) 追加対象 (ペリフェラル) Confirmation Valueの生成 Confirmation Valueの生成 計算結果(Provisioning Confirmation) の送受信 計算結果(Provisioning Confirmation) の送受信 計算に使ったランダム値の送信 計算に使ったランダム値の送信 照合 照合
  24. 24. 概要 プロビジョニングの流れ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 24 5.プロビジョニングデータの配布 プロビジョナー (セントラル) 追加対象 (ペリフェラル) プロビジョニングデータの生成 ・NetKey ・DevKey ・KeyIndex ・Flag ・IV index ・Unicast Address プロビジョニングデータの送信
  25. 25. 概要 プロビジョニングまとめ © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 25 ビーコニング インビテーション 公開鍵交換 認証 プロビジョニング データの配布 ユーザーの手数を増やす → セキュリティが強固になる
  26. 26. デモ センサーの追加 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 26 BLE対応 タブレット New Device Nexus7上でアプリを動かすとBluetooth が不安定なので省略 やること ・NewDeviceの検出 ・NewDeviceのプロビジョニング ・NewDeviceのコンフィグレーション プロビジョナー
  27. 27. デモ キットの紹介 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 27 Silicon labs社の Blue Gecko SoC Wireless Starter Kit を使用
  28. 28. デモ センサーの追加 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 28 ① 電源投入 meshデバイスは未プロビジョニング状態なので、自動的にビーコンを送出
  29. 29. デモ センサーの追加 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 29 ② プロビジョニング スキャン 接続 追加先ネットワークの 選択 プロビジョニング 完了 5~10秒 5~10秒
  30. 30. デモ センサーの追加 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 30 ビーコニング インビテーション 公開鍵交換 認証 プロビジョニング データの配布 デモ機は赤いフローを通る (OOBを使わないシンプルなルート)
  31. 31. デモ センサーの追加 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 31 ② プロビジョニング結果 ユニキャストアドレス UUID 追加先ネットワーク名 NetKey AppKey(未設定) DevKey サーバーモデル一覧
  32. 32. デモ センサーの追加 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 32 ③ 設定(コンフィグレーション) ノードに実装された機能を どう使うかを設定 (FWに依存) ここからはGATTではなく meshネットワーク上で設定 途中画面 省略 10~15秒
  33. 33. デモ センサーの追加のポイント © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 33 プロビジョニングだけ実装しても使い勝手がよくない ・ 追加したデバイスをどんな名前にするか? ・ 追加したデバイスをどのグループに対応させるか? ・ タブレットにどんなUIを表示するか? ・ 追加したデバイスのどの機能を使用するか? プロビジョニング自体のほかに、設定が必要
  34. 34. デモ BT mesh lightの制御 © 2018 PIXELA CORPORATION. All Rights Reserved.|PIXELA CORPORATION PROPRIETARY AND CONFIDENTIAL. 34 BLE対応 タブレット Proxy Node Relay Node Relay Node Node Element Model Generic ON/OFF Model Generic Level 各ノードの仕様 BT mesh light sample Demo Network Group1

×