1. 程式人生 > >樹莓派3b——使用360wifi(小度wifi、小米wifi)開啟熱點

樹莓派3b——使用360wifi(小度wifi、小米wifi)開啟熱點

前言

樹莓派3b板子自帶了wifi模組,但wifi模組只能開啟網絡卡模式或熱點模式,也就是說使用自身的wifi開了熱點後,就不能在連線其他的wifi了。當然,使用自身的wifi開啟熱點,然後額外插入其他usb網絡卡連線網路,也是一種方法。本文著重敘述如何使用360wifi這類usb網絡卡來開啟熱點。

硬體環境:樹莓派3b、360隨身wifi2代(小度wifi、小米wifi都可)。其中樹莓派使用的目前為止官方最新的系統。
目的:使用360wifi開啟ap熱點。

usb網絡卡的工作模式介紹

usb網絡卡有兩種工作模式,網絡卡模式(即sta模式)和熱點模式(即ap模式)

宣告

由於目前的樹莓派系統,都內建了mt7601的驅動(360wifi使用的就是此晶片),因此當你插入360wifi時,系統就會自動識別,這時沒有問題的。也就是如果你只把360wifi當作普通的usb網絡卡使用的話,本文對你是沒有幫助的。本文針對的是想使用360wifi開啟熱點的人群,因為這方面的資料比較稀少,而且雜亂不看,本文經過實踐後進行了總結和整理,寫出了此文。

都有哪些坑

360wifi這類網絡卡,其使用的是mt7601這款晶片,晶片官方有隻有sta模式的原始碼,也就是我們只能將其當作普通的網絡卡使用。不過其實這個網絡卡是支援ap模式的,但在linux下,尤其是在arm環境下,大多數我們不能下載現成的驅動,因此只能自己編譯。 我之前在arm環境下編譯成功過sta模式和ap模式的網絡卡驅動,但這次到了樹莓上,還是遇到了不少的坑。

  • 第一個坑,gcc
    我們使用cat /proc/version命令可以檢視系統核心及編譯核心的gcc版本,我的顯示如下:
Linux version 4.9.59-v7+ ([email protected]-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611) ) #1047 SMP Sun Oct 29 12:19:23 GMT 2017

可以看到核心版本是4.9.59,使用的gcc版本是4.9.3。噹噹我輸入gcc -v命令時,卻看到gcc的版本是6.3+,是的,你沒看錯,gcc版本高了很多,最開始的時候我沒太在意這個,認為版本高了沒問題,結果我從網上的下載的驅動原始碼,無論是sta的還是ap的,都編譯失敗。所以我們一定要先將gcc版本調整為和核心相近的版本,我們這裡安裝4.9版本的gcc:
先解除安裝舊的gcc和g++:

apt-get remove gcc
apt-get remove g++

然後安裝4.9版本的gcc和g++:

apt-get install gcc-4.9
apt-get install g++-4.9

安裝完後再次使用gcc -v命令檢視,確認gcc為4.9版本。

  • 第二個坑,核心原始碼

如果我們要在linux上進行程式編譯,核心原始碼是不可少的,如果你從網上查資料,大多數使用的都是使用的rpi-source這條命令,其實有更簡單的,也是官方的推薦的,就是直接使用apt-get install raspberrypi-kernel-headers命令,這條命令執行後我們在/usr/src下可以看到多了兩個原始碼目錄,而且它們也會有軟連線關聯到/lib/modules目錄下。

  • 第三個坑,網上的大多數原始碼都是無法使用的,甚至包括我當初在其他arm平臺下能正常編譯的原始碼

你如果搜尋編譯360wifi的資料,大多數都會指向這篇文章 小米隨身WiFi,Linux下AP熱點驅動(開源) ,如果前面幾個坑你都填平的話,按照這個教程是能夠正常編譯並載入驅動的,但是,你會發現,找不到開啟的熱點。

繼續從網上找的話,你可能會找到這個資料:mt7601u-ap ,這是github上的原始碼,能夠正常編譯。編譯並安裝完後,插上360wifi,你使用ifconfig命令就會驚恐的發現,出現了15個ra0類似的網絡卡,而且能搜尋到HT_AP0類似15個熱點,這是為什麼呢?因為驅動無法正常讀取配置檔案,所以預設會建立15個熱點,而且它們的名字都是預設的名字。本來我嘗試解決這個bug,經過一番嘗試後,最終放棄。

如果這些坑都填平的話,我們來開始編譯ap驅動吧。

開始

  • 確保gcc版本和核心一致,參考前面的段落來如何使它們保持一致。
  • 安裝核心原始碼,同樣參考前面的段落。
  • 下載ap原始碼:PolyVection/mt7601u-ap ,注意,可能git clone失敗,此時可以直接下載zip檔案。下載完後將其拷貝樹莓派中並解壓,然後cd命令到那裡。
  • 執行make命令進行編譯,成功後執行make install命令進行安裝
  • 因為樹莓派已經內建了mt7601的驅動,為了防止衝突,我們要先將其刪除移除。刪除或重新命名/lib/modules/4.9.59-v7+/kernel/drivers/net/wireless/mediatek/mt7601u/mt7601u.ko這個檔案。
  • 現在插上360wifi,使用ifconfig命令就可以看到多了一個叫ra0的網絡卡,而且用手機可以看到名為HD_MESH_1的一個熱點。

