ปัญหา RPi wifi ลึกลับ - ไม่พบอินเทอร์เฟซไร้สาย


16

เอาล่ะฉันไม่สามารถหาวิธีแก้ไขปัญหานี้ได้ทุกที่ทางออนไลน์ดังนั้นโปรดอดทนกับฉัน:

ฉันมี Raspberry Pi รุ่นใหม่ 2B ซึ่งมาพร้อมกับ wifi dongle (Ralink RT5370) และเมื่อฉันยิงมันด้วย Raspbian ที่ติดตั้งไว้แล้ว wifi ทำงานได้อย่างถูกต้อง ฉันยังซื้อหน้าจอ mini HDMI สำหรับ pi ซึ่งไม่สามารถใช้งานได้หากไม่ติดตั้งไดรเวอร์จาก DVD ที่ส่งมาพร้อมหน้าจอ หลังจากติดตั้งไดรเวอร์หน้าจอทำงานได้ดี แต่ตอนนี้ wifi ของฉันหยุดทำงาน แสงบนดองเกิลไม่เปิดอีกต่อไปและฉันไม่สามารถสแกนหาเครือข่ายไร้สายได้

หลังจากค้นหาบางอย่างบน Google ฉันได้พิจารณาแล้วว่าดองเกิลเป็นที่รู้จัก (มันอยู่ในรายการเมื่อฉันเรียกใช้lsusb) โมดูลถูกติดตั้ง (โมดูล rt2800usb นั้นอยู่ในรายการเมื่อฉันเรียกใช้lsmod) และดูเหมือนว่าจะติดตั้งเฟิร์มแวร์ifconfig -aแล้ว แสดงข้อมูล wlan0) อย่างไรก็ตามเมื่อฉันรันiwlist wlan0 scanฉันจะได้ผลลัพธ์:

wlan0    Failed to read scan data: Network is down

และเมื่อฉันวิ่งsudo ifdown wlan0 && sudo ifup wlan0เพื่อดูว่าเครือข่ายสามารถเข้าถึงได้ฉันจะได้ผลลัพธ์ต่อไปนี้:

ifdown: interface wlan0 not configured
wpa_supplicant: /sbin/wpa_supplicant daemon failed to start
run-parts: /etc/network/if-pre-up.d/wpa_supplicant exited with return code 1
Failed to bring up wlan0

ฉันลองแก้ไขทั้งสอง/etc/network/interfacesและ/etc/wpa_supplicant/wpa_supplicant.confจากตัวอย่างออนไลน์ที่ไม่มีประโยชน์ นี่คือเวอร์ชันปัจจุบันของฉัน:

อินเตอร์เฟซ:

auto lo
allow-hotplug lo
iface lo inet loopback

allow-hotplug eth0
auto eth0
iface eth0 inet manual

allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

wpa_supplicant.conf:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="mySSID"
    key_mgmt=WPA_PSK
    proto=WPA
    pairwise=TKIP
    psk="myPassKey"
}

ตามหมายเหตุด้านข้างฉันได้ตรวจสอบสามครั้งว่าข้อมูลเครือข่ายของฉันถูกต้องและเครือข่าย wifi นั้นสามารถค้นพบได้จากคอมพิวเตอร์เครื่องอื่นดังนั้นฉันจึงสงสัยว่าปัญหานี้จะเกิดขึ้นในตอนท้าย ฉันอยู่ในจุดที่ฉันไม่รู้จริงๆว่าปัญหาของฉันจะอยู่ที่ใดหรืออะไร ฉันได้ลองดาวน์โหลดตัวจัดการ wifi แล้วมันไม่ทำงาน ฉันรีบูตอัปเดตและอัปเดตซอฟต์แวร์เวอร์ชันซ้ำแล้วซ้ำอีกซึ่งไม่ได้ผล ฉันพยายามแก้ไขและ / หรือลบบรรทัดออกจากไฟล์ด้านบนซึ่งไม่ได้ผล ฉันไม่สามารถสแกนหาเครือข่ายไร้สายได้อย่างต่อเนื่อง (หมายเหตุ: อีเธอร์เน็ตทำงานได้ดี) แม้จะประสบความสำเร็จในการเชื่อมต่อกับเครือข่ายก่อนที่จะติดตั้งไดรเวอร์หน้าจอนี้! หากใครมีความคิดว่าปัญหาของฉันคืออะไรและจะแก้ไขได้อย่างไรฉันก็จะขอบคุณมาก ขอบคุณ!


1
อะไรifconfigแสดง
Sirac

1
ปกติifconfigด้วยไม่มีพารามิเตอร์เพียงแค่แสดง eth0 และแท้จริงไม่มี wlan0 คุณต้องการที่จะรู้การอ่านเต็มของแต่ละคน?
Kyle

