From a6efd43162812b692527b78886088dc0b6ce0440 Mon Sep 17 00:00:00 2001 From: "serhii.n" Date: Fri, 11 Apr 2025 00:07:59 +0300 Subject: [PATCH] USB-Audio: Add support of HyperX SoloCast (USB ID 03f0:0b8b) Support of - volume control - un/mute control PS: About un/mute control - only from PC to Mic, vise versa does not work - like when you un/mute Mic on PC it works as expected (even LED show actual status) but when you click button on Mic side it does not reflect on PC side. Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/545 Signed-off-by: "serhii.n" Signed-off-by: Jaroslav Kysela --- ucm2/USB-Audio/HyperX/SoloCast-HiFi.conf | 18 ++++++++++++++++++ ucm2/USB-Audio/HyperX/SoloCast.conf | 5 +++++ ucm2/USB-Audio/USB-Audio.conf | 9 +++++++++ 3 files changed, 32 insertions(+) create mode 100644 ucm2/USB-Audio/HyperX/SoloCast-HiFi.conf create mode 100644 ucm2/USB-Audio/HyperX/SoloCast.conf diff --git a/ucm2/USB-Audio/HyperX/SoloCast-HiFi.conf b/ucm2/USB-Audio/HyperX/SoloCast-HiFi.conf new file mode 100644 index 0000000..ee7c73c --- /dev/null +++ b/ucm2/USB-Audio/HyperX/SoloCast-HiFi.conf @@ -0,0 +1,18 @@ +SectionDevice."Mic" { + Comment "HyperX SoloCast Mic Input" + + EnableSequence [ + cset "name='Microphone Capture Switch' on" + ] + + DisableSequence [ + cset "name='Microphone Capture Switch' off" + ] + + Value { + CapturePCM "hw:${CardId}" + CaptureMixerElem "Microphone" + CaptureVolume "Microphone Capture Volume" + CaptureSwitch "Microphone Capture Switch" + } +} diff --git a/ucm2/USB-Audio/HyperX/SoloCast.conf b/ucm2/USB-Audio/HyperX/SoloCast.conf new file mode 100644 index 0000000..4bb7cd2 --- /dev/null +++ b/ucm2/USB-Audio/HyperX/SoloCast.conf @@ -0,0 +1,5 @@ +Comment "HyperX SoloCast" +SectionUseCase."HiFi" { + File "/USB-Audio/HyperX/SoloCast-HiFi.conf" + Comment "HyperX SoloCast Default" +} diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf index c395d87..fe2cd46 100644 --- a/ucm2/USB-Audio/USB-Audio.conf +++ b/ucm2/USB-Audio/USB-Audio.conf @@ -112,6 +112,15 @@ If.hp_only { } } +If.hyperx-solocast { + Condition { + Type String + Haystack "${CardComponents}" + Needle "USB03f0:0b8b" + } + True.Define.ProfileName "HyperX/SoloCast" +} + If.gigabyte-aorus-main { Condition { Type String -- 2.47.1