BLEって?
BLE( BluetoothLowEnagy) は今注目のBluetoothです。Bluetoothと言っても色々あるんですね。注目の理由はiPhone・iPadのアプリでは普通Bluetoothやlightningコネクタでの通信は制限されていてまともなことが出来ないのに対して、BLEだけは完全に開発者に開放されていiOSアプリからBLEでやりたい放題やることができるからです。BLEそのものの特徴は主に2つです。
- 省電力(BLEを使う回路をボタン電池だけで数年持たせることも可能)
- 通信がものすごくシンプル
- 他のBluetoothでよくある1対1でなく1対N接続できる
以上からこんな使い方が考えられています
- 家電を操作するインターフェイスとして
- よく無くすものにタグとしてBLE回路つけてどこにあるかを調べる探しもの系
- 健康機器など体につけてスマホと通信するウェアラブルデバイス系のインターフェイスとして
今回はそんなBLEをすぐに始められるBluegigaのBLE113Aを紹介します。
BLE113A

出典:https://www.bluegiga.com/
BLE113Aは若干16mm程度のチップの上にアンテナもCPUも全て積んであり、電源をつなぐだけでBLEを使うことが出来ます。
特徴
1. ワンチップですべて済む
何よりもワンチップで済むのは最高ですね。アンテナも入ってるし電波系の認証も通っています。中のマイコンにプログラムを書き込めるのである程度のことならこれだけで本当に済みます。RTCもあるし。また、電源は3.3V系なので単三電池2本で動かすことが出来ます。一応僕が実験した所ちゃんと1.8V程度までは動いていました。気をつけなければいけないのはSleep中(送信も受信もできない)と送受信中では消費電流が違うのでピークに対応しないとBORしてしまうことです。Sleepは500nAや1uA程度ですが、送受信中は20mA程度は消費します。
2. BASIC言語でかける
Bluegigaの開発したBGScriptというBASICに似た言語でプログラムを書くことが出来ます。また、XMLで色々指定できるので(GATTとかも)細かなプログラムが出来なくても大丈夫です。
3. 拡張性がある
単体でも使えますが、他のマイコンともつなげます。I2Cやシリアル端子が出ていて、BGScriptで何かを受けたらシリアルに送るなどのプログラムを書くと簡単に外部マイコンとの連携ができます。また、I2Cなどでつながっている外部マイコンからBLE113Aを操作するためのプログラムも用意されています。
色々設定もできます。いつ電波受信状態にするかSleepにするか。また、送信電力を決めることも出来ます。最適な間隔とパワーを選ぶことで消費電力を抑えられます。
開発キット
BLE113Aはmouserで1500円程度で買えます ( http://jp.mouser.com/ProductDetail/Bluegiga-Technologies/BLE113-A-v1/?qs=%2fha2pyFaduhyU1qy8AXz2HeeRHJd8kLUK3RrhSL1XqI%3d )
ただ、これだけだと書き込みもできないし、なにより表面実装部品なのでマウントしないといけなくて大変です。
部品が実装されていて、液晶とかの周辺部品や書き込み器もある開発キットがあるのでそれがオススメです。

出典:https://www.bluegiga.com/
これは1万ぐらい。
http://jp.mouser.com/ProductDetail/Bluegiga-Technologies/DKBLE113/?qs=%2fha2pyFadugHdNWsXqlLxE9lfjN5tuM3dS7uqdqgrTw%3d