Eu uso o driver rt2800usb (com um dongle USB RT5370) e configurei meu Raspberry Pi como um ponto de acesso WiFi com o hostapd. O problema é que eu recebo intervalos periodicamente (veja o exemplo). Isso não seria um problema se eu não usasse meu RPi como controle remoto para um quadcopter. Parece ser independente de como eu ligo meu RPi e isso acontece com todos os dongles wifi Ralink deste tipo que tenho.
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
saída 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
Eu preparei um pequeno gráfico como ilustração. Eu implementei minha própria função de ping (com tempos variáveis por razões de teste) e vejo a cada ~ 12s um tempo limite (indicado em vermelho por uma pequena lacuna). Acredito que o usuário normal não notará esses tempos limite quando estiver navegando na Internet.
raspbian
networking
wireless
dgrat
fonte
fonte
Respostas:
Parece ser um problema conhecido. Pelo que descobri, tudo o que podemos fazer é:
e desative a criptografia hw (para que seja feita no software). Edite ou crie /etc/modprobe.d/rt2800usb.conf:
Além disso, não esqueça de atualizar o /lib/firmware/rt2870.bin de acordo com este artigo http://www.raspberrypi.org/forums/viewtopic.php?t=22623 no site MediaTek!
Versões de firmware para sua referência:
A versão do firmware é impressa na inicialização do dmesg na linha que contém:
rt2x00lib_request_firmware: Info - Firmware detectado - versão:
fonte
Após atualizar para o kernel mais recente, passei 4 horas sem encontrar quase tantos desses erros. Use
rpi-update
para atualizar seu kernel.Para referência, meu
uname -a
é:Ainda recebo
rt2800usb_entry_txstatus_timeout
erros ocasionalmente, mas costumava preencher meu dmesg. Não recebo mais osGot TX status for an empty queue
erros.Atualizar:
Falou muito cedo. Meu pi ficou muito melhor por 7 horas e depois começou a receber uma enxurrada de erros novamente. Não foi possível descobrir o que desencadeia as inundações de erro. Parece que o problema não está confinado ao Raspberry Pi (também no OpenWRT , Fedora , Kernel.org ). Parece que algumas pessoas estão relatando que tudo está normal por um certo período de tempo antes que os erros apareçam.
fonte
Atualizei o kernel (do Linux alarmpi 3.12.26-2-ARCH para o Linux alarmpi 3.12.28-2-ARCH) esta manhã e, desde então, tenho meu diário preenchido com
rt2800usb_entry_txstatus_timeout: Aviso - Tempo limite do status TX para a entrada 6 na fila 2
Pode não ser uma correção limpa, mas fazer o downgrade do kernel para sua versão anterior fazia as coisas funcionarem novamente (mais de 7 horas depois)
fonte
Estou usando um raspberry b +, linux 3.12.32+, com wipi wifi-dongle. O pi está dentro de um pré-amplificador de áudio, com o dongle wifi conectado do lado de fora através de um cabo usb de extensão (tipo A montado no painel). É fundamental que o aterramento do cabo USB esteja firmemente conectado ao chassi do pré-amplificador. Caso contrário, receberemos exatamente as mensagens de erro, conforme mostrado na pergunta. Não vi nenhuma melhoria nisso com as versões rasbian ou atualizadas mais recentes do rt2870.bin (testada na versão 0.35). Portanto, em alguns ambientes, as mensagens de erro dmesg podem ocorrer devido à poluição do rádio nas proximidades do dispositivo de rádio wifi (os motores geram frequências que podem perturbar os dispositivos de rádio). Tente maximizar a distância entre o rádio e a perturbação e / ou melhorar a blindagem do rádio.
fonte