Braveridge社のボタンビーコンをMacで受け取る

GALACTIC1969
GALACTIC1969
2 min readAug 18, 2019

--

node.jsのBLE系のライブラリはHigh Sierra以降のmacOSで動かないのがほとんどで、家でGatewayをやらせていたMacのOSのバージョンを上げられず困っていた。そんな中、「noble-mac」というnobleからフォークされたプロジェクトであれば動くらしいという情報をみて、早速試してみたのでメモしておく。

Photo by Thomas Q on Unsplash

コードはこちら。

Mojave & node.js v10.13.0 で問題なく動いた。ちなみに現状のゲートウェイでは「bleno」を使っていて、これはiBeaconのMajor, Minorを一発で取ってこれた。nobleの場合は特にiBeaconに特化したライブラリではないので、アドバタイジングパケットから取ってくる必要がある。デフォルト設定では、10進数で1(1回押し), 12289(素早く2回押し), 4097(長押し)となる。詳細はコードにて。

このBraveridge社のBLEボタンは押した時に5秒間(10秒?)にわたり数十回Beacon(BLEのアドバタイジングパケット)を発信するもので、AIアシスタントに伝えるまでもないようなルーティンを起動するのにとても便利である。ボタン押下の検知も上記の通りシンプルなコードで済み、あとは複数回検知したときの重複排除処理をするだけなので実装も楽である。BLEなので検知はMacでも、Raspberry Piでも可。ボタンは1個2000円(10個購入時)と割と高価、かつ電池交換不可なのでコスパは悪く思えるかもしれないが、製品保証期間を見ると「工場出荷から 1 年間 もしくは 10000 回使用のうち短期の方」とあるので、1日1回押したとしても27年は持つ計算になる。Amazonからでも買えるので、気になる人は是非買ってみてほしい。

ちなみにAmazonを確認したところ、自分はこの製品を2016/12/4に買っていた。もちろん電池は一個も切れていない。

--

--