1
ดังนั้น - wlan0อินเทอร์เฟซของคุณจึงไม่สามารถใช้งานได้ไม่มีแม้แต่การพยายามเชื่อมต่อกับ WiFi ของคุณ มันจะเป็นการดีที่จะรู้ว่าผลลัพธ์ของifconfig -aตามที่แนะนำไว้ สิ่งนี้แสดงให้เห็นว่าwlan0เป็น "แม้แต่" นอกจากนี้คุณยังสามารถตรวจสอบข้อความที่ระบบของคุณแสดงล่าสุดdmesg | tailแสดงทั้งหมดที่มีดีกว่าdmesg เราหวังว่านี้จะแสดงให้เห็นว่ามีอะไรผิดปกติกับdmesg | less wlan0
Sirac

1
เอาท์พุทจากdmesg | tailแสดงข้อผิดพลาดทั้งหมดเกี่ยวกับการร้องขอเฟิร์มแวร์ Direct firmware load for rt2870.bin failed with error -2 rt2x00lib_request_firmware: Error - Failed to request Firmware rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin' สิ่งนั้นมีประโยชน์กับทุกคนหรือไม่?
Kyle

1
ฉันพยายามapt-get install firmware-ralinkแต่มันบอกว่าเฟิร์มแวร์เป็นเวอร์ชั่นล่าสุดแล้ว
ไคล์

คำตอบ:


7

หนึ่งในสิ่งที่ฉันได้อ่านร้อยครั้งในการจัดการกับสิ่งที่แนบมากับ USB ใน RPi ทุกรุ่นคือการทำให้แน่ใจว่าคุณมี Power Supply ที่เหมาะสม (2 แอมป์หรือมากกว่า) หรือใช้ฮับ USB ขับเคลื่อนคุณภาพ เป็นไปได้ไหมว่าดองเกิล WiFi ของคุณยังไม่ได้รับพลังงานเพียงพอเนื่องจากหน้าจอ HDMI โลภเกินไป?


ฉันใส่ตัวพิมพ์ใหญ่สองสามตัวเพื่อประโยชน์ในการอ่าน - หวังว่าคุณจะไม่สนใจ และใช่จากคะแนนที่คุณยกมาทั้งคู่มักเป็นปัญหาและทั้งคู่อาจต้องให้ความสนใจในการแก้ปัญหา OPs! 8-)
SlySven

1
ฉันเปลี่ยนพาวเวอร์ซัพพลายและตอนนี้ฉันได้ดองเกิล WIFI ของฉันทำงานอีกครั้ง ขอบคุณมาก!

2

ในกรณีที่อาจช่วยได้ ฉันกำลังติดตามการกวดวิชานี้ https://www.sunfounder.com/wiki/index.php?title=How_to_Use_an_RFID_RC522_on_Raspberry_Pi

โดยทั่วไปหลังจากแก้ไขไฟล์ sudo nano /boot/config.txtและการตั้งค่า device_tree = on

ทำให้ Wireless ของฉันแตกในการรีบูตครั้งถัดไป การลบบรรทัดนั้นแก้ไขปัญหาได้


ไฟล์นั้นอันตรายมาก หนึ่งข้อผิดพลาดและจะทำให้ Pi ของคุณไม่สามารถบูตได้ ...
IgorGanapolsky

1
@IgorGanapolsky แน่นอนและ ณ จุดนั้นคุณสามารถดึงการ์ด SD ออกเปิดบนพีซีและเปลี่ยนไฟล์กลับ
Yousef Amar

1

คุณต้องการเฟิร์มแวร์สำหรับดองเกิลของคุณ การติดตั้งบางอย่างจะมีอยู่ในอุปกรณ์ของคุณแล้ว แต่ลอง:

apt-get update 
apt-get install git-core binutils rpi-update

จากนั้นตรวจสอบให้แน่ใจว่าคุณมีเคอร์เนลตัวสุดท้ายอยู่ในตำแหน่ง

rpi-update

รับเฟิร์มแวร์จำนวนมาก .... ใช่มาก คุณจะต้องมีพื้นที่ดิสก์ใกล้ 80Mb

git clone http://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git

คัดลอกเฟิร์มแวร์ของคุณไปยังสถานที่ที่เหมาะสม

mkdir /lib/firmware
cp linux-firmware/rt2870.bin /lib/firmware/rt2870.bin

จากนั้นคุณมีอิสระที่จะลบไฟล์ที่โคลนในlinux-firmwareไดเรกทอรีของคุณ


3
ฉันชอบเมื่อมีคนให้คำแนะนำในการแก้ไข wifi dongle ที่ไม่สามารถเชื่อมต่อกับเครือข่ายโดยบอกให้พวกเขาใช้ "sudo apt-get install ... " หรือคำสั่งที่คล้ายกันซึ่งต้องใช้การเชื่อมต่อที่ใช้งานได้จริง LOL
rbaleksandar

@rbaleksandar หากเป็นไปได้พวกเขาสามารถเชื่อมต่อกับเราเตอร์ผ่านทางอีเธอร์เน็ตและ ssh ใน
DorkMonstuh

หากคุณไม่มีจอภาพเพื่อเชื่อมต่อ Pi ของคุณคุณจะต้องใช้nmapหรือคล้ายกับการค้นหา IP ของ Pi (เท่าที่ฉันรู้ว่าไม่มีการกำหนด IP เริ่มต้นให้เปิดใช้งานได้ง่ายssh) เมื่อพบ IP คุณสามารถถ่ายโอนdebแพ็กเกจและติดตั้งออฟไลน์เหล่านี้ (แม้ว่าจะค่อนข้างสนุกกับการแก้ไขปัญหาการอ้างอิงทั้งหมดที่อาจเกิดขึ้น) การเชื่อมต่อ (ตัวอย่างเช่นโน้ตบุ๊ก wifi เพื่อให้การเชื่อมต่ออินเทอร์เน็ตกับ Pi over LAN) สามารถทำได้เช่นกัน แต่ทั้งหมดนั่นคือ ... hmmm ... ไม่สนุก (omho) ที่จะจัดการกับเมื่อคุณเพียงแค่ต้องการให้ Pi ของคุณและทำงานในเวลาไม่นาน
rbaleksandar

@rbaleksandar DHCP บน Pi ลงทะเบียนชื่อโฮสต์กับเราเตอร์ของคุณ โมเดลผู้บริโภคส่วนใหญ่และระบบที่ใช้ Windows จะเพิ่มเข้าไปใน DNS ในเครื่องโดยอัตโนมัติและราสเบอร์รี่ (.localdomain) จะแก้ไขไปยังที่อยู่ IP
คน

1

อาจมีการเปลี่ยนชื่ออินเตอร์เฟสของการ์ดเชื่อมต่อไร้สายเป็น wlx_ _ _ _ _ _ _ _

(ชื่ออินเตอร์เฟสเครือข่ายที่คาดการณ์ได้: https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ )

  1. เรียกใช้dmesgและค้นหาบางสิ่งเช่นนี้:

    [ 7.044805] rtl8192cu 1-1.2:1.0 wlx74da3833acb9: renamed from wlan0

นี่คือชื่อใหม่: wlx74da3833acb9

iwconfigวิ่ง ในกรณีของฉัน:

wlx74da3833acb9  IEEE 802.11bgn  ESSID:"sysadmin"  Nickname:"<WIFI@REALTEK>"
      Mode:Managed  Frequency:2.437 GHz  Access Point: 10:FE:ED:E0:6C:96   
      Bit Rate:150 Mb/s   Sensitivity:0/0  
      Retry:off   RTS thr:off   Fragment thr:off
      Power Management:off
      Link Quality=100/100  Signal level=76/100  Noise level=0/100
      Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
      Tx excessive retries:0  Invalid misc:0   Missed beacon:0

แก้ไข /etc/network/interfacesและเปลี่ยนชื่อ wlan0 เป็น wlxXXXXXXXXXXX

ในกรณีของฉัน:

allow-hotplug wlx74da3833acb9
iface wlx74da3833acb9 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

รีบูต

  1. หรือ

แก้ไข:

/lib/udev/rules.d/73-usb-net-by-mac.rules

แสดงความคิดเห็นทุกอย่าง:

    # Use MAC based names for network interfaces which are directly or indirectly
# on USB and have an universally administered (stable) MAC address (second bit
# is 0).

#IMPORT{cmdline}="net.ifnames", ENV{net.ifnames}=="0", GOTO="usb_net_by_mac_end"
#PROGRAM="/bin/readlink /etc/udev/rules.d/80-net-setup-link.rules", RESULT=="/d$

#ACTION=="add", SUBSYSTEM=="net", SUBSYSTEMS=="usb", NAME=="", \
#    ATTR{address}=="?[014589cd]:*", \
#    IMPORT{builtin}="net_id", NAME="$env{ID_NET_NAME_MAC}"

#LABEL="usb_net_by_mac_end"

รีบูต


0

ปรากฎว่าการเปลี่ยนแปลงใน / boot/config.txt สร้างปัญหาที่คล้ายกันสำหรับฉัน! ในกรณีของฉัน "ไม่พบอินเทอร์เฟซ"

งงงวยเพราะการเปลี่ยนแปลงใน config.txt นั้นจะจัดการกับปัญหาการแสดงผล HDMI (พยายามที่จะได้รับการตรวจสอบ 5 "การทำงาน) เมื่อกลับมาที่ config.txt เดิม WiFi ทำงานต่อได้ตามปกติโดยไม่ต้องเปลี่ยนฮาร์ดแวร์หรือซอฟต์แวร์ใด ๆ

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