こんにちは、おひろです。
先日のブログでMIDIコンの開発について書かせていただきました。
パーツを組み替えてオリジナルのMIDIコントローラに!ReMINEの開発状況を公開!
こいつはBLEでの無線接続なので、BLE通信のできるモジュールを積んでいます。
最近は通信モジュールとArduinoといったマイコン的な心臓部分がセットになったモジュールがいろいろとありまして、そういうのを使う方が早く開発できそうと思い方向性は決まりましたが、じゃあどれにするのか、とずいぶん調査しました。
そして結論として、Red Bear Lab社のBLE Nanoを使用しています。
今日はその経緯を書こうと思いますので、ご参考になればこれ幸いです。
なお、いろいろモジュールを紹介して比較することはしません。BLE Nanoに絞って書きます。
(というかBLE Nano以外のものはあんまり覚えてない。。)
選定した基準は以下の通りです。
- 技適を取っていること
- できるだけ小型であること
- 小型だけど必要なだけの入出力ピンが備わっていること
- 開発が簡単なこと(開発環境が整っている)
- 購入しやすいこと
- 上記を満たす中で一番価格が安いもの
まず、一つ目の「技適を取っていること」ですが、これは大前提です。
簡単に言うと、電波を発する機器を作って許可なく使用するのはダメという法律があって、「技術基準適合証明」と「技術基準適合認定」を通ったもの、
つまり使っていいと許可を得ているモジュールしか使用することができません。
安いモジュールの多くはこの技適を得ていないので日本では使うことができません。。
その点BLE Nanoについては技適を得ているので安心して使えます。
またこの技適は日本だけのルールで、海外で使用する場合にはまたその国ごとの認定を受けていないとダメなのですが、
BLE Nanoは主要な認定を一通り受けていますので、その点も安心できそう、ということで、候補として残りました。
次の「小型であり、必要な入出力を備えている」というところも、BLE Nanoは
100円玉サイズですし、今回必要だったデジタル出力9ピン、アナログ入力2ピンもクリアしています。
※アナログ入力をデジタル出力として使うこともできるのでアナログ3つあるうちの一つをデジタル出力にしています。
※printなどで情報を出力してデバッグするためのシリアル通信用のピンもデジタル出力用に回しているので多少不便です。。
次の「開発が簡単なこと」ですが、BLE NanoにはArduinoで開発できる環境が提供されていて、Arduinoなら情報も得やすいですし、embedXcodeというXcodeで開発するためのテンプレートもあります。
※embedXcodeはプロジェクトのテンプレなので、ブレークはってのデバッグができないとか、使い勝手の悪いところもありますが、コード補完や定義ジャンプできるだけでも非常に楽です。
(Arduinoの標準のIDEはシンプルなテキストエディタにビルドボタンがついた程度のものなので非常にツライ。。)
そして最後の「購入しやすい」「価格が安いもの」で絞るとBLE Nanoに行き着いた。。というわけです。
ちなみにスイッチサイエンスで買うと2,700円です。
※注意!プログラムを書き込むためのライターが別途必要です。ライターは一つあれば使いまわせます。最初はキットを買うことをお勧めします。
でも2,700円でも正直ぜんぜん高いのですよ。。
(もっと安くできそうな案も実はありますが、実際に試してないので秘密にしておきます…!)
実際に売り出すとなると、ここが非常に高価になってくるのでなんとかしたいところです。。
そもそもこういうモジュールって実製品に使われるのだろうか。
なんかプロトタイプ用途なイメージなんですけどね。
この辺をどうしていくか、製品化するにあたっての悩みの種です。。
ではでは。
この記事を書いた人

- ドラプロのアプリ開発チーム、iOS/Androidエンジニアです。 ビールと天満が好きです。
この投稿者の最近の記事
Arduino2016.04.28ReMINEの開発が進んできたのでいろいろ報告します!
iOS2016.04.21MIDIとはなんぞやというのをアプリプログラマ的に説明してみる
Arduino2016.04.12マイコンモジュールの入出力を増やす技を身につけたので言わせてください
Android2016.04.07BLE経由で組み込みソフトのアップデートができるなんてそんな夢みたいな話…あったわ!