拆解$19的Bluetooth 5.0 Dongle
最近在深水埗腦場看到一款只賣$19的Bluetooth 5.0 dongle,這簡直令人眼前一亮!要知道支援Bluetooth 5.0的dongle在世上絕無僅有,而$19這個價錢甚至比同場另一款只支援Bluetooth 4.0的dongle便宜一半。在好奇心、蔗渣的價錢和自己對Bluetooth dongle有實際需要的情況下,就買了一隻回家一探究竟。最後結論想當然是「伏味濃」。
中國國產Bluetooth 5.0晶片?
根據包裝上的網址是藍牙晶片的網址,這隻「無牌」dongle使用的藍牙晶片是BR8041,是一款由北京百瑞互聯開發,也大概是現時唯一一款「國產」的Bluetooth 5.0晶片。這晶片亦已經通過官方Bluetooth SIG認證。後來我將dongle外殼拆開檢查,也證實是用相同型號的晶片:
接下來插進電腦試一試。這一款dongle插進Windows 10 PC後無需安裝任何驅動程式即可使用,代表它支援Windows內置的Microsoft Bluetooth驅動程式。接下來第一件事是先看看電腦所認出的Bluetooth版本:
一般網上教大家在Windows檢查Blueooth版本的方法都是查看HCI和LMP這兩個通訊協定的回報版本。在這裡可以見到兩個版本都是9.x,正是Bluetooth 5.0對應的版本,一般人看到應該會信服吧?
(題外話:從MAC亦可得知這一隻dongle是出自一間叫Cyber Blue (HK) Limited的公司。)
由於我手上沒有Bluetooth 5.0專屬的裝置,無法實測它的支援版本。但我認識有人擁有同一款的dongle卻無法與他的5.0喇叭連接,所以這dongle是否真的支援Bluetooth 5.0仍然有疑問。
然後再看下去就有點有趣了:
回報的裝置名稱竟然是CSR8510 A10!那是由英國Cambridge Silicon Radio開發,現時世上其中一款最廉價而被廣泛使用的藍牙晶片,不過最高只能支援Bluetooth 4.0。網上有說BR8041其實只是硬件上支援 Bluetooth 5.0,但沒有相應的驅動,卻能同時兼容CSR8510的驅動,所以會被Windows認作CSR8510。不過哪有晶片廠商造了晶片出來又不提供相應的驅動,同時又竟能與其他廠的驅動相容?合理的解䆁大概就只有這個BR8041根本就是直接複製CSR8510的設計再偽造一些Bluetooth 5.0的硬件資訊而已,其本質上應該也只能支援Bluetooth 4.0。至於為麼BR8041能被Bluetooth SIG認證為Bluetooth 5.0產品就不得而知了。
與真CSR8510比較
其實我2年前也買了另一隻真材實料使用CSR8510的無牌Bluetooth dongle,同樣是$19。藉此機會也可以比較一下兩者。先比較一下硬件資訊:
CSR8510 dongle的HCI及LMP版本正確識別為Bluetooth 4.0對應的6.x,至於其他資料亦與BR8041 dongle所顯示的大致相同。
(題外話:再一看MAC地址發現原來它也是Cyber Blue (HK) Limited的產品,而且尾碼只差2個位,相信這型號所有產品都是使用同一MAC,如果周邊有同款的dongle,應該會有訊號衝突。)
然後我又好奇這兩隻dongles在Linux上又會出現什麼資訊,所以在Linux上我又行了 `lsusb` 檢查一下:
# Bluetooth 5.0 Dongle # ============================ Bus 001 Device 015: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode) Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 224 Wireless bDeviceSubClass 1 Radio Frequency bDeviceProtocol 1 Bluetooth bMaxPacketSize0 64 idVendor 0x0a12 Cambridge Silicon Radio, Ltd idProduct 0x0001 Bluetooth Dongle (HCI mode) bcdDevice 88.91 iManufacturer 0 iProduct 2 USB1.1-A瘴喁 iSerial 0 ...
# CSR8510 Bluetooth 4.0 Dongle # ============================== Bus 001 Device 017: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode) Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 224 Wireless bDeviceSubClass 1 Radio Frequency bDeviceProtocol 1 Bluetooth bMaxPacketSize0 64 idVendor 0x0a12 Cambridge Silicon Radio, Ltd idProduct 0x0001 Bluetooth Dongle (HCI mode) bcdDevice 88.91 iManufacturer 0 iProduct 2 CSR8510 A10 iSerial 0 ...
可以見到BR8041 dongle都是載有和CSR8510幾乎完全一樣的資訊,不過就被當成USB1.1的裝置。
配對測試
比較完資訊後,我就想測試兩者能否連接裝置,我手上有以下藍牙耳機:
- Sony WF-1000XM3 (Bluetooth 4.2,已知與PC兼容性差)
- Sudio VASA BLA (Bluetooth 4.1)
(注:Bluetooth 4.2和4.1的裝置能與Bluetooth 4.0配對,但或會缺失部份功能)
在Windows上,兩款dongle都能成功與以上兩款耳機配對和播放音效,但只有VASA BLE能正常進行通話,WF-1000XM3則在進行一次通話後就卡死在收音模式,Windows更無法繼續與之通訊,必需斷線後重新連接。
在Linux(Manjaro)上BR8041 dongle卻是完全無法使用,反而CSR8510 dongle能正常運作,並成功與Sudio VASA BLA配對、播放聲音及通話。Sony WF-1000XM3則只能配對,但無法連接到聲音輸出或其他功能。
從這個測試可以知道BR8041在一般Linux系統上是無法使用,而在Windows上它和CSR8510一樣都可以正常運作。(題外要吐糟的是Sony WF-1000XM3與PC系統的支援真的很差,可能是因為有太多自家科技在內吧!)
傳輸速度測試
Bluetooth 5.0的理論傳輸速度可達4.0的兩倍。為進一步猜測BR8041 dongle是否真的支援Bluetooth 5.0,我就嘗試從Windows傳送一個大約5MB的檔案到在半米距離內,支援Bluetooth 5.0的Sony Xperia 1上,各重覆5次,看看速度如何:
- BR8041 dongle:平均需時62.6秒(~82 KB/s)
- CSR8510 dongle:平均需時49.2秒(~105 KB/s)
兩隻dongle所達到的傳輸速度都是典型Bluetooth 4.0 dongle可達到的速度,而BR8041 dongle比CSR8510 dongle還慢了一截。從這個結果看起來BR8041只在用Bluetooth 4.0的傳輸模式,不過其實仍無法完全證實它無法支援Bluetooth 5.0,因為這亦有可能是Microsoft的驅動沒有將連接改成Bluetooth 5.0高速模式的緣固。最多只可以說:在Windows的一般使用環境下,BR8041的性能還要比低端的CSR8510 dongle差一點。
總括來說,在有限的測試下,這一隻BR8041 dongle是否真的支援Bluetooth 5.0還是很耐人尋味,它有可能只是CSR8510這款Bluetooth 4.0晶片的贗品,而且性能比同一生產商以前出品的CSR 4.0 dongle更加不濟,但至少還是可以將它當作普通的Bluetooth 4.0 dongle使用。$19這個價錢,還是不要有什麼特別的期望。