Skip to content

fix(audiodriver): remove alsa setup use pipewire volume only#42

Merged
florian-asche merged 1 commit intomainfrom
fix/configure_audio_2
Apr 19, 2026
Merged

fix(audiodriver): remove alsa setup use pipewire volume only#42
florian-asche merged 1 commit intomainfrom
fix/configure_audio_2

Conversation

@florian-asche
Copy link
Copy Markdown
Owner

Remove legacy sound card detection and ALSA mixer configuration from all audio driver stage scripts. Standardize volume setup to only use PipeWire default sink setting across all driver variants.

Remove legacy sound card detection and ALSA mixer configuration
from all audio driver stage scripts. Standardize volume setup to
only use PipeWire default sink setting across all driver variants.
@florian-asche florian-asche merged commit fe215a7 into main Apr 19, 2026
0 of 5 checks passed
genericJE added a commit to genericJE/PiCompose that referenced this pull request Apr 19, 2026
…@1000 dep

Match the post-florian-asche#42 pattern already used by 02-stage-audiodriver-2michat-v1:
call `wpctl set-volume @DEFAULT_AUDIO_SINK@ 1.0` after the amixer tune so
the PipeWire default sink lands at unity, and add `After=/Wants=user@1000.service`
+ `Environment=XDG_RUNTIME_DIR=/run/user/1000` to the unit so wpctl can
reach the user PipeWire socket.

The amixer tuning stays — unlike WM8960 on v1 or the DSP-driven lite board,
the TLV320AIC3104 on the V2.0 HAT ships with `HP DAC` at -23.5 dB and `HP`
at ~89%, so wpctl unity on its own still yields a stuck-quiet card.
genericJE added a commit to genericJE/PiCompose that referenced this pull request Apr 19, 2026
…@1000 dep

Match the post-florian-asche#42 pattern already used by 02-stage-audiodriver-2michat-v1:
call `wpctl set-volume @DEFAULT_AUDIO_SINK@ 1.0` after the amixer tune so
the PipeWire default sink lands at unity, and add `After=/Wants=user@1000.service`
+ `Environment=XDG_RUNTIME_DIR=/run/user/1000` to the unit so wpctl can
reach the user PipeWire socket.

Drop the `PCM 85%` amixer set: PipeWire drives PCM as hardware volume
passthrough, so wpctl unity immediately overwrites whatever we set PCM
to. Verified on satellite-bedroom: `amixer set PCM 50%` then
`wpctl set-volume @DEFAULT_AUDIO_SINK@ 1.0` leaves PCM at 100%.
Keeping the line made the intent misleading ("85% for headroom") while
having zero effect on the final state.

The rest of the amixer tuning stays — unlike WM8960 on v1 or the
DSP-driven lite board, the TLV320AIC3104 on the V2.0 HAT ships with
`HP DAC` at -23.5 dB and `HP` at ~89%. Those stages are downstream of
the PipeWire-managed PCM, so wpctl unity on its own still yields a
stuck-quiet card.
genericJE added a commit to genericJE/PiCompose that referenced this pull request Apr 19, 2026
…@1000 dep

Match the post-florian-asche#42 pattern already used by 02-stage-audiodriver-2michat-v1:
call `wpctl set-volume @DEFAULT_AUDIO_SINK@ 1.0` after the amixer tune so
the PipeWire default sink lands at unity, and add `After=/Wants=user@1000.service`
+ `Environment=XDG_RUNTIME_DIR=/run/user/1000` to the unit so wpctl can
reach the user PipeWire socket.

Drop the `PCM 85%` amixer set: PipeWire drives PCM as hardware volume
passthrough, so wpctl unity immediately overwrites whatever we set PCM
to. Verified on satellite-bedroom: `amixer set PCM 50%` then
`wpctl set-volume @DEFAULT_AUDIO_SINK@ 1.0` leaves PCM at 100%.
Keeping the line made the intent misleading ("85% for headroom") while
having zero effect on the final state.

The rest of the amixer tuning stays — unlike WM8960 on v1 or the
DSP-driven lite board, the TLV320AIC3104 on the V2.0 HAT ships with
`HP DAC` at -23.5 dB and `HP` at ~89%. Those stages are downstream of
the PipeWire-managed PCM, so wpctl unity on its own still yields a
stuck-quiet card.
genericJE added a commit to genericJE/PiCompose that referenced this pull request Apr 19, 2026
…@1000 dep

Match the post-florian-asche#42 pattern already used by 02-stage-audiodriver-2michat-v1:
call `wpctl set-volume @DEFAULT_AUDIO_SINK@ 1.0` after the amixer tune so
the PipeWire default sink lands at unity, and add `After=/Wants=user@1000.service`
+ `Environment=XDG_RUNTIME_DIR=/run/user/1000` to the unit so wpctl can
reach the user PipeWire socket.

Drop the `PCM 85%` amixer set: PipeWire drives PCM as hardware volume
passthrough, so wpctl unity immediately overwrites whatever we set PCM
to. Verified on satellite-bedroom: `amixer set PCM 50%` then
`wpctl set-volume @DEFAULT_AUDIO_SINK@ 1.0` leaves PCM at 100%.
Keeping the line made the intent misleading ("85% for headroom") while
having zero effect on the final state.

The rest of the amixer tuning stays — unlike WM8960 on v1 or the
DSP-driven lite board, the TLV320AIC3104 on the V2.0 HAT ships with
`HP DAC` at -23.5 dB and `HP` at ~89%. Those stages are downstream of
the PipeWire-managed PCM, so wpctl unity on its own still yields a
stuck-quiet card.
@florian-asche florian-asche deleted the fix/configure_audio_2 branch April 20, 2026 00:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant