亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

什么是iBeacon藍牙配置文件?

什么是iBeacon藍牙配置文件?

蝴蝶刀刀 2019-07-04 10:26:40
什么是iBeacon藍牙配置文件?我想用一些藍牙低能量開發工具包來創建我自己的iBeacon。蘋果還沒有發布iBeacons的規范,但是一些硬件開發人員已經從AirLocate示例代碼中反向設計了iBeacon,并開始銷售iBeacondev工具包。艾比肯藍牙配置文件是什么?藍牙低能使用GATT的LEProfile服務發現。因此,我認為我們需要知道屬性句柄、屬性類型、屬性值,以及iBecon屬性的屬性權限。因此,對于一個UUID為E2C56DB5-DFFB-48D2-B060-D0F5A71096E0的i信標來說,主要值為1,而次要值為1,藍牙GATT Profile服務是什么?以下是我從蘋果論壇和文檔中得出的一些假設。您只需要查看藍牙外圍設備的配置文件服務(GATT)就可以知道它是iBeacon。主鍵和小鍵在此配置文件服務的某個地方編碼。以下是一些擁有iBeaconDev工具包的公司,它們似乎已經知道了這一點:http://redbearlab.com/ibeacon/http://kontakt.io/希望我們能及時在Bluegin.org上發布這樣的個人資料,如下所示:https:/www.藍圖.org/en-us/規范/采用-規范
查看完整描述

3 回答

?
大話西游666

TA貢獻1817條經驗 獲得超14個贊

對于具有極大UUID的iBeaconE2C56DB5-DFFB-48D2-B060-D0F5A71096E0主修0小調0,以及校準的TX功率-59RSSI,發送的BLE廣告包如下所示:


d6 be 89 8e 40 24 05 a2 17 6e 3d 71 02 01 1a 1a ff 4c 00 02 15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00 00 c5 52 ab 8d 38 a5


此包可細分如下:


d6 be 89 8e # Access address for advertising data (this is always the same fixed value)

40 # Advertising Channel PDU Header byte 0.  Contains: (type = 0), (tx add = 1), (rx add = 0)

24 # Advertising Channel PDU Header byte 1.  Contains:  (length = total bytes of the advertising payload + 6 bytes for the BLE mac address.)

05 a2 17 6e 3d 71 # Bluetooth Mac address (note this is a spoofed address)

02 01 1a 1a ff 4c 00 02 15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00 00 c5 # Bluetooth advertisement

52 ab 8d 38 a5 # checksum

該包的關鍵部分是藍牙廣告,可以這樣細分:


02 # Number of bytes that follow in first AD structure

01 # Flags AD type

1A # Flags value 0x1A = 000011010  

   bit 0 (OFF) LE Limited Discoverable Mode

   bit 1 (ON) LE General Discoverable Mode

   bit 2 (OFF) BR/EDR Not Supported

   bit 3 (ON) Simultaneous LE and BR/EDR to Same Device Capable (controller)

   bit 4 (ON) Simultaneous LE and BR/EDR to Same Device Capable (Host)

1A # Number of bytes that follow in second (and last) AD structure

FF # Manufacturer specific data AD type

4C 00 # Company identifier code (0x004C == Apple)

02 # Byte 0 of iBeacon advertisement indicator

15 # Byte 1 of iBeacon advertisement indicator

e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 # iBeacon proximity uuid

00 00 # major 

00 00 # minor 

c5 # The 2's complement of the calibrated Tx Power

可以配置為發送特定廣告的任何藍牙le設備都可以生成上述分組。我已經配置了一臺使用Blueez的Linux計算機來發送這個廣告,運行Apple AirLocate測試代碼的iOS 7設備將其作為帶有上述字段的iBeacon。見:使用Blueez Stack作為外圍設備(廣告)

這,這個博客有關于逆向工程過程的全部細節。


查看完整回答
反對 回復 2019-07-04
?
紫衣仙女

TA貢獻1839條經驗 獲得超15個贊

它似乎是基于廣告數據,特別是制造商的數據:

4C00 02 15 585CDE931B0142CC9A1325009BEDC65E 0000 0000 C5<company identifier (2 bytes)> <type (1 byte)> <data length (1 byte)>
    <uuid (16 bytes)> <major (2 bytes)> <minor (2 bytes)> <RSSI @ 1m>
  • 蘋果公司標識符(小終端),0x004c
  • 數據類型,0x02=>iBeacon
  • 數據長度,0x15=21
  • UUID:585CDE931B0142CC9A1325009BEDC65E
  • 專業:0000
  • 未成年人:0000
  • 1米測量功率:0xc5=-59

我有這個Node.js腳本在Linux上使用示例AirLocate應用程序示例。


查看完整回答
反對 回復 2019-07-04
  • AAAAA1
    AAAAA1
    兄弟,蘋果公司標識符4C 00可不可以改
  • MinewTech
    MinewTech
    可以的,參考https://www.minew.com/product-category/lbs-products/bluetooth-beacon/
  • 3 回答
  • 0 關注
  • 1215 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號