Bluetooth mouse (Русский)
Эта статья описывает настройку Bluetooth-мышей и решение связанных с ними проблем. Информация базируется на основной статье Bluetooth, и предполагается, что вы уже изучили её.
Настройка
Скорость прокрутки на Apple Magic Mouse
Если прокрутка слишком медленная, попробуйте
# modprobe -r hid_magicmouse # modprobe hid_magicmouse scroll_acceleration=1 scroll_speed=55
Можно установить значение от 0 до 63.
Когда вы найдёте подходящее вам значение, можно сделать это изменение постоянным в /etc/modprobe.d/
/etc/modprobe.d/hid_magicmouse.conf
options hid_magicmouse scroll_acceleration=1 scroll_speed=55
Щелчок средней кнопкой на Apple Magic Mouse
Если вы считаете, что средний щелчок слишком привередлив, вы можете отключить его
# modprobe -r hid_magicmouse # modprobe hid_magicmouse emulate_3button=0
Можно сделать это изменение постоянным в /etc/modprobe.d/
/etc/modprobe.d/hid_magicmouse.conf
options hid_magicmouse emulate_3button=0
Сопряжение мыши и двойная загрузка
При использовании нескольких операционным систем вам придётся настраивать сопряжение с мышью каждый раз снова и снова при переходе в другую ОС. Это связано с тем, что при сопряжении Bluetooth-служба генерирует уникальный набор ключей сопряжения.
Во-первых, ваш компьютер хранит MAC-адрес устройства Bluetooth и ключ сопряжения. Во-вторых, ваше Bluetooth-устройство хранит MAC-адрес компьютера и соответствующий ключ. Это обычно работает нормально, но MAC-адрес вашего Bluetooth-порта одинаковый во всех ОС (он прописан на аппаратном уровне), а при сопряжении каждый раз генерируется новый ключ. Этот ключ перезаписывает старый, хранящийся на Bluetooth-устройстве. Windows перезаписывает Linux-ключ и наоборот.
Вы можете перенести ключи сопряжения из другой системы в Linux; смотрите Bluetooth (Русский)#Сопряжение при двойной загрузке.
Если у вас устройство Bluetooth LE, используйте этот Python-скрипт, слегка адаптированный для Arch (оригинальное обсуждение [1]).
Решение проблем
Тормоза мыши
Если вы наблюдаете тормоза мыши, вы можете попробовать увеличить частоту опроса. Смотрите Mouse polling rate для дополнительной информации.
Можно попробовать установить минимальную/максимальную задержку для мыши в BlueZ [2]:
Попробуйте изменить файл /var/lib/bluetooth/mac-адрес-адаптера/mac-адрес-мыши/info
, добавив туда следующие строки:
[ConnectionParameters] MinInterval=6 MaxInterval=9 Latency=44 Timeout=216
Также можно использовать hcitool
(из пакета bluez-deprecated-tools) для изменения параметров задержки:
# HANDLE="$(hcitool con | grep '<mac-адрес мыши>' | awk '{print $5}')" # get the device handle # hcitool lecup --handle $HANDLE --latency 0 --min 6 --max 8
Это применится только для текущего соединения; после переподключения мыши команду нужно будет выполнить снова.
Ещё можно попробовать изменить настройки задержки через debugfs. Смотрите /sys/kernel/debug/bluetooth/hci0/conn_{latency,{min,max}_interval}
.
This example will solve the lag problems, but you must un pair and pair the mouse:
# echo 0 > /sys/kernel/debug/bluetooth/hci0/conn_latency # echo 6 > /sys/kernel/debug/bluetooth/hci0/conn_min_interval # echo 7 > /sys/kernel/debug/bluetooth/hci0/conn_max_interval
Проблемы с USB-адаптером Bluetooth
Если у вас проблемы с адаптером USB, можете попробовать выполнить:
# modprobe -v rfcomm
Сейчас вы должны получить устройство hci0
с помощью команды:
# hcitool dev
Иногда устройство не активируется автоматически. Попробуйте поднять интерфейс с помощью:
# hciconfig hci0 up
и выполнить поиск устройств, как описано выше.
Мышь постоянно отключается
Если мышь перестаёт работать, но снова работает после перезапуска Bluetooth, или постоянно засыпает через несколько секунд неактивности (что случается как минимум с некоторыми модулями Dell XPS 13 [3]), вам может понадобиться отключить автоматическую приостановку USB для выбранного устройства.
Проблема также может быть в таймауте устройства и настройках HID. Смотрите #Проблемы с Thinkpad Bluetooth Laser Mouse.
Если у вас Logitech, проблема может быть решена процедурой, описанной в разделе #Проблемы с Logitech BLE мышами (M557, M590, M720, Anywhere 2 и т. д.).
Проблемы с Thinkpad Bluetooth Laser Mouse
Если у вас Thinkpad Bluetooth Laser Mouse подключается и быстро (спустя несколько миллисекунд) отключается каждые несколько секунд (когда вы её двигаете или нажимаете кнопку), попробуйте выполнить сопряжения с кодом 0000
вместо сопряжения без кода.
Если это не помогло, проблема может быть в настройках таймаута устройства. Измените/создайте файл /etc/bluetooth/input.conf
и пропишите в нём следующие изменения:
# Configuration file for the input service # This section contains options which are not specific to any # particular interface [General] # Set idle timeout (in minutes) before the connection will # be disconnect (defaults to 0 for no timeout) IdleTimeout=0 #Enable HID protocol handling in userspace input profile #Defaults to false(hidp handled in hidp kernel module) UserspaceHID=true
Эти изменения предотвратят таймаут устройства, чтобы оно оставалось подключенным. Вторая настройка включает userspace обработку HID. Перезапустите службу bluetooth.service
для тестирования изменений. Ещё может понадобиться перезагрузиться и провести повторое сопряжение с устройством.
Проблемы с Kensington Expert Wireless Trackball
Kensington Expert Wireless Trackball имеет частоту опроса по умолчанию в районе 200мс, что создаёт ощутимые задержки. Для исправления добавьте или измените раздел [ConnectionParameters]
в файле /var/lib/bluetooth/mac-адрес-адаптера/mac-адрес-мыши/info
как показано выше; уменьшите задержку или вообще установите её в 0
.
Проблемы с Logitech BLE мышами (M557, M590, M720, Anywhere 2 и т. д.)
Иногда сопряжение проходит успешно, но мышь не двигается. Устройство нужно добавить в доверенные и разблокировать. Сперва откройте терминал и выполните bluetoothctl
- Отключите bluetooth:
[bluetooth] # power off
- Включите bluetooth:
[bluetooth] # power on
- Выведите список доступных устройств bluetooth, скопируйте device ID мыши XX:XX:XX:XX:XX:XX:
[bluetooth] # scan on
- Удалите сопряжение, если оно уже есть:
[bluetooth] # remove XX:XX:XX:XX:XX:XX
- Переведите устройство в режим сопряжения (обычно долгим нажатием на кнопку, или сочетанием клавиш на некоторых клавиатурах). Его обнаружит и выведет scan. Device ID может измениться (немного), так что скопируйте device ID, который покажет scan.
-
Добавьте в доверенные ваше устройство:
[bluetooth] # trust XX:XX:XX:XX:XX:XX
- Выполните сопряжение с компьютером:
[bluetooth] # pair XX:XX:XX:XX:XX:XX
- Соедините компьютер с мышью:
[bluetooth] # connect XX:XX:XX:XX:XX:XX
-
Разблокируйте управление устройством:
[M585/M590] # unblock
- Выключите и включите bluetooth.
Если мышь не работает напрямую, выключите и снова включите её.
Иногда бывает нужно загрузить модуль ядра uhid
.