Существует некоторое недопонимание между моим ноутбуком Dell с Ubuntu и клавиатурой Microsoft . При использовании программного обеспечения Bluetooth по умолчанию клавиатура найдена, но соединение диспетчера Bluetooth завершается сообщением «Невозможно подключиться».
Blueman обнаруживает клавиатуру, но не может подключить ее тоже.
Но эта последовательность команд соединяет его без какого-либо пароля:
hcitool scan
sudo hidd --connect 00:12:A1:63:34:6E
Однако даже в этом случае после 15 минут простоя клавиатура переключается в спящий режим и не может быть правильно подключена обратно.
С другой стороны, эта клавиатура успешно подключается ко всем моим устройствам Android. В этом случае у меня есть этот соединительный поток:
На мой взгляд, что-то подобное должно произойти при подключении к ноутбуку.
Так что, если вы знаете какой-либо способ решить эту проблему, не становясь хакером и не исправляя стек Bluetooth, я буду очень признателен.
Вы помогли мне в получении клавиатуры, работающей с Вашим потоком, почему я совместно использую свое быстрое (и вероятно грязный) обходное решение, как избежать 15 минут неактивная проблема, возможно, это полезно для любого.
В основном я создал маленький сценарий, который будет пытаться каждые 5 секунд установить соединение с клавиатурой, если клавиатура не будет уже подключена.
Вот сценарий:
#!/bin/bash
DEVICE_ID=7C:1E:52:A9:B5:B6
SHOW_OUTPUT=$(hidd --show)
echo ${SHOW_OUTPUT}
if [[ $SHOW_OUTPUT == *connected* ]]
then echo "MS Sculp Keyboard is already connected."
else
# try to connect the device:
CONNECT_OUTPUT=$(hidd --connect ${DEVICE_ID})
if [[ $CONNECT_OUTPUT == *down* ]]
then
echo "Device cannot be reached, maybe it is deactivated."
fi
#
# check if the device was connected successfully:
#
SHOW_OUTPUT=$(hidd --show)
if [[ $SHOW_OUTPUT == *connected* ]]
then
echo "The device was connected successfully."
fi
fi
sleep 5
exec $0
DEVICE_ID должен быть заменен идентификатором, полученным из hcitool - сканирование. Я использовал cronjob для запуска сценария при начальной загрузке системы. Я открыл таблицу крона в текстовом редакторе с
sudo crontab-e
и добавил строку:
@reboot/usr/local/bin/establishMSSculpKeyboard.sh
к таблице, где establishMSSculpKeyboard.sh является названием сценария, который я скопировал в папку
/usr/local/bin
С наилучшими пожеланиями, aUser