Raspberry STRETCH wLan Adapter wlan0 reconnect funktioniert nicht

  • Zu 1:

    Code
    1. Power Management:on
    2. Link Quality=34/70 Signal level=-76 dBm

    Das PM solltest Du zwingend auf off konfigurieren. Testen mit:

    Code
    1. pi@raspberrypi:~ $ dmesg | grep -i 'power management'
    2. [ 5.552295] brcmfmac: power management disabled
    3. [ 13.536477] brcmfmac: power management disabled

    Die Signalstärke geht gerade noch und wäre jetzt kein Grund für diese Unterbrechungen. Die wpa_supplicant.conf-Datei kann noch etwas optimiert werden.


    Siehe EDIT oben, im Beitrag #19.

  • Rolle rückwärts:

    Das Shellscript habe ich erstellt

    vorher:

    was bedeutet

    echo 1 > count_wpasup_restart.txt?

    wo soll das hin?


    shell-Script habe ich in die crontab eingetragen.

  • pi@raspberrypi:~/WATCHDOG $ dmesg | grep -i 'power management'

    [ 5.399288] brcmfmac: power management disabled


    das ist das Ergebnis von dmesg, habe an dem Powermanagement bis jetzt nichts geändert.

  • pi@raspberrypi:~/WATCHDOG $ dmesg | grep -i 'power management'

    [ 5.399288] brcmfmac: power management disabled


    das ist das Ergebnis von dmesg, habe an dem Powermanagement bis jetzt nichts geändert.

    Dann trage die Zeilen:

    Code
    1. /sbin/iwconfig wlan0 power off
    2. /sbin/iwconfig wlan0 txpower 20

    in die /etc/rc.local (vor exit 0) ein, reboote deinen PI und poste nach dem reboot, die Ausgaben von:

    Code
    1. iwconfig
    2. dmesg | grep -i 'power management'
  • echo 1 > count_wpasup_restart.txt

    OK, verstanden, eine Datei für die Ausgabe erzeugt, und Anzahl auf 1 gesetzt.

    Edited once, last by CaJo ().

  • Powermanagement ist jetzt OFF

    pi@raspberrypi:~ $ iwconfig

    eth0 no wireless extensions.


    lo no wireless extensions.


    wlan0 IEEE 802.11 ESSID:"MeinwLAN"

    Mode:Managed Frequency:2.462 GHz Access Point: CC:CE:1E:XX:XX:XX

    Bit Rate=65 Mb/s Tx-Power=20 dBm

    Retry short limit:7 RTS thr:off Fragment thr:off

    Power Management:off

    Link Quality=32/70 Signal level=-78 dBm

    Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0

    Tx excessive retries:0 Invalid misc:0 Missed beacon:0


    pi@raspberrypi:~ $ dmesg | grep -i 'power management'

    [ 5.096702] brcmfmac: power management disabled

    [ 6.059064] brcmfmac: power management disabled

  • Powermanagement ist jetzt OFF

    Bit Rate=65 Mb/s Tx-Power=20 dBm

    Power Management:off

    OK. Poste jetzt über einen Zeitraum von ca. 20 Minuten, von deinem PI die Ausgaben von:

    Code
    1. sudo tcpdump -c 100 -vvveni wlan0 arp and host 192.168.2.60

    Hast Du evtl. noch einen anderen Rechner (PC oder Laptop) mit Linux als OS, in deinem (W)LAN?


    EDIT:


    Trage mal noch folgende Zeilen (als vorletzte Zeilen) in die systemweite /etc/crontab deines PI ein:

    Code
    1. */2 * * * * root /usr/bin/arping -q -c 2 -A -I wlan0 -s 192.168.2.91 255.255.255.255 > /dev/null 2>&1
    2. */4 * * * * root /usr/bin/arping -q -c 3 -w 10 -b -f -I wlan0 -s 192.168.2.91 192.168.2.60 > /dev/null 2>&1
  • wLan wieder abgeschmiert.


    pi@raspberrypi:~ $ cat /home/pi/count_wpasup_restart.txt

    2


    also der Counter ist von 1 auf 2 erhöht worden, ein wLan Abbruch wurde detektiert, aber das wLan konnte nicht neu gestartet werden :o(


    ich habe dann den Pi nach 5 Minuten hart neugestartet. ;o)

  • ein wLan Abbruch wurde detektiert, aber das wLan konnte nicht neu gestartet werden

    Wie hast Du festgestellt, dass das wlan nicht neu gestartet worden ist?


    Als Test, poste mal jetzt von deinem PI, die Ausgaben von:

    Code
    1. ps -fC wpa_supplicant
    2. sudo bash -x /usr/local/bin/wpasup_restart

    Evtl. wird jetzt durch diesen Test die wlan-Verbindung nicht mehr richtig hergestellt.

    Deshalb wäre es gut wenn Du eine Kabelverbindung zu deinem PI herstellen könntest oder temporär eine Tastatur und einen Bildschirm an deinen PI anschließen könntest. Kannst Du den PI nicht temporär in der Nähe deines PC betreiben, damit die Kabelverbindung (kurzes Kabel?) möglich ist?

  • Quote

    sudo tcpdump -c 100 -vvveni wlan0 arp and host 192.168.2.60

    da kommen alle Netwerkgeräte in meinem Netzwerk vorbei - und das sind viele. IOTs alle Raspberrys der Fernseher, die Waschmaschine, die Wasseraufbereitung und und und. Das darf ich hier auf Grund der DSGVO oder so nicht veröffentlichen ;o)


    Für mich nichts auffälliges...


    der RECONNECT muss ja auf Grund der 2 in cat /home/pi/count_wpasup_restart.txt angestossen worden sein. Oder? Und der hat nicht funktioniert ...

  • pi@raspberrypi:~ $ ps -fC wpa_supplicant

    UID PID PPID C STIME TTY TIME CMD

    root 380 1 0 14:49 ? 00:00:00 wpa_supplicant -B -c/etc/wpa_supplicant/wpa_supplicant.conf -iwlan0 -Dnl80211,wext

  • pi@raspberrypi:~ $ sudo bash -x /usr/local/bin/wpasup_restart

    ++ /bin/cat /home/pi/count_wpasup_restart.txt

    + n=2

    ++ /usr/bin/arping -q -c 10 -w 2 -f -I wlan0 -s 192.168.2.91 192.168.2.60

    ++ /bin/echo 0

    + '[' 0 '!=' 0 ']'

    + exit 0

  • Das mit dem PI am PC habe ich schon versucht, aber dann ist die wLan-Verbindung zu gut. Dort hatte ich keine Abbrüche. Tastatur und Monitor geht an der Location nicht. Wenn wir nicht anders weiterkommen, mache ich morgen ein passendes LAN-Kabel.

  • Das mit dem PI am PC habe ich schon versucht, aber dann ist die wLan-Verbindung zu gut. Dort hatte ich keine Abbrüche.

    Das ist nicht das Problem, denn den Abbruch der WLAN-Verbindung können wir ja selber provozieren, mit z. B.

    Code
    1. sudo killall wpa_supplicant

    (oder gleichwertig) und durch die LAN-Verbindung zum PI sehen wir ja, wie das Script bzw. der cronjob reagiert.

  • Code
    1. /usr/bin/killall wpa_supplicant
    2. /bin/sleep

    Code ist eingefügt.


    ...jetzt REPRODUZIERBAR

    Ich kann mittlerweile das wLan Problem ERZEUGEN. Wenn ich in einer Terminalsitzung ein Python-Script ausführe, welches einiges an Daten ausgibt, (alleine läuft das Skript)


    UND


    eine andere ssh -Terminal Sitzung aufmache, und dort mit cat ein "längeres" Logfile anzeige, dann geht die wLan-Verbindung flöten.

  • ..., und dort mit cat ein "längeres" Logfile anzeige, dann geht die wLan-Verbindung flöten.

    Sollte aber nicht passieren. Oder ist es evtl. so, dass dein PI abstürzt?


    Versuch mal mit dem Hardware-Watchdog deinen Pi zu überwachen. D. h. in die /boot/config.txt eintragen:

    Code
    1. dtparam=watchdog=on
    2. dtoverlay=pi3-disable-bt
    3. dtparam=act_led_trigger=heartbeat

    speichern und rebooten. Ist die entropy auf deinem PI ausreichend?

    Code
    1. sudo sysctl -a | grep -i entropy

    ? BTW: Das "Reproduzieren" ist wenig nützlich, wenn Du jedes mal den Stecker ziehen musst. Deshalb eine zusätzliche Kabelverbindung zu deinem PI.


    EDIT:


    Wenn der software-Watchdog installiert ist, dann diesen deinstallieren:

    Code
    1. apt-cache policy watchdog


    EDIT 2:


    Das rebooten nach dem Absturz kannst Du mit einer forkbomb testen.

  • config .txt habe ich geändert


    hier die Entropy:

    pi@raspberrypi:~ $ sudo sysctl -a | grep -i entropy

    kernel.random.entropy_avail = 837

    sysctl: reading key "net.ipv6.conf.all.stable_secret"

    sysctl: reading key "net.ipv6.conf.default.stable_secret"

    sysctl: reading key "net.ipv6.conf.eth0.stable_secret"

    sysctl: reading key "net.ipv6.conf.lo.stable_secret"

    sysctl: reading key "net.ipv6.conf.wlan0.stable_secret"


    Wie wird der Software-Watchdog deinstalliert?