1

I'm running Debian unstable. My .asoundrc looks like this:

pcm.btheadset
{
   type plug
   slave
   {
      pcm
      {
         type bluetooth
         device 5A:5A:5A:A6:08:09
         profile "auto"
      }
   }
}

ctl.btheadset
{
   type bluetooth
}

I can play music through the headset, however I cannot control the volume.

$ alsamixer -D btheadset
ALSA lib audio/ctl_bluetooth.c:167:(bluetooth_send_ctl) Unable to receive new volume value from server
ALSA lib audio/ctl_bluetooth.c:161:(bluetooth_send_ctl) Unable to request new volume value to server: Broken pipe
cannot load mixer controls: Broken pipe

daemon.log has this:

bluetoothd[15628]: Invalid message: length mismatch

Any ideas? I suspected this may be some mismatch of binaries, so I tried downgrading bluez to Debian stable. No luck. Maybe I should try the same with alsa libs...

A lot of FAQs and tutorials suggest that PulseAudio should automatically solve this, however I installed it, it pulled down dozens of dependencies I have no interest in, and turned out to be a very user-hostile daemon that refused to play any sound at all. So I am not interested in that as a solution.

2
  • You are invoking alsamixer correctly. Does your headset actually have mixer controls? This might be a bug in the bluetooth plugin.
    – CL.
    Aug 28, 2013 at 17:08
  • @CL. - Not sure if the hardware supports it or not, or if it's a bug, but I've just discovered the "softvol" pcm type so now I'm happy.
    – asveikau
    Aug 29, 2013 at 4:43

1 Answer 1

1

Figured out a workaround. Using alsa's softvol plugin to do volume control in software.

Added this to .asoundrc:

pcm.btheadset_softvol
{
   type softvol
   slave.pcm "btheadset"
   control.name "Bluetooth"
   control.card 0
}

Now I tell software to play to the device btheadset_softvol and my main sound card's mixer has a "Bluetooth" option.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .