—
先確定手機有支援!
不是說藍牙 4.0 就一定有支援,因為 Beacon 使用的是 「低功耗」 模式所以最好還是上網查一下
—
什麼是 Beacon 以及有哪些種類?
- 淺談三大低功耗藍牙beacon標準
- 两分钟搞明白Beacon,iBeacon和EddyStone
- 谷歌发力物联网:推开源蓝牙信标平台Eddystone
- EddyStone基本功能涵蓋完整 Beacon應用開發一把罩
- Tutorial: Using Beacon and iBeacon Technologies on Your iPhone / iPad with PubNub | Guest Post
—
Beacon 應用
—
開發前準備工具
- Beacon Simulator Android 裝這個 APP 可以讓手機模擬成 Beacon 裝置,支援 iBeacon, AltBeacon, Eddystone 多種 Beacon 訊號
- nRF Connect for Mobile 可以搜尋身邊所有雜七雜八的訊號源
—
iBeacon
- cordova-plugin-beacon
- MactsAsBeacon 讓 Mac 模擬 Beacon
其實 iBeacon 就只是規範了格式內容
—
Eddystone
UID
1 |
{"address":"41:B4:78:EC:E1:0E","rssi":-62,"scanRecord":"AwOq/hUWqv4Av1Np6Pg7gyQN2E8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=","advertisementData":{"kCBAdvDataServiceUUIDs":["0000feaa-0000-1000-8000-00805f9b34fb"],"kCBAdvDataServiceData":{"0000feaa-0000-1000-8000-00805f9b34fb":"AL9Taej4O4MkDdhPAAAAAAAA"}},"__isConnected":false,"txPower":-65,"nid":{"0":83,"1":105,"2":232,"3":248,"4":59,"5":131,"6":36,"7":13,"8":216,"9":79},"bid":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0}} |
URL
1 |
{"address":"4F:39:A7:0E:14:DF","rssi":-69,"scanRecord":"AwOq/gsWqv4QuwBhbGVhAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=","advertisementData":{"kCBAdvDataServiceUUIDs":["0000feaa-0000-1000-8000-00805f9b34fb"],"kCBAdvDataServiceData":{"0000feaa-0000-1000-8000-00805f9b34fb":"ELsAYWxlYQM="}},"__isConnected":false,"txPower":-69,"url":"http://www.alea.net/"} |
TLM
1 |
{"address":"52:AF:55:94:B6:30","rssi":-57,"scanRecord":"AwOq/hEWqv4gAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=","advertisementData":{"kCBAdvDataServiceUUIDs":["0000feaa-0000-1000-8000-00805f9b34fb"],"kCBAdvDataServiceData":{"0000feaa-0000-1000-8000-00805f9b34fb":"IAAAAIAAAAAAAAAAAAA="}},"__isConnected":false,"voltage":0,"temperature":32768,"adv_cnt":0,"dsec_cnt":0} |
—
cordova-plugin-ble : iBeacon
1 |
{"address":"47:9D:98:3D:FB:FA","rssi":-78,"scanRecord":"Gv9MAAIVU3thjMZORxyLvdbtjHV8zQAAAAC/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=","advertisementData":{"kCBAdvDataManufacturerData":"TAACFVN7YYzGTkcci73W7Yx1fM0AAAAAvw=="}} |
1 |
// 1aff4c000215537b618cc64e471c8bbdd6ed8c757ccd00000000bf0000000000000000000000000000000000000000000000000000000000000000000000 |
PHP 解譯
1 2 3 4 5 6 7 8 9 10 |
<?php $BeaconData = 'TAACFVN7YYzGTkcci73W7Yx1fM0AAAAAvw=='; $Hex = bin2hex(base64_decode($BeaconData)); // 4c000215537b618cc64e471c8bbdd6ed8c757ccd00000000bf $TxData = substr( $Hex, -2 ); $TxPower = '-'. ( 256 - hexdec($TxData) ); // -65 |
- 4c00021 是 Apple 規定的 iBeacon 開頭,藉以辨別是否為 iBeacon 裝置
- 5537b618cc64e471c8bbdd6ed8c757ccd 為 UUID
- 0000 是 Major ID ,視情況轉為 10 進制
- 0000 是 Minor ID ,視情況轉為 10 進制
- bf 是 Tx Power 將 16 進制轉 10 進制之後,用 256 減一下加上負號就完成了
—
1 2 |
// 0303aafe 15 16aafe 00 bf 5369e8f83b83240dd84f 123456789012 // uid tx_power |
—
cordova-plugin-ble : Eddystone UID
1 |
{"address":"41:1C:EA:7F:77:FC","rssi":-65,"scanRecord":"AwOq/hUWqv4Av1Np6Pg7gyQN2E8SNFZ4kBIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=","advertisementData":{"kCBAdvDataServiceUUIDs":["0000feaa-0000-1000-8000-00805f9b34fb"],"kCBAdvDataServiceData":{"0000feaa-0000-1000-8000-00805f9b34fb":"AL9Taej4O4MkDdhPEjRWeJAS"}}} |
Json 可視化
1 2 3 4 5 6 7 8 |
{ "kCBAdvDataServiceUUIDs":[ "0000feaa-0000-1000-8000-00805f9b34fb" ], "kCBAdvDataServiceData":{ "0000feaa-0000-1000-8000-00805f9b34fb":"AL9Taej4O4MkDdhPAAAAAAAA" } } |
一樣將
1 2 3 4 5 6 7 |
<?php $BeaconData = 'AL9Taej4O4MkDdhPAAAAAAAA'; $Hex = bin2hex(base64_decode($BeaconData)); // 00bf5369e8f83b83240dd84f000000000000 // 0303aafe 15 16aafe 00 bf 5369e8f83b83240dd84f 123456789012 // uid tx_power // 5369e8f83b83240dd84f |
—
URL
1 |
AwOq/gsWqv4QuwBhbGVhAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= |
1 2 3 4 |
// http://www.alea.net/ // 0303aafe0b16aafe10bb00616c65610300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 // 0303aafe 0b 16aafe 10 bb 00616c656103 // url tx_power |
—
TLM
1 |
// 0303aafe1116aafe200000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 |
—
EID
1 |
{"address":"50:71:5D:0E:FE:50","rssi":-65,"scanRecord":"AwOq/hEWqv4wv9ZYij7/huQ/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=","advertisementData":{"kCBAdvDataServiceUUIDs":["0000feaa-0000-1000-8000-00805f9b34fb"],"kCBAdvDataServiceData":{"0000feaa-0000-1000-8000-00805f9b34fb":"ML/WWIo+/4bkPwAAAAA="}}} |
1 |
// 0303aafe1116aafe30bfd6588a3eff86e43f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 |
—
AltBeacon
1 |
{"address":"6F:D8:4A:98:F1:D7","rssi":-63,"scanRecord":"G////76sSzfidWJuSte0RhqKO1uItAAAAAC7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=","advertisementData":{"kCBAdvDataManufacturerData":"//++rEs34nVibkrXtEYaijtbiLQAAAAAuwA="}} |
—
室內微定位應用
- 某間廠商提供 iPhone 定位 RSSI 回傳值
- Understanding ibeacon distancing
- THE BEACON EXPERIMENTS: LOW-ENERGY BLUETOOTH DEVICES IN ACTION
實際測試也是如此,RSSI 數值非常容易受到影響,要拿來做精準的定位應用是不現實的
例如室內尋寶就還是無法實現,在 WiFi 時代就在想這件事情,多年後的現在 (2018 年) 還是無法實現
—
1 2 |
USBeacon 單支零售金額是 600 元 電池版 Beacon 單支零售金額是 1200 元 |
1 |
NT$500 |
—
—
55 total views, 2 views today