Bluetooth-клавиатура не распознается как устройство ввода на OSMC Linux

Вопрос или проблема

Я пытаюсь подключить G7BTS Bluetooth пульт/клавиатуру к моему Raspberry Pi 4B с установленным OSMC Linux (версия 5.15.92). Устройство, похоже, подключается, но ввод не распознается.

Вот что я сделал:

Я подключился с помощью bluetoothctl

[bluetooth]# scan on
<....>
[NEW] Устройство 36:36:05:E1:BE:42 G7BTS
[bluetooth]# pair 36:36:05:E1:BE:42
[G7BTS]# trust 36:36:05:E1:BE:42
[CHG] Устройство 36:36:05:E1:BE:42 Доверенное: да
Изменение доверия 36:36:05:E1:BE:42 прошло успешно
[G7BTS]# connect 36:36:05:E1:BE:42                                                                                                                                                                               Попытка подключения к 36:36:05:E1:BE:42
Подключение успешно

Я проверил устройства ввода

Устройство не отображается в /dev/input/ или в /proc/bus/input/devices. Здесь указаны только мои другие устройства Logitech.

osmc@osmc:~$ ls /dev/input/
by-id  by-path  event0  event1  mice  mouse0
osmc@osmc:~$ ls /dev/input/by-id/
usb-Logitech_USB_Receiver-if01-event-kbd  usb-Logitech_USB_Receiver-if01-event-mouse  usb-Logitech_USB_Receiver-if01-mouse

Я также не вижу устройство в /proc/bus/input/devices (другие устройства Logitech указаны)

Что я пробовал до сих пор:

  1. установил пакеты BlueZ
sudo apt-get install bluetooth bluez bluez-tools
  1. Загрузил модули HID:
sudo modprobe hidp
sudo modprobe hid
  1. Временно отключил ERTM
sudo bash -c 'echo 1 > /sys/module/bluetooth/parameters/disable_ertm'
  1. Проверил пульт на моем ПК (проблем не было)
  2. Обновил систему
  3. Проверил Bluetooth мышь на Pi
  4. Удалил устройства Logitech
  5. Использовал другой USB Bluetooth адаптер
  6. Перезагрузил систему (несколько раз)

Дополнительная информация

информация об устройстве bluetooth:

[G7BTS]# show                                                                                                                                                                                                    Контроллер B8:27:EB:01:F0:6F (публичный)                                                                                                                                                                                    Имя: osmc                                                                                                                                                                                                       Псевдоним: osmc                                                                                                                                                                                                      Класс: 0x000c0000
        Запит: да
        Обнаруживаемый: нет
        Время ожидания обнаружения: 0x000000b4
        Способный на сопряжение: да
        UUID: A/V Пульт ДУ        (0000110e-0000-1000-8000-00805f9b34fb)
        UUID: Аудио источник              (0000110a-0000-1000-8000-00805f9b34fb)
        UUID: Информация PnP           (00001200-0000-1000-8000-00805f9b34fb)
        UUID: Аудио получатель                (0000110b-0000-1000-8000-00805f9b34fb)
        UUID: Цель A/V пульта ДУ (0000110c-0000-1000-8000-00805f9b34fb)
        UUID: Профиль общего доступа    (00001800-0000-1000-8000-00805f9b34fb)
        UUID: Профиль общих атрибутов (00001801-0000-1000-8000-00805f9b34fb)
        UUID: Информация об устройстве        (0000180a-0000-1000-8000-00805f9b34fb)
        Modalias: usb:v1D6Bp0246d053E
        Обнаружение: нет
        Роли: центральный
        Роли: периферийный
Рекламные функции:
        Активные инстансы: 0x00 (0)
        Поддерживаемые инстансы: 0x05 (5)
        Поддерживаемые параметры: tx-power
        Поддерживаемые параметры: appearance
        Поддерживаемые параметры: local-name


[G7BTS]# info 36:36:05:E1:BE:42
Устройство 36:36:05:E1:BE:42 (публичное)
        Имя: G7BTS
        Псевдоним: G7BTS
        Внешний вид: 0x03c1
        Иконка: input-keyboard
        Сопряжен: да
        Доверенный: да
        Заблокирован: нет
        Подключен: да
        Унаследованное сопряжение: нет

sudo journalctl -u bluetooth:

