CachyOS / CachyOS/CachyOS-Handheld
Guide button chords (Steam+X, Steam+B, Steam+RB, etc.) are detected but never complete their action
- Dominant language
- Shell
- Stars
- 89
- Forks
- 13
- PR merge metrics
- No merged PRs in 30d
Description
Reproduces with internal controller and an external controller (Steam Controller v2) over both USB (puck) and Bluetooth
## Guide button chords (Steam+X, Steam+B, Steam+RB, etc...) are detected but never complete their action.
### Summary
On this Deckify install, Steam correctly recognizes the guide/Steam button being held as part of a chord (confirmed in Steam's own controller log), but the resulting action (open on-screen keyboard, take screenshot) never actually happens. This happens both in desktop mode and in-game (Game Mode), and reproduces with a completely different controller (an external Steam Controller 2) connected over **both** USB (puck) and Bluetooth; Oh and an XBOX ONE controller. Sso it isn't specific to the internal controller, a connection method, or one input device.
The keyboard *does* auto-show correctly when focusing a text field (both KDE's virtual keyboard on the desktop, and Steam's own on desktop mode text fields), so this is isolated to the chord/shortcut mechanism specifically, not the keyboard overlay itself.
### Environment
- Device: Steam Deck OLED (Galileo)
- CachyOS Deckify build
- Kernel: 7.2.3-3-cachyos-deckify
`
- Steam client version at time of report: `1788652215` (also tested on Beta channel — no change; see below)
- `steamos-manager` version: `26.4.1-1`
- `jupiter-hw-support`: installed (optional dep of steamos-manager)
- InputPlumber: **not installed** (`systemctl status inputplumber` = unit not found)
- Handheld Daemon (HHD): **not installed** (`systemctl list-units | grep -i hhd` → no results)
### Steps to Reproduce
1. On internal, external or 3rd party controller (puck or bluetooth), in desktop mode or in-game, press or hold Steam + X (or Steam + B, Steam + RB/screenshot).
2. Observe that no keyboard/screenshot/menu action occurs.
3. For comparison: the identical Steam Controller 2 chord works correctly on a separate CachyOS **desktop** install (non-Deckify, same Steam client, same KDE Plasma/Wayland version.
### Expected Behavior
Steam+X should open the on-screen keyboard; Holding Steam+B should close game (in Game Mode); Steam+RB should take a screenshot; Steam+"..." equivalents should match stock SteamOS behavior.
### Actual Behavior
Nothing happens. Tapping the guide button alone still opens the Steam menu/overlay correctly, so the button itself and basic Steam menu functions are fine. It's specifically the two-button chord actions that silently no-op.
### What's Already Been Ruled Out
- **Hardware fault:** Ruled out. A built-in controller self-test are confirmed working in normal daily use (trackpad moves the desktop cursor right now; triggers work correctly in-game).
- **Device misidentification:** Ruled out. `/proc/bus/input/devices` shows the controller correctly identified as `Valve Software Steam Controller`, vendor `28de`, product `1205` (Neptune). Steam's own controller log confirms `Type: 4, ProductID: 4613` and correctly loads `chord_neptune.vdf` for the internal controller and `chord_triton.vdf` for the external Steam Controller 2.
- **InputPlumber:** Not installed.
- **Handheld Daemon (HHD):** Not installed.
- **`fuser` on the controller's two input event nodes** (one REL/mouse-type, one KEY/keyboard-type) shows only `systemd`, `systemd-logind` (both expected/normal), and `kwin_wayland` holding them in desktop mode. No unexpected process is grabbing the device.
- **Steam update channel:** Switched from Stable to Beta (per the September 7 client update that touched the *external* gamepad guide-button chord layout). No change in behavior on either channel.
- **`steamos-manager`:** Installed and running without crashing. Its only logged `ERROR dispatch_call` entries are for unrelated `SetWifiBackend` and `SetManualGpuClock` D-Bus calls (both failing for config reasons unrelated to this issue). No dispatch calls related to keyboard/screenshot/chord actions appear in its log at all across multiple boot cycles, so it does not appear to be involved in the chord-completion path.
- **Controller-type/config-specific bug:** Ruled out. Rreproduces identically with the internal Neptune controller (`chord_neptune.vdf`) and an unrelated external controller (`chord_triton.vdf`) over two different connection methods and 3 devices.
### Supporting Evidence
**Steam's controller UI log** (`~/.steam/steam/logs/controller_ui.txt`) shows the guide button being correctly recognized as part of a chord attempt, repeated across multiple sessions over at least two weeks, with no corresponding action ever completing:
This line appears specifically when a second button is held alongside the guide button (as opposed to `Guide button sent to JS`, which appears on a standalone guide-button tap and correctly opens the Steam menu). No log line indicating the chord's bound action (keyboard, screenshot, etc.) executing ever follows it.
**`/proc/bus/input/devices`** (internal controller):
```
I: Bus=0003 Vendor=28de Product=1205 Version=0110
N: Name="Valve Software Steam Controller"
...
H: Handlers=event4 mouse0
I: Bus=0003 Vendor=28de Product=1205 Version=0110
N: Name="Valve Software Steam Controller"
...
H: Handlers=sysrq kbd event5
```
**`fuser` on those two event nodes** (desktop mode):
```
/dev/input/event4: root 1 F.... systemd
root 629 F.... systemd-logind
cachyos 4773 F.... kwin_wayland
/dev/input/event5: root 1 F.... systemd
root 629 F.... systemd-logind
cachyos 4773 F.... kwin_wayland
```
**`steamos-manager` log excerpt** — representative of every error across multiple boots, none related to input/chords:
ERROR dispatch_call{...member: MemberName("SetWifiBackend")...}: Error setting wifi backend: Wi-Fi backend not found in config
ERROR dispatch_call{...member: MemberName("SetManualGpuClock")...}: Error setting manual GPU clock: Invalid argument (os error 22)
### Additional Notes
I did my best (reasonably in time i had) to search for and test what i can and I'm happy to gather additional logs recommended if it would help narrow this down further.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with ~/.steam/steam/logs/controller_ui.txt and compare the recognized chord attempts with the working standalone guide-button path. Inspect chord_neptune.vdf and chord_triton.vdf, then review the steamos-manager logs and the /proc/bus/input/devices and fuser evidence. Done means Steam+X, Steam+B, Steam+RB, and equivalent chords complete their expected actions on the affected setup.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 42/100