Skip to content

Add MSI MEG Z790 GODLIKE MAX (USB 0db0:82c4, ALC4082) capture gain fix to ALC4080-HiFi UCM #690

@sadovskiy

Description

@sadovskiy

Hardware / device:

  • Mainboard: MSI MEG Z790 GODLIKE MAX
  • Audio codec: Realtek ALC4082 (USB audio)
  • USB VID:PID: 0db0:82c4
  • Observed as alsa.components = "USB0db0:82c4" in PipeWire/ALSA properties

Problem:

  • Microphone capture level is extremely low out of the box (both rear and front jacks).
  • The device exposes ALSA capture controls (Mic Capture Volume, Line Capture Volume, Analog In Capture Volume and corresponding switches), but the default UCM profile does not raise these, so users end up with very quiet input unless they manually adjust mixer levels.

Verification of available ALSA controls:

  • amixer -c <card> controls shows:

    • Mic Capture Switch / Mic Capture Volume
    • Line Capture Switch / Line Capture Volume
    • Analog In Capture Switch / Analog In Capture Volume

Proposed fix:

  1. Ensure the device is matched to the Realtek ALC4080 UCM profile by adding 0db0:82c4 to the USB ID regex in:
  • USB-Audio/USB-Audio.conf

Аlternatively, change (|82c7|) to (|82c(4|7)|).

  1. Add a device-specific override to raise capture gains in:
  • USB-Audio/Realtek/ALC4080-HiFi.conf

Suggested snippet to add (e.g. near other vendor-specific blocks or at the end of the file):

If.msi-meg-godlike-max {
    Condition {
        Type RegexMatch
        String "${CardComponents}"
        Regex "USB(0db0:82c4)"
    }

    True.Define {
        CaptureVolume "100"
    }

    True.EnableSequence [
        cset "name='Mic Capture Switch' on"
        cset "name='Line Capture Switch' on"
        cset "name='Analog In Capture Switch' on"

        cset "name='Mic Capture Volume' 90"
        cset "name='Line Capture Volume' 90"
        cset "name='Analog In Capture Volume' 90"
    ]
}

Testing:

  • Tested with PipeWire + WirePlumber using UCM (api.alsa.open.ucm = "true").
  • After applying this UCM override and restarting the user audio session (PipeWire/WirePlumber), capture volume becomes normal and stable without additional software gain.
  • Verified the mixer values with amixer -c <card> cget on the corresponding control numids (capture volumes and switches).

Notes:

  • This change is specific to USB 0db0:82c4 and should not affect other devices.
  • If maintainers prefer, I can submit this as a PR with a proper diff for both files.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions