Takahiro Octopress Blog

-1から始める情弱プログラミング

REBL600FRをiBeaconとして検知してみた!

REBL600FRとFRISK

今日はランニングエレクトロニクスさんから購入したREBL600FRを使って遊んでみたいと思います。
早速、REBL600FRを1個注文して、先日、家に届きました。

REBL600FRが届いた!

REBL600FRの売りがFRISKのケースに入るサイズとのことなので、FRISKを購入しました。

FRISK2つ購入しました

なぜ2つ購入したかって?
FRISKを購入しても、すぐにはREBL600FRをケースに入れられませんよね?
FRISKが入っているのだから。

なので、FRISKのケースを空けました。

FRISKケースを空にします

おぉ、空になった…かと思いきや、この状態ではFRISKで満帆となったケースが閉まらない…。
閉まるように余分な分を除けてみたところ、

FRISKケースが閉まるように少し除けます

11粒を戻すこととなりました。良かった。11粒くらいなら一気に食べられます笑。
また、何とか閉めたFRISKケースがこちら。

FRISKケースが閉められた

ちょっと浮いてますね…。

ま、何はともあれこれでREBL600FRをFRISKケースに入れれば準備完了です!

REBL600FRの準備完了

REBL600FRのiBeaconを検知してみる

さて、早速、iBeaconとしての動作を見ていくことにしましょう。
iBeaconの信号をキャッチするCentral側のアプリとして、LightBlueを使うことにしました。
理由は、UUIDに何が設定されているのかわからないためです。

では、REBL600FRのスイッチをONにして、LightBlueで見てみましょう。
すると、このように Laird iBeacon というものを発見します。

LightBlueの画面

これを選択してみると、iBeaconとの接続を試みる処理が走ります。

LightBlueが接続試みる

接続後は詳細画面に遷移します。

LightBlueでLaird iBeaconの詳細を見る

その中で表示される画面の一部を紹介します。

LightBlueでLaird iBeaconの詳細を見る2

ここでぜひお知らせしたいのが、REBL600FRは送信出力をアプリから設定できるんです。
それが先ほどの写真でお見せした Tx Power Level という項目です。
これをタップすると、下記の画面に進みます。

Tx Power Levelの画面

初期状態では 0x04 となっており、4 [dBm] であることを示しています。
MAXの送信出力が4 [dBm] のようなので、それ以下(負の値も含む)の値を16進数で設定します。
10進数と16進数の相互変換はこちらのツールからできます。

Write new Value をタップ ⇒ 数値を設定 ⇒ Doneをタップ
これでスイッチのON / OFFを切り替えなくとも送信出力を変更することができます。
※ REBL600FRのスイッチをONにしてから約1分の間に接続しないといけないようです。
(少し時間が経ってしまうと接続できませんでした。)

実際に、iBeacon検知用のアプリLocate Beaconで確認してみると、初期状態に比べて unknown と表示される距離が変わるはずです。

時間があるときに各種パラメータの値を変更可能なiOSアプリを作成したいと思います。

ということで、今日はここまで。

参考:
Kazuyuki Eguchi Factory スマホでiBeaconのパラメータを変更できるアプリを作りました!(REBL600FR向け)
Todotaniのはやり物Log
TETRASTYLE: Support (BL600) iBeacon サンプルを使ってみる

Comments