v2.4.0
Images
This release refreshes the operating systems and adds a new one.
- Raspberry Pi OS Trixie (new) for CM4, CM5, Zero 2 W, and Zero 1. Zero 1 is 32-bit armhf, the rest are 64-bit arm64.
- Batocera 43.1 for CM4, CM5, and Zero 2 W. Zero 1 stays on 43 for now, since 43.1 is not available for that architecture.
- Lakka 6.1 for CM4, CM5, Zero 2 W, and Zero 1. Unchanged from v2.3.0.
- Recalbox for CM4, CM5, and Zero 2 W. Zero 1 is still excluded because the stock image appears defective. Recalbox still does not appear to have a battery icon (just fyi).
Raspberry Pi OS
- These images boot into mouse mode by default, since the desktop is more usable with a pointer than with a gamepad. Change
input_typeinpspi.confon the boot partition if you want gamepad mode instead.
WiFi
- WiFi handling has moved out of the gamepad driver and into its own binary,
wifi_monitor. The gamepad no longer opens a netlink socket or toucheswlan0at all. - The left switch now turns WiFi on and off. Flipping it brings
wlan0up or down directly, so you can kill the radio to save power without going into the OS settings. - Link status is still reported back to the board over I2C to drive the WiFi LED, same as before.
Gamepad Driver
- Rewrote the joystick range and deadzone handling. Both sticks now share a single total travel value split evenly around center, so the left and right sticks behave identically instead of the right stick running on a different scale.
- Mouse speed now scales evenly across the full range of stick travel, ramping from slow to fast as you push further. Previously the speed calculation was tied to a fixed divisor and broke if you changed the deadzone.
--autocenternow applies to both axes on both sticks. It previously missed cases where only one axis was off center, and it now waits for a good read at startup rather than trusting the first sample.--deadzoneis now capped at 50 rather than 100.- Volume and mute keys now work in mouse mode. The keyboard device is created for both gamepad and mouse input types.
- Mute status is now reported to the OS as a standard switch event, so desktop environments show the correct mute state.
- The driver now exits after 10 consecutive CRC failures instead of retrying forever.
Battery
- Fixed the reported battery capacity.
charge_fullandcharge_nowpreviously disagreed, which could make the OS show a percentage that did not match the actual charge level. - Capacity is now a single configurable value, set to 2000000 uAh by default. Change it if you are using a battery of a different size.
Power & Stability
- Removed the undervolt and disabled the underclock in
config.txt. Both were there to save power, but they were causing instability on some boards, and stability matters more than the small power saving. - The RTC daemon is now disabled by default in
boot.sh. Most builds have a working PCF8563 kernel module and do not need it, and running both is redundant. If your distro is missing the kernel module, uncomment thertcline inboot.shto get the daemon back.
Boards & Documentation
- Renamed the
boards/pspi_6folder toboards/pspiand moved production files into a consistentproductionsubfolder on every board. The carrier and headphone boards now follow the same structure. Existing links into the old paths will need updating. - Added PCB 0.8 and photos of several older boards for completeness.
- Added compatibility notes to the headphone boards, corrected a wrong note on PCB 1.4, and cleaned up the diode fix description.
- Streamlined the README on every board folder and removed sections that were inaccurate.
- Firmware flashing instructions have moved to the wiki.
Compute Module 5 Reminder
- Power draw is very high. The system may cut off if power demand spikes. The hardware gets very hot.
- Audio through headphones and speakers does not work on the CM5 with the CM4 carrier. The pins changed, so no software change will fix this. Bluetooth or USB audio required.
Image User/Password
Lakka
Username: root
Password: root
Batocera
Username: root
Password: linux
Recalbox
Username: root
Password: recalboxroot
Full Changelog: v2.3.0...v2.4.0