1

I'm stuck getting a pretty standard A2DP Bluetooth headset to work with Raspbian Buster on an RPi 4. I successfully paired it with the RPi and can connect it via the GUI, and the buttons on the headset can control the playback in VLC for instance. However, when I select it as an audio output in Volume Control applet, the green checkmark stays on "HDMI", which is the other audio output I have.

I would like to keep using bluealsa (which I assume is the default on Buster) and avoid installing pulse if possible. I use the built-in BT adapter, and WiFi is disabled. AFAIK I didn't change any audio/BT-related config files.

I'm not sure which log I could provide, for a start there's that:

hcitool con

Connections:
    < ACL 00:15:01:02:DE:02 handle 12 state 1 lm MASTER AUTH ENCRYPT 

service bluealsa status

● bluealsa.service - BluezALSA proxy
   Loaded: loaded (/lib/systemd/system/bluealsa.service; static; vendor preset: enabled)
   Active: active (running) since Mon 2019-09-23 20:18:37 CEST; 10min ago
 Main PID: 3789 (bluealsa)
    Tasks: 3 (limit: 4915)
   Memory: 868.0K
   CGroup: /system.slice/bluealsa.service
           └─3789 /usr/bin/bluealsa

Sep 23 20:18:37 raspberrypi systemd[1]: Started BluezALSA proxy.
Sep 23 20:19:16 raspberrypi bluealsa[3789]: /usr/bin/bluealsa: Unsupported AT message: CMD: command:+CLCC, value:(null)
Sep 23 20:19:16 raspberrypi bluealsa[3789]: /usr/bin/bluealsa: Unsupported AT message: SET: command:+CSRSF, value:0,0,0,1,0,0,0

service bluetooth status

● bluetooth.service - Bluetooth service
   Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2019-09-23 20:07:45 CEST; 10min ago
     Docs: man:bluetoothd(8)
 Main PID: 1007 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 4915)
   Memory: 2.2M
   CGroup: /system.slice/bluetooth.service
           └─1007 /usr/lib/bluetooth/bluetoothd

Sep 23 20:10:32 raspberrypi bluetoothd[1007]: Endpoint unregistered: sender=:1.24 path=/org/bluez/hci0/A2DP/SBC/Sink/1
Sep 23 20:10:33 raspberrypi bluetoothd[1007]: Endpoint registered: sender=:1.25 path=/org/bluez/hci0/A2DP/SBC/Source/1
Sep 23 20:18:37 raspberrypi bluetoothd[1007]: Endpoint unregistered: sender=:1.25 path=/org/bluez/hci0/A2DP/SBC/Source/1
Sep 23 20:18:37 raspberrypi bluetoothd[1007]: Endpoint registered: sender=:1.28 path=/org/bluez/hci0/A2DP/SBC/Source/1
Sep 23 20:18:37 raspberrypi bluetoothd[1007]: Unable to get connect data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)
Sep 23 20:18:48 raspberrypi bluetoothd[1007]: Unable to get connect data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)
Sep 23 20:18:50 raspberrypi bluetoothd[1007]: Unable to get connect data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)
Sep 23 20:19:11 raspberrypi bluetoothd[1007]: Unable to get connect data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107)
Sep 23 20:19:16 raspberrypi bluetoothd[1007]: Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)

sudo dmesg -c

[  635.803532] Bluetooth: RFCOMM TTY layer initialized
[  635.803546] Bluetooth: RFCOMM socket layer initialized
[  635.803563] Bluetooth: RFCOMM ver 1.11
[  638.100771] input: 00:15:01:02:DE:02 as /devices/virtual/input/input7
[  669.713843] input: 00:15:01:02:DE:02 as /devices/virtual/input/input8
Dmitry Grigoryev
  • 28,277
  • 6
  • 54
  • 147

2 Answers2

1

I ended up connecting the BT headset to my Pi using the GuliKit audio adapter (I got it for Nintendo Switch but it comes with a USB adapter and works with computers too). It supports sending audio to two headsets at once, and is essentially plug and play: I just plugged it into the Pi's USB port and it simply appeared in the list of audio outputs.

Dmitry Grigoryev
  • 28,277
  • 6
  • 54
  • 147
-1

Short Answer

I have been trying BlueZ 5.5 on Rpi3B+ stretch and Rpi4B buster for hours and so far no luck.

I use USB sound stick and VLC.

I can set audio devices using three methods,

(1) Terminal mode Raspi-config (force to 3.5mm jack or others),

(2) GUI Desktop top right corner volume icon right click (HMDI or others),

(3) VLC setting, clicking/selecting audio devices in Audio > Audio Device > ...

I found one method might overwrite the others. For example, I select HDMI using Desktop top right corner volume icon, but I can still play VLC, even my HDMI monitor does not have any speaker. So I guess VLC can select "other" or "default" as they see fit.

I am using BlueZ and not BlueAlsa, so my problem might be very different from yours.

tlfong01
  • 4,847
  • 3
  • 12
  • 24