BL600でアドバタイズする

概要

BL600でセンサの値を読んでPCに送信してみたかったので,とりあえず独自のSERVICEを定義してセンサの値をGATTクライアントから読み取れるようにしてみた. その中でまずはBL600でADVERTISEしてPCからスキャンした際に表示される部分までを説明する.

BL600とは

Laird Technologies製の技適付きBluetooth Low Energyモジュール.¥1,500くらいでdigikeyなどで買える. 特に専用の書き込み器などを必要とせず,UART経由でsmart BASICなる言語で動作を記述できる.まさか世の中にsmartなBASICがあるとは思っていなかった.

Lairdのサイトのこのページからドキュメントやツール類がダウンロードできるが,最新のファームウェアやドキュメントをダウンロードするにはユーザー登録が必要.登録はこのページからできる. smart BASIC BL600の動作を記述するための専用言語.Windows上で動作する専用のコンパイラにより中間コードに変換した後,UART経由でBL600に転送し,BL600上の実行エンジンで実行する. VBAのような構造化されたBASICなので,言うほど辛くは無い.VBA書けるならサラサラ書けると思われる.

文字列演算や算術演算用の関数に加えてBLEモジュールを扱うための専用関数が用意されていて,それなりに簡単にBLEモジュールを扱うことが出来る.

ADVERTISEの確認

ADVERTISEしているか確認するためにWindows PCからスキャンする.

../_images/ble_advertise.png

BL600という名前のデバイスが表示されれば成功である.BleGapSvcInitに与えるdeviceNameを変更するとスキャン時に表示されるデバイス名も変化する.

やる気が続けばSERVICEの定義の説明をする.たぶん.