Estou tentando conectar um teclado da Logitech usando o Bluetooth. Não consigo fazer isso funcionar por meio da GUI, então usei meu console para seguir essa abordagem: link
Adiciona o dispositivo e define o sinalizador de confiança. Então usa
sudo bluez-test-input connect XX:XX:XX:XX:XX:XX
mas este programa python falha:
Traceback (most recent call last):
File "/usr/bin/bluez-test-input", line 42, in <module> input.Connect()
File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 70, in __call__ return self._proxy_method(*args, **keywords)
File "/usr/lib/python2.7/dist-packages/dbus/proxies.py", line 145, in __call__ **keywords)
File "/usr/lib/python2.7/dist-packages/dbus/connection.py", line 651, in call_blocking message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.UnknownMethod: Method Connect" with signature "" on interface "org.bluez.Input" doesn't exist
Parece que a entrada não possui um método Connect. Eu tirei o pedaço de python do arquivo e é o seguinte:
input = dbus.Interface(bus.get_object("org.bluez", device),
"org.bluez.Input")
if args[0] == "connect":
input.Connect()
Existe alguma maneira de ver como é a interface org.bluez.Input no objeto de entrada. O site da bluez é de pouca ajuda, assim como todas as outras postagens sobre o assunto. A documentação do bluez versão 4.101 especifica que os objetos do tipo org.bluez.Input possuem um método de conexão. Eu verifiquei que o plugin de entrada não está desativado no arquivo de configuração também. A atualização para o bluez 5 vai me ajudar?
Editar:
No meu laptop com a mesma versão do ubuntu, mas um módulo bluetooth interno, funcionou sem falhas. Eu acho que isso pode ser o problema:
hciconfig -a hci0
...
Service Classes: Object Transfer, Audio, Telephony
...
não vejo nenhuma classe de serviço de entrada. A entrada é necessária pelo teclado e mouse. Isso significa que o dongle bluetooth não suporta isso ou é outra coisa?
Atenciosamente,
Tempestades de Roel