เชื่อมต่อ Pi3 กับ Wifi โดยอัตโนมัติ


11

Raspberry Pi 3 ใหม่ของฉันยอดเยี่ยม แต่ฉันกำลังเผชิญกับความยากลำบากอย่างหนึ่ง: เราเตอร์ของฉันอยู่ในเลานจ์ (ชั้นหนึ่งลงไป) และแล็ปท็อปของฉันไม่มีพอร์ต Ethernet เนื่องจากฉันใช้ SSH เพื่อควบคุม Pi ฉันจึงต้องเชื่อมต่อกับเราเตอร์ผ่านสายอีเธอร์เน็ตเสมอ นอกจากนี้ฉันไม่สามารถใช้หมุด GPIO จากห้องของฉันได้เพราะฉันต้องใกล้กับเราเตอร์

มีวิธีใดที่จะเชื่อมต่อ Pi ของฉันกับ wifi โดยอัตโนมัติหลังจากทำการบูทขึ้นหรือไม่? กล่าวอีกนัยหนึ่งฉันต้องการเปิดเครื่อง Pi โดยไม่ต้องเชื่อมต่อเครือข่ายและควรเชื่อมต่อกับ wifi โดยอัตโนมัติ

สิ่งหนึ่งที่ฉันพยายามคือแก้ไขไฟล์ /etc/wpa-supplicant/wpa-supplicant.conf เพื่อรวมเฉพาะ SSID และ PSK ของการเชื่อมต่อ wifi ในบ้านของฉัน นี่ไม่ได้ทำให้ Pi เชื่อมต่อกับ wifi โดยอัตโนมัติ

ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก!



คำตอบใด ๆ ที่ได้ผลสำหรับคุณ ถ้าเป็นเช่นนั้นโปรดยอมรับใครสักคนที่จะช่วยคนอื่น ๆ ที่อ่านข้อความนี้ตามที่คุณได้รับการช่วยเหลือ
Mawg กล่าวว่าการคืนสถานะโมนิก้า

คำตอบ:


11

เพิ่ม

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

/etc/network/interfacesไปยัง sudo dhclient wlan0แล้วใช้คำสั่ง

หรือลองตัวเลือก # 2 จากที่นี่


1
คุณช่วยอธิบายวัตถุประสงค์นี้ได้ไหม? มันจะเชื่อมต่ออัตโนมัติเมื่อการเชื่อมต่อขาดหายไปหรือไม่
not2savvy

1
@ not2savvy มันจะเชื่อมต่อทุกครั้งที่มีการเชื่อมต่อ หากคุณสามารถตั้งค่า wifi จาก gui ของ Pi นั่นจะจดจำเครือข่ายโดยอัตโนมัติและง่ายกว่ามาก
jath03

1

ควรเชื่อมต่อโดยอัตโนมัติหลังจากคุณตั้งค่า wifi บน GUI ของ pi ในการทำเช่นนี้คุณต้องเชื่อมต่อจอภาพและคีย์บอร์ดเข้ากับ pi จากนั้นบู๊ตเครื่องบน pi (ไม่เกิน SSH) พิมพ์ startx เพื่อเข้าสู่ GUI จากนั้นควรมีไอคอนสำหรับ wifi คลิกที่มันค้นหาเครือข่ายของคุณและควรจำเครือข่ายแม้หลังจากที่คุณรีบูต


1
ฉันทำอย่างนั้นโดยใช้แอปพลิเคชันเดสก์ท็อประยะไกล VNC ฉันคิดว่ามันควรจะมีผลเช่นเดียวกับการเชื่อมต่อหน้าจอ ปัญหายังคงมีอยู่ Pi ไม่ได้เชื่อมต่อกับ wifi โดยอัตโนมัติ อาจมีสคริปต์ที่ฉันสามารถใช้เพื่อทำสิ่งนี้ได้หรือไม่?
abruzzi26

1

ฉันมีปัญหาที่คล้ายกันกับ Pi 3 ด้วยเหตุผลที่ไม่รู้จัก wicd (gui ที่ใช้) ไม่ทำงาน หลังจากการต่อสู้ - และฉันรู้ว่ามันไม่ใช่ทางออกที่ดี - ฉันสร้างสคริปต์:

!/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

AP ของคุณคือMyWifiAPและคุณต้องสร้างไฟล์/etc/wpa_supplicant/MyWifiAP.confที่มีข้อมูลการเข้าถึงของคุณ

สคริปต์อยู่ที่ใดก็ได้สามารถเรียกใช้บนพื้นหลังได้จาก/etc/rc.local (nohup + &) ตรวจสอบว่าใช้งานได้กับ wpa_supplicantก่อนที่คุณจะใช้ ข้อผิดพลาดในrc.localอาจทำให้จำเป็นต้องแก้ไขการ์ด SD ของคุณเพื่อยกเลิกการเปลี่ยนแปลงกลับคืน

ฉันคิดว่านี่เป็นข้อผิดพลาดบางอย่างในการกระจายเดเบียนหรือ systemd ...


1
ไม่จำเป็นต้องเขียนสคริปต์ของคุณเองสำหรับสิ่งนี้ raspberrypi.org/documentation/configuration/wireless/…
Brick
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.