Conexión a dispositivos Bluetooth a través de CLI

La tecnología inalámbrica Bluetooth es una especificación mundial para una solución de radio de bajo costo y factor de forma pequeño que proporciona enlaces entre computadoras móviles, teléfonos móviles y otros dispositivos portátiles de mano. Encontrará conectividad Bluetooth en teléfonos inteligentes, relojes inteligentes, auriculares inalámbricos, etc. 
En este artículo, aprenderemos cómo conectarse a un dispositivo Bluetooth a través de CLI en Linux. 

¿Qué es BlueZ?

BlueZ es la pila de protocolos Bluetooth oficial para Linux distribuida bajo la Licencia Pública General (GPL) de GNU que brinda soporte para las capas y protocolos principales de Bluetooth. Es flexible, eficiente y utiliza una implementación modular. Tiene muchas características interesantes:

  • Implementación modular completa
  • Abstracción de hardware real
  • Compatibilidad con varios dispositivos Bluetooth
  • Caja fuerte multiprocesamiento simétrica
  • Interfaz de socket estándar para todas las capas
     

Instalación BlueZ

Dependiendo de su tipo de distribución, ejecute uno de los siguientes comandos para instalar BlueZ y otras herramientas relacionadas. 

$sudo apt -y install bluetooth bluez bluez-tools rfkill # para distribuciones basadas en Debian/Ubuntu

$sudo pacman -S bluez bluez-utils util-linux # para distribuciones basadas en Arch

$sudo dnf -y install bluez bluez-tools # para Fedora/CentOS 

 todas las herramientas ya instaladas, es posible que se le solicite alguna confirmación. 

Agregar usuario al grupo requerido

De forma predeterminada, el demonio de Bluetooth solo entregará dispositivos Bluetooth a los usuarios que sean miembros del grupo lp. Necesitamos asegurarnos de agregar nuestro usuario actual al grupo lp para conectarnos a una conexión Bluetooth. 

En primer lugar, comprobamos los grupos asignados al usuario.
id imprime información sobre el usuario dado, o el proceso que lo ejecuta si no se especifica ningún usuario.

$ id   

 

Si lp no está presente en la lista de salida, debemos agregar el usuario actual al grupo lp

$ sudo usermod -aG lp $USER
$ newgrp lp
$ id       # to check newly added group
  • sudo permite al usuario ejecutar comandos con los privilegios de un superusuario.
  • El comando usermod (Modificar usuario) se utiliza para cambiar las propiedades de un usuario.
  • En el indicador -aG, -a agrega al usuario a los grupos mencionados y -G proporciona una lista de grupos adicionales de los que el usuario también es miembro.
  • El comando usermod -G reemplaza los grupos que estaban allí antes a menos que agregue el indicador -a (para agregar).
  • $USER devuelve el nombre de usuario actual.

 

Habilitación del servicio Bluetooth

Para habilitar cualquier servicio al inicio, ejecutamos el comando systemctlenable. 

$ sudo systemctl enable --now bluetooth.service
  • sudo permite al usuario ejecutar comandos con los privilegios de un superusuario.
  • El comando enable habilita el servicio mencionado en el arranque.
  • — ahora flag inicia el servicio mencionado de inmediato.

 

Ahora podemos verificar el estado del servicio usando el comando systemctlstatus. Devuelve el estado de actividad del servicio mencionado.

$ sudo systemctl status bluetooth.service

 

En ocasiones, el servicio Bluetooth puede estar bloqueado y para desbloquearlo necesitamos ejecutar el siguiente comando.

rfkill es una herramienta para habilitar y deshabilitar dispositivos inalámbricos

$ rfkill

 

En caso de que esté bloqueado, ejecute el siguiente comando para desbloquear

$ rfkill unblock bluetooth

Puede ejecutar el comando rfkill para verificar el estado de Bluetooth.

 

Activación de la herramienta de utilidad

Usaremos una herramienta de utilidad llamada bluetoothctl que permite varias tareas como emparejar y conectar un dispositivo Bluetooth. 
Para iniciar esta utilidad, simplemente escriba bluetoothctl en CLI.

$ bluetoothctl

 

Buscar dispositivos cercanos

Antes de conectarnos a cualquier dispositivo, debemos buscar todos los dispositivos disponibles cercanos usando el siguiente comando.
escanear en comando escaneará activamente todos los dispositivos Bluetooth detectables alrededor del usuario.

[bluetooth]# scan on

La salida será similar a la imagen de abajo

 

Emparejamiento de un dispositivo

Para formar una conexión, un dispositivo Bluetooth debe estar emparejado con otro dispositivo Bluetooth. 
Ingrese par [ID] donde [ID] es el identificador único del dispositivo Bluetooth que se muestra en el comando anterior. 

[bluetooth]# pair [ID]

Por ejemplo, si queremos conectarnos al primer dispositivo en la captura de pantalla anterior, el comando será

[bluetooth]# pair D4:8A:39:3E:3C:F5

 

 

Por lo tanto, hemos emparejado y conectado con éxito un dispositivo Bluetooth en Linux a través de CLI. Algunos de los comandos triviales que puede necesitar se enumeran a continuación.

Dominio Solía ​​hacerlo 
lista  Lista de controladores disponibles
dispositivos Lista de dispositivos disponibles
dispositivos emparejados  Lista de dispositivos emparejados
cancelar emparejamiento [dev]      Cancelar el emparejamiento con el dispositivo
detectable <activar/desactivar>  Establecer el modo de detección del controlador
desconectar [dev]    Desconectar dispositivo
salida   Salir del programa

Publicación traducida automáticamente

Artículo escrito por harshkulkarni42774 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *