v1.1.0: Wi-Fi resilience + reworked Steam artwork
(ps5-final.sh is now at v25, verified hash at the bottom)
The big one: wifi-ensure watchdog
The console's Wi-Fi could silently die while the box stayed reachable over ethernet. Root cause chain: the router periodically disassociates clients (reason 3, normal), the driver usually re-joins in seconds, but rarely the IW620 firmware wedges. Because the module loads with auto_fw_reload=0, the wedged firmware survives every module reload, so no amount of modprobe cycling or NetworkManager restarts can cure it. The only reliable cure is a PCI function-level reset, which forces a fresh firmware download.
This release ships a small systemd watchdog (wifi-ensure) that checks Wi-Fi every 15 s and climbs a recovery ladder:
- nmcli reconnect
- link bounce + wpa_supplicant and NetworkManager restart (clears dead interface handles)
- moal/mlan driver reload
- PCI function-level reset with remove+rescan fallback
Before touching anything it dumps forensics (dmesg, NM journal, link state, rfkill, routes) to ~/wifi-ensure.log, so post-mortems survive. It stands down when you deliberately turn Wi-Fi off, and after 3 failed rounds it backs off for 10 minutes instead of flapping.
Battle-tested on real hardware against induced failures: plain disconnect (recovered in 12 s at step 1), driver kill (step 3), full firmware wedge (recovered in 36 s at step 4), plus the back-off loop guard.
Supporting Wi-Fi changes
- Power save disabled at both levels: NetworkManager (99-wifi-powersave-off.conf) and the moal module itself (ps_mode=0 in ps5-iw620.conf, which overrides the image's moal.conf)
- Installs iw (link diagnostics the watchdog uses) and wireless-regdb (fixes the "cfg80211: failed to load regulatory.db" errors)
Reworked Steam artwork
Complete new sets for both Big Picture tiles: transition_to_desktop and ds5-pairing-tool. Each set ships grid-vertical (600x900), grid-horizontal (460x215 plus 920x430 for HiDPI), heroes (3840x1240 plus 1920x620 for 1080p), logo (1280x720, transparent) and icon (256x256).
Upgrading an existing install
Fresh setup: download ps5-final.sh, verify the hash below, run it.
Already set up with an older version: re-run the new ps5-final.sh. Every step is idempotent (pacman skips what is installed, configs get re-asserted) and step 9/16 installs the watchdog. Answer the prompts as usual or let the 60 s timeouts pick the defaults.
Script integrity
sha256 of ps5-final.sh v25:
a13b247a08419bac15cc115862c8ed62026b7d09e25e872dcbb31f713d048e3d