Electronics

2015.02.23

新刊『Bluetooth Low Energyをはじめよう』は2月25日発売!(+過去のBLE関連記事リンク)

Text by tamura

picture_large978-4-87311-713-3

Bluetooth Low Energy(BLE)は、低コスト、低消費電力などを目的に開発された無線技術です。IoT(Internet of Things)やウェアラブルデバイスの基盤となる技術として、急速に普及しています。本書では、モバイルアプリケーション開発者と組み込み技術者を対象に、BLEのデータ構造や、デバイスが相互に通信する方法などについて、質の高い情報を提供します。まず、プロトコルの基本を紹介し、次にBLEの理解に欠かせないGAP(汎用アクセス・プロファイル)とGATT(汎用アトリビュート・プロファイル)について丁寧に解説。開発プラットフォーム、デバッグツール、アプリケーション設計ツールの紹介を行った上で、実際のAndroid、iOS、組み込みデバイスの開発についてステップバイステップで解説します。

Kevin Townsend、Carles Cufí、Akiba、Robert Davidson 著、水原 文 訳
2015年02月25日 発売予定
200ページ/A5版
ISBN978-4-87311-713-3

O’Reilly Japan – Bluetooth Low Energyをはじめよう

makezine.jpの過去のBLE関連記事
モノのインターネット:その周縁はBluetoothになるのか?
TIのSensorTagがiBeacon対応に
BLEプロトタイピングを手軽にしてくれる mbed HRM1017
モノのインターネットをブルーに染める
iPhoneをBLEゲームパッド化するアプリとその作例

目次から

はじめに

1. イントロダクション
BLEはどこが違うのか?
規格
構成
規格がサポートする構成
チップ構成
重要な制約
データのスループット
到達距離
ネットワークのトポロジー
ブロードキャスターとオブザーバー
コネクション
プロトコルとプロファイル
汎用プロファイル
ユースケース特有のプロファイル

2. プロトコルの基本
物理層
リンク層
Bluetoothデバイスアドレス
アドバタイズとスキャン
コネクション
ホスト・コントローラー・インタフェース(HCI)
論理リンク制御およびアダプテーションプロトコル(L2CAP)
アトリビュート・プロトコル(ATT)
ATT操作
セキュリティ・マネージャ(SM)
セキュリティ手順
ペアリングのアルゴリズム
セキュリティ暗号鍵
汎用アトリビュート・プロファイル(GATT)
汎用アクセス・プロファイル(GAP)

3. GAP(アドバタイズとコネクション)
役割
モードと手順
ブロードキャストとオブザベーション
検索
コネクションの確立
追加的GAP手順
セキュリティ
アドレス種別
認証
セキュリティモード
セキュリティモードと手順
その他のGAP定義
アドバタイズデータのフォーマット
GAPサービス

4. GATT(サービスと特性)
役割
UUID
アトリビュート
ハンドル
タイプ
パーミッション

アトリビュートとデータの階層構造
サービス
特性
特性ディスクリプタ
サービスの例
高度なアトリビュートの概念
アトリビュートのキャッシュ
アドバタイズパケット中のGATTアトリビュートデータ
機能
MTU交換
サービスと特性の検索
特性とディスクリプタの読み出し
特性とディスクリプタの書き込み
サーバー主導更新
セキュリティ
GATTサービス

5. ハードウェアプラットフォーム
nRF51822-EK(Nordic Semiconductors)
技術的仕様
SoftDeviceアーキテクチャ
nRF51822-EKの使い方
プログラム例とツールチェイン
CC2541DK-MINI(Texas Instruments)
その他のハードウェアプラットフォームとモジュール
LairdのBL600モジュール
luegigaのBLE112/BLE113モジュール
RFDuino

6. デバッグツール
PCA10000 USBドングルとMaster Control Panel
PCA10000 USBドングルとWireshark
CC2540 USBドングルとSmartRFスニファ
SmartRFからWiresharkへのコンバーター
Bluezのhcitoolとgatttool

7. アプリケーション設計ツール
Bluetooth Application Accelerator
SensorTag
iOS用のLightBlue
Android用のnRF Master Control Panel

8. Androidのプログラミング
開発環境の準備
ハードウェアを入手する
ソフトウェアを入手する
ハードウェアを構成する
新規プロジェクトを開始する
BLEライブラリの初期化
リモートデバイスとコネクションを張る
リモートデバイスとの通信

9. iOSのプログラミング
シンプルなバッテリーレベルのペリフェラル
リモートペリフェラルのスキャン
リモートペリフェラルとのコネクション
リモートペリフェラルと関連付けられたサービスを検索する
サービスと関連付けられた特性を検索する
特性の読み出しとデコードを行うメソッド
iBeacon
アドバタイズ
レンジング
iBeaconアプリの実装
外部ディスプレイとApple通知センターサービス

10. 組み込みアプリケーション開発
mbedのBLE API
組み込みツールチェイン
OSXやLinuxへGNUツールをインストールする
WindowsへGNU ツールをインストールする
nRF51822のGNUコードベースとサンプルプロジェクト
nRF51822のGNUコードベースを入手する
nRF51822 GNUコードベースの構造
プロジェクトをコンパイルする
nRF51822へ書き込む
さらに先へ

付録 Bluetoothコア規格バージョン4.2での変更点(日本語版付録)
索引