うわーかんたん。
noble導入して速攻Scan余裕でした
RPi上のBLEを叩いてみようと、ふと思ったんですが、ちょっと面倒なのかなと思ってやってみたところ、意外と簡単だったのでメモ。
nobleを入れるだけでした。
BLEデバイスのスキャンができるまで
Raspberry PiでNode.jsのセットアップが整っている状態で、まずは必要な要素をapt installする。
$ sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev
なにか聞かれてもYしとく。これだけ。
あとは、よしななディレクトリをつくって、
$ npm init -y $ npm install noble
nobleをインストール。index.jsみたいなテキトーなJSファイル作って、
var noble = require('noble') noble.on('discover', function(peripheral){ console.log(peripheral) }) noble.startScanning()
こんな感じでScanして、その結果をconsole出力するだけのコードを書く。あとは、node index.js
すると、周辺にあるBLEデバイスのScan結果が、バァーっとターミナルに表示されます。これでおしまい。
本当に簡単でした
あとは、テキトーにPeripheralに接続して、ReadなりWriteなりすればOK。Androidとは違ってPromiseとか駆使すれば、コールバックの嵐にはならなそう。これは使えるぞ・・・!