Utilizo el controlador rt2800usb (con un dongle RT5370 USB) y configuré mi Raspberry Pi como un punto de acceso WiFi con hostapd. El problema es que obtengo periódicamente tiempos de espera (ver ejemplo). Esto no sería un problema si no usara mi RPi como control remoto para un quadcopter. Parece ser independiente de cómo acciono mi RPi y sucede con todos los dongles wifi de Ralink de este tipo que tengo.
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
salida 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
Preparé un pequeño gráfico como ilustración. Implementé mi propia función de ping (con tiempos variables por razones de prueba) y veo cada ~ 12s un tiempo de espera (indicado en rojo por un pequeño espacio). Creo que el usuario normal no notará estos tiempos de espera cuando solo navegue en Internet.
raspbian
networking
wireless
dgrat
fuente
fuente
Respuestas:
Parece ser un problema conocido. Por lo que he encontrado, todo lo que podemos hacer es:
y deshabilite el cifrado hw (por lo que se hará en el software). Edite o cree /etc/modprobe.d/rt2800usb.conf:
Además, no olvide actualizar /lib/firmware/rt2870.bin de acuerdo con este artículo http://www.raspberrypi.org/forums/viewtopic.php?t=22623 desde el sitio web de MediaTek.
Versiones de firmware para su referencia:
La versión del firmware se imprime en el arranque a dmesg en la línea que contiene:
rt2x00lib_request_firmware: Información - Firmware detectado - versión:
fuente
Después de actualizar al kernel más reciente, pasé 4 horas sin encontrar casi tantos errores. Úselo
rpi-update
para actualizar su núcleo.Como referencia, mi
uname -a
es:Todavía recibo
rt2800usb_entry_txstatus_timeout
errores ocasionalmente, pero solía llenar mi dmesg. Ya no recibo losGot TX status for an empty queue
errores.Actualizar:
Habló demasiado pronto. Mi pi estuvo mucho mejor durante 7 horas y luego comenzó a recibir una avalancha de errores nuevamente. No he podido averiguar qué desencadena las inundaciones de error. Parece que el problema no se limita a Raspberry Pi (también en OpenWRT , Fedora , Kernel.org ). Parece que algunas personas informan que todo es normal durante un cierto tiempo antes de que se produzcan los errores.
fuente
Actualicé el kernel (desde Linux alarmpi 3.12.26-2-ARCH a Linux alarmpi 3.12.28-2-ARCH) esta mañana y desde entonces llené mi diario con
rt2800usb_entry_txstatus_timeout: Advertencia - Tiempo de espera de estado de TX para la entrada 6 en la cola 2
Puede que no sea una solución limpia, pero degradar el kernel a su versión anterior hizo que las cosas volvieran a funcionar (más de 7 horas después)
fuente
Estoy usando una frambuesa b +, linux 3.12.32+, con wipi wifi-dongle. El pi está dentro de un preamplificador de audio, con el dongle wifi conectado desde el exterior a través de un cable usb de extensión (montado en panel tipo A). Es fundamental que la tierra del cable USB esté firmemente conectada al chasis del preamplificador. De lo contrario, obtenemos exactamente los mensajes de error como se muestra en la pregunta. No he visto ninguna mejora en esto con las nuevas versiones actualizadas o rasbian de rt2870.bin (probado v0.36). Por lo tanto, en algunos entornos, los mensajes de error dmesg pueden deberse a la contaminación de radio en las proximidades del dispositivo de radio wifi (los motores generan frecuencias que pueden perturbar los dispositivos de radio). Intente maximizar la distancia entre la radio y la perturbación y / o mejore el blindaje de la radio.
fuente