-- Журнал начинается с Вт 2024-11-05 20:20:18 CET, заканчивается Вт 2024-11-05 21:48:32 CET. --
Nov 05 20:20:20 osmc systemd[1]: Запуск службы Bluetooth...
Nov 05 20:20:20 osmc bluetoothd[461]: Демон Bluetooth 5.62
Nov 05 20:20:20 osmc systemd[1]: Служба Bluetooth запущена.
Nov 05 20:20:20 osmc bluetoothd[461]: Запуск сервера SDP
Nov 05 20:20:20 osmc bluetoothd[461]: Интерфейс управления Bluetooth версии 1.21 инициализирован
Nov 05 20:20:20 osmc bluetoothd[461]: profiles/audio/avctp.c:avctp_server_socket() setsockopt(L2CAP_OPTIONS): Недопустимый аргумент (22)
Nov 05 20:20:20 osmc bluetoothd[461]: Конечная точка зарегистрирована: sender=:1.8 path=/org/bluez/hci0/A2DP/AAC/Source/1
Nov 05 20:20:20 osmc bluetoothd[461]: Конечная точка зарегистрирована: sender=:1.8 path=/org/bluez/hci0/A2DP/AAC/Source/2
Nov 05 20:20:20 osmc bluetoothd[461]: Конечная точка зарегистрирована: sender=:1.8 path=/org/bluez/hci0/A2DP/AAC/Sink/1
Nov 05 20:20:20 osmc bluetoothd[461]: Конечная точка зарегистрирована: sender=:1.8 path=/org/bluez/hci0/A2DP/AAC/Sink/2
Nov 05 20:20:20 osmc bluetoothd[461]: Конечная точка зарегистрирована: sender=:1.8 path=/org/bluez/hci0/A2DP/SBC/Source/1
Nov 05 20:20:20 osmc bluetoothd[461]: Конечная точка зарегистрирована: sender=:1.8 path=/org/bluez/hci0/A2DP/SBC/Source/2
Nov 05 20:20:20 osmc bluetoothd[461]: Конечная точка зарегистрирована: sender=:1.8 path=/org/bluez/hci0/A2DP/SBC/Sink/1
Nov 05 20:20:20 osmc bluetoothd[461]: Конечная точка зарегистрирована: sender=:1.8 path=/org/bluez/hci0/A2DP/SBC/Sink/2
Nov 05 20:21:06 osmc bluetoothd[461]: src/device.c:load_gatt_db() Нет кеша для 36:36:05:E1:BE:42
Nov 05 21:08:04 osmc bluetoothd[461]: src/device.c:search_cb() 36:36:05:E1:BE:42: ошибка обновления служб: Хост не доступен (112)
Nov 05 21:13:21 osmc bluetoothd[461]: src/device.c:load_gatt_db() Нет кеша для 36:36:05:E1:BE:42
osmc@osmc:~$ sudo journalctl -u bluetoothctl
-- Журнал начинается с Вт 2024-11-05 20:20:18 CET, заканчивается Вт 2024-11-05 21:51:29 CET. --

Почему моя Bluetooth клавиатура G7BTS не распознается как устройство ввода? Есть ли дополнительные шаги, которые могут заставить ее работать? Могу ли я заставить ее стать HID устройством?

Спасибо заранее, любая помощь будет оценена.

Ответ или решение

Ситуация, с которой вы столкнулись, связана с несовместимостью вашего Bluetooth-клавиатуры G7BTS с системой OSMC на Raspberry Pi 4B. Описанные вами действия указывают на успешное подключение устройства, однако его отсутствие в списке входных устройств (/dev/input/ и /proc/bus/input/devices) свидетельствует о том, что оно не распознается системой как устройство ввода. Давайте разберёмся, какие шаги можно предпринять для решения этой проблемы.

1. Проверка совместимости устройства

Первое, что следует сделать, это убедиться, что клавиатура G7BTS поддерживает HID (Human Interface Device) профиль. Исходя из информации, предоставленной вами, в журнале Bluetooth указывается наличие UUID для A/V Remote Control, который не всегда автоматически определяется как HID. Следует подтвердить, что ваше устройство действительно поддерживает явный HID профиль.

2. Загрузка необходимых модулей

Вы уже загружали модули hid и hidp, однако рекомендую проверить, есть ли модуль btusb, который отвечает за сопряжение USB-блютуз-устройств:

sudo modprobe btusb

После этого проверьте, отображается ли устройство в списке устройств.

3. Обновление и переустановка пакетов

Несмотря на то что вы установили пакеты BlueZ, возможны ситуации, когда они требуют переустановки или обновления. Для этого:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install --reinstall bluetooth bluez bluez-tools

Убедитесь также, что ваша система обновлена.

4. Использование другого дистрибутива

OSMC, хотя и основан на Debian, может иметь некоторые специфические настройки, которые не поддерживают вашу клавиатуру. Рекомендую протестировать вашу G7BTS на другом дистрибутиве Linux (например, на Raspberry Pi OS) для проверки ее работоспособности.

5. Проверка журналов Bluetooth

Вы уже просматривали журналы, но важно уделить внимание более конкретным ошибкам. Ошибка "error updating services: Host is down (112)" указывает на проблемы при попытке обновить соединение устройства. Это может быть связано с сбоями в работе Bluetooth самого Raspberry Pi или с несовместимостью драйвера.

6. Настройка ERTM и видимости устройства

Хотя вы отключили ERTM, проверьте состояние Bluetooth через bluetoothctl. Убедитесь, что устройство действительно доверительное и соединенное. Попробуйте снова переключить его статус видимости:

sudo bash -c 'echo 0 > /sys/module/bluetooth/parameters/disable_ertm'

и затем перезагрузите Bluetooth демон:

sudo systemctl restart bluetooth

7. Принудительное добавление устройства

Если ваше устройство поддерживает HID, иногда может помочь принудительное добавление:

sudo bluetoothctl
[bluetooth]# scan on
[bluetooth]# pair <MAC адрес>
[bluetooth]# trust <MAC адрес>
[bluetooth]# connect <MAC адрес>

где <MAC адрес> – адрес вашей клавиатуры.

Заключение

Если ни один из вышеперечисленных шагов не помогает, стоит обратиться к сообществу пользователей OSMC или Raspberry Pi для получения более специализированных рекомендаций. Возможна ситуация, что данная модель клавиатуры имеет известные проблемы совместимости с определёнными версиями Linux. Параллельно рассматривайте возможность использования альтернативных устройств, которые подтверждено работают с вашей системой.

Надеюсь, эти советы помогут вам успешно интегрировать вашу G7BTS Bluetooth клавиатуру с Raspberry Pi 4B под управлением OSMC.

Оцените материал
Добавить комментарий

Капча загружается...