0

I found other questions similar to mine but without a working answer. On RPi3 with Raspbian Stretch I'm trying to connect to a Bluetooth speaker. It connects but I have no audio output.

pi@rpi(rw):~$ systemctl status bluetooth
● bluetooth.service - Bluetooth service
   Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset
   Active: active (running) since Sun 2017-09-17 12:32:38 CEST; 1h 4min ago
     Docs: man:bluetoothd(8)
 Main PID: 2769 (bluetoothd)
   Status: "Running"
   CGroup: /system.slice/bluetooth.service
           └─2769 /usr/lib/bluetooth/bluetoothd

pi@rpi(rw):~$ systemctl status hciuart
● hciuart.service - Configure Bluetooth Modems connected by UART
   Loaded: loaded (/lib/systemd/system/hciuart.service; enabled; vendor preset: 
   Active: active (running) since Sun 2017-09-17 12:35:15 CEST; 1h 2min ago
 Main PID: 2923 (hciattach)
   CGroup: /system.slice/hciuart.service
           └─2923 /usr/bin/hciattach /dev/serial1 bcm43xx 921600 noflow - b8:27:

Sep 17 12:35:10 rpi systemd[1]: Starting Configure Bluetooth Modems connecte
Sep 17 12:35:15 rpi btuart[2893]: bcm43xx_init
Sep 17 12:35:15 rpi btuart[2893]: Flash firmware /lib/firmware/BCM43430A1.hc
Sep 17 12:35:15 rpi btuart[2893]: Set BDADDR UART: b8:27:eb:83:f6:a2
Sep 17 12:35:15 rpi btuart[2893]: Set Controller UART speed to 921600 bit/s
Sep 17 12:35:15 rpi btuart[2893]: Device setup complete
Sep 17 12:35:15 rpi systemd[1]: Started Configure Bluetooth Modems connected

Then I connected to my device using bluetoothctl:

$ bluetoothctl 
[NEW] Controller B8:27:EB:83:F6:A2 BlueZ 5.43 [default]
[NEW] Device 8C:DE:52:16:4F:51 SRS-BTV5
[SRS-BTV5]# connect 8C:DE:52:16:4F:51 
Attempting to connect to 8C:DE:52:16:4F:51
Connection successful
[SRS-BTV5]# info 8C:DE:52:16:4F:51 
Device 8C:DE:52:16:4F:51
    Name: SRS-BTV5
    Alias: SRS-BTV5
    Class: 0x240414
    Icon: audio-card
    Paired: yes
    Trusted: yes
    Blocked: no
    Connected: yes
    LegacyPairing: no
    UUID: Headset                   (00001108-0000-1000-8000-00805f9b34fb)
    UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
    UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
    UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
    UUID: Handsfree                 (0000111e-0000-1000-8000-00805f9b34fb)
    UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
    Modalias: bluetooth:v0039p13A4d2207
    ManufacturerData Key: 0x5349
    ManufacturerData Value: 0x53
    ManufacturerData Value: 0x43

here the available sinks:

$ pacmd list-sinks short
2 sink(s) available.
    index: 0
    name: <alsa_output.platform-soc_audio.analog-stereo>
    driver: <module-alsa-card.c>
    flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY FLAT_VOLUME DYNAMIC_LATENCY
    state: SUSPENDED
    suspend cause: IDLE 
    priority: 9009
    volume: front-left: 65500 / 100% / -0.01 dB,   front-right: 65500 / 100% / -0.01 dB
            balance 0.00
    base volume: 56210 /  86% / -4.00 dB
    volume steps: 65537
    muted: no
    current latency: 0.00 ms
    max request: 0 KiB
    max rewind: 0 KiB
    monitor source: 1
    sample spec: s16le 2ch 48000Hz
    channel map: front-left,front-right
                 Stereo
    used by: 0
    linked by: 0
    configured latency: 0.00 ms; range is 0.50 .. 682.67 ms
    card: 1 <alsa_card.platform-soc_audio>
    module: 7
    properties:
        alsa.resolution_bits = "16"
        device.api = "alsa"
        device.class = "sound"
        alsa.class = "generic"
        alsa.subclass = "generic-mix"
        alsa.name = "bcm2835 ALSA"
        alsa.id = "bcm2835 ALSA"
        alsa.subdevice = "0"
        alsa.subdevice_name = "subdevice #0"
        alsa.device = "0"
        alsa.card = "0"
        alsa.card_name = "bcm2835 ALSA"
        alsa.long_card_name = "bcm2835 ALSA"
        alsa.driver_name = "snd_bcm2835"
        device.bus_path = "platform-soc:audio"
        sysfs.path = "/devices/platform/soc/soc:audio/sound/card0"
        device.string = "hw:0"
        device.buffering.buffer_size = "131072"
        device.buffering.fragment_size = "131072"
        device.access_mode = "mmap+timer"
        device.profile.name = "analog-stereo"
        device.profile.description = "Analog Stereo"
        device.description = "bcm2835 ALSA Analog Stereo"
        alsa.mixer_name = "Broadcom Mixer"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card"
    ports:
        analog-output: Analog Output (priority 9900, latency offset 0 usec, available: unknown)
            properties:

    active port: <analog-output>
  * index: 1
    name: <bluez_sink.8C_DE_52_16_4F_51.headset_head_unit>
    driver: <module-bluez5-device.c>
    flags: HARDWARE HW_VOLUME_CTRL LATENCY 
    state: SUSPENDED
    suspend cause: IDLE 
    priority: 9530
    volume: mono: 65536 / 100%
            balance 0.00
    base volume: 65536 / 100%
    volume steps: 16
    muted: no
    current latency: 0.00 ms
    max request: 0 KiB
    max rewind: 0 KiB
    monitor source: 2
    sample spec: s16le 1ch 8000Hz
    channel map: mono
                 Mono
    used by: 0
    linked by: 0
    fixed latency: 128.00 ms
    card: 2 <bluez_card.8C_DE_52_16_4F_51>
    module: 24
    properties:
        bluetooth.protocol = "headset_head_unit"
        device.intended_roles = "phone"
        device.description = "SRS-BTV5"
        device.string = "8C:DE:52:16:4F:51"
        device.api = "bluez"
        device.class = "sound"
        device.bus = "bluetooth"
        device.form_factor = "speaker"
        bluez.path = "/org/bluez/hci0/dev_8C_DE_52_16_4F_51"
        bluez.class = "0x240414"
        bluez.alias = "SRS-BTV5"
        device.icon_name = "audio-speakers-bluetooth"
    ports:
        speaker-output: Speaker (priority 0, latency offset 0 usec, available: unknown)
            properties:

    active port: <speaker-output>

Volume is at 100% as you can see. Now I set up the default sink:

$pacmd set-default-sink bluez_sink.8C_DE_52_16_4F_51.headset_head_unit 

and try to play:

$paplay test.ogg

and the previous command shows:

...
    active port: <analog-output>
  * index: 1
    name: <bluez_sink.8C_DE_52_16_4F_51.headset_head_unit>
    driver: <module-bluez5-device.c>
    flags: HARDWARE HW_VOLUME_CTRL LATENCY 
    state: RUNNING
...

but no sound comes from the BT speaker. Other things I checked:

  1. the same audio file is played correctly on the HDMI output
  2. the same BT speaker works fine if connected to another device (i.e. smartphone)
  3. the hardware volume of the BT speaker is set to maximum value

Why it doesn't work? What should I check also?

  • I think it requires a workaround wiki.debian.org/BluetoothUser/a2dp I have the same issue I can't figure out – dtham Oct 28 '17 at 0:15
  • Thanks, I'll look at it. By the way I wonder why after so much time the BT is still not reliable on Linux. I always had huge problems with pa, ofono, etc... – Mark Oct 28 '17 at 6:53
0

The latest version of raspbian stretch works you dont need to install bluetoothctl use the bluetooth icon on the desktop. then right click on volume control

You will also have to disable wifi as this causes interference

  • I never use a desktop environment on RPi systems. I'm going to search if that GUI piece of software has also a command line version. – Mark Jan 12 '18 at 21:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.