I have Ubuntu 16.04 with built-in BT-253 Bluetooth 2.2 module that doesn't discover a newly bought bluetooth mouse. If it matters, it doesn't see a Xiaomi Mi2 dual band mouse with Bluetooth 4.2. My oldy Asus U50-Vg sees other Bluetooth devices, even with Bluetooth 5.0, and is discoverable and pairable by other devices too. Bluetooth mouse is also discoverable and pairable by other devices.
The driver seem to be partially "working", as it loads and discovers some devices. My intention is obviously to finally discover this mouse, and I am not sure how I should proceed: try another kernel, btusb driver, firmware, or something else.
What I've done so far:
(base) 10:19:50 ~$ uname -r
4.15.0-128-generic
(base) 10:19:58 ~$ lsusb
...
Bus 005 Device 002: ID 0b05:1751 ASUSTek Computer, Inc. BT-253 Bluetooth Adapter
...
(base) 10:22:03 ~$ usb-devices
...
T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0001 Rev=04.15
S: Manufacturer=Linux 4.15.0-128-generic uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=###
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
T: Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0b05 ProdID=1751 Rev=02.35
S: Manufacturer=Broadcom Corp
S: Product=BT-253
S: SerialNumber=###
C: #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
I: If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
I: If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
I: If#= 3 Alt= 0 #EPs= 0 Cls=fe(app. ) Sub=01 Prot=00 Driver=(none)
...
(base) 10:23:07 ~$ sudo service bluetooth status
[sudo] password for ###:
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2020-12-27 08:49:00; 1h 36min ago
Docs: man:bluetoothd(8)
Main PID: 808 (bluetoothd)
Status: "Running"
CGroup: /system.slice/bluetooth.service
└─808 /usr/lib/bluetooth/bluetoothd
Dec 27 08:49:00 ###-U50Vg bluetoothd[808]: Not enough free handles to register service
Dec 27 08:49:00 ###-U50Vg bluetoothd[808]: Not enough free handles to register service
Dec 27 08:49:00 ###-U50Vg bluetoothd[808]: Not enough free handles to register service
Dec 27 08:49:00 ###-U50Vg bluetoothd[808]: Current Time Service could not be registered
Dec 27 08:49:00 ###y-U50Vg bluetoothd[808]: gatt-time-server: Input/output error (5)
Dec 27 08:49:00 ###-U50Vg bluetoothd[808]: Not enough free handles to register service
Dec 27 08:49:00 ###-U50Vg bluetoothd[808]: Not enough free handles to register service
Dec 27 08:49:00 ###-U50Vg bluetoothd[808]: Sap driver initialization failed.
Dec 27 08:49:00 ###-U50Vg bluetoothd[808]: sap-server: Operation not permitted (1)
Dec 27 08:49:00 v-U50Vg systemd[1]: Started Bluetooth service.
(base) 10:25:14 ~$ dmesg | grep -i blue
[ 3.575218] Bluetooth: Core ver 2.22
[ 3.575243] Bluetooth: HCI device and connection manager initialized
[ 3.575247] Bluetooth: HCI socket layer initialized
[ 3.575250] Bluetooth: L2CAP socket layer initialized
[ 3.575257] Bluetooth: SCO socket layer initialized
[ 5.854168] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 5.854169] Bluetooth: BNEP filters: protocol multicast
[ 5.854175] Bluetooth: BNEP socket layer initialized
(base) 10:26:03 ~$
(base) 10:26:03 ~$ rfkill list
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
(base) 10:26:29 ~$
(base) 10:26:29 ~$ bluetoothctl
[NEW] Controller (MAC address) ###-U50Vg [default]
[bluetooth]# discoverable on
Changing discoverable on succeeded
[CHG] Controller (MAC address) Discoverable: yes
[bluetooth]# pairable on
Changing pairable on succeeded
[bluetooth]# scan on
Discovery started
[CHG] Controller (MAC address) Discovering: yes
[NEW] Device 38:E6:0A:42:F6:FB Redmi
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -75
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -88
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -73
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -84
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -74
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -90
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -76
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -85
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -76
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -86
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -77
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -86
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -76
[CHG] Controller (MAC address) Discoverable: no
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -88
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -75
[CHG] Device 38:E6:0A:42:F6:FB RSSI: -83
...
(base) 10:37:29 ~$ sudo nano /etc/bluetooth/main.conf
...
# AutoEnable defines option to enable all controllers when they are found.
# This includes adapters present on start as well as adapters that are plugged
# in later on. Defaults to 'false'.
AutoEnable=true
(base) 19:07:33 ~$ lspci -knn | grep Net -A3; lsusb
03:00.0 Network controller [0280]: Intel Corporation WiFi Link 5100 [8086:4232]
Subsystem: Intel Corporation WiFi Link 5100 ABG [8086:1206]
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
Bus 002 Device 003: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 002: ID 2717:5013
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 064e:a116 Suyin Corp. UVC 1.3MPixel WebCam
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 002: ID 0b05:1751 ASUSTek Computer, Inc. BT-253 Bluetooth Adapter
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Any suggestions on what I can do next are appreciated!
Disclaimer: I have seen this and this and this and all the others. They did not work for me, as the way firmware is loaded seem to have changed. I did try and suucceeded in extracting firmware from Windows Broadcom drivers, but I don't know where/if to insert this pieces of hcd
.