bluetoothctl - ¿Qué es un agente bluetooth?

bluetoothctl - ¿Qué es un agente bluetooth?

Estoy usando la bluetoothctlutilidad para configurar conexiones Bluetooth entre computadoras y Raspberry Pis.

En bluetoothctl, puedo ver que hay algo llamado "agente" y, al consultar la mayoría de los tutoriales, este "agente" debe estar "activado" para crear conexiones. Estoy tratando de entender qué es un agente bluetooth.

1) ¿Qué es un agente bluetooth?

2) ¿Para qué sirve el comando "agente predeterminado" bluetoothctl? ¿Puede ser igual para todas las conexiones?

3) ¿Cuál es el impacto de no utilizar un agente al configurar una conexión?

4) Al observar man bluetoothctl, se dice que a los agentes se les puede establecer una capacidad. ¿Qué es la capacidad de un agente? ¿Qué valores se podrían poner allí?

5) ¿Existen agentes sólo con bluetooth? ¿Hay, digamos, agentes wifi también?

Soy bastante nuevo en el mundo de Bluetooth y la documentación para bluetoothctl es bastante limitada... Cualquier información sería apreciada.

Respuesta1

El agente Bluetooth es lo que gestiona el 'código de emparejamiento' de Bluetooth. Puede responder a un "código de emparejamiento" entrante o enviar uno.

El agente predeterminado debería funcionar para usted. Dices que eres nuevo en Bluetooth, por lo que te sugiero que utilices el predeterminado por ahora.

No utilizar un agente significará que los 2 dispositivos no podrán negociar el "código de emparejamiento".

Un ejemplo podría ayudar, así que aquí hay un ejemplo de lo que funcionó para mí en mi Raspberry Pi 3 llamado Shep:

pi@shep:~/bluetooth $ bluetoothctl
[NEW] Controller B8:27:EB:B0:BC:22 shep [default]
[NEW] Device 18:9E:FC:94:8C:33 iPhone4
[bluetooth]# agent on
Agent registered
[bluetooth]# default-agent
Default agent request successful
[CHG] Device 18:9E:FC:94:8C:33 Connected: yes
[CHG] Device 18:9E:FC:94:8C:33 Connected: no

Aquí le pedí al iPhone que se emparejara con Shep y el iPhone envió 680044.

[CHG] Device 18:9E:FC:94:8C:33 Connected: yes
Request confirmation
[agent] Confirm passkey 680044 (yes/no): yes

O consulte lo siguiente si desea configurar la clave de acceso por adelantado:

http://www.heatxsink.com/entry/how-to-pair-a-bluetooth-device-from-command-line-on-linux

Configure el agente bluetooth para pasar el código de emparejamiento esperado

$ bluetooth-agent 0000 &

Obviamente el '0000' podría ser cualquier número.

Estos agentes y 'códigos de emparejamiento' son específicos de Bluetooth y no de Wi-Fi.

información relacionada