2018年8月5日 星期日

RTL8188 迷你無線網卡在 Raspberry Pi Raspbian 上開啟 AP-Mode 紀錄

今天心血來潮,把之前在某機器人王國清倉大拍賣時撿到的 Raspberry Pi Model B+ 接上在Openlab.Taipei 撿到的 netcore NW337 迷你無線網卡,打算來架個實驗 AP 。



這張 netcore NW337 迷你無線網卡是使用瑞昱的 RTL8188EUS 晶片,之前用過 RTL8188CU 這顆晶片的小網卡,或許是因為比較早期的產品,相容性比這顆 RTL8188EUS 好許多,不過隨著作業系統的更新,現在的 Windows 10 和最新版的 Raspbian ( Kernel 4.14.52+ ) 也支援 RTL8188EUS Station Mode的隨插即用。因為螃蟹卡公司的官方網站在產品資訊的提供相當有限,所以 RTL8188 系列的詳細差異列表可以到 devWiki 查閱。

最近想把樹梅派用這張網卡的 AP Mode 架出簡易 Router,照著樹莓派官網上的文件一步一步做,最後 reboot 起來,發覺網卡並沒有如預期的設定成 AP mode。便開始思考,到底是哪個環節出了問題。

去Google做了一點功課後才發現,原來許多網友在這塊網卡的移植上都是直接重新編譯 patch過的 hostapd 或是直接重新建置驅動程式 ,不然就是一些 4, 5 年前的文章,核心版本不符。
我覺得在移植上比較傾向避免去重新編譯上層的hostapd (註),原因是如果因為改了功能導致其他網卡無法正確運作,那問題會變得更複雜,況且程式套件更新的頻率可能比驅動來得頻繁,哪天新版本下來,更新之後還是會遇到相同的問題(要重新上patch,重新手動建置等等...)。

最後很幸運的在 elinux.org 的 Raspberry Pi 的網卡支援清單 找到了更方便的移植方法,他連結到了這則關於移植 TL-WN725N 這張網卡的討論串

作者 MrEngman 把整個流程,包含 patch過的網卡驅動寫成自動安裝腳本 "install-wifi" 供大家使用。使用者在確認Kernel版本和網卡晶片型號後,使用 install-wifi 指令,能一鍵安裝 8188, 8192eu, 8812au, mt7610 與 mt7612 的驅動和韌體,相當方便,並且在更新驅動之後,用原生的 hostapd v2.4 開啟 AP-Mode 也能正常運作了(包含設定 WPA2 加密)。

完全省了建置 hostapd 的步驟,真是太棒了!

備註:
(03/01/2019)
事實上大多數 WLAN 驅動程式綁定特定版本 hostapd 或是 wpa_supplicant 是常態,或許因為廠商沒辦法確定開源專案下次改版是否會造成硬體不相容,所以會標示清楚該版本的 Linux Driver 是基於哪個版本的公用程式做開發。

沒有留言:

張貼留言