Я использую bluetoothctl
утилиту для настройки Bluetooth-соединений между компьютерами и Raspberry Pi.
В bluetoothctl
, я вижу, что есть что-то под названием "агент", и, просматривая большинство руководств, этот "агент" должен быть включен для создания соединений. Я пытаюсь понять, что такое агент bluetooth.
1) Что такое Bluetooth-агент?
2) Что такое команда "default-agent" bluetoothctl
? Может ли она быть одинаковой для всех подключений?
3) Каковы последствия отказа от использования агента при настройке соединения?
4) Рассматривая man bluetoothctl
, говорится, что агентам можно задать возможность. Что такое возможность агента? Какие значения можно туда поместить?
5) Существуют ли агенты только с Bluetooth? Существуют ли, скажем, агенты Wi-Fi тоже?
Я новичок в мире Bluetooth, а документация по bluetoothctl довольно ограничена... Буду признателен за любую информацию.
решение1
Агент Bluetooth управляет «кодом сопряжения» Bluetooth. Он может либо ответить на входящий «код сопряжения», либо отправить его.
Default-agent должен подойти вам. Вы говорите, что вы новичок в Bluetooth, поэтому я предлагаю вам пока использовать default.
Если агент не используется, два устройства не смогут согласовать «код сопряжения».
Возможно, поможет пример. Вот пример того, что сработало у меня на Raspberry Pi 3 под названием 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
Здесь я попросил iPhone подключиться к Шепу, и iPhone отправил 680044.
[CHG] Device 18:9E:FC:94:8C:33 Connected: yes
Request confirmation
[agent] Confirm passkey 680044 (yes/no): yes
Или смотрите следующее, если вы хотите установить ключ доступа заранее:
http://www.heatxsink.com/entry/как-подключить-Bluetooth-устройство-из-командной-строки-на-Linux
Настройте bluetooth-агент для передачи ожидаемого кода сопряжения
$ bluetooth-agent 0000 &
Очевидно, что «0000» может быть любым числом.
Эти агенты и «коды сопряжения» относятся скорее к Bluetooth, чем к Wi-Fi.