歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu安裝無線網卡驅動 Wifi/BT BCM4330 (AP6383)

Ubuntu安裝無線網卡驅動 Wifi/BT BCM4330 (AP6383)

日期:2017/2/28 13:48:34   编辑:Linux教程

像BCM4330 (AP6383)這樣的Wifi/藍牙一體化芯片常見於一些平板電腦、筆記本和mini pc中。特別是z3735、z8300、core m這些芯片的平板電腦很常見。AP6210也比較常見,但目前暫未解決其驅動問題。

如何在搭載這樣芯片的設備中安裝Linux驅動呢?Ubuntu16.04版本的內核中仍然沒有封裝對應驅動(Ps:貌似Intel和Ubuntu合作,Intel NUC可以完美安裝Ubuntu)。

首先到官網下載你喜歡的Ubuntu版本(建議下載高版本)。制作U盤啟動工具,可以參考《平板電腦安裝Ubuntu教程》。設置BIOS後進入引導選擇菜單請選擇:“Try Ubuntu without install”這樣的選項,先進入到CD模式的Ubuntu下。

如果你的設備在這樣的模式下能夠上網,藍牙、電源管理等各項驅動也正常,那麼恭喜你中獎了,可以直接點擊桌面的Install Ubuntu安裝系統(如下圖)。


並非所有人都那麼幸運。就像開頭提到的,很多搭載混合功能的芯片並沒有被Ubuntu等Linux衍生版操作系統封裝驅動。因此需要手動安裝驅動。

在另外一台設備上下載驅動再安裝?這樣太麻煩了。告訴大家一個小訣竅,如果你有安卓手機的話,在連接WIFI的情況使用USB數據線連接裝有Ubuntu的設備,找到設置下的“個人熱點”,開啟USB網絡共享。(別問我iphone可以不,只要你有流量就沒有不可以的事情????)。



之後在你的Ubuntu設置網絡為自動,即可連接網絡。聯網安裝過程可以自動下載一些東西,很方便。



安裝Ubuntu完畢後,下載brcmfmac4330-sdio.bin文件。將其放到/lib/firmware/brcm/目錄下,如果沒有brcm,請mkdir一個。然後到你的設備官網下載Windows版本的wifi驅動文件。找到其中的brcmfmac4330-sdio.txt文件並放到同一個目錄下(/lib/firmware/brcm/)。

文件的內容可能是這樣的:

#十行以後默認不顯示,點擊右上角可以查看。
#Sample variables file for BCM94330 SD FC AGB board T77H360.04_EVT5_20120731
manfid=0x2d0
prodid=0x0547
vendid=0x14e4
devid=0x4360
boardtype=0x05e1
boardrev=0x1202
boardflags=0x10080a00
nocrc=1
xtalfreq=26000
boardnum=22
macaddr=00:90:4c:c5:12:38
ag0=0x40
ag1=0xBF
aa2g=1
aa5g=1
ccode=all
pa0itssit=0x20
pa0b0=4924
pa0b1=-595
pa0b2=-157
rssismf2g=0xa
rssismc2g=0x3
rssisav2g=0x7
#rssi params for 5GHz
rssismf5g=0x4
rssismc5g=0x3
rssisav5g=0x7
#PA parameters for lower a-band
pa1lob0=5050
pa1lob1=-630
pa1lob2=-195
#PA parameters for midband
pa1b0=4880
pa1b1=-625
pa1b2=-200
#PA parameters for high band
pa1hib0=4880
pa1hib1=-620
pa1hib2=-190
rxpo5g=0
maxp2ga0=0x44
maxp5ga0=0x3A
maxp5gla0=0x3A
maxp5gha0=0x3A
# 2.4G Tx Power offsets
ofdm2gpo=0x22222222
mcs2gpo0=0x4444
mcs2gpo1=0x4444
# 5G Tx Power offsets
ofdm5gpo=0x00000000
ofdm5glpo=0x00000000
ofdm5ghpo=0x00000000
mcs5gpo0=0x2222
mcs5gpo1=0x2222
mcs5glpo0=0x2222
mcs5glpo1=0x2222
mcs5ghpo0=0x2222
mcs5ghpo1=0x2222
sromrev=3
il0macaddr=00:90:4c:c5:12:38
wl0id=0x431b
cckPwrOffset=6
triso2g=3
#swctrlmap_2g=0x44844484,0x42824282,0x42824282,0x18282,0x1ff
swctrlmap_2g=0x04040404,0x02020202,0x02020202,0x18282,0x1ff
triso5g=6
swctrlmap_5g=0x10101010,0x28282020,0x20202020,0x10202,0x0f8
noise_cal_ref_2g=53
rfreg033=0x19
rfreg033_cck=0x1f
dacrate2g=160
dacrate5g=160
txalpfbyp2g=1
bphyscale=17
cckPwrIdxCorr=-15
pacalpwr5glo=13
pacalpwr5glo1=11
pacalpwr5g=13
pacalpwr5g1=11
pacalpwr5ghi=13
pacalpwr5ghi1=11
#pacalpwr2g1=13
#pacalath2g=180
#pacalidx2g1=55
pacalpwr2g=13
txgaintbl=1
rfreg088=15
cckdigfilttype=20
noise_cal_adj_2g=-3
#wake on wireless LAN
sd_gpout=0
sd_gpval=1
sd_gpdc=0


總之需要保證有以下兩個文件,且brcmfmac4330-sdio.txt文件是你的廠商提供的有效文件,驅動才能正常工作:

/lib/firmware/brcm/brcmfmac4330-sdio.bin
/lib/firmware/brcm/brcmfmac4330-sdio.txt


執行這個Linux命令:

$ cat /sys/bus/acpi/devices/INT33BB\:00/power_state


如果返回

D3cold


說明你的ACPI沒有打開,wifi模塊不會正常工作。需要執行這個命令:

echo on > /sys/bus/platform/devices/INT33BB\:00/power/control


這個命令需要sudo權限,如果無法執行,那麼vim修改一下即可。

最後reboot,發現Wifi可以正常連接。





很遺憾BCM4330 (AP6383)的藍牙驅動我調試後一直不穩定,無法正常使用,如果我調試成功將會在此放出藍牙驅動的安裝方法。需要使用藍牙功能可以先買一個USB藍牙,很小巧,即插即用。

後注:

不是所有型號的芯片都需要用這樣的驅動方法。比如“rtl8723bs”這個Wifi/Bt/FM三合一芯片,可以直接clone驅動代碼編譯:https://github.com/hadess/rtl8723bs,編譯完畢reboot後wifi即可使用。藍牙驅動可以試試:https://github.com/lwfinger/rtl8723bs_bt。朋友冀兄友情提示:rtl8723bs在某些設備上存在死機的情況,如果出現肯定在1小時之內,如果2小時都沒出現應該就沒有問題了,請注意!

Copyright © Linux教程網 All Rights Reserved