Arctis Sound Manager has been released in version 1.4.22, followed shortly after by version 1.4.23 adding a user interface for the new feature.
Version 1.4.22 brings back the headset’s hardware auto-off timer that had been removed in version 1.4.21 - this time as an opt-in feature, disabled by default, without the channel dependencies that previously caused dropouts and crashes. The update also fixes a possible segfault in PipeWire’s convolver when restarting the filter chain. Version 1.4.23 then makes the feature reachable directly in the app via an Auto Power Off slider.
Changes in version 1.4.22:
Fixed
filter-chain.servicerestart storm could segfault PipeWire’s convolver (#233). Only one call site parked the filter-chain graph (quiesce_filter_chain) before restarting it - every other one (EQ apply, tray actions, device-init repair) restarted it directly, racing PipeWire’s realtime thread against the graph it was mid-teardown/rebuild on. Centralized inservice_control.restart(): every “filter-chain” restart now quiesces first, and a standalone restart is additionally coalesced across processes (a burst of near-simultaneous calls - e.g. the GUI and the daemon reacting to the same preset/surround change - now reaches the service manager exactly once, not once per call). Verified live: a 10-call concurrent burst that previously would have produced 10 stop/start cycles now produces exactly one, with no coredump.- Raised
api.alsa.period-sizeto 128 in the physical-sink no-suspend WirePlumber quirk (pw_quirks.py): keeping that sink permanently open (#223/#230 class) had it issuing USB isochronous transfers continuously, which measurably delayed a DualSense/DS5Dongle gamepad’s HID reports on a shared USB controller. Doubling the period halves this sink’s USB transfer frequency and frees bus time for the gamepad’s polling.Added
- The headset’s hardware auto-off timer works again (#180), without reintroducing #223/#230 - opt-in, disabled by default. A new whole-graph activity observer (
idle_detect.py) watches every channel for a genuinely playing (not paused/corked) stream - including Discord and browser tabs, deliberately not built on the existing native-stream helper, which excludespipewire-pulseclients and would repeat the #223 mistake of treating an app ASM cannot see as “not there”. Once the whole graph has been idle long enough, ASM itself releases the last hop into the headset’s own physical output - never by marking a nodenode.passiveagain - and restores it the instant any channel becomes active. New settingheadset_idle_off_minutes(0= disabled, the previous behaviour; no GUI control yet). Verified live against real usage: idle, Discord calls, paused vs. playing video, a game routed to an external output, and the full cut/restore cycle.
Changes in version 1.4.23:
Added
- The auto power-off feature added in 1.4.22 (#180) is now reachable from the app: it follows the headset’s own Auto Power Off slider (renamed from the unclear “PM Shutdown”) instead of requiring the settings file to be edited by hand. Setting it to a delay also tells ASM to stop feeding the device after that much silence, so the hardware timer can actually fire; setting it to “Never” disables both. Existing installs: touch the slider once (reselecting the same value works) to pick this up - it is not applied retroactively at startup.

Source: GitHub