BLEといえば
- 省電力!
- ペアリングいらず!
- IoTに最適!
とメリットだらけです。
ただし、大きな弱点として
通信可能距離が非常に短いことが挙げられます。
ほとんどは数メートル、頑張って30メートルあたりでしょうか。
ですが私は、その規格を、越えたい!!
BLEを使って長距離通信
ということで長距離通信を頑張ってみます。
条件は
- 2人のスマートフォン所有者が通信を行う
- 通信にはBLEを使う
これを満たしたものを作成したいと思います。
まずはこちらをご覧ください。
keynote
以下編み出した手法に沿って作成していきます。
言い訳は後で書きます。
言い訳するまで読んでください。
申し訳ありません。
実装
今回はBLE Nanoを利用します。
ピン付きですと厚みが出てしまうのでピンが付いていない本体のみを購入しました。
ピンを使わずに書き込む必要があるのでスルホール用ワイヤを利用して書き込んだのですが、アクロバティックな書き込みになりました。
コードはBLE NanoサンプルのSimpleChatをベースに、
Connect時の初期化動作を無くし、ループ部に以下コードを追加することで定期的に発信することにしました。
bufにスマートフォンから入力された文字列が入っています。
つまり変数に入れたら、次に書き込まれるまでそのまま放置って訳です。
ble.updateCharacteristicValue(characteristic2.getValueAttribute().getHandle(), rx_buf, rx_buf_num);
ボタン電池で動作することを確認できればBLE Nanoの実装は終了です。
後はハガキっぽいサイズのダンボールを用意し、
埋め込みます。
動作確認
こんな感じになります。
スマートフォンアプリは、BLE Nanoのサンプルアプリをベースに作成しました。
音楽とかつけることでおシャンに紹介です。
ここで問題
後は郵便局に渡すだけなんですが、、、
このボタン電池、充電不可とはいえリチウムなんですよね。
陸送なら問題ないらしいですが、ダンボールの間に裸の電池+基盤なんて、いろいろと面倒そうですよね。
よくわからない物に付き合ってもらうのも悪いので、諦めます。
そこで代替案としてこんな感じにしました。
置き手紙袋
今や家族間のやりとりは基本LINEです。
しかしですね、家に帰って置き手紙がある感覚もいいものだと思うんですよ。
そこでこの置き手紙袋です。
決して家の外からではメッセージを入手することはできないですが、家に帰ればスマートフォンで情報を入手できる程よい不便さ。
袋は100円ショップで買いました。
はたして、こんな物で暖かさを感じることはできるのでしょうか。
結果
おそらく鉛筆のほうが便利。