
214
|
第十三章 藍牙無線傳輸
address: '32:BF:50:C1:FB:A6',
data: [Object],
rssi: -77 } ] }
若想深入了解 BLE 協定每個低階位元組的意義,那麼 Noble.js 程式庫(下一小節介紹)
更為好用。
Noble.js
有了 Noble.js 這套程式庫,我們就能從任何一台運行 Node.js 的電腦探索藍牙服務。讀
者可先看看 Noble.js 的入門指引文件(
https://github.com/sandeepmistry/noble/wiki/Getting-
started
)。
若是 Edison 開發板,你必須準備好藍牙電波訊號,最簡單的確認方式是先關閉再打開:
# rfkill unblock bluetooth
Tessel 2 操控BLE 時,也是使用Noble.js 這套程式庫(
http://tessel.github.io/t2-start/
modules/ble.html
)。
經由 Noble,我們就能發現且讀寫來自周邊裝置的特徵。
首先做個簡單的掃描,搜尋四周的藍牙裝置:
// simple_scan.js
var noble=require('noble');
// 追蹤藍牙功能開啟與否
noble.on('stateChange', function(state) {
// 必須供電,才有訊號
if (state === 'poweredOn') {
noble.startScanning([], false);