Я пытаюсь подключить клавиатуру Logitech через Bluetooth. Я не могу заставить это работать с помощью графического интерфейса, поэтому я использовал свою консоль, чтобы следовать этому подходу: http://devasive.blogspot.be/2012/11/ubuntu-1204-persistent-bluetooth-pairing.html
Он добавляет устройство и устанавливает флаг доверия. Тогда он использует
sudo bluez-test-input connect XX:XX:XX:XX:XX:XX
но эта программа на python не работает:
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
Кажется, что у входа нет метода Connect. Я вытащил кусок питона из файла и выглядит следующим образом:
input = dbus.Interface(bus.get_object("org.bluez", device),
"org.bluez.Input")
if args[0] == "connect":
input.Connect()
Есть ли способ посмотреть, что такое org.bluez.Интерфейс ввода для этого объекта ввода выглядит следующим образом. Сайт bluez мало чем поможет, как и все остальные посты на эту тему. В документации по bluez версии 4.101 указано, что объекты типа org.bluez.У входа есть метод подключения. Я проверил, что плагин Input не отключен и в файле конфигурации. Мне поможет обновление до bluez 5?
Редактировать:
На моем ноутбуке с той же версией Ubuntu, но с внутренним модулем Bluetooth, он работал безупречно. Я думаю, что это может быть проблемой:
hciconfig -a hci0
...
Service Classes: Object Transfer, Audio, Telephony
...
Я не вижу класса обслуживания ввода. Ввод необходим для клавиатуры и мыши. Означает ли это, что ключ Bluetooth не поддерживает это или это что-то еще?
С уважением,
Roel Storms