BlueNinjaをすぐに動かすことができるプログラム「HyouRowGan」(兵糧丸)紹介します。
HyouRowGanとは
BLE経由で9軸モーションセンサーの計測値取得、気圧センサーの計測値取得、GPIOの入出力、PWM出力が行える汎用のプログラムです。
HyouRowGanと対向のAndroidのサンプルアプリを公開しています。
実行ファイルだけではなくソースコードもApache License 2.0で公開していますので、ライセンスの範囲内でご自由にカスタマイズしてご使用いただけます。
HyouRowGan (※2017/06/07更新)
- ソースコード:hyourowgan(GitHubリポジトリ)
- 実行ファイル:hyourowgan_20170607.bin
Androidサンプルアプリ
- ソースコード:hyourougan_ble_sample(GitHubリポジトリ)
- APKファイル:HyouRowGan_BLE_Sample.apk
※Android 4.4以降に対応、Android 5.0以降を推奨します。
なぜ、HyouRowGanをつくったの?
ソフトウェア的にBlueNinjaをBlueNinjaらしく動かすためのハードルが高すぎると感じたため、その解決方法の一つとして「HyouRowGan」をつくりました。
BlueNinjaの開発環境の構築は手順も多く結構大変です。
実際にサポートには、お客様から「開発環境の構築に困っている」というお問い合わせが多くありました。
また、スターターガイドで紹介しているのはLED点滅のプログラムのみで、Bluetooth LEやモーションセンサーを使う場合にはTZ1001 BSPのサンプルプログラムや「ミニ四駆テレメトリ」などのソースコードを参考に自力でプログラムを作成しなくてはいけませんでした。
上記のような大変を少しでも解消し「インスタント食品のように」BlueNinjaの主な機能をすぐに使っていただきたいという思いを込めています。
HyouRowGanの機能
BLEのペリフェラルとして動作し、
- GPIOの入力(4bit)、出力(4bit)
- PWM出力2ch
- 9軸モーションセンサーの計測値取得
- 気圧センサーの計測値の取得
の機能を提供します。 ブレイクアウトボードのピン配置は以下のようになっています。
HyouRowGan実行時のピン配置
独自のGATT Profileを実装していますが仕様も公開していますので、独自にBLEセントラル側のプログラム作っていただき使用することができます。
実例
HyouRowGanとAndroidアプリを使った実例を紹介します。
GPIO
BlueNinjaのDigital InputにスイッチをDigital OutputにLEDをつないでスマートフォンアプリからコントロールします。
PWM
RCサーボのコントロール信号をPWM0とPWM1につないでスマートフォンからコントロールします。
モーションセンサー
モーションセンサーで取得したデータをスマートフォンに送りグラフを書きます。
気圧センサー
気圧センサーで取得したデータをスマートフォンに送りグラフを書きます。
BlueNinjaを高く掲げると気圧が下がる傾向が、足元まで下ろすと上がる傾向が見えます。
おわりに
「HyouRowGan」が少しでも皆様のお役にたてば幸いです。