至此,360wifi的ap驅動就編譯完成了。

配置並使用

  • 第一步,修改熱點資訊。用記事本或vi命令編輯/etc/Wireless/RT2870AP/RT2870AP.dat檔案:
    • SSID:熱點名稱
    • AuthMode:熱點是否使用密碼
    • WPAPSK:熱點密碼
  • 第二步,配置熱點自身的ip。直接修改/etc/dhcpcd.conf檔案,加入如下程式碼,表示ra0網絡卡的ip為192.168.99.1:

    interface ra0
    static ip_address=192.168.99.1/24

    這裡一定要注意,不要修改/etc/network/interfaces檔案,千萬千萬千萬不要改,會造成系統無法啟動,且顯示屏無任何輸出。
  • 第三步,配置dhcp服務。其實到這裡,我們已經可以用手機連線樹莓派的熱點了,但是手機會一直顯示獲取ip中,這是因為我們還沒有開啟dhcp服務。注意,在開啟安裝dhcp服務前,要先在raspi-config裡將等待網絡卡啟動配置為啟用:
    • 輸入raspi-config命令,進入boot options,將wait for network ...配置為enable
    • 安裝dhcp服務:apt-get install isc-dhcp-server
    • 配置dhcp服務監控的網絡卡,編輯/etc/default/isc-dhcp-server檔案,修改INTERFACESv4="ra0"
    • 配置dhcp引數,編輯/etc/dhcp/dhcpd.conf檔案,新增如下配置:

      subnet 192.168.99.0 netmask 255.255.255.0 {
      range 192.168.99.50 192.168.99.250;
      option routers 192.168.99.1;
      }
    • 如果需要熱點能通過自身的wifi上網,請參考此檔案中的配置示例。
    • 重啟dhcpd服務,service dhcpd restart,此服務預設就是開機啟動的,因此無需再次配置開機啟動。
      至此,我們360wifi熱點就能正常使用了。

如果不想自己編譯驅動,可以直接下載我已經編譯好的驅動:樹莓派3b下360wifi(小度wifi、小米wifi)ap熱點驅動
使用說明:三個ko檔案放在/lib/modules/4.9.59-v7+/kernel/drivers/net/wireless/下,其中4.9.59-v7+表示核心版本,樹莓派當前的系統就是在這個位置,如核心版本有變化,自行改動;RT2870AP.dat檔案放在/etc/Wireless/RT2870AP/下,目錄不存在時手動建立即可。

完。

相關推薦

樹莓3b——使用360wifiwifi小米wifi開啟熱點

前言 樹莓派3b板子自帶了wifi模組,但wifi模組只能開啟網絡卡模式或熱點模式,也就是說使用自身的wifi開了熱點後,就不能在連線其他的wifi了。當然,使用自身的wifi開啟熱點,然後額外插入其他usb網絡卡連線網路,也是一種方法。本文著重敘述如

更換樹莓源問題解決Unable to locate package XX

