終於到重頭戲啦,也是最麻煩的部分。在一開始我怎麼嘗試就是打不開 Raspberry pi 的藍牙功能,套件也換了好幾個版本都沒改善,甚至從 ubnutu 18.04 版換成現在的 19 版一樣沒解決,一度還懷疑 Raspberry pi 4 是不是把藍牙模組拿掉了。結果好像重開機就沒問題了😅。
安裝藍牙套件
sudo apt install bluetooth bluez libbluetooth-dev libudev-dev# 啟動藍牙sudo systemctl start bluetooth# 關鍵是這個,沒裝好像怎樣都找不到藍牙sudo apt install pi-bluetooth# 接著重新開機sudo shutdown -r now
重新開機後,來測試看看是否藍牙有效
$ hcitool dev
Devices:
hci0 B8:27:EB:D9:EC:C9看到這個就恭喜成功啦
安裝 NodeJS
因為我們等等要用的 line-simple-beacon 是基於 Nodejs 寫的程式,其中也其中也用到了 npm 這個套件管理程式。由於裝 npm 就會順帶裝 nodejs 因此只要下指令裝 npm 就可以了。
sudo apt install npm
NodeJS 降版本
說來話長,太新的nodejs 版本連 npm 都不敢保證能不能正常運作,而 line-simple-beacon 的文件也說超過 10 版本的 nodejs 不能運行,先來看一下我們是幾版
$ node -v
v10.15.2
因此我們只好降版本。網路上有很多讓你安裝軟體源,移除再重裝的方法,我覺得太麻煩了,剛好 npm 上就有一個工具,可以方便你隨時安裝任何版本的 nodejs
sudo npm install n -g
裝好 n 之後我們就挑一個版本來裝,這邊就裝 8.11.3 版
sudo n 8.11.3
接著只要登出(exit) 再登入,就能用 8.11.3 版本的 nodejs 了
$ node -v
v8.11.3
Clone 專案並安裝
clone 下來後,我們進去他的資料夾來安裝
git clone https://github.com/line/line-simple-beacon.gitcd line-simple-beacon/tools/line-simplebeacon-nodejs-sample/npm install
設置到這邊就差不多完成囉