【小ネタ】最近買ってよかったものKさん編

(株)スマートエイジングサポートのKです。
私の趣味はスポーツでよくランニングをします。
マラソン大会もよく参加するのでランニングをする時間が長く、音楽を聴きながら走ることが多いです。
その時はスマホを携帯してBT(Blue tooth)イヤホンで音楽を聴いています。
今回はこのBTイヤホンについてです。

1.購入した商品

骨伝導イヤホン

2.買った経緯

まずは骨伝導イヤホンに至るまでのイヤホン遍歴をご紹介します。

①有線イヤホン
はじめの頃は有線のイヤホンを使っていました。
耳にしっかりかかるタイプで走っていてもズレたり落ちないのは良い感じで音楽も綺麗に聞こえました。
しかし、スマホやドリンクをバックパックから取り出す時にこの線が邪魔になることが気になりました。
それから、両耳を塞いでしまうので周囲の音が聞きづらく昼間に走る時だけ使用していました。
そのため、ワイヤレスタイプのBTイヤホンに変えることにしました。

②小型BTイヤホン


小型軽量で装着していて違和感がないものが良いと思い、耳に挟まる小型のタイプを購入しました。
耳穴のサイズに合わせるようにアダプタが数種類用意されていて自分に合ったものを装着できるので
ホルダーがなくとも何とか使えました。
ただ、走っている途中に装着部に汗をかいてしまい、何度か落としたり、
小ささゆえにポケットに入れたまま気付かず洗濯をして壊してしまい、買替えをしました。

③吊り下げ式BTイヤホン


次は耳にぶら下げるように装着するタイプのBTイヤホンを購入しました。
ランニングをしている時に電話がかかってきてもうまく会話ができるようにと思い、ヘッドセットに似た形のものを選びました。
このタイプは装着感があり、走っていると違和感を感じました。
片耳に装着するので音楽を聴く耳と周囲の音を聞く耳に分けて走ることを我慢する必要がありました。
こちらも防水タイプではないので、汗をかくランニングには向かない感じでした。
そして、誤って洗濯ものに入れたままにしてしまって壊してしまいました…(悲劇再び)

④骨伝導BTイヤホン


ランニング仲間の人が使っていて音を聞かせてもらったら綺麗に音楽が聞こえることが分かったので
骨伝導イヤホンを購入することにしました。

3.アピールポイント

・音楽を聴いていても周囲の音が同時に聞こえるので夜でも安心して使用できる
・非常に軽くて装着時の違和感が少ない
・耳の周辺につけていれば音楽が聞こえるのでイヤホン自体が多少ズレても
 (耳に入れるタイプと比較して)装着時の違和感があまりない
・耳の中に汗をかかない。頭部に汗をかいて使用しても丸洗いできるのでトレーニングでも安心して使える
・イヤホンが大きめなので、紛失したり洗濯したりすることもない

4.使用時に気を付けるべきポイント

・周囲がうるさいと音楽がかき消されてしまう(耳を塞いでいないので、想定範囲内ですが…)
・音量を上げすぎると周囲にも音が漏れてしまい電車の中などは気をつかう
(どのタイプのイヤホンにも言えるかもですが…)

以上の点から、ランニング時のイヤホンをお探しの方は骨伝導イヤホンをお勧めします。

タグ: ,

【技術】BLE搭載機器/スマホアプリ開発

Bluetoothモジュールを搭載した湿度制御機器の情報をスマートフォンで取得するシステムの開発依頼があり、BLEモジュールの選定および組込開発とスマホアプリの開発を行いました。

【BLEモジュール】

BLEモジュールは、低消費電力で購入がし易く安価な上、技術情報も取得しやすいLaird Connectivity社の「BL652」を選定しました。

「BL652」 は ノルディック社 nRF52832を使用しています。
https://www.ryoyo.co.jp/product/semiconductor/ireless/laird-bl652/

シリアルインターフェースは、UART/I2C/SPI/ADC/GPIO/PWM/FREQ/output/timersを利用でき、基本ファームウェア(Laird社が配布:smartBASIC runtime engine firmware)の上に、smartBasicで作成したユーザーファームウェアを動作させて利用可能となります。

AE-BL652-BO
AE-BL652-BO

開発当初は、BL652のブレークアウトボードを使用してPCで作成したユーザーファームウェアをダウンロードしながら動作検証を行いました。

【スマホアプリ】

スマホアプリについては、Android OS/iOSのどちらも利用したいというご要望のため「Web Bluetooth」方式で開発しました。
スマホで利用できるブラウザに制限があります。(下記Webサイトに対応ブラウザ情報があります)https://caniuse.com/web-bluetooth

【BLE概要】

BLEでは(親機)のことをCentral(セントラル)、(子機)のことをPeripheral(ペリフェラル)といい、今回は「BL652」をペリフェラル、スマホ側をセントラルとしています。BLEではセントラルからの接続待ちの仕組みで、ペリフェラル機器の「僕はここです」ということを伝える為の無線信号をだします。それを、アドバタイズといいます。ペリフェラル機器は接続待ちの間、定期的にアドバタイズを発信しています。セントラルからペリフェラルを選択してペアリングし1対1の接続通信のことを、GATT(ガット)通信と呼びます。GATT通信ではService(サービス)とCharacteristic(キャラクタリスティック)という概念でデータのやりとりを行います。Service(サービス)とCharacteristic(キャラクタリスティック)にはUUIDという16バイトの一意な番号がつけられています。セントラル機器はUUIDを指定して、Characteristic(キャラクタリスティック)のデータ内容にアクセスします。

●ブラウザーからのGATT通信接続処理フロー

BLEデバイスの検索 →デバイスとのペアリング→ GATT通信 → サービスの取得 → キャラクタリスティックの取得 (RX,TX) をして、送受信を可能にしていきます。

  1. デバイスのスキャン(navigator.bluetooth.requestDevice)  acceptAllDevices: trueでペリフェラルのデバイスがすべて表示されます
  2. 表示されたデバイスの中からLAIRD BL652を探し、ペアリングをします
  3. GATTサーバーに接続(device.gatt.connect)
  4. サービスの取得VSP Service (server.getPrimaryService)
  5. キャラクタリスティックの取得RX(service.getCharacteristic)
  6. キャラクタリスティックの取得TX(service.getCharacteristic)
WEB BLUETOOTH 接続

受信データ表示

WEB BLUETOOTH 受信表示

【POINT】

  • WebからのSendはRX Characteristicに行います。ReadはTX Characteristicから読み取ります。
  • Web接続を行う場合はSSL認証を設定する必要があります。
  • iPhoneからの接続の場合Bluefy – Web BLE Browserを使用すると接続可能です。
タグ: , , , , , , , , , , ,

【技術】BLE通信機能用ソフト開発

HART通信で使用されていた産業機器にBLE通信でも通信できるようにソフト追加
を実施しました。

Bluetoothには、Bluetooth Basic Rate/Enhanced Data Rate (BR/EDR) と
Bluetooth Low Energy (LE)があり、Bluetoothでも一概に同じ処理ではなく、
BLE通信はアドバタイズ受信のGATT通信処理を行わなければいけません。

BLE通信のアプリケーションを開発するには、OSによるGATT APIのサポートが必
要なので環境設定を行いました。
C#やC++言語での開発は、WEB上で検索できるのですがVB.netでのBLE通信がほとんどなくて苦労しました。
C#のプログラムを参考にVB.netにコンバートすることで実装ができました。

お客様のご要望通り、開発、評価込みで2ヶ月で対応することができました。

タグ: , , , , , , , , , , , , , , , , , , , , , ,