bluetoothctl - O que é um agente bluetooth?

bluetoothctl - O que é um agente bluetooth?

Estou usando o bluetoothctlutilitário para configurar conexões Bluetooth entre computadores e Raspberry Pis.

Em bluetoothctl, posso ver que existe algo chamado "agente" e, olhando a maioria dos tutoriais, esse "agente" deve estar ativado para criar conexões. Estou tentando entender o que é um agente bluetooth.

1) O que é um agente Bluetooth?

2) Para que serve o comando "default-agent" bluetoothctl? Pode ser o mesmo para todas as conexões?

3) Qual é o impacto de não utilizar um agente ao configurar uma conexão?

4) Observando man bluetoothctl, diz-se que os agentes podem ter uma capacidade definida. O que é uma capacidade de agente? Que valores poderiam ser colocados lá?

5) Os agentes só existem com bluetooth? Existem, digamos, agentes wifi também?

Sou bastante novo no mundo do Bluetooth e a documentação do bluetoothctl é bastante limitada... Qualquer informação será apreciada.

Responder1

O agente Bluetooth é quem gerencia o 'código de emparelhamento' do Bluetooth. Ele pode responder a um 'código de emparelhamento' recebido ou enviar um.

O agente padrão deve funcionar para você. Você diz que é novo no Bluetooth, então sugiro que use o padrão por enquanto.

A não utilização de um agente significa que os 2 dispositivos não poderão negociar o 'código de emparelhamento'.

Um exemplo pode ajudar, então aqui está um exemplo do que funcionou para mim no meu Raspberry Pi 3 chamado 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

Aqui pedi para emparelhar o iPhone com Shep e o iPhone enviou 680044.

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

Ou veja o seguinte se quiser definir a chave de acesso antecipadamente:

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

Configure o agente bluetooth para passar o código de emparelhamento esperado

$ bluetooth-agent 0000 &

Obviamente, o '0000' pode ser qualquer número.

Esses agentes e 'códigos de emparelhamento' são específicos para Bluetooth e não para Wi-Fi.

informação relacionada