2018年1月3日 星期三

Linkit 7697 iBeacon Scan問題記錄

由於想使用Linkit7697當iBeacon做其他的應用,發現了2個問題

首先使用LBLE的example BeaconAdvertisement當iBeacon發射

其中Source Code有一行-->beaconData.configAsIBeacon(uuid, 01, 02, -40);

代表發射時會帶UUIDMajorMinorRSSI

接收也會收到相同的資訊

接下來打開在LBLEScanPeripherals的example燒進去

開啟serial monitor卻出現以下

iBeacon-> UUID: E09610A7-F5D0-60B0-D248-FBDFB56DC5E2  Major:256  Minor:512  txPower:216



怪怪! 跟發射出來的資訊完全對不上,連UUID都是錯的

發射端的UUID--> LBLEUuid uuid("E2C56DB5-DFFB-48D2-B060-D0F5A71096E0");

但在發射修改MajorMinor,接收的數值會跟著變化

所以可以確認這個不正確的UUID就是BeaconAdvertisementiBeacon,就是完全對不上發射的訊息

猜測是發射是十進位,而接收不知道變成什麼進制了

接下來手機使用Locate Beacon這個APP,將手機變成iBeacon


結果在接收端完全沒收到A手機的iBeacon訊息



為了測試手機是否出了問題,我用了另一支B手機的APP,卻完全可以顯示出A手機當作iBeacon的訊息

找到兩個奇怪的bug

1、LBLEScanPeripherals的example找不到不是Linkit7697以外的iBeacon,推測是被function block住了才沒顯示出來

2、 LBLE的BeaconAdvertisemen的example(發射)與LBLEScanPeripherals的example(接收),在接收端收到的訊息與發射端廣播的訊息(UUIDMajorMinorRSSI)對不上,推測是進制轉換的問題

需要MTK大大們的協助了

沒有留言:

張貼留言

FB設定搶先看的方式

設定搶先看的兩種方式 A1. 先到我家的日常粉絲團按下 …( 紅框處 ) A2. 按下追蹤中 ( 紅框處 ) A3. 按下搶先看 ( 紅框處 ) A4. 完成!!! 另一種方式 ...