跳到主要內容

發表文章

目前顯示的是 9月, 2016的文章

使用藍牙BLE 讓iphone android 連接樹莓派3 raspberry pi 3

        Raspberry PI 3 終於內建藍牙與網路晶片 這個晶片有點強大,可以 同時 讓Wifi 與 BLE 和 SPP (RF Com) 同時繁忙通訊都沒有問題。        Raspberry PI 如果是當成藍牙Client 連結身邊的BLE裝置,例如ibeancon、智慧手環、智慧手錶,那只要使用簡單hcitool搭配hciconfig 指令就可以達到將資料要回來,在網路關鍵字一下就可以找到如何使用hcitool 連線並要得資料。      手機要與 Raspberry PI連線的方法可以透過,wifi 或是藍牙,但是操作上使用藍牙比較直覺與簡易。但是要讓手機連線 Raspberry PI, Raspberry PI上就需要將藍牙裝置當成Server,這件事情就需要一些程式碼上的撰寫。     現在的文件說到關於如何將 Raspberry PI藍牙裝置當成Server的文章並不太多,開發上總感覺困難重重,我也是在這裡停滯了好多天,不斷的搜尋解決方法,因為通起來了,資料來自網路所以也回饋給網路,讓下一個使用者減少這類問題的負擔。 不過目前這個方法未來開發資源越來越齊備可能不敷使用,但至少現在是可用的備案。     網路上搜尋之後,整體套件如下 藍牙硬體<== BlueZ <== Nodejs(Bleno) <== Node Ble <==  Node  Socket  <==你的程式 我們發現藍牙要動起來通常會倚賴BlueZ的套件,好在的是最新的版作業系統已經將BlueZ提升到5.23,支援BLE了。 所以安裝BlueZ套件這件事情就可以省略。        接著安裝 Node 環境 , http://blog.itist.tw/2016/04/using-raspberry-pi-3-to-build-eddystone-beacons-with-raspbian-jessie.html 於這篇網址提到安裝Node的快速方法,如果隨著時間推移太舊或是失效,在搜尋一下如何安裝Node即可解決。 題外話:Linux上開發要有所體悟,所有的架構都是在變動的,隨著版本的變動舊的API可能就會改變或是失效,期待不變與或是統一開發方式都是不太切合