讓你的樹莓派自動連上WiFi,並告訴你地址
週一的時候樹莓派總算是到手了,很早之前就瞭解過了,心裡長草很多年,但就是一直沒出手。最近在搞Arduino的小玩意,我們做的這個東西需要網路通訊(一個可以遠端控制的機器人小車),必須要藉助上位機(一臺android手機)的網路來接受命令,真想再給它再上一塊WiFi擴充套件板,把手機扔了。然後就突然想起了這貨,樹莓派是基於linux的只有信用卡的大小計算機。你可以把這貨當成一個正常linux伺服器就是,基本上你平時在linux上能做到的事情,它都能做到,比如當成rails伺服器,在上面執行rails程式什麼的(不過我沒試,應該是可以的,sinatra可以)。然後這貨有usb口,再然後插上你在某寶買的usb無線網絡卡,它就可以用WiFi了。下面是我第一次,第二次以及第n次連上WiFi的過程。
第一次連上WiFi
第一次連wifi之前,你需要做一件事情,那就是開啟樹莓派的terminal(俗稱命令列),你有兩種選擇:
- 通過HDMI連個顯示器,再接個USB接個鍵盤,然後你就可以像用一臺普通的pc一樣用樹莓派了
插個網線,通過樹莓派的ip地址ssh進去。
ssh [email protected]_raspi_ip #password: raspberry
我是通過插網線的方式進去的,這個方法比較麻煩的地方是,你得去找到樹莓派從DHCP的獲取到的ip(當然能設靜態ip又是另一回事了)。我是在自己家連,可以從路由器的客戶端列表裡面找到樹莓派的ip。
在進到terminal後,你就可以開始安裝軟體,修改配置了
可能需要安裝的軟體(因為我拿到手的時候,發現系統裡已經有了,不知道是某寶的親幫我裝的,還是raspbian已經預裝了)
sudo apt-get install wireless-tools
然後可以開始配置網路了,修改/etc/network/interfaces檔案,把它修改成這個樣子
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp allow-hotplug wlan0 auto wlan0 iface wlan0 inet dhcp wpa-ssid YOUR-SSID-HERE wpa-psk YOUR-PASSWORD-HERE
主要是新增wpa-ssid和wpa-psk,直接把你要連線的wifi的ssid和對應密碼寫上就行了。
重啟網路
/etc/init.d/networking restart # or: service networking restart
然後你應該就已經連上wifi了,如果沒有連上:
- 檢查時候你要連線的wifi是不是隱藏的WiFi(不廣播自己的ssid的WiFi網路),這種配置方法沒辦法連線隱藏的WiFi。通過下面的命令檢查你要連的WiFi是不是在列表裡:
iwlist wlan0 scan - 檢查你的ssid和密碼是否正確!!!
- 檢查你要連的wifi網路是否正常,檢查你的USB無線網絡卡是不是正常
- 如果還連不上就google吧,我也無能為力了
- 檢查時候你要連線的wifi是不是隱藏的WiFi(不廣播自己的ssid的WiFi網路),這種配置方法沒辦法連線隱藏的WiFi。通過下面的命令檢查你要連的WiFi是不是在列表裡:
這樣的配置在你重新啟動樹莓派後也能自動連線這個WiFi,這裡連線WiFi使用的是wpa_supplicant
自動連線多個WiFi網路
當你經常切換到不同WiFi網路中時,你可以配置多個WiFi網路,讓樹莓派能自動連線到可用WiFi網路中。這裡就要用到高大上的wpa_supplicant.conf了
修改/etc/wpa_supplicant/wpa_supplicant.conf,下面是我使用的配置檔案:
ctrl_interface=/var/run/wpa_supplicant #ap_scan=1 network={ ssid="wo_shi_yige_wifi_ssid" scan_ssid=1 psk="wo_shi_mi_ma" priority=5 } network={ ssid="pi" psk="onlyforpi" priority=1 }
- **ap_scan:**1是預設值,因此我注掉了
- 1:這個模式下總是先連線可見的WiFi,如果掃描完所有可見的網路之後都沒有連線上,則開始連線隱藏WiFi。
- 2:會按照network定義的順序連線WiFi網路,遇到隱藏的將立刻開始連線,因此在這個模式下連線順序不受priority影響
- ctrl_interface:這個資料夾裡面存的是一個當前使用的interface的socket檔案,可以供其他程式使用讀取WiFi狀態資訊
- network:是一個連線一個WiFi網路的配置,可以有多個,wpa_supplicant會按照priority指定的優先順序(數字越大越先連線)來連線,當然,在這個列表裡面隱藏WiFi不受priority的影響,隱藏WiFi總是在可見WiFi不能連線時才開始連線。
- ssid:網路的ssid
- psk:密碼
- priority:連線優先順序,越大越優先
- scan_ssid:連線隱藏WiFi時需要指定該值為1
- **ap_scan:**1是預設值,因此我注掉了
修改/etc/network/interfaces使用wpa_supplicant.conf來配置無線網路
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp allow-hotplug wlan0 auto wlan0 iface wlan0 inet dhcp pre-up wpa_supplicant -Dwext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B
以後每次啟動時,樹莓派都會主動去連線配置檔案中預定義的這些wifi網路。
在這個配置裡面有一個ssid=’pi’網路,這是一個最低優先順序網路,是用來在陌生網路中配置樹莓派的。當處在一個樹莓派配置裡面的沒有的WiFi網路中時,我會自己建立一個叫pi的WiFi,當其他網路都不可用時,樹莓派連到這個網路裡,然後我便可以ssh進樹莓派,新增網路配置,然後重啟,就可以讓樹莓派加入到新的網路中。
讓樹莓派告訴你它的IP(軟體的方式)
那麼如何在你的樹莓派加入新的網路後獲取到它當前的ip地址呢?因為你在重新配置樹莓派的網路並重啟後,你跟樹莓派的連線會斷掉,因此你需要知道樹莓派在新網路中的ip,從而使你能重新連線到樹莓派。在網上很多免費提供的域名解析服務,你可以某個域名解析成你設定的ip地址。每次樹莓派啟動後都會更新自己的域名對應的ip,我是用的DNSDynamic提供的服務,進行簡單的設定就OK了。
- 註冊賬號~~~~
設定一個啟動指令碼來獲取本機ip並且更新到DNSDynamic上:
修改/etc/rc.local,新增如下內容:
IP=`hostname -I` EMAIL=your_username_in_dnsdynamic PASSWORD=your_password DOMAIN=your_registered_domain.dnsdynamic.com curl -v --user "$EMAIL:$PASSWORD" -k "https://www.dnsdynamic.org/api/?hostname=$DOMAIN&myip=$IP" > /var/log/update-dns.log 2>&1
指令碼後面的內容是呼叫dnsdynamic提供的api更新域名對應的ip地址
每一次樹莓派啟動之後都會執行這個指令碼更新自己的ip地址,也可以將這段腳新增到cron job裡定時更新ip,但是感覺好像沒有必要。
之後你就不用管ip地址了,可以通過域名直接ssh進樹莓派:
ssh [email protected]_registered_domain.dnsdynamic.com
總結
上面的提供的方案其實一定程度依賴於網路(internet),如果樹莓派連線到的wifi是沒有internet連線的,那麼就沒辦法通過dnsdynamic更新ip了,那麼我們也就沒有辦法獲取到它當前的ip,除非它使用靜態ip.
在failover的網路(上面設定的名叫pi的wifi)設定上也可以通過另一個方式,就是在樹莓派啟動之後可以自己開啟一個wifi AP,然後我們可以連線進去,進而做各種設定,arduino最新的板子arduino yun就是通過這種方式進行設定的。
相關推薦
讓你的樹莓派自動連上WiFi,並告訴你地址
週一的時候樹莓派總算是到手了,很早之前就瞭解過了,心裡長草很多年,但就是一直沒出手。最近在搞Arduino的小玩意,我們做的這個東西需要網路通訊(一個可以遠端控制的機器人小車),必須要藉助上位機(一臺android手機)的網路來接受命令,真想再給它再上一塊WiF
手機能連上Wifi,而Win10筆記本卻連不上,解決方案(有圖)
出差在外,手機能夠連上Wifi,膝上型電腦連線時,Wifi圖示左下角卻出現橘黃色問號,顯示網路訪問不成功。 解決方法如下: 1. 點選工作列上的Wifi圖示,點選“網路和Internet設定” 2. 在開啟的設定面板中,選擇“更改介面卡選項” 3. 雙擊需要連線
樹莓派 用lirc 複製遙控器,並進行遙控。
LIRC是我們需要的軟體. LIRC 是 Linux Infrared remote control的縮寫,是linux系統下開源的軟體包。從名字中可知,這個軟體讓你的Linux系統能夠控制紅外線訊號。 LIRC有個具有圖形使用者介面的前端,叫做KDELirc 在使用LIRC之前建議
自動FTP上傳,並將檔案改為當時準確時間名稱
@Echo Off Echo open 192.168.1.246>ftp.up Echo wx >>ftp.up Echo wx >>ftp.up Echo bin
手機連得上WIFI,電腦連不上的情況
到你 mode 設備管理 mod inter 找到你 設備 lan net 可以搜到,密碼也對,但就是連不上,這時候可能就是你的設置錯了。 操作步驟以下: 右擊我的電腦-->管理-->設備管理器-->網絡適配器-->找到你wifi對應的那個名稱(如果
golang 2行代碼在基於arm linux的樹莓派、orangepi上運行http web服務
目標 開發板 server post fontsize alt main函數 handle 基於 go語言(golang)簡化了跨平臺交叉編譯步驟,支持在windows系統下交叉編譯基於arm+linux平臺的應用,運行時無需其它依賴庫。以下以一個簡單的http serve
樹莓派自動播報溫濕度到QQ空間、微博
讀取 usr gpio net etc 寫代碼 播報 \n 電阻 原文鏈接 https://aoaoao.me/951.html 這是個比較無聊的應用。。。靈感來自於一個叫做“古城鐘樓”的微博賬號,此賬號每天都會定點報時,除此之外沒有其他任何內容,以此吸引了近50萬粉絲!報
樹莓派無螢幕連線WiFi
將刷好 Raspbian 系統的 SD 卡用電腦讀取。在 boot 分割槽,也就是樹莓派的 /boot 目錄下新建 wpa_supplicant.conf 檔案,按照下面的參考格式填入內容並儲存 wpa_supplicant.conf 檔案。 1 2 3 4 5 6 7
樹莓派3B連線到wifi和ssh遠端登入
一、樹莓派3B連線到wifi 在安裝了ubuntu系統時,會提示設定要連線的wifi,這時可以選擇wifi,輸入passwd,在/etc/NetworkManager/system-connections目錄下儲存有 以所連線的wifi的名稱的檔名,用root使用者修改該檔案的許可權為777,即
樹莓派3代B+型貼散熱片,連線wifi,並開啟ssh服務(不需要任何windows工具)
有錯的地方,或者不同意見的,煩請留言,或者發郵箱。 郵箱地址:[email protected] ————————————————————————————————— 硬體: 我所買的是亞博智慧科技的樹莓派3B+E14新款-基礎套餐。 軟體: a,樹莓派系統 系統
在樹莓派(Raspberry Pi)上Qt5的本地構建
網上有很多關於在Raspberry Pi上構建Qt5的教程,但所有或大部分教程都是使用桌面機器交叉編譯Raspberry Pi的二進位制檔案。如果您交叉編譯,您將無法執行qmake並在Raspberry Pi本身上建立。本教程旨在向您展示如何在Raspberr
【手把手教你樹莓派3 (一)】裝機
概述 raspberry pi其實可以看做一個微型的計算機,我們可以在上面裝各種作業系統,然後搭建伺服器,當然這只是它的一小點功能罷了。。。與我們常用的PC機不同的是,ras pi有GPIO,我們可以讓raspberry pi來控制這些引腳,從而傳送一些物理訊號給其他的裝置
在ubuntu 18.04下,無線網絡卡無驅動,連不上wifi,顯示wifi沒有介面卡的解決方法
近來因為做東西要用到linux環境,所以自己的筆記本在win10的系統上又安裝了ubuntu 18.04版本的雙系統,但是安裝好以後,沒有無線網絡卡的驅動,顯示wifi沒有介面卡等字樣,很糾結,前後研究了將僅一天,終於解決了,現在寫出來,希望對大家能有所幫助,也可適用於沒網的
樹莓派自動執行應用程式(指令碼及圖形介面)
/etc/rc.local :加入自己的執行命令。 /etc/inittab :初始狀態的設定。 /etc/init.d/ :編寫一個指令碼,放著裡面,需設為執行許可權。 以svn為例: 1.製作開機啟動指令碼svn_serve #!/bin/sh ### BEGIN INIT INF
樹莓派連線無線網wifi配置方法
Wifi配置 我的Wifi配置基本上是跟著這個教程來的,下面將過程簡述,並解釋每個命令/語句的作用。 1、檢查USB無線網絡卡是否已經正確識別 將無線USB網絡卡插入樹莓派後啟動樹莓派,比較不建議熱插拔,因為插入的一瞬間會有比較高的電流,如果電源輸出不夠可能導致樹莓派重啟。用自己的方法進入shell介面後
ubuntu本地程式顯示在樹莓派xserver螢幕上
本地程式遠端顯示在樹莓派上 參考:Linux江湖03:X Window的奧祕 http://www.cnblogs.com/youxia/p/linux003.html 1.關閉樹莓派xserver的-nolisten tcp關閉tcp監聽(關閉xserve
Mac 利用usb轉串列埠連線樹莓派3及配置wifi
環境:Mac工具:樹莓派,usb轉串列埠,3根杜邦線預設:樹莓派SD卡系統安裝好,沒安裝好可參考網上教程。推薦官網步驟一:安裝驅動 Mac安裝CH340驅動(根據自己的USB轉串列埠晶片下載對應驅動,網上大多教程說安裝PL2303,但淘寶上大多數賣的是CH340)。點選下
樹莓派新版系統上使用mjpg-streamer獲取USB攝像頭和樹莓派專用攝像頭RaspiCamera影象
網上有很多關於mjpg-stream移植到樹莓派的文章,大部分還是使用的sourceforge.net上的mjpg-streamer-r63.tar.gz,該工程版本比較老,在新版系統中編譯需要把原始碼檔案中所有 #include<linux/videodev.h&
樹莓派3B板載wifi配置方法
樹莓派3代B版自帶板載wifi和藍芽,因此想讓樹莓派通過wifi上網不再需要單獨購買wifi模組,通過簡單配置板載wifi即可快速實現。配置方法在命令列操作,前提是你需要進入命令列終端,進入命令列終端的
樹莓派視窗系統啟動後,自動執行自定義的程式的實現方法
視窗系統啟動後,自動執行自定義的程式的實現方法進入當前使用者HOME目錄下的.config目錄(這是一個隱藏目錄,需用ls -a顯示出來)cd ~/.config 當前使用者是pi, 其HOME目錄是/home/pi, 上述命令相當於 cd /home/pi/.config建