1. 產品上電開機後,需要加載BT測試韌體。
啟用藍牙功能
1) echo 0 > /sys/class/rfkill/rfkill0/state // 關閉藍牙電源(依平台而定)
2) echo 1 > /sys/class/rfkill/rfkill0/state // 開啟藍牙電源(依平台而定)
3) brcm_patchram_plus--enable_hci --no2bytes --tosleep 200000 --baudrate 115200 --patchram /system/etc/firmware/bcmdhd.hcd /dev/ttyS0 // 請根據需要更改patchram補丁和UART端口。
4) hciconfig hci0 up 由於藍牙的RF開關放在Wi-Fi的nvram檔案裡,所以還需要讓Wi-Fi也啟動起來
5) ifconfig wlan0 up Wi-Fi啟動
2,IQ儀器載入相應的波形檔案,檔案可由原廠提供或IQ儀器廠商提供。
加載後,配置頻率、輸出功率、頻寬,以及1000個發包數量。如圖所示:
圖1,儀器發包介面
3,使用以下命令進行RX靈敏度測試。
圖2,命令詳解---引用新思BT RF Test Commands for Linux-v09文件
整理後的命令:
BLE_RX 測試:
BLE 接收命令 (LE_接收器_測試): LE_1M
hcitool cmd 0x03 0x0003
hcitool cmd 0x08 0x001d 00 --CH0_2402
hcitool cmd 0x08 0x001f
hcitool cmd 0x08 0x001d 13 --CH19_2440
hcitool cmd 0x08 0x001d 27 --CH39_2480
BLE 接收命令 (LE_接收器_測試): LE_2M
hcitool cmd 0x03 0x0003
hcitool cmd 0x08 0x0033 00 02 00 --CH0_2402
hcitool cmd 0x08 0x001f
hcitool cmd 0x08 0x0033 13 02 00 --CH19_2440
hcitool cmd 0x08 0x0033 27 02 00 --CH39_2480
BLE接收命令(LE_接收器_測試):LE_S8_S2
hcitool cmd 0x03 0x0003
hcitool cmd 0x08 0x0033 00 03 00 --CH0_2402
hcitool cmd 0x08 0x001f
hcitool cmd 0x08 0x0033 13 03 00 --CH19_2440
hcitool cmd 0x08 0x0033 27 03 00 --CH39_2480
4,產品輸入命令後,IQ儀器開始發送1000個封包,點擊 Play。
圖3,儀器開始發送封包
5,透過計算最後兩位16進制數,轉換成10進制數,就是接收到的良好封包數量,並且透過這個公式就可以計算出PER,標準是PER在10%以內。
PER=(1000 - 960) / 1000 = 40/1000 = 4%
常見問題解答(FAQ)
1. 如果在輸入 hcitool cmd 指令後,一直無法顯示有接收封包的數量,可能是什麼原因?
首先要檢查硬體連接是否正確?其次要確認 hcitool cmd 命令是否正確?然後就是 IQ。
所使用的波形檔案和頻率設定是否正確?通常都是這三個原因。
2. 接收靈敏度測得比較差怎麼辦?
先排除硬體連接、儀器線損設定、產品韌體版本等問題後,可以測量鄰近信道的靈敏度是否一致。如果比規格差2~3dB的話,則可以透過RF匹配來改善;如果差5dB以上,則需要考慮nvram中對BT的RF開關配置是否正確,還有PCB的RF走線設計問題。
3. 測試接收靈敏度時,接收的封包數量可以即時顯示嗎?
不可以,必須先準備接收,然後儀器發包,最後產品收包並計算顯示出來。但是發包數量可以自行設定,只需要計算PER即可。
4. 可以同時測試各信道的接收靈敏度嗎?
不行,同一時間內只能測試一個頻道的接收靈敏度,測試另一個頻道時需要儀器切換到相應的頻道上去發送封包。
5. BT 的 hcd 配置檔案使用者可以修改參數嗎?
不行,這個只能由原廠根據客戶的需求來進行修改。
評論