Primeiro precisamos pegar alguns arquivos
sudo apt-get install linux-headers-generic build-essential
wget https://www.dropbox.com/s/f503f6r686riiow/fw-105b_e065.hcd
echo btusb | sudo tee -a /etc/modules
Se uname -a
mostrar que você tem um kernel 3.13, então
wget https://www.dropbox.com/s/rlv2prqzzptcr6f/bluetooth-trusty.tar.gz
tar -zxf bluetooth-trusty.tar.gz
cd bluetooth
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 cp btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/
sudo cp ~/fw-105b_e065.hcd /lib/firmware/brcm/BCM43142A0-105b-e065.hcd
sudo cp ~/fw-105b_e065.hcd /lib/firmware/
sudo modprobe btusb
Se você tiver um kernel 3.16
wget https://www.dropbox.com/s/uocd0xqaprm4yvi/bluetooth.utopic.tar.gz
tar -zxf bluetooth.utopic.tar.gz
cd bluetooth
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 cp btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/
sudo cp ~/fw-105b_e065.hcd /lib/firmware/brcm/BCM43142A0-105b-e065.hcd
sudo modprobe btusb
Se acontecer de atualizações para instalar um novo kernel que ainda não suporta o dispositivo, você precisará fazer o seguinte para que ele funcione novamente
cd bluetooth
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 cp btusb.ko /lib/modules/$(uname -r)/kernel/drivers/bluetooth/
sudo modprobe -r btusb
sudo modprobe btusb
Se você tiver um kernel de série diferente, basta adicioná-lo em um comentário.
Se você fizer um sudo update-usbids
e olhar para lsusb
, deverá notar que o dispositivo com ID 105b: e065 está identificado como um Bluetooth Broadcom BCM43142A0