ฉันได้รับ WiFi timouts พร้อมไดรเวอร์ rt2800usb


10

ฉันใช้ไดรเวอร์ rt2800usb (พร้อมดองเกิล USB RT5370) และกำหนดค่า Raspberry Pi ของฉันเป็นฮอตสปอต WiFi พร้อม hostapd ปัญหาคือว่าฉันได้รับหมดเวลาเป็นระยะ (ดูตัวอย่าง) นี่จะไม่เป็นปัญหาหากฉันไม่ใช้ RPi ของฉันเป็นรีโมทคอนโทรลสำหรับ quadcopter ดูเหมือนว่าจะเป็นอิสระในวิธีที่ฉันใช้พลัง RPi ของฉันและมันเกิดขึ้นกับดองเกิล wifi ของ Ralink ทุกประเภทที่ฉันมี

Antwort von 192.168.42.1: Bytes=32 Zeit=1ms TTL=64
Antwort von 192.168.42.1: Bytes=32 Zeit=1ms TTL=64
Antwort von 192.168.42.1: Bytes=32 Zeit=1ms TTL=64
Zeitüberschreitung der Anforderung.
Antwort von 192.168.42.1: Bytes=32 Zeit=1ms TTL=64
Antwort von 192.168.42.1: Bytes=32 Zeit=1ms TTL=64
Antwort von 192.168.42.1: Bytes=32 Zeit=1ms TTL=64

dmesg เอาท์พุท:

[ 2606.960813] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 6 in queue 2
[ 2606.960897] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 6 in queue 2
[ 2606.960925] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 6 in queue 2
[ 2606.961001] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 7 in queue 2
[ 2606.961052] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 8 in queue 2
[ 2606.961093] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 9 in queue 2
[ 2606.961133] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 10 in queue 2
[ 2606.961174] ieee80211 phy0: rt2800usb_entry_txstatus_timeout: Warning - TX status timeout for entry 11 in queue 2
[ 2608.352291] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 2608.352524] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 2608.352766] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 2608.353014] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 2608.353262] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping
[ 2608.353511] ieee80211 phy0: rt2800usb_txdone: Warning - Got TX status for an empty queue 2, dropping

ฉันเตรียมกราฟิกขนาดเล็กเป็นภาพประกอบ ฉันใช้ฟังก์ชั่น ping ของตัวเอง (พร้อมการตั้งเวลาตัวแปรสำหรับเหตุผลในการทดสอบ) และดูการหมดเวลาทุก ๆ 12 วินาที (ระบุด้วยสีแดงด้วยช่องว่างเล็ก ๆ ) ฉันเชื่อว่าผู้ใช้ทั่วไปจะไม่สังเกตเห็นการหมดเวลาเหล่านี้เมื่อเพียงท่องอินเทอร์เน็ต

ป้อนคำอธิบายรูปภาพที่นี่


คุณบอกว่ามันดูเหมือนจะเป็นอิสระในการที่คุณใช้พลังงานปี่ หมายความว่าคุณได้ลองใช้อุปกรณ์จ่ายพลังงานหลาย ๆ
AwesomeUser

นั่นหมายความว่าฉันพยายามใช้พลังงานโดย RPi โดยตรงและผ่าน USB-Hub ทุกอย่างเหมือนกัน ดูเหมือนว่าจะเป็นข้อผิดพลาดของ hostapd (ไม่น่าเป็นไปได้), rt2800usb หรือของเฟิร์มแวร์ (rt2870)
dgrat

คุณได้ลองพลังปี่แตกต่างกันหรือไม่?
AwesomeUser

ใช่ปัญหาไม่ได้เกี่ยวข้องกับพลังงาน อีเธอร์เน็ตก็ทำงานได้โดยไม่มีปัญหา
dgrat

คำตอบ:


7

ดูเหมือนว่าจะเป็นปัญหาที่รู้จัก จากสิ่งที่ฉันค้นพบสิ่งที่เราทำได้คือ:

# disable power management (may need to be done periodically?)
iwconfig wlan0 power off 

และปิดการเข้ารหัส hw (ดังนั้นจะทำในซอฟต์แวร์) แก้ไขหรือสร้าง /etc/modprobe.d/rt2800usb.conf:

options rt2800usb nohwcrypt=1

อย่าลืมอัปเดต /lib/firmware/rt2870.bin ตามบทความนี้ด้วยhttp://www.raspberrypi.org/forums/viewtopic.php?t=22623จากเว็บไซต์ MediaTek!

เวอร์ชั่นของเฟิร์มแวร์สำหรับการอ้างอิงของคุณ:

md5:36c944c3138125605d28c0a3a1338be9 version 0.29 from Raspian base install
md5:ac4f6d8b679945208a978e397c016aa7 version 0.33 from DPO_RT5572_LinuxSTA_2.6.1.3_20121022 (MediaTek website)

เวอร์ชั่นของเฟิร์มแวร์นั้นจะถูกพิมพ์ลงใน bootup to dmesg ในบรรทัดที่มี:
rt2x00lib_request_firmware: ข้อมูล - ตรวจพบเฟิร์มแวร์ - เวอร์ชั่น:


คำเตือนเมื่อปิดการใช้งานการเข้ารหัส HW คุณจะเน้น CPU ของคุณมากขึ้น
martinlbb

สำหรับ D-Link ของฉันเฟิร์มแวร์ 0.33 นั้นมีประโยชน์ เนื่องจากอาจไม่ใช่เรื่องง่ายที่จะหาเฟิร์มแวร์ทางฝั่ง MediaTek วันนี้ยังมีตัวเลือกอื่น - ตัวเลือกหนึ่งคือรับ fw จากgithub.com/afro-gum/DPO_RT5572_LinuxSTA/blob/master/common/ …
ciekawy

0

หลังจากอัปเดตเป็นเคอร์เนลล่าสุดฉันใช้เวลา 4 ชั่วโมงโดยไม่ต้องกดปุ่มผิดพลาดเกือบเท่านี้ ใช้rpi-updateเพื่ออัปเดตเคอร์เนลของคุณ

สำหรับการอ้างอิงของฉันuname -aคือ:

Linux boat-pi 3.12.28+ #713 PREEMPT Fri Sep 19 16:43:32 BST 2014 armv6l GNU/Linux

ฉันยังคงได้รับrt2800usb_entry_txstatus_timeoutข้อผิดพลาดเป็นครั้งคราว แต่มันใช้เติม dmesg ของฉัน ฉันไม่ได้รับGot TX status for an empty queueข้อผิดพลาดอีกต่อไป

ปรับปรุง:

พูดเร็วเกินไป ปี่ของฉันดีขึ้นมากเป็นเวลา 7 ชั่วโมงจากนั้นก็เริ่มได้รับข้อผิดพลาดอีกครั้ง ยังไม่สามารถระบุสาเหตุที่ทำให้เกิดข้อผิดพลาดได้ ดูเหมือนว่าปัญหาจะไม่ จำกัด อยู่ที่ Raspberry Pi (เช่นOpenWRT , Fedora , Kernel.org ) ดูเหมือนว่าบางคนกำลังรายงานว่าทุกอย่างเป็นปกติในระยะเวลาหนึ่งก่อนที่จะเกิดข้อผิดพลาด


0

ฉันอัปเดตเคอร์เนล (จาก Linux alarmpi 3.12.26-2-ARCH เป็น Linux alarmpi 3.12.28-2-ARCH) เช้านี้และตั้งแต่บันทึกประจำวันของฉันก็เต็มไปด้วย

rt2800usb_entry_txstatus_timeout: คำเตือน - หมดเวลาสถานะ TX สำหรับรายการ 6 ในคิว 2

อาจไม่ใช่การแก้ไขที่สะอาด แต่การลดระดับเคอร์เนลเป็นเวอร์ชั่นก่อนหน้าทำให้สิ่งต่าง ๆ ทำงานได้อีกครั้ง (มากกว่า 7 ชั่วโมงในภายหลัง)


0

ฉันใช้ราสเบอร์รี่ b +, linux 3.12.32+, กับ wipi wifi-dongle pi อยู่ในแอมพลิไฟเออร์แอมพลิฟายเออร์ก่อนโดยเชื่อมต่อ wifi-dongle จากภายนอกผ่านสาย usb ขยาย (แผงเมาท์ชนิด A) จำเป็นอย่างยิ่งที่สาย usb จะเชื่อมต่อกับแชสซีของพรีแอมป์อย่างแน่นหนา มิฉะนั้นเราจะได้รับข้อความแสดงข้อผิดพลาดตามที่แสดงในคำถาม ยังไม่เห็นการปรับปรุงใด ๆ ในเรื่องนี้ด้วย rasbian รุ่นใหม่กว่าหรือรุ่นปรับปรุงของ rt2870.bin (ทดสอบ v0.36) ดังนั้นในบางสภาพแวดล้อมข้อความผิดพลาด dmesg อาจเกิดจากมลพิษทางวิทยุในบริเวณใกล้เคียงกับอุปกรณ์วิทยุ wifi (มอเตอร์สร้างความถี่ที่สามารถรบกวนอุปกรณ์วิทยุ) พยายามที่จะเพิ่มระยะห่างระหว่างวิทยุและการรบกวนและ / หรือปรับปรุงโล่วิทยุ

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