Bei Edimax EW-7711UTn wird die WLAN-Verbindung häufig unterbrochen

12

Ich verwende ein Model B 256MB Pi mit einem Edimax EW-7711UTn USB WiFi Adapter. Nach einigen Stunden wird die WLAN-Verbindung unterbrochen und neu gestartet. Bis es nicht mehr funktioniert. Folgendes sehe ich in / var / log / messages:

Mar  9 20:39:29 raspberrypi kernel: [ 9353.773167] cfg80211: Calling CRDA to update world regulatory domain
Mar  9 20:39:29 raspberrypi wpa_action: WPA_IFACE=wlan0 WPA_ACTION=DISCONNECTED
Mar  9 20:39:29 raspberrypi wpa_action: WPA_ID=0 WPA_ID_STR= WPA_CTRL_DIR=/var/run/wpa_supplicant
Mar  9 20:39:29 raspberrypi wpa_action: ifdown wlan0
Mar  9 20:39:30 raspberrypi wpa_action: removing sendsigs omission pidfile: /run/sendsigs.omit.d/wpasupplicant.wpa_supplicant.wlan0.pid
Mar  9 20:39:33 raspberrypi kernel: [ 9357.478605] wlan0: authenticate with 30:46:9a:54:6f:3d
Mar  9 20:39:33 raspberrypi kernel: [ 9357.624628] wlan0: send auth to xxx (try 1/3)
Mar  9 20:39:33 raspberrypi kernel: [ 9357.626510] wlan0: authenticated
Mar  9 20:39:33 raspberrypi kernel: [ 9357.703189] wlan0: associate with xxx (try 1/3)
Mar  9 20:39:33 raspberrypi kernel: [ 9357.707045] wlan0: RX AssocResp from 30:46:9a:54:6f:3d (capab=0x411 status=0 aid=2)
Mar  9 20:39:33 raspberrypi kernel: [ 9357.722534] wlan0: associated
Mar  9 20:39:33 raspberrypi wpa_action: WPA_IFACE=wlan0 WPA_ACTION=CONNECTED
Mar  9 20:39:33 raspberrypi wpa_action: WPA_ID=0 WPA_ID_STR= WPA_CTRL_DIR=/var/run/wpa_supplicant
Mar  9 20:39:33 raspberrypi wpa_action: ifup wlan0=default
Mar  9 20:39:40 raspberrypi wpa_action: creating sendsigs omission pidfile: /run/sendsigs.omit.d/wpasupplicant.wpa_supplicant.wlan0.pid
Mar  9 20:39:40 raspberrypi wpa_action: bssid=xxx
Mar  9 20:39:40 raspberrypi wpa_action: ssid=xxx
Mar  9 20:39:40 raspberrypi wpa_action: id=0
Mar  9 20:39:40 raspberrypi wpa_action: mode=station
Mar  9 20:39:40 raspberrypi wpa_action: pairwise_cipher=CCMP
Mar  9 20:39:40 raspberrypi wpa_action: group_cipher=CCMP
Mar  9 20:39:40 raspberrypi wpa_action: key_mgmt=WPA2-PSK
Mar  9 20:39:40 raspberrypi wpa_action: wpa_state=COMPLETED
Mar  9 20:39:40 raspberrypi wpa_action: ip_address=xxx
Mar  9 20:39:40 raspberrypi wpa_action: address=xxx

Und dmesg sagt mir manchmal:

[20014.112395] wlan0: deauthenticating from xxx by local choice (reason=3)

Die laufenden wpa-Prozesse sind:

 1872 ?        Ss     0:00 /sbin/wpa_supplicant -s -B -P /var/run/wpa_supplicant.wlan0.pid -i wlan0 -W -D nl80211,wext -c /etc/wpa_supplicant/wpa_supplicant.conf
 2010 ?        Ss     0:00 /sbin/wpa_cli -B -P /var/run/wpa_action.wlan0.pid -i wlan0 -p /var/run/wpa_supplicant -a /sbin/wpa_action

Hat jemand diese Probleme und wie kann ich sie beheben?

Da viele Leute Probleme mit unzureichenden Netzteilen zu haben scheinen: Mein RasPi wird mit einem 1,2-A-5-V-Netzteil betrieben und ist mit einem 3,8-A-5-V-USB-Hub verbunden. Ich habe jetzt alle anderen Geräte vom aktiven Hub getrennt und den Edimax daran angeschlossen. Vielleicht hilft dies.

Update: Nein, diesmal dauerte es nur ein paar Minuten, bis das WiFi nicht mehr reagierte.

