地平線旭日?X3派(下文簡稱旭日X3派)作為一款用于機器人的板子,在應用中除了需要高性能BPU的支持,也需要周邊硬件的支持。不同的應用對硬件的性能有不同的需求。如果旭日X3派要連接到帶有熱點的設備上的時候,就可以通過USB WiFi模塊構建鏈接。
如何提升WiFi傳輸速度以滿足不同場景下的開發需求?本次內容《平平無奇縱享絲滑,旭日X3派高速網絡新體驗》,地平線開發者社區2022年度開發者小璽璽將會幫助大家在旭日X3派編譯WiFi驅動,以便開發者們家直接上手“盤”它,真正實現了即拿即用!相關問題歡迎大家注冊加入地平線開發者社區交流討論,配置文件及代碼詳見地平線開發者社區。
普通模塊
運行編譯kernel
驅動激活
輸入sudo nmcli dev wifi查看當前環境的WiFi信息,將USB WiFi模塊插上開發板之后,輸入lsusb看到系統識別這個設備。但由于目前還沒有安裝驅動,所以WiFi的燈是不會亮的。
下載WiFi驅動庫相關文件,拷貝到用戶目錄,即/home/sunrise/。輸入指令sudo cp /home/sunrise/8188eu.ko /lib/modules/4.14.87/拷貝驅動文件,最終文件路徑如下所示。緊接著輸入sudo /sbin/depmod -a 4.14.87,值得注意的是4.14.87是通過指令uname -r得到,輸入depmod指令前請注意一下。
正常輸入sudo modprobe 8188eu是可以激活驅動的,但是在這個板子上,會出現如下錯誤:modprobe: ERROR: could not insert ‘8188eu’: Required key not available(原因就是這個驅動沒有簽名)。將簽名所需文件放進開發板,輸入指令如下:
tar -zxvf x3pi_sign_ko.tar.gz cd x3pi_sign_ko/ sudo ./sign-file-arm64 sha512 ./hobot_fixed_signing_key.pem ./signing_key.x509 /lib/modules/4.14.87/8188eu.ko
隨后輸入sudo modprobe 8188eu,錯誤即可消失,WiFi的燈也亮起來了。再次輸入sudo nmcli dev wifi可以發現,WiFi的數目變多了,信號也更強了。
連接WiFi
輸入sudo nmcli dev,可以看到當前WiFi的連接情況,系統里識別到了兩個WiFi模塊,一個是wlan0,一個是wlxe0e1a993d822。以下指令,用于連接與斷開WiFi。
#### 使用指定模塊連接wifi,利用ifname來指定設備 # 連接到 wlan0 sudo nmcli dev wifi connect "wifi名" password "密碼" ifname wlan0 # 連接到 wlxe0e1a993d822 sudo nmcli dev wifi connect "wifi名" password "密碼" ifname wlxe0e1a993d822 # 關閉指定wifi sudo nmcli dev dis wlan0
利用上述指令連接和關閉WiF。
速度測試
利用wget -c ftp://vrftp.horizon.ai/Open_Explorer/eval_dataset/cifar-10.tar.gz下載文件,來測試不同WiFi的下載速度。
永久啟動
輸入sudo vim /etc/modules,如下所示,在空白行添加8188eu,這樣模塊就永久啟用了,無論是重啟還是開機都會自動激活該模塊。
源碼編譯驅動
下載源碼包并按照如下指令解壓,并給安裝腳本賦予執行權限。
unzip RTL8188EUS_linux_v5.3.9_28540.20180806.zip cd RTL8188EUS_linux_v5.3.9_28540.20180806/ chmod +x install.sh
環境準備
在編譯驅動前,請先安裝所需的依賴工具。
sudo apt-get install bc # ※ 使用以下命令前,請先用命令uname -r 確認下是不是4.14.87 sudo apt-get install linux-headers-4.14.87 # ※使用以下命令前,先確認當前路徑下是不是只有arm64沒有aarch64 sudo ln -s /usr/src/linux-headers-4.14.87/arch/arm64 /usr/src/linux-headers-4.14.87/arch/aarch64
編譯驅動
進入目標文件夾RTL8188EUS_linux_v5.3.9_28540.20180806/,直接執行./install.sh,經過一段時間的編譯之后,會出現如下錯誤:
在出現上述問題之后,保證當前命令行在RTL8188EUS_linux_v5.3.9_28540.20180806/下,之后請按序輸入以下指令。
# 與前面一樣,注意4.14.87版本問題 mkdir -p /lib/modules/4.14.87/kernel/drivers/net/wireless/ # 進入驅動源碼文件夾 cd driver/rtl8188EUS_linux_v5.3.9_28540.20180627 # 安裝編譯好的驅動 sudo su -c "make install"
后續,請按需完成驅動激活、連接WiFi、永久啟動的工作。
高頻模塊
編譯運行kernel
如果系統版本在20221104及之后,使用cd /lib/modules/4.14.87/進入文件夾,輸入sudo hobot-sign-file 88x2bu.ko對ko文件進行簽名,之后輸入sudo /sbin/depmod -a 4.14.87以及sudo insmod 88x2bu.ko更新并加載驅動,這時候我們就能看到WiFi模塊已經亮起來了(如果系統版本在20221104之前驅動使用方式參考上文)。
連接WiFi時候可以利用指令sudo nmcli dev wifi connect "wifi名" password "密碼" ifname wlx200db0c5992c,其中wlx200db0c5992c就是網卡的設備名。
同樣地,如果想永久啟用,輸入sudo vim /etc/modules,在里面添加88x2bu即可。
(啟動驅動后wifi模塊會亮燈)
如果在落地項目中只用USB WiFi模塊,需要關閉板端WiFi來降低信號干擾的話可以,輸入如下指令:
# 關閉板端wifi,板端wifi一般為wlan0,可以通過ifconfig查看 sudo nmcli dev dis wlan0 # 禁用板端wifi ifconfig wlan0 down
源碼編譯驅動
由于不同系統版本編譯方式不同,最近三個系統版本三種編譯方式,版本20220623編譯的ko文件可以拿到20220819上直接使用,但是無法拿到20221104版本上使用(系統版本20220623編譯方式參見地平線開發者社區)。
代碼準備
下載相關文件RTL8812BU.tar.gz和Makefile,將這兩個文件放在旭日X3派的某個文件夾下并進入,執行以下指令:
# 解壓代碼 tar -zxvf RTL8812BU.tar.gz # 替換Makefile文件 cp -f Makefile RTL8812BU_for_Raspbian/ cd RTL8812BU_for_Raspbian
RTL8812BU.tar.gz可以通過git clone https://github.com/fastoe/RTL...下載;
Makefile中添加了針對X3的配置編譯選項,所以要替換掉原始的Makefile文件,添加的部分如下所示:
驅動編譯
- 系統版本20220819
編譯前先安裝一些環境依賴庫:
# 安裝X3內核文件,之前的版本都是利用sudo apt-get install linux-headers-4.14.87安裝 # 以后內核基本都是以hobot-linux-headers 為主了 sudo apt-get install hobot-linux-headers sudo apt install -y dkms bc # 安裝一些依賴庫
進入代碼文件夾cd RTL8812BU,輸入make -j4開始編譯代碼(如果編譯時候內存不夠了,記得改為-j2或者不加),代碼編譯完之后會在當前文件夾下生成88x2bu.ko,利用指令拷貝到系統驅動目錄下sudo cp 88x2bu.ko /lib/modules/4.14.87/。注冊啟動驅動即可。
- 系統版本20221104
編譯前先安裝一些環境依賴庫:
sudo -i # 切換root賬號 # 下面的操作是防止出現錯誤:/bin/sh:scripts/basic/fixdep:not found cd /usr/src/linux-headers-4.14.87/ make scripts sudo apt-get install dkms bc
使用su sunrise切換回用戶賬號,準備好代碼文件后,進入文件夾RTL8812BU_for_Raspbian,輸入make -j4開始編譯代碼(如果編譯時候內存不夠了,記得改為-j2或者不加),代碼編譯完之后會在當前文件夾下生成88x2bu.ko,利用指令拷貝到系統驅動目錄下sudo cp 88x2bu.ko /lib/modules/4.14.87/。注冊啟動驅動即可。
本文轉自地平線開發者社區
原作者:小璽璽
-
嵌入式
+關注
關注
5086文章
19143瀏覽量
306092 -
網絡
+關注
關注
14文章
7580瀏覽量
88933 -
WIFI
+關注
關注
81文章
5300瀏覽量
204025 -
計算機網絡
+關注
關注
3文章
341瀏覽量
22199
發布評論請先 登錄
相關推薦
評論