樹莓派預設源一般在國內會很慢,更換為國內一些源,安裝包的速度會快很多,當出現Unable to locate package XX這種問題時,也可以通過更換源來解決。 第一步 找到/etc/apt/目錄下的sources.list檔案,並進行編輯: (檔案/etc/ap

樹莓 樹莓解析度調整含官方預設和kali系統

(一)樹莓派 樹莓派解析度調整(含官方預設和kali系統) 最近給pi換上官方最新系統,原本顯示屏可以自動匹配,升級之後發現顯示區域變小了。(螢幕是TB入的7寸雪花屏 800*480解析度)後來看了一下官方說明,預設的解析度是1280*800。由於本人的螢幕解

樹莓3B製作無線wifiAP with hostapd

參考:https://frillip.com/using-your-raspberry-pi-3-as-a-wifi-access-point-with-hostapd/這是一款新型的樹莓派,並且自帶wifi模組,不用大家自己另購,很是方便。網上寫樹莓派做wifi的文件不少但

樹莓3b驅動dht11溫濕傳感器

ros tran tex his std auto div color success 新建並打開C文件 touch dht11.c sudo vim dht11.c 編寫驅動程序 1 #include<wiringPi.h> 2 #i

樹莓3B 運行 LEDEOPENWRT,使用vlan

wan less car 訪問 rpi 設置 協議 固件 地址 1.樹莓派3B的網卡:   內置一個無限網卡,內置一個有線以太網卡 2.下載LEDE固件:   LEDE官網:https://lede-project.org/   http://downloads.led

wifi遠程連接樹莓3B

後綴 RR stopped www block 樹莓派 默認端口 樹莓派3b 由器 前期準備 樹莓派可以連接上wifi,我用的是自己的小米路由器,目的是為了獲取內網IP 工具準備 下載 vnc viewer https://www.realvnc.com/en/connec

樹莓3B 設置通用UART串口的方法

自己的 led 註意 ext4 ssi gpio htm 輸入 ble 以下轉載於 https://blog.csdn.net/berryfish/article/details/60147631 去年入手了一個樹莓派3B,和很多人一樣,在使用串口時遇見了問題。因為新

樹莓3B+ wifi 5G連接

sudo 其中 can b+ wpa con set 選擇 成功   新燒的Raspbian 系統,一開始需要設置wifi的一些配置,其中會選擇一個國家(set country),一開始選擇的是CN(中國),發現只能連接2.4G的網絡,5G的網絡連接不上,這很奇怪, 因為一

樹莓3BWiFi中文亂碼問題無法連線_解決方案:

   相信很多樹莓派小白都會遇到這個煩人的問題,我當時查到的解決方案就是百度排行第一的一篇”簡書”裡的文章, 而且最可惡的是:你新增內容之後,sudo reboot 重啟的樹莓派wifi直接搜尋不到任何wifi資訊,這讓人很是頭大。 所以這個坑呢,我替你們踩過大家就不要重蹈覆轍了。 至於踩過並繼續尋找出

樹莓3B設定靜態IP,靜態WIFI地址

樹莓派3B設定靜態IP 當身邊沒有路由時,想要電腦遠端連線樹莓派,有兩種方法:除了電腦共享網路給樹莓派的方法,還可以給樹莓派配置eth0靜態IP,方法如下: 1 開啟如下配置檔案 sudo nano  /etc/network/interfaces 2 註釋下面語句 #ifac

樹莓3B的Qt交叉編譯環境搭建1

實驗室專案需要用Qt在樹莓派上開發一個使用者互動介面。雖然樹莓派的硬體配置隨版本更新不斷提升,但是還是無法滿足直接在樹莓派上進行Qt開發,所以首先要做的事情就是搭建交叉編譯環境。 參考了博文:http://www.linuxidc.com/Linux/2016-07/133462.htm 下

樹莓3B連線到wifi和ssh遠端登入

一、樹莓派3B連線到wifi 在安裝了ubuntu系統時,會提示設定要連線的wifi,這時可以選擇wifi,輸入passwd,在/etc/NetworkManager/system-connections目錄下儲存有 以所連線的wifi的名稱的檔名,用root使用者修改該檔案的許可權為777,即

樹莓3B+QT5(安裝與相關配置),附帶一個介面

首先,我們需要安裝樹莓派,一些教程在安裝QT5時,推薦更新樹莓派上的韌體之類的, 也就是這兩句程式碼: sudo apt-get upgrade sudo rpi-update 說多了就是淚,我的樹莓派因為更新上面兩句,導致系統崩潰,所以,我一般不建議去更新(這個坑我已經躺了)

Python+opencv學習筆記之人臉視訊採集及實時檢測樹莓3B+下檢測

實驗目標: 1.首先通過opencv程式設計寫一個可以呼叫攝像頭並且能將攝像頭捕捉到的內容進行儲存。 2.將視訊檔案傳送到我們的樹莓派上,然後再利用Python編寫程式對視訊進行人臉識別處理,最後將人臉識別後的視訊儲存。 3.對某一張圖片進行處理,讓其具有毛玻璃效果,並將處理後的圖片儲存。

樹莓學習筆記7:利用bypy實現樹莓NAS同步百

樹莓派製作NAS過程詳見http://www.cnblogs.com/xiaowuyi/p/4051238.html。 Bypy是一個百度雲/百度網盤的Python客戶端,主要的目的就是在Linux環境下(命令列)同步百度雲盤空間。Bypy要求python2.7

樹莓3B+無螢幕和鍵盤配置樹莓WiFi和SSH

前言 樹莓派3B+安裝系統Raspbian,預設的SSH是關閉的,如何在無螢幕和鍵盤的情況下,讓筆記本通過WIFI訪問樹莓派? 樹莓派3B+釋出後不久,樹莓派官方 Raspbian 系統久加入了允許在開機前對 WiFi 網路進行配置的機制。 一、WiFi 網路配置 使用者可以

樹莓3B+安裝Ubuntu16.04系統64位

目錄 系統下載 補丁 刷系統 換源 無線 U盤掛載 系統下載 感謝公眾號:樹莓派愛好者基地。更多系資源請關注公眾號。 Ubuntu16.04系統 補丁 解決關機問題,下載好系統後,直接在根目錄替換即可 刷系統 樹莓派安裝系統過程資源豐

關於移植MT7601Uusb無線網絡卡wifi,360隨身WIFI 2代的後續

請先看最後的我與連結文章作者做法上的區別 第一步可以看下這裡:http://blog.csdn.net/ofaith12345/article/details/24963457  其中有一個問題是串列埠不停有資訊返回,停不下來,後續解決~,只要修改os/linux/conf

樹莓3B+ 原始碼方式安裝opencv3基於3.4.1

身邊有朋友在樹莓派上安裝不上去opencv3,因此在這裡記錄了一下自己安裝opencv3的過程。 這位前輩的安裝步驟非常非常詳細,下邊所有過程都是參考此經驗,只不過添加了自己安裝過程的圖片,看著好理解一點。 非常感謝,謝謝謝謝謝謝! 安裝過程 更換軟體源的時候建議