Estou tentando conectar um controle remoto/teclado Bluetooth G7BTS ao meu Raspberry Pi 4B executando OSMC Linux (versão 5.15.92). O dispositivo parece se conectar, mas nenhuma entrada é detectada.
Aqui está o que eu fiz:
Eu conectei usandobluetoothctl
[bluetooth]# scan on
<....>
[NEW] Device XX:XX:XX:XX:XX:XX G7BTS
[bluetooth]# pair XX:XX:XX:XX:XX:XX
[G7BTS]# trust XX:XX:XX:XX:XX:XX
[CHG] Device XX:XX:XX:XX:XX:X Trusted: yes
Changing XX:XX:XX:XX:XX:X trust succeeded
[G7BTS]# connect XX:XX:XX:XX:XX:XX Attempting to connect to 36:36:05:E1:BE:42
Connection successful
Eu verifiquei os dispositivos de entrada
O dispositivo não aparece em /dev/input/ ou em /proc/bus/input/devices. Apenas meus outros periféricos Logitech estão listados.
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
Também não vejo o dispositivo em /proc/bus/input/devices
(outros dispositivos Logitech estão listados)
O que tentei até agora:
- pacotes BlueZ instalados
sudo apt-get install bluetooth bluez bluez-tools
- Módulos HID carregados:
sudo modprobe hidp
sudo modprobe hid
- ERTM desativado temporariamente
sudo bash -c 'echo 1 > /sys/module/bluetooth/parameters/disable_ertm'
- Testei o controle remoto no meu PC (sem problemas)
- Atualizou o sistema
- Testei um mouse bluetooth no Pi
- Removidos os periféricos Logitech
- Usei outro adaptador bluetooth USB
- Reiniciei o sistema (várias vezes)
Informações adicionais
informações do dispositivo bluetooth:
[G7BTS]# show Controller B8:27:EB:01:F0:6F (public) Name: osmc Alias: osmc Class: 0x000c0000
Powered: yes
Discoverable: no
DiscoverableTimeout: 0x000000b4
Pairable: yes
UUID: A/V Remote Control (0000110e-0000-1000-8000-00805f9b34fb)
UUID: Audio Source (0000110a-0000-1000-8000-00805f9b34fb)
UUID: PnP Information (00001200-0000-1000-8000-00805f9b34fb)
UUID: Audio Sink (0000110b-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
Modalias: usb:v1D6Bp0246d053E
Discovering: no
Roles: central
Roles: peripheral
Advertising Features:
ActiveInstances: 0x00 (0)
SupportedInstances: 0x05 (5)
SupportedIncludes: tx-power
SupportedIncludes: appearance
SupportedIncludes: local-name
[G7BTS]# info XX:XX:XX:XX:XX:XX
Device XX:XX:XX:XX:XX:XX (public)
Name: G7BTS
Alias: G7BTS
Appearance: 0x03c1
Icon: input-keyboard
Paired: yes
Trusted: yes
Blocked: no
Connected: yes
LegacyPairing: no
sudo journalctl -u bluetooth
:
-- Journal begins at Tue 2024-11-05 20:20:18 CET, ends at Tue 2024-11-05 21:48:32 CET. --
Nov 05 20:20:20 osmc systemd[1]: Starting Bluetooth service...
Nov 05 20:20:20 osmc bluetoothd[461]: Bluetooth daemon 5.62
Nov 05 20:20:20 osmc systemd[1]: Started Bluetooth service.
Nov 05 20:20:20 osmc bluetoothd[461]: Starting SDP server
Nov 05 20:20:20 osmc bluetoothd[461]: Bluetooth management interface 1.21 initialized
Nov 05 20:20:20 osmc bluetoothd[461]: profiles/audio/avctp.c:avctp_server_socket() setsockopt(L2CAP_OPTIONS): Invalid argument (22)
Nov 05 20:20:20 osmc bluetoothd[461]: Endpoint registered: sender=:1.8 path=/org/bluez/hci0/A2DP/AAC/Source/1
Nov 05 20:20:20 osmc bluetoothd[461]: Endpoint registered: sender=:1.8 path=/org/bluez/hci0/A2DP/AAC/Source/2
Nov 05 20:20:20 osmc bluetoothd[461]: Endpoint registered: sender=:1.8 path=/org/bluez/hci0/A2DP/AAC/Sink/1
Nov 05 20:20:20 osmc bluetoothd[461]: Endpoint registered: sender=:1.8 path=/org/bluez/hci0/A2DP/AAC/Sink/2
Nov 05 20:20:20 osmc bluetoothd[461]: Endpoint registered: sender=:1.8 path=/org/bluez/hci0/A2DP/SBC/Source/1
Nov 05 20:20:20 osmc bluetoothd[461]: Endpoint registered: sender=:1.8 path=/org/bluez/hci0/A2DP/SBC/Source/2
Nov 05 20:20:20 osmc bluetoothd[461]: Endpoint registered: sender=:1.8 path=/org/bluez/hci0/A2DP/SBC/Sink/1
Nov 05 20:20:20 osmc bluetoothd[461]: Endpoint registered: 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() No cache for XX:XX:XX:XX:XX:XX
Nov 05 21:08:04 osmc bluetoothd[461]: src/device.c:search_cb() XX:XX:XX:XX:XX:XX: error updating services: Host is down (112)
Nov 05 21:13:21 osmc bluetoothd[461]: src/device.c:load_gatt_db() No cache for XX:XX:XX:XX:XX:XX
osmc@osmc:~$ sudo journalctl -u bluetoothctl
-- Journal begins at Tue 2024-11-05 20:20:18 CET, ends at Tue 2024-11-05 21:51:29 CET. --
Por que meu teclado Bluetooth G7BTS não é reconhecido como um dispositivo de entrada? Existem etapas adicionais que podem fazê-lo funcionar? Posso forçá-lo a se tornar um dispositivo HID?
Obrigado antecipadamente, qualquer ajuda é bem-vinda.
Atualizar o BlueZ resolveu o problema
O problema foi resolvido atualizando para uma versão mais nova do bluez. A versão do Apt era
5.64
, e mudar para5.79
kernel.org corrigiu o problema.Etapas para construir e instalar a nova versão do BlueZ
e construir ferramentas se ainda não estiverem presentes
Então reinicie seu sistema e tente conectar o teclado. No meu caso, funcionou perfeitamente.