Bluetooth keyboard (Русский)

В этой статье описан метод подключения bluetooth клавиатуры. Используется bluez версии 5.

Состояние перевода: На этой странице представлен перевод статьи Bluetooth keyboard. Дата последней синхронизации: 15 сентября 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Сопряжение

Войдите на нужный компьютер с проводной клавиатурой или через ssh.

В первую очередь убедитесь, что Bluetooth-контроллер определился:

# lsusb
Bus 001 Device 004: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. LAN9500 Ethernet 10/100 Adapter / SMSC9512/9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Приведённый выше вывод получен на Raspberry-Pi revision 'B' с archlinux-arm и Keysonic BT Dongle.

Помните три вещи:

  • Между устройством (клавиатурой) и контроллером (донглом) сопряжение настраивается один раз.
  • Bluetooth-контроллер необходимо включать после каждой загрузки.
  • Контроллеру необходимо указывать подключение к клавиатуре после каждой загрузки.

Сопряжение — однократный процесс, который достаточно выполнить один раз. Бывают Bluetooth-клавиатуры, продаваемые вместе с донглом и заранее настроенным сопряжением, но так не у всех. Мы используем команду bluetoothctl из пакета bluez-utils для сопряжения нашего донгла и клавиатуры.

Включение может быть выполнено через bluetoothctl или автоматически в /etc/bluetooth/main.conf (см. ниже).

Аналогично подключение может быть выполнено через bluetoothctl или hcitool, последний более полезен для написания скриптов.

Используем bluetoothctl для сопряжения. Запустите команду для получения приглашения [bluetooth]#.

# bluetoothctl
[bluetooth]#
Примечание: Если у вас цветная консоль, слово «bluetooth» будет иметь цвет по умолчанию, если нет доступных устройств, и синиц цвет, если требуемые устройства и/или контроллеры нашлись.

Находясь в bluetoothctl, включите контроллер:

[bluetooth]# power on
Changing power on succeeded
[CHG] Controller 06:05:04:03:02:01 Powered: yes

Затем сообщите bluetoothctl, что мы ищем только клавиатуры, и сделайте это агентом по умолчанию:

Далее переведите ваш контроллер (локальный донгл) в режим сопряжения:

Теперь переведите вашу клавиатуру в активный режим, когда она может быть обнаружена и сопряжена. Некоторые клавиатуры имеют специальную кнопку для этого, некоторые требуют нажать специальную комбинацию клавиш — читайте документацию к вашей клавиатуре. Имейтн в виду, что время, в течение которого будет доступно обнаружение, ограничено, обычно около 30 секунд или пары минут в зависимости от устройства.

Далее попросите контроллер найти подходящее устройство:

После нескольких секунд адрес вашей клавиатуры должен быть найден. Строка может повторяться снова и снова, но это не мешает вводить новые команды.

Теперь выполните собственно сопряжение. Используемый адрес это BT-MAC вашей клавиатуры:

[bluetooth]# pair 01:02:03:04:05:06
Pairing successful
Примечание: Некоторые клавиатуры, такие как Microsoft Surface Ergonomic, отправляют пасскод (например, "[agent] Passkey: 501334"), который нужно набрать на клавиатуре и нажать Enter для завершения сопряжения. Используйте команду "paired-devices", чтобы точно убедиться, что сопряжение прошло успешно.

Теперь сделайте это устройство доверенным (это позволит ему самостоятельно устанавливать соединение). Аналогично, используемый адрес это BT-MAC вашей клавиатуры:

Наконец, подключитесь к устройству (клавиатуре). Аналогично, используемый адрес это BT-MAC вашей клавиатуры:

Готово. Теперь можно выйти из bluetoothctl:

[bluetooth]# quit

Теперь внешнее устройство (клавиатура) и USB-донгл сопряжены навсегда, пока вы самостоятельно не удалите сопряжение.

Xorg

Устройство добавляется как и Xorg должен увидеть его автоматически, если вы не отключили такую возможность.

gollark: Downscaling horrible bad things doesn't remove their horrible badness.
gollark: I still disagree with it.
gollark: A GUI can be more intuitive in some scenariÖs.
gollark: Also, forcing everyone to spend two years of their life in the military when they may really not like this is quite bad.
gollark: Yes, forcing people to go around killing people and/or helping to is very uncool.
This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.