Steam Deck/Wireless/Bluetooth
Development/Enhancements
On April 29, 2022, Collabora blogged that it was working to add LC3 to pipewire[1], and talked about the headset codecs supported by pipewire. This seems to indicate that Bluetooth support is a current development focus. Future versions of SteamOS may enable headsets by default as Bluetooth support is improved.
As of August 14, 2022, it seems that LC3plus and other Bluetooth improvements have made it into versions of pipewire that have yet to make their way onto the Steam Deck[2].
Enabling More Codecs and Enabling Headsets
By default, SteamOS has configuration files for pipewire that disable Bluetooth headset modes and may not enable all codecs[3]:
# cat /usr/share/wireplumber/bluetooth.lua.d/60-bluez-disable-headsets.lua
bluez_monitor.properties = {
-- HFP/HSP backend (default: native).
-- Available values: any, none, hsphfpd, ofono, native
["bluez5.hfphsp-backend"] = "none",
}
This file is read with other configurations from two folders:
/usr/share/wireplumber/bluetooth.lua.d
$HOME/.config/wireplumber/bluetooth.lua.d
The numbers at the beginning of the files in this directory are the order that the configurations will be read. The file that disables headset begins with 60-*
, but we can overwrite that configuration with a file beginning with 61-*
. The /usr/share/
directory is in the Read-only Filesystem, but the other, $HOME/.config/wireplumber/bluetooth.lua.d
, is in our home directory.
Create the following file to enable headsets and enable other codecs:
# mkdir -p ~/.config/wireplumber/bluetooth.lua.d/
# cat ~/.config/wireplumber/bluetooth.lua.d/61-bluez-monitor.lua
bluez_monitor.properties = {
["bluez5.enable-sbc-xq"] = true,
["bluez5.enable-msbc"] = true,
["bluez5.codecs"] = "[sbc sbc_xq aac ldac aptx aptx_hd aptx_ll aptx_ll_duplex faststream faststream_duplex]",
}
Restart your Steam Deck to apply changes.
Downsides
It seems that SteamOS was deliberately configured to disable headsets. This may be due to inconsistent behavior on the side of pipewire.
Some profiles/headsets may:
- Work
- Distort audio completely
- May work but intermittently experience distortion
- May have terrible output/input quality
- Horrendous latency
It is up to you to play around with both headsets and profiles using the "Configure Audio Devices" menu to find what works for you.
Bluetooth enhancements should be expected in the future.
References
- ↑ "PipeWire: Bluetooth support status update". Collabora. Retrieved 2022-08-14.
- ↑ "Releases · PipeWire / pipewire · GitLab". freedesktop.org. Retrieved 2022-08-14.
- ↑ "Hey Valve, can we default to APT-X LL Low Latency for Bluetooth Audio?". reddit.com. Retrieved 2022-08-14.