Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
tools:raspbian [2023/10/04 18:47] – [Problems] darron | tools:raspbian [2024/05/16 11:52] (current) – [Upgrade] darron | ||
---|---|---|---|
Line 269: | Line 269: | ||
+ | ===WiFi problems=== | ||
+ | |||
+ | ==Hotplug== | ||
+ | |||
+ | At least on one setup the WiFi fails to start during boot. It seems that the interface | ||
+ | has no name as yet or is renamed to something else then renamed back to wlan0 but after | ||
+ | wpa_supplicant runs which results in network failure. | ||
+ | |||
+ | Error looks like this in syslog: | ||
+ | < | ||
+ | wpa_supplicant[434]: | ||
+ | wpa_supplicant[434]: | ||
+ | wpa_supplicant[434]: | ||
+ | wpa_supplicant[434]: | ||
+ | wpa_supplicant[434]: | ||
+ | wpa_supplicant[434]: | ||
+ | wpa_supplicant[434]: | ||
+ | wpa_supplicant[434]: | ||
+ | wpa_supplicant[434]: | ||
+ | </ | ||
+ | |||
+ | To solve this configure / | ||
+ | if this also fails, replace rc.local with the following: | ||
+ | |||
+ | < | ||
+ | #!/bin/sh | ||
+ | # | ||
+ | # rc.local | ||
+ | # | ||
+ | # This script is executed at the end of each multiuser runlevel. | ||
+ | # Make sure that the script will "exit 0" on success or any other | ||
+ | # value on error. | ||
+ | # | ||
+ | # In order to enable or disable this script just change the execution | ||
+ | # bits. | ||
+ | # | ||
+ | |||
+ | check() { | ||
+ | / | ||
+ | } | ||
+ | check | ||
+ | while test $? -eq 1; do | ||
+ | sleep 1 | ||
+ | check | ||
+ | done | ||
+ | ifup wlan0 | ||
+ | |||
+ | # Print the IP address | ||
+ | _IP=$(hostname -I) || true | ||
+ | if [ " | ||
+ | printf "My IP address is %s\n" " | ||
+ | fi | ||
+ | |||
+ | exit 0 | ||
+ | </ | ||
+ | |||
+ | ==Keep alive== | ||
+ | |||
+ | Pi4 WiFi can both disconnect with wpa_supplicant still running or crash. | ||
+ | |||
+ | In the former case we can reconnect but in the latter a reboot is required. | ||
+ | |||
+ | < | ||
+ | #! /bin/bash | ||
+ | |||
+ | check() { | ||
+ | LOSS=`ping -c 3 -i 1 192.168.0.1 | awk ' | ||
+ | } | ||
+ | while test 1; do | ||
+ | sleep 30 | ||
+ | check | ||
+ | if test " | ||
+ | ifdown wlan0 1>/ | ||
+ | ifup wlan0 1>/ | ||
+ | sleep 5 | ||
+ | check | ||
+ | if test " | ||
+ | reboot | ||
+ | fi | ||
+ | fi | ||
+ | done | ||
+ | </ | ||
+ | |||
+ | Change the IP address to that of your access point or modem. | ||
=== Upgrade === | === Upgrade === | ||
Line 290: | Line 374: | ||
EG. | EG. | ||
+ | |||
+ | to bullseye from buster | ||
< | < | ||
sed -i ' | sed -i ' | ||
</ | </ | ||
+ | |||
+ | or edit for from bullseye to bookworm | ||
+ | < | ||
+ | deb http:// | ||
+ | deb http:// | ||
+ | deb http:// | ||
+ | </ | ||
+ | |||
+ | If keys need importing (if import fails try again, and again) | ||
+ | |||
+ | < | ||
+ | apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0E98404D386FA1D9 | ||
+ | apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 6ED0E7B82643E131 | ||
+ | apt-key adv --recv-keys --keyserver keyserver.ubuntu.com F8D2585B8783D481 | ||
+ | apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 54404762BBB6E853 | ||
+ | apt-key adv --recv-keys --keyserver keyserver.ubuntu.com BDE6D2B9216EC7A8 | ||
+ | </ | ||
+ | |||
Update | Update | ||
Line 304: | Line 408: | ||
Change RPi sources list | Change RPi sources list | ||
+ | |||
< | < | ||
Line 309: | Line 414: | ||
</ | </ | ||
+ | or | ||
+ | |||
+ | < | ||
+ | sed -i ' | ||
+ | </ | ||
Update | Update | ||