Automatyczne podłączanie Pi3 do Wi-Fi

11

Mój nowy Raspberry Pi 3 jest świetny, ale mam jedną trudność: mój router jest w salonie (piętro niżej), a mój laptop nie ma portu Ethernet. Ponieważ używam SSH do sterowania Pi, zawsze muszę podłączyć go do routera za pomocą kabla Ethernet. Ponadto nie mogę używać styków GPIO z mojego pokoju, ponieważ muszę być blisko routera.

Czy jest jakiś sposób na automatyczne połączenie mojego Pi z Wi-Fi zaraz po uruchomieniu? Innymi słowy, chcę włączyć Pi bez połączenia sieciowego i powinno ono automatycznie połączyć się z Wi-Fi.

Jedną rzeczą, którą próbowałem, była edycja pliku /etc/wpa-supplicant/wpa-supplicant.conf, aby zawierała tylko SSID i PSK połączenia Wi-Fi mojego domu. Nie spowodowało to, że Pi automatycznie połączy się z Wi-Fi.

Każda pomoc byłaby bardzo mile widziana!

abruzzi26
źródło
Czy którakolwiek z odpowiedzi działała dla Ciebie? Jeśli tak, proszę przyjąć jedną, która pomoże innym, którzy czytają to pytanie, tak jak wam pomogło
Mawg mówi o przywróceniu Moniki

Odpowiedzi:

11

Dodaj

auto wlan0
iface wlan0 inet dhcp 
wpa-ssid {ssid}
wpa-psk  {password}

To /etc/network/interfaces. następnie użyj polecenia sudo dhclient wlan0.

Lub wypróbuj opcję 2 tutaj

jath03
źródło
1
Czy mógłbyś wyjaśnić cel tego? Czy będzie łączyć się automatycznie, gdy połączenie zostanie utracone?
not2savvy
1
@ not2savvy połączy się, gdy tylko połączenie będzie dostępne. Jeśli możesz, skonfiguruj Wi-Fi z GUI Pi. To automatycznie zapamięta sieć i jest o wiele prostsze.
jath03
1

Powinien połączyć się automatycznie po skonfigurowaniu Wi-Fi w GUI pi. Aby to zrobić, musisz podłączyć monitor i klawiaturę do pi, a następnie uruchomić system pi (nie przez SSH). Wpisz startx, aby wejść do GUI, wtedy powinna być ikona Wi-Fi. Kliknij na nią, znajdź swoją sieć, a ona powinna zapamiętać sieć, nawet po ponownym uruchomieniu.

jath03
źródło
1
Zrobiłem to za pomocą aplikacji VNC do zdalnego pulpitu. Przypuszczam, że powinno to mieć taki sam efekt jak podłączenie ekranu. Problem nadal występuje; Pi nie łączy się automatycznie z Wi-Fi. Czy jest może skrypt, który mógłbym uruchomić, aby to zrobić?
abruzzi26
1

Miałem podobny problem z Pi 3. Z nieznanego powodu wicd (używane GUI) nie działało. Po zmaganiach - i wiem, że nie jest to idealne rozwiązanie - stworzyłem skrypt:

!/bin/bash
for  (( i=0;i<999999999; i++)); do
 echo $i '.' test=============================================
 ME=`iwconfig wlan0 | grep ESSID | awk -F\" '{print $2}' `
 echo i ... I am in :  $ME

 A=`sudo iwlist wlan0 scan | grep  ESSID `
 echo $A
 echo $A | grep MyWifiAP >/dev/null

 if [ "$?" = "0" ]; then
 if [ "$ME" != "MyWifiAP" ]; then
  echo ! ... seeing MyWifiAP ... killing previous
  sudo pkill wpa_supplicant
  echo W ... connecting to MyWifiAP
  sudo wpa_supplicant -Dnl80211 -iwlan0 -c /etc/wpa_supplicant/MyWifiAP.conf >/dev/null &
  sleep 1
  else
  echo i ... already in MyWifiAP
  sleep 1
  fi
 fi
done

Twój AP to MyWifiAP i musisz utworzyć plik /etc/wpa_supplicant/MyWifiAP.conf, który zawiera dane dostępowe.

Skrypt znajduje się wszędzie tam, gdzie można go uruchomić w tle z /etc/rc.local (nohup + &). Przed użyciem sprawdź, czy działa z wpa_supplicant . Błąd w rc.local może prowadzić do konieczności edycji karty SD w celu przywrócenia zmian.

Myślę, że to był błąd w dystrybucji Debiana lub systemd ...

jaromrax
źródło
1
W tym celu nie powinno być potrzeby pisania własnego skryptu. raspberrypi.org/documentation/configuration/wireless/…
Brick