You are not logged in.

#1 2018-09-29 16:23:47

jwhendy
Member
Registered: 2010-04-01
Posts: 621

[SOLVED] bluetooth headset connected, but not listed as output/sink

I got a 3M Alert XPI headset (hearing protection with bluetooth/speakers built-in) and am not sure how to connect to them via computer! My phone pairs fine with it, but my usual pulse/bluetoothctl process that works fine for my bluetooth speaker does not work. Relevant details:

### systemctl looks good
$ systemctl status bluetooth
● bluetooth.service - Bluetooth service
   Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2018-09-29 10:38:03 CDT; 23min ago
     Docs: man:bluetoothd(8)
 Main PID: 16988 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 4915)
   Memory: 1.9M
   CGroup: /system.slice/bluetooth.service
           └─16988 /usr/lib/bluetooth/bluetoothd

Sep 29 10:38:03 voltaur systemd[1]: Starting Bluetooth service...
Sep 29 10:38:03 voltaur bluetoothd[16988]: Bluetooth daemon 5.50
Sep 29 10:38:03 voltaur systemd[1]: Started Bluetooth service.
Sep 29 10:38:03 voltaur bluetoothd[16988]: Starting SDP server
Sep 29 10:38:03 voltaur bluetoothd[16988]: Bluetooth management interface 1.14 initialized
Sep 29 10:38:03 voltaur bluetoothd[16988]: Endpoint registered: sender=:1.26 path=/MediaEndpoint/A2DPSource
Sep 29 10:38:03 voltaur bluetoothd[16988]: Endpoint registered: sender=:1.26 path=/MediaEndpoint/A2DPSink


### pulse is running
$ pulseaudio --check -v
I: [pulseaudio] main.c: Daemon running as PID 2951


### we're connected
[WS ALERT XPI]# info 00:15:F3:20:ED:BE 
Device 00:15:F3:20:ED:BE (public)
	Name: WS ALERT XPI
	Alias: WS ALERT XPI
	Paired: yes
	Trusted: yes
	Blocked: no
	Connected: yes
	LegacyPairing: no
	UUID: Serial Port               (00001101-0000-1000-8000-00805f9b34fb)
	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: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
	UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
	UUID: Vendor specific           (50454c54-4f52-5449-4653-657276696365)


### but only one sink is listed, my built in PC speakers
$ pacmd list-sinks
1 sink(s) available.
  * index: 0
	name: <alsa_output.pci-0000_00_1f.3.analog-stereo>
	driver: <module-alsa-card.c>


### nothing at all using bluez
$ pacmd list-sinks |grep -i blu
$ 

One bit of behavior I've never seen is that upon connecting, I get this extra list of output:

$ sudo bluetoothctl
Agent registered
[bluetooth]# power on
[CHG] Controller 00:24:D6:F9:AE:1A Class: 0x000c010c
Changing power on succeeded
[CHG] Controller 00:24:D6:F9:AE:1A Powered: yes
[bluetooth]# connect 00:15:F3:20:ED:BE 
Attempting to connect to 00:15:F3:20:ED:BE
[CHG] Device 00:15:F3:20:ED:BE Connected: yes
Connection successful
[NEW] Primary Service
	/org/bluez/hci0/dev_00_15_F3_20_ED_BE/service0001
	00001801-0000-1000-8000-00805f9b34fb
	Generic Attribute Profile
[NEW] Characteristic
	/org/bluez/hci0/dev_00_15_F3_20_ED_BE/service0001/char0002
	00002a05-0000-1000-8000-00805f9b34fb
	Service Changed
[NEW] Descriptor
	/org/bluez/hci0/dev_00_15_F3_20_ED_BE/service0001/char0002/desc0004
	00002902-0000-1000-8000-00805f9b34fb
	Client Characteristic Configuration
[NEW] Primary Service
	/org/bluez/hci0/dev_00_15_F3_20_ED_BE/service000a
	50454c54-4f52-5449-4653-657276696365
	Vendor specific
[NEW] Characteristic
	/org/bluez/hci0/dev_00_15_F3_20_ED_BE/service000a/char000b
	54786964-4033-4d50-454c-544f52546966
	Vendor specific
[NEW] Descriptor
	/org/bluez/hci0/dev_00_15_F3_20_ED_BE/service000a/char000b/desc000d
	00002902-0000-1000-8000-00805f9b34fb
	Client Characteristic Configuration
[NEW] Characteristic
	/org/bluez/hci0/dev_00_15_F3_20_ED_BE/service000a/char000e
	4e6f7469-6679-4033-4d20-50454c544f52
	Vendor specific
[NEW] Descriptor
	/org/bluez/hci0/dev_00_15_F3_20_ED_BE/service000a/char000e/desc0010
	00002902-0000-1000-8000-00805f9b34fb
	Client Characteristic Configuration
[CHG] Device 00:15:F3:20:ED:BE ServicesResolved: yes

[WS ALERT XPI]# trust 00:15:F3:20:ED:BE 
[CHG] Device 00:15:F3:20:ED:BE Trusted: yes
Changing 00:15:F3:20:ED:BE trust succeeded

[WS ALERT XPI]# pair 00:15:F3:20:ED:BE 
Attempting to pair with 00:15:F3:20:ED:BE
[CHG] Device 00:15:F3:20:ED:BE Paired: yes
Pairing successful

This section of the wiki seemed the most relevant, namely that it's connected, but not listed as an A2DP sink, but I don't even get it in the list to try running this:

### I should see something using bluez-foo as a driver, but I only get modules
$ pacmd ls | grep -i blu
	name: <module-bluetooth-policy>
		module.description = "Policy module to make using bluetooth devices out-of-the-box easier"
	name: <module-bluetooth-discover>
		module.description = "Detect available Bluetooth daemon and load the corresponding discovery module"
	name: <module-bluez5-discover>
		module.description = "Detect available BlueZ 5 Bluetooth audio devices and load BlueZ 5 Bluetooth audio drivers"

### therefore, I can't run this from the wiki, assuming the issue was forcing it to be recognized as a sink
$ pacmd set-card-profile 2 a2dp_sink

Based on this, any suggestions? It seems like it's using a different protocol than I'm used to. I think this is not a setup issue, but more of some nuance or method to connect with a device I just haven't seen yet. Just to illustrate, this is straightforward and shows the bluez/pulse setup works for another device:

### disconnect from the headphones
[WS ALERT XPI]# disconnect 00:15:F3:20:ED:BE 
Attempting to disconnect from 00:15:F3:20:ED:BE
[CHG] Device 00:15:F3:20:ED:BE ServicesResolved: no
Successful disconnected
[CHG] Device 00:15:F3:20:ED:BE Paired: no
[CHG] Device 00:15:F3:20:ED:BE Connected: no

### connect to a bluetooth speaker I have
[bluetooth]# connect 00:02:5B:AC:B0:A8 
Attempting to connect to 00:02:5B:AC:B0:A8
[CHG] Device 00:15:F3:20:ED:BE RSSI: -76
[CHG] Device 00:02:5B:AC:B0:A8 Connected: yes
[CHG] Device 00:02:5B:AC:B0:A8 UUIDs: 00001108-0000-1000-8000-00805f9b34fb
[CHG] Device 00:02:5B:AC:B0:A8 UUIDs: 0000110b-0000-1000-8000-00805f9b34fb
[CHG] Device 00:02:5B:AC:B0:A8 UUIDs: 0000110c-0000-1000-8000-00805f9b34fb
[CHG] Device 00:02:5B:AC:B0:A8 UUIDs: 0000110e-0000-1000-8000-00805f9b34fb
[CHG] Device 00:02:5B:AC:B0:A8 UUIDs: 0000111e-0000-1000-8000-00805f9b34fb
[CHG] Device 00:02:5B:AC:B0:A8 ServicesResolved: yes
[CHG] Device 00:02:5B:AC:B0:A8 Paired: yes
Connection successful

And now I get two cards listed:

$ pacmd ls
2 card(s) available
...
### this is my BT speaker
index: 1
	name: <bluez_card.00_02_5B_AC_B0_A8>
	driver: <module-bluez5-device.c>

When connecting to my speaker, I don't get any of those additional descriptor/characteristic outputs, which almost make me think there's a main endpoint and then nested other things going on. I do know this can do multipoint connections... anything special there? Google doesn't turn up much obvious, so maybe that's not the right word for the capability. Happy to provide any additional output as requested!

Last edited by jwhendy (2018-09-29 16:36:10)

Offline

#2 2018-09-29 16:35:56

jwhendy
Member
Registered: 2010-04-01
Posts: 621

Re: [SOLVED] bluetooth headset connected, but not listed as output/sink

Hmmm. Well, that was quick. I looked at an instructional video, and they had a section about bluetooth pairing. This never dawned on me, as I did not have to do anything special at all with my phone. As soon as you turn it on, it says "connecting bluetooth" and shows up in my phone menu as well as via bluetoothctl scan. It Just Worked.

Super niche headset, but just to be explicit about what worked in case it helps anyone else:
- turn on
- long press menu button, then cycle through until it says "bluetooth pairing"
- press volume up and that triggers some magical mode
- from bluetoothctl, make user power is on and then issue `connect xx:...:xx`
- done

Not it's in pavucontrol, and subsequent pairings also Just Work now. I think it may have been a one time thing needed for first connect.

Offline

Board footer

Powered by FluxBB