Skip to content

Instantly share code, notes, and snippets.

@ktosiek
Last active September 3, 2025 00:44
Show Gist options
  • Save ktosiek/ff35074c309b291b4193b1f6167ca6fc to your computer and use it in GitHub Desktop.
Save ktosiek/ff35074c309b291b4193b1f6167ca6fc to your computer and use it in GitHub Desktop.
Astro A50 support on Linux - basic configuration for PulseAudio 13 (tested on Ubuntu's 13.99.1). Install the files and reboot, to make sure udev and PA reloaded :-)
; /usr/share/pulseaudio/alsa-mixer/profile-sets/astro-a50-gen4.conf
[General]
auto-profiles = yes
[Mapping analog-voice]
description = Voice
device-strings = hw:%f,0,0
channel-map = left,right
paths-output = steelseries-arctis-output-chat-common
intended-roles = phone
[Mapping analog-voice-input]
description = Voice
device-strings = hw:%f,0,0
channel-map = mono
paths-input = usb-gaming-headset-input
intended-roles = phone
[Mapping analog-game]
description = Game
device-strings = hw:%f,1,0
channel-map = left,right
paths-output = steelseries-arctis-output-game-common
direction = output
[Profile output:analog-voice+output:analog-game+input:analog-voice]
output-mappings = analog-voice analog-game
input-mappings = analog-voice-input
priority = 5100
skip-probe = yes
# /etc/udev/rules.d/90-astro-50.rules
# ID 9886:002c is for Astro A50 Gen4
ACTION=="change", SUBSYSTEMS=="usb", ATTRS{idVendor}=="9886", ATTRS{idProduct}=="002c", ENV{PULSE_PROFILE_SET}="astro-a50-gen4.conf"
@YannikSc
Copy link

I've built pulseaudio with your guide and started it with your command (after removing the .libs from your -p argument as PA was appending this already).
Also I changed the udev rule to be ACTION=="change", SUBSYSTEMS=="usb", ATTRS{idVendor}=="9886", ATTRS{idProduct}=="0015", ENV{PULSE_PROFILE_SET}="/home/$USER/Downloads/pulseaudio/paudio/src/modules/alsa/mixer/profile-sets/usb-gaming-headset.conf" (but with my user name instead of $USER)
But still I'm only getting one output device which is called Headphones - A50.

This time changing the channel-map was not the solution to it, so I created a new path/copied the stereo path called usb-gaming-headset-output-game (src/modules/alsa/mixer/paths/usb-gaming-headset-output-game.conf) and used it in the stereo-game section.
And with this it worked! However it still needs to have the extended channel-map.

I also got you some logs starting from the point when I plugged in the headset

Hope it helps

@TheCherry
Copy link

I have the strange problem that my Microphone just stop working after some time and I have to switch the profile in pavucontrol. Sometimes its work for 1-2 Days ... and then its starting to work only for 15 Seconds and I have all 15 Seconds to switch the profile, else nobody can hear me .... very very strange! -.-

@trenton4k
Copy link

have anyone got Gen 3 version working?

@Vladimyr0
Copy link

have anyone got Gen 3 version working?

just changde idProduct in udev rules. gen 3 has probably 0015 instead of 002c.
you might check it with lsusb | grep 9886

@michaelmrose
Copy link

Is this expected to work with pipewire?

@Vladimyr0
Copy link

Is this expected to work with pipewire?

it won't, but not required.

just execute one of the following commands:
sh -c 'pactl set-card-profile alsa_card.usb-Astro_Gaming_Astro_A50-00 pro-audio; pactl set-default-sink alsa_output.usb-Astro_Gaming_Astro_A50-00.pro-output-0; notify-send -i audio-headphones "Sound Output:" "Astro 50 Voice"'
or
sh -c 'pactl set-card-profile alsa_card.usb-Astro_Gaming_Astro_A50-00 pro-audio; pactl set-default-sink alsa_output.usb-Astro_Gaming_Astro_A50-00.pro-output-1; notify-send -i audio-headphones "Sound Output:" "Astro 50 Game"'

in the latest case your headset will get the equalizer and dolby surround

@HRKings
Copy link

HRKings commented Sep 1, 2025

@Vladimyr0 do you know if you can use the two outputs at the same time? I've got the A50X and using pipewire pro audio, but when I try to use the two output at the same time the sound of the Voice sink gets really distorted

@Vladimyr0
Copy link

Vladimyr0 commented Sep 2, 2025

use the two outputs at the same time

what do you mean? use voice channel and game channel simultaneously?
I'm afraid it'll exceed physical bandwidth capacity of the base station transmitter.
thus sound will be always crackled, indeed.

@HRKings
Copy link

HRKings commented Sep 3, 2025

I got it working by switching the base station from a USB 2.0 to a USB 3.0. Now I can use the Voice and Game channel simultaneously!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment