15.10: BT Command List not created: bluetooth:__hci_req_sync:298: hci1 end: err -ETIMEDOUT
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| | bluez (Ubuntu) |
High
|
Unassigned | ||
| | linux (Ubuntu) |
High
|
Unassigned | ||
Bug Description
$ hcitool dev
Devices:
hci1 00:10:7A:4D:15:33
hci0 00:1F:3A:E0:0A:AF
$ hcitool -i hci1 scan
Scanning ...
00:0A:95:4B:BD:C2 Apple Wireless Keyboard
$ sudo systemctl restart bluetooth
$ journalctl -u bluetooth | grep adapter_service_add
Sep 03 19:39:12 hephaestion.
$ bluetoothctl
[NEW] Controller 00:1F:3A:E0:0A:AF hephaestion.
[NEW] Device 00:0A:95:4B:BD:C2 Apple Wireless Keyboard
[NEW] Device 00:07:61:3B:86:98 Bluetooth Travel Mouse
[NEW] Device 00:19:15:29:83:14 Think Outside Keyboard
[bluetooth]# list
Controller 00:1F:3A:E0:0A:AF hephaestion.
$ cat /etc/systemd/
.include /lib/systemd/
[Service]
ExecStart=
$ journalctl -fu bluetooth | tee /tmp/bluetooth-
...
<<<< Stop/Start bluetooth service
...
<<<< Insert 2nd USB adapter
Sep 04 23:46:32 hephaestion.
$ bluetoothctl
[NEW] Controller 00:1F:3A:E0:0A:AF hephaestion.
[NEW] Device 00:0A:95:4B:BD:C2 Apple Wireless Keyboard
[NEW] Device 00:07:61:3B:86:98 Bluetooth Travel Mouse
[NEW] Device 00:19:15:29:83:14 Think Outside Keyboard
[bluetooth]# list
Controller 00:1F:3A:E0:0A:AF hephaestion.
[CHG] Device 00:07:61:3B:86:98 Connected: yes
$ hcitool dev
Devices:
hci1 00:10:7A:4D:15:33
hci0 00:1F:3A:E0:0A:AF
$ lsusb
# Built-in (hci0)
Bus 007 Device 003: ID 413c:8126 Dell Computer Corp. Wireless 355 Bluetooth
# Hot-plugged (hci1)
Bus 006 Device 011: ID 0bdb:1002 Ericsson Business Mobile Networks BV Bluetooth Device 1.2
| Changed in bluez (Ubuntu): | |
| status: | Incomplete → Triaged |
I've been working on this some more. I noticed that even when both adapters are connected before bluetoothd starts, it does not find the 2nd adapter.
The problem appears to be in the read_index_
src/main.c:main() Entering main loop
src/rfkill.
Bluetooth management interface 1.10 initialized
src/adapter.
src/adapter.
src/rfkill.
src/rfkill.
src/adapter.
src/adapter.
src/adapter.
src/adapter.
This looks to be a kernel issue in net/bluetooth/
I'll check how 'hcitool dev' gathers its list of adapters.
| Changed in bluez (Ubuntu): | |
| status: | Triaged → In Progress |
| assignee: | nobody → TJ (tj) |
| importance: | Undecided → High |
| Changed in linux (Ubuntu): | |
| status: | New → In Progress |
| importance: | Undecided → High |
| assignee: | nobody → TJ (tj) |
I believe I've identified the root-cause:
$ hciconfig hci1 features
hci1: Type: BR/EDR Bus: USB
BD Address: 00:10:7A:4D:15:33 ACL MTU: 672:8 SCO MTU: 255:255
Features: 0xff 0xfb 0x01 0x00 0x00 0x00 0x00 0x00
$ hciconfig hci1 commands
Can't read support commands on hci1: Input/output error (5)
I enabled dynamic_debug to get the BT_DBG() output:
echo 'file drivers/bluetooth/* +p' | sudo tee /sys/kernel/
echo 'file net/bluetooth/* +p' | sudo tee /sys/kernel/
The attached extract is from the kernel log when connecting the external USB Bluetooth device.
Extract from the kern.log:
Sep 10 00:17:36 hephaestion kernel: [21515.251265] hci1 end: err -110
-110 == -ETIMEDOUT
There are 2 functions that print the message "end: err %d":
net/bluetooth/
net/bluetooth/
Another log, this time capturing the module, function, line-number and message.
Sep 10 00:52:44 hephaestion kernel: [23623.022036] bluetooth:
Sep 10 00:52:44 hephaestion kernel: [23623.022044] bluetooth:
Sep 10 00:52:54 hephaestion kernel: [23633.012115] bluetooth:
I've now tested the device on two other systems with older releases; the results seem to point to a regression somewhere between v3.2 and v3.8:
FAILS: linux 3.8.0-35-generic, bluez 4.101-0ubuntu8b1 (same failure mode as Linux v4.2)
WORKS: linux 3.2.0-30-
| summary: |
- 15.10: Multiple Bluetooth controllers not found + 15.10: BT Command List not created: bluetooth:__hci_req_sync:298: hci1 + end: err -ETIMEDOUT |
| Simon Fels (morphis) wrote : | #9 |
Please note that the kernel subsystem performs various initialization steps for each HCI controller. Depending on if a controller passes this it gets up in bluetoothd or not. If a HCI controller is still flagged with HCI_SETUP or HCI_CONFIG then something is wrong. Even if the controller turns up in hciconfig that doesn't mean it is usable through the MGMT kernel interface which is used by bluetoothd today.
If you're debugging this in the kernel look at __hci_init in net/bluetooth/
Could you also please note which types of BT modules you're using?
Also as you changed the summary it's now pretty unclear to a new person reading this what the actual problem is ...
The actual problem is -ETIMEDOUT.
I'm doing git-bisect to find the offending commit(s).
| Daniel van Vugt (vanvugt) wrote : | #11 |
Thank you for reporting this bug to Ubuntu. Ubuntu 15.10 (wily) reached end-of-life on July 28, 2016.
See this document for currently supported Ubuntu releases:
https:/
Please upgrade to the latest version and re-test.
| Changed in bluez (Ubuntu): | |
| status: | In Progress → Incomplete |
| Changed in linux (Ubuntu): | |
| status: | In Progress → Incomplete |
| Changed in bluez (Ubuntu): | |
| assignee: | TJ (tj) → nobody |
| Changed in linux (Ubuntu): | |
| assignee: | TJ (tj) → nobody |
| Launchpad Janitor (janitor) wrote : | #12 |
[Expired for linux (Ubuntu) because there has been no activity for 60 days.]
| Changed in linux (Ubuntu): | |
| status: | Incomplete → Expired |
| Launchpad Janitor (janitor) wrote : | #13 |
[Expired for bluez (Ubuntu) because there has been no activity for 60 days.]
| Changed in bluez (Ubuntu): | |
| status: | Incomplete → Expired |


Can you please do the following to generate a more verbose output:
$ sudo systemctl stop bluetooth
$ MGMT_DEBUG=1 sudo bluetoothd -n -d &> bluetoothd- multiple- adapters. log
In another terminal:
$ bluetoothctl
[bluetooth]# list
Please add all output here and attach the file bluetoothd- multiple- adapters. log