Tabla de Contenidos

Ratón Bluetooth en Linux Mint (dongle USB CSR)

Hardware

Sistema configurado para usar un adaptador Bluetooth USB externo debido a incompatibilidad del chip interno con el kernel actual.

El adaptador interno del sistema (hci0) está presente pero no se utiliza.

Emparejamiento inicial

El ratón Bluetooth se empareja mediante bluetoothctl:

bluetoothctl
power on
agent on
default-agent
scan on
pair XX:XX:XX:XX:XX:XX
trust XX:XX:XX:XX:XX:XX
connect XX:XX:XX:XX:XX:XX

Problema detectado

El ratón deja de funcionar cuando el equipo entra en modo suspensión (sleep / suspend). Tras reanudar el sistema:

org.bluez.Error.NotReady
Failed to start discovery

El problema se resuelve temporalmente al desconectar y reconectar físicamente el dongle USB.

Causa real

El fallo ocurre en el ciclo de suspensión del sistema:

Resumen técnico:

Solución temporal

Tras reanudar el sistema:

sudo hciconfig hci1 up
sudo systemctl restart bluetooth

Si no funciona, reconectar físicamente el dongle USB.

Solución estable recomendada

Desactivar autosuspend del driver btusb:

echo "options btusb enable_autosuspend=0" | sudo tee /etc/modprobe.d/btusb.conf

Opcionalmente forzar reset del dispositivo al reanudar:

echo "options btusb reset=1" | sudo tee -a /etc/modprobe.d/btusb.conf

Aplicar cambios:

sudo reboot

Prevención adicional

sudo hciconfig hci0 down
hciconfig -a
bluetoothctl list

Conclusión

El problema no está en el ratón ni en el emparejamiento, sino en la reanudación del dongle Bluetooth USB tras suspensión del sistema.

La solución más efectiva es desactivar autosuspend del driver btusb para asegurar que el adaptador Bluetooth permanezca activo tras sleep/resume.