Update 2: Ich habe immer noch Probleme. Im Moment ist mir aufgefallen, dass die Verbindung mit ifdown und ifup neu gestartet werden kann, aber ich erhalte immer mehr der folgenden Meldungen:

Mar 22 19:11:59 raspberrypi kernel: [215435.967714] cfg80211: Calling CRDA to update world regulatory domain
Mar 22 19:12:01 raspberrypi kernel: [215437.948971] wlan0: authenticate with XXXXXX
Mar 22 19:12:02 raspberrypi kernel: [215438.087245] wlan0: send auth to XXXXXX (try 1/3)
Mar 22 19:12:02 raspberrypi kernel: [215438.089006] wlan0: authenticated
Mar 22 19:12:02 raspberrypi kernel: [215438.165765] wlan0: associate with XXXXXX (try 1/3)
Mar 22 19:12:02 raspberrypi kernel: [215438.169604] wlan0: RX AssocResp from XXXXXX (capab=0x411 status=0 aid=1)
Mar 22 19:12:02 raspberrypi kernel: [215438.185759] wlan0: associated

Dies geschieht in immer kürzeren Zeiträumen, bis ich neu starte. Dann ist es für ein oder zwei Tage wieder in Ordnung. Also, was ist hier los?

Update: Ok, ich habe gerade den Pi an ein Display angeschlossen und mit dem Kopieren von Dateien über WiFi begonnen. Nach ungefähr 15 Minuten erstarrte der Pi. Ich hatte einen tmux mit der Ausgabe von htop und tail -f / var / log / messages. Keine sichtbare Kernel-Panik oder irgendetwas in / var / log / messages. Die Maschine ist eingefroren.

Arne
quelle
Eine Sache, über die ich mich wundere: Was bringt die wpa_cli? Kann es den wpa_supplicant stören?
Arne
Ich habe meine /etc/network/interfacesähnlich wie die hier aufgeführte geändert : elinux.org/RPi_edimax_EW-7811Un , und jetzt scheint es ganz gut zu funktionieren. Ist seit einigen Stunden auf und arbeitet immer noch, ohne eine erneute Verbindung herzustellen.
Arne
Und jetzt, zehn Minuten später, bekomme ich zwei Wiederverbindungen. Das Problem ist also nicht weg. Solange es sich nur alle paar Stunden wieder verbindet, bin ich glücklich. Mal sehen ...
Arne
Hast du immer noch das Problem?
Jivings
1
Hoffentlich wird Ihnen diese Prämie etwas mehr Aufmerksamkeit schenken.
Jivings

Antworten:

7

Ich denke, dass ich jetzt mit Sicherheit sagen kann, dass die Probleme auf das Gerät und / oder den rt2x00-Treiber zurückzuführen sind. Ich habe Ethernet nur die letzten 48 Stunden verwendet, viele, viele Gigabyte an Daten kopiert und habe kein einziges Problem. Daher würde ich derzeit von der Verwendung von RT2800-basierten Geräten abraten, und ich werde versuchen, einen anderen Dongle zu finden, möglicherweise einen mit dem Realtek-Chip, da dieser am häufigsten verwendet wird.

EDIT: Ich habe einen TPL-WN725N mit einem RTL8188CUS-Chip gekauft. Es funktioniert sofort, derzeit mit 0,5 GB Datenverkehr und läuft noch. Es scheint auch etwas schneller zu sein als der Ralink-basierte Dongle. Ich erhalte 1,9 MByte / s, während ich vorher 1,3 MByte / s hatte. Mal sehen, ob es den Pi länger laufen lässt und nicht einfriert.

BEARBEITEN: > 5 GB und immer noch stark. Sieht sehr vielversprechend aus. Läuft weiter, um festzustellen, ob es fehlschlägt.

Arne
quelle
Also, wem soll ich dieses Kopfgeld geben? :)
Jivings
Na ja, nicht ich. Das wäre unfair, denke ich. Ich überlasse es dir.
Arne
Ich bin nicht sicher, ob der Realtek die besten Treiber / Chips sind. Ich habe eine (RTL8188CUS), es ist in Ordnung, aber es ist nicht so toll, mit ziemlich häufigen Unterbrechungen / Wiederverbindungen. Der Fahrer scheint stabil zu sein, auch beim Entladen / Nachladen. Auf der anderen Seite habe ich gute Erfahrungen mit anderen Ralink-basierten Dongles auf dem Pi gelesen. Ich habe einen 5-Euro-Dongle bestellt, in dem eigentlich ein Ralink-Chip stecken soll, von dem ich gut gelesen habe, und habe vor, ihn bald zu testen. Es gibt auch eine Wikipage für verifizierte Peripheriegeräte (von denen Sie vielleicht schon wissen): elinux.org/RPi_VerifiedPeripherals
Pa_
Ich fand dies hier: raspberrypi.org/phpBB3/viewtopic.php?f=24&t=5830 - Mein Raspberry Pi ist aus dem letzten Jahr, vielleicht habe ich die Version mit den Polyfuses, die den WiFi-Adapter einschränken? Ich hatte den Edimax-Dongle auf dem Raspberry Pi (mit 1,2 A Netzteil) verwendet.
Arne
Da mein Pi jedoch neu startet, wenn ich den Edimax (hot-) stecke, wird mein Pi vermutlich bereits mit deaktivierten Polyfuses geliefert.
Arne
2

Es gibt eine spezielle Version von hostapd (befasst sich mit der drahtlosen Authentifizierung), die Sie mit diesem Adapter verwenden sollten. Der Realtek-Chipsatz funktioniert nicht besonders gut, wenn überhaupt mit der "Out-of-the-Box" -Raspbian-Distribution.

Ich habe eine Anleitung zur Installation dieses WLAN-Adapters zur Verwendung als AP in meinem Blog veröffentlicht.

Wenn Sie meinen Blog nicht lesen möchten, finden Sie hier den Link zu der Anleitung, die ich verwendet habe .

BigCowPi
quelle
Ich bin nicht sicher, ob Ihre Antwort hier zutrifft. Ich verstehe, dass Hostapd für Pis als Access Point läuft ..? Meins läuft als Client.
Arne
Sorry, habe das falsche Ende des Sticks da :)
BigCowPi
2

Ich habe keine Ahnung, um ehrlich zu sein, aber es gibt zwei Dinge, die Sie versuchen könnten:

Zunächst wird mit den im Realtek-Treiberpaket dokumentierten Energiesparoptionen herumgespielt. Im Moment nutze ich die maximale Energieeinsparung durch:

insmod /lib/modules/3.6.11+/kernel/drivers/net/wireless/rtl8192cu/8192cu.ko  rtw_power_mgnt=2 rtw_ips_mode=1 rtw_hwpwrp_detect=1 rtw_enusbss=1

Sie können jedoch verschiedene Kombinationen der oben genannten Optionen ausprobieren.

Zweitens könnten Sie versuchen, alle n Minuten einen Cronojob zu machen, der überprüft, ob das WLAN funktioniert (z. B. mit fping oder was auch immer), und falls nicht, es wieder herunterfährt (möglicherweise mithilfe des Network Manager-Befehlszeilenclients) Entfernen und erneutes Einsetzen des Moduls

Pa_
quelle
Ich habe ein solches Skript bereits ausgeführt (alle 5 Minuten wird sysloggt, ob WLAN aktiviert oder deaktiviert ist, und es startet WLAN neu), aber es hilft nicht. Im Moment bleibt das ganze System wahrscheinlich stehen, weil die Protokollierung in / var / log / messages irgendwann ganz eingestellt wird. Es wird versucht, mit angeschlossenem Display zu debuggen.
Arne
Wie ich oben schrieb: Der Pi ist gerade erstarrt. Tastatur tot, Displayausgabe eingefroren, keine weiteren Meldungen.
Arne
1
Außerdem: Es scheint, dass mein Edimax den RT2800-Treiber verwendet, nicht den RTL8192.
Arne
Sie müssen die Möglichkeit ausschließen, dass das Problem mit dem WLAN-Treiber und das Problem mit dem Einfrieren nicht zusammenhängen, indem Sie den Dongle entfernen und denselben Test über Ethernet durchführen.
Goldlöckchen
Mach das jetzt. Bisher wurden 1,7 GB problemlos kopiert. Geht immer noch.
Arne
2

Ich habe genau dieses Problem mit mehreren verschiedenen Wifi-Dongles. Zwei Dinge.

1.) Fügen Sie dies zu Ihrer / etc / network / interfaces hinzu

drahtloses Ausschalten

2.) wlan0: Die wiederholte Deauthentifizierung von xxx durch lokale Wahl (Grund = 3) kann von einem Dauthentifizierungsangriff auf Ihr WLAN ausgehen


quelle
2

Es wurde diese Erklärung gefunden, die angibt, dass die Energieverwaltung des Treibers möglicherweise fehlerhaft ist. Es wird außerdem empfohlen, die folgenden Änderungen für den Treiber zu verwenden:

sudo nano /etc/modprobe.d/8192cu.conf

und füge folgendes ein:

# Disable power saving
options 8192cu rtw_power_mgnt=0 rtw_enusbss=1 rtw_ips_mode=1 
Mircea D.
quelle