Bluetooth on Lenovo Ideapad S20-30
Ok this one isn't properly supported in the kernel yet but a fairly easy fix
sudo apt-get install build-essential linux-headers-generic
wget https://www.dropbox.com/s/0rmgeve2ibrh1u1/bluetooth-3.16-2.tar.gz
wget https://www.dropbox.com/s/f503f6r686riiow/fw-105b_e065.hcd
tar -zxf bluetooth-3.16-2.tar.gz
cd bluetooth-3.16-2
cp /boot/config-$(uname -r) .config
cp /usr/src/linux-headers-$(uname -r)/Module.symvers Module.symvers
make -C /lib/modules/$(uname -r)/build M=$PWD modules
sudo modprobe -r btusb && sudo cp btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/
sudo modprobe btusb
Then I need to see what it expects to see the firmware file named, so add the result of dmesg | tail -15
so I can edit this answer
Now that we know what the firmware needs to be named cd ~
and sudo cp fw-105b_e065.hcd /lib/firmware/brcm/BCM43142A0-105b-e065.hcd
and then
sudo modprobe -r btusb
sudo modprobe btusb
echo btusb | sudo tee -a /etc/modules
And the dmesg | tail
results should change and bluetooth should work properly
After a kernel update, bluetooth will likely stop functioning, then you need to
cd bluetooth-3.16-2
make -C /lib/modules/$(uname -r)/build M=$PWD clean
cp /boot/config-$(uname -r) .config
cp /usr/src/linux-headers-$(uname -r)/Module.symvers Module.symvers
make -C /lib/modules/$(uname -r)/build M=$PWD modules
sudo modprobe -r btusb && sudo cp btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/
sudo modprobe btusb
And you should be going until the next update