I'm running Ubuntu 16.04 on Lenovo ThinkPad T470s and quite simply, bluetooth appears to not exist, even though it is clearly in the computer according to all specifications available.

It appears that I'm missing a kernel driver. Sounds easy enough: except I cannot find any information on where to find this driver or even identify which one it is. I've searched online for the specification and all I find is "integrated bluetooth" or something to that effect. The most specific I've found so far is "Intel Unknown" from an Ubuntu page. I have been unable to use this information to find any kind of Linux bluetooth driver, whether from Intel or anywhere else.

Neither lspci nor lsusb show anything useful but here is the output anyway:

[root@tutu ~]# lspci 
00:00.0 Host bridge: Intel Corporation Device 5904 (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Device 5916 (rev 02)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI (rev 21)
00:16.3 Serial controller: Intel Corporation Device 9d3d (rev 21)
00:1c.0 PCI bridge: Intel Corporation Device 9d10 (rev f1)
00:1c.2 PCI bridge: Intel Corporation Device 9d12 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Device 9d18 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Device 9d4e (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Device 9d71 (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (4) I219-LM (rev 21)
3a:00.0 Network controller: Intel Corporation Device 24fd (rev 78)
3c:00.0 Non-Volatile memory controller: Toshiba America Info Systems Device 0115 (rev 01)
[root@tutu ~]# lsusb 
Bus 002 Device 002: ID 0bda:0316 Realtek Semiconductor Corp. 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 04ca:7066 Lite-On Technology Corp. 
Bus 001 Device 004: ID 8087:0a2b Intel Corp. 
Bus 001 Device 003: ID 0458:0185 KYE Systems Corp. (Mouse Systems) 
Bus 001 Device 002: ID 1395:002d Sennheiser Communications 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

So, quite frankly, I'm stuck, and I haven't been able to find anything useful online. Any tips on how to identify my bluetooth chip and/or find Linux (Ubuntu 16.04) drivers for it?

  • Not working bluetooth is mentioned as a known problem for the t470s in the german thinkpad forum; thinkpad-forum.de/threads/205438-T470s-linux/page3 They are talking about a firmware problem, Bus 001 Device 004: ID 8087:0a2b Intel Corp should be your wifi/bluetooh – flotto May 16 '17 at 13:58

This should solve your problem:

sudo apt-get install linux-generic-hwe-16.04-edge xserver-xorg-input-libinput-hwe-16.04
wget https://mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.161.1_all.deb
sudo dpkg -i linux-firmware_1.161.1_all.deb

Do this, and reboot.

Source? Here, people facing the same issue with the Intel 8265 Bluetooth on Ubuntu 16.04 LTS and other notebook models like Lenovo Y520 and Dell Precision 5520m.

This command line means that you will need HWE version of libinput+kernel, and a version higher than 1.161.1 of the linux-firmware package.

Got the exact bluetooth model number by browsing theSCCM Package for Windows of Lenovo t470s.

As reported by other users, this solution works with Thinkpad variants t470 and t470s

  • Thank you so much. :) I actually didn't need to install the packages in the first command, only the wget-ed one. I also downloaded it using HTTPS. Thanks again! – Teekin May 16 '17 at 14:50
  • Glad it worker :) . Maybe you are already using the hwe kernel(4.8)... – user34720 May 16 '17 at 16:22
  • Well, I'm using this, don't know it i's a HWE kernel: Linux tutu 4.8.0-52-generic #55~16.04.1-Ubuntu SMP Fri Apr 28 14:36:29 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux – Teekin May 18 '17 at 13:48
  • 1
    If you are using Ubuntu 16.04 and kernel version 4.8(instead of 4.4), you are using HWE. It is a measure that Canonical took, to give fresh kernels to it's LTS brand, specially to increase drivers on those distributions, without breaking(and without having to deal with other mirrors to install newer versions of kernel non-LTS on LTS) - wiki.ubuntu.com/Kernel/RollingLTSEnablementStack#hwe-16.04-edge – user34720 May 18 '17 at 14:09
  • That's very interesting. Thanks for the info. :) - By the way, I took the liberty to update your response so that the link is HTTPS. – Teekin May 18 '17 at 15:43

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.