====== [Linux] Instalar Bluetooth Asus USB-BT211 ======
===== Debian 12 =====
==== Escenario ====
  * Tenemos un ordenador con Debian 12 que no posee interfaz Bluetooth.
  * Vamos a usar un viejo **adaptador USB de Asus BT211** para disponer de esta forma de conexión en él.
\\ 
==== Análisis ====
  * Conectamos el adaptador USB Bluetooth al ordenador y ejecutamos 
$ lsusb
 para ver los dispositivos USB del equipo, y entre otros nos aparece la línea 
Bus 001 Device 006: ID 0cf3:3005 Qualcomm Atheros Communications AR3011 Bluetooth (no-firmware)
 con lo que necesitaremos instalar su firmware es decir sus drivers.
\\ 
==== Drivers ====
  * Realizamos una búsqueda de los drivers en los repositorios con 
$ aptitude search firmware-atheros
 y observamos que dicho paquete no está instalado: 
p   firmware-atheros                             - Binary firmware for Qualcomm Atheros wireless cards
 por lo que lo instalamos con 
# aptitude install firmware-atheros
, luego reiniciamos el ordenador para que los cambios surtan efecto, y de nuevo el comando 
$ lsusb
 ya nos informa de 
Bus 001 Device 006: ID 0cf3:3005 Qualcomm Atheros Communications AR3011 Bluetooth
, lo cual podemos verificar en el entorno gráfico a través de ''Menú de inicio'' >> ''Preferencias'' >> ''Connman Settings'', observando que ya nos aparece la opción de ''Bluetooth'' en la lista del hardware de conexión.
\\ 
==== Habilitación interface ====
Hay varias formas...
  * **Desde entorno gráfico usando ''Connman Settings''**
    * ''Menú de inicio'' >> ''Preferencias'' >> ''Connman Settings'' >> ''Bluetooth'' >> clic en botón de habilitar.
  * **Desde consola usando ''rfkill''**
    * Instalar ''rfkill'' 
# aptitude install rfkill
 y luego observar el resultado de la orden 
# rfkill
, **todo el hardware inalámbrico, es decir Wi-Fi y Bluetooth, instalado en el ordenador debe aparecer en la lista**; con lo que nos da 
ID TYPE      DEVICE      SOFT         HARD
 0 bluetooth hci0   bloqueado desbloqueado
, donde vemos que nuestro adaptador tiene un ''ID 0''; entonces para habilitarlo haremos 
# rfkill unblock 0
, con lo que al ejecutar de nuevo ''rfkill'' nos dará 
ID TYPE      DEVICE         SOFT         HARD
 0 bluetooth hci0   desbloqueado desbloqueado
\\ 
==== Activación del servicio ====
  * Con la orden 
$ systemctl status bluetooth
 observamos el estado del servicio bluetooth; por ejemplo el resultado puede ser 
● bluetooth.service - Bluetooth service
     Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; preset: enabled)
     Active: active (running) since Sat 2025-05-10 06:58:59 CEST; 41min ago
       Docs: man:bluetoothd(8)
   Main PID: 799 (bluetoothd)
     Status: "Running"
      Tasks: 1 (limit: 18922)
     Memory: 2.6M
        CPU: 89ms
     CGroup: /system.slice/bluetooth.service
             └─799 /usr/libexec/bluetooth/bluetoothd
Warning: some journal files were not opened due to insufficient permissions.
, donde puede verse que el servicio está activado y ejecutándose. En caso de que no fuese así, podemos iniciarlo con 
# systemctl start bluetooth
 o habilitarlo con 
# systemctl enable bluetooth
\\ 
==== Conexión con un dispositivo Bluetooth ====
    * Dado que ''Connman Settings'' no nos parece funcionar para buscar y conectar dispositivos Bluetooth, vamos a buscar paquetes alternativos que sí lo hagan.
    * Observamos en los repositorios que disponemos de paquetes relacionados con esta tarea que aún no están instalados en nuestro ordenador, por ejemplo: ''bluetooth'', ''bluedevil'', ''blueman''...
    * **Probamos con ''blueman'' y funciona bien** para Echo Show.