Repository navigation
feat: add native AYANEO 3 joystick lighting controls - #552
sknowledge1 wants to merge 5 commits into
Conversation
|
While an RGB interface is something we've planned for a while, this specific device in Bazzite should be using the steam menu once the v4 hid-ayaneo patch is integrated into OGC and a NOT-FOR-UPSTREAM patch is added to make it work like the go. |
Preserve the existing install-dialog behavior in the exported build used to validate the new joystick-lighting panel. Assisted-by: OpenAI Codex
Read and apply shared LED state through InputPlumber, with a stock gamepad-friendly panel for Off, Solid, Breathing and Colour cycle. InputPlumber remains the settings owner and hardware writer. Assisted-by: OpenAI Codex
Keep the new Godot resources available in a fresh exported build. Assisted-by: OpenAI Codex
When InputPlumber reports firmware-timed cycling, show a fixed-tempo note and no adjustable speed control. Retain the saved period for compatibility with the shared LED setting format. Assisted-by: OpenAI Codex
4fc203b to
a88b6c6
Compare
|
@pastaq, following up on your Steam-menu direction with the recorded results: the generic LED name and the temporary go-style name both failed to expose Steam controls on the tested 8840U. OGC #130 now records that retired experiment. #735 remains closed; the current managed path is InputPlumber #734, using the existing native kernel interfaces. I have kept this PR draft as an optional generic client. a88b6c68 rebases it onto current main and handles Local validation passes 5 Rust/private-D-Bus tests, 14 focused Godot tests with 73 assertions, both release architectures and both Godot exports. The broader headless baseline failures and existing lint diagnostics are recorded in the description. Physical native-panel acceptance and official session/image qualification remain pending; the separate Decky evidence is not presented as native UI acceptance. |
|
If the name change fails its because the driver isn't complaint with the ABI. Fix the driver. |
Add an optional native Joystick lighting panel for InputPlumber's managed LED API 1. InputPlumber owns writes, saved settings and effects. This PR remains draft for direction review and native UI/device acceptance.
Behavior and current direction
Advertise only the device's supported effects: Off, Solid colour, native Breathing and Rainbow (the unchanged wire value
cycle). Native Rainbow has fixed tempo; software-capable devices retain a period slider. Off preserves remembered colour/brightness. The shared model keeps dirty drafts and in-flight requests across menu remounts, pins unique D-Bus owners and reports saved versus applied/failed state.The new
unconfiguredstate clearly says that no lighting settings are saved. Opening or closing the panel leaves existing lighting untouched, including the placeholder Off value. An explicit Apply is required.InputPlumber #734 is the managed-lighting dependency. The recorded kernel already exposes the AYANEO interfaces. The generic and temporary go-style names both failed to expose Steam controls in the recorded private test; OGC Linux #130 is a retired, non-required experiment. InputPlumber #735 remains closed. Steam lighting support is deferred; this optional generic client does not expand the Decky release prerequisites.
Local validation
Exact candidate:
a88b6c6880d671ecf8129a585554c274808fb6f8, rebased on main0db5812f21e98d0a5ac70bb1b5a674f2f369c22c, five linear contribution commits and no contribution merges. The clean-export resource changes and install-dialog regression tests are retained; the production install-dialog fix is already in current main.The broader network-isolated headless suite has the same GitHub-release assertion and thread-pool/OSK errors reproduced on untouched main. New-head GitHub reads report no test check contexts. Shared API/effects have separate private Decky device evidence, while physical native-panel acceptance on this revision remains pending. Official-image/session permission qualification is also pending.
Assisted-by: Codex