Bluetooth mouse (Русский)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Состояние перевода: На этой странице представлен перевод статьи Bluetooth mouse. Дата последней синхронизации: 25 сентября 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Эта статья описывает настройку 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

Сопряжение мыши и dual boot

При использовании нескольких операционным систем вам придётся настраивать сопряжение с мышью каждый раз снова и снова при переходе в другую ОС. Это связано с тем, что при сопряжении Bluetooth-служба генерирует уникальный набор ключей сопряжения.

Во-первых, ваш компьютер хранит MAC-адрес устройства Bluetooth и ключ сопряжения. Во-вторых, ваше Bluetooth-устройство хранит MAC-адрес компьютера и соответствующий ключ. Это обычно работает нормально, но MAC-адрес вашего Bluetooth-порта одинаковый во всех ОС (он прописан на аппаратном уровне), а при сопряжении каждый раз генерируется новый ключ. Этот ключ перезаписывает старый, хранящийся на Bluetooth-устройстве. Windows перезаписывает Linux-ключ и наоборот.

Вы можете перенести ключи сопряжения из другой системы в Linux; смотрите Bluetooth (Русский)#Сопряжение при Dual boot.

Если у вас устройство 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-utils-compatAUR) для изменения параметров задержки:

# 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

Проблемы с bluetooth-адаптером USB

Если у вас проблемы с адаптером USB, можете попробовать выполнить:

# modprobe -v rfcomm

Сейчас вы должны получить устройство hci0 с помощью команды:

# hcitool dev

Иногда устройство не активируется автоматически. Попробуйте поднять интерфейс с помощью:

# hciconfig hci0 up

и выполнить поиск устройств, как описано выше.

Мышь постоянно отключается

Если мышь перестаёт работать, но снова работает после перезапуска Bluetooth, или постоянно засыпает через несколько секунд неактивности (что случается как минимум с некоторыми модулями Dell XPS 13 [3]), вам может понадобиться отключить USB autosuspend для выбранного устройства.

Проблема также может быть в таймауте устройства и настройках HID. Смотрите #Проблемы с Thinkpad Bluetooth Laser Mouse.

Если у вас Logitech, проблема может быть решена процедурой, описанной в #Проблемы с Logitech BLE мышами (M557, M590, 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, Anywhere 2 и т.д.)

Иногда сопряжение проходит успешно, но мышь не двигается. Устройство нужно добавить в доверенные и разблокировать. Сперва откройте терминал и выполните bluetoothctl

  1. Отключите bluetooth:
    [bluetooth] # power off
  2. Включите bluetooth:
    [bluetooth] # power on
  3. Выведите список доступных устройств bluetooth, скопируйте device ID мыши XX:XX:XX:XX:XX:XX:
    [bluetooth] # scan on
  4. Удалите сопряжение, если оно уже есть:
    [bluetooth] # remove XX:XX:XX:XX:XX:XX
  5. Переведите устройство в режим сопряжения (обычно долгим нажатием на кнопку, или сочетанием клавиш на некоторых клавиатурах). Его обнаружит и выведет scan. Device ID может измениться (немного), так что скопируйте device ID, который покажет scan.
  6. Добавьте в доверенные ваше устройство:
    [bluetooth] # trust XX:XX:XX:XX:XX:XX
  7. Выполните сопряжение с компьютером:
    [bluetooth] # pair XX:XX:XX:XX:XX:XX
  8. Соедините компьютер с мышью:
    [bluetooth] # connect XX:XX:XX:XX:XX:XX
  9. Разблокируйте управление устройством:
    [M585/M590] # unblock
  10. Выключите и включите bluetooth.

Если мышь не работает напрямую, выключите и снова включите её.

Иногда бывает нужно загрузить модуль ядра uhid.

Проблемы со всеми BLE мышами на ядра 5.9+

Смотрите Bluetooth (Русский)#Проблемы со всеми устройствами BLE на ядре 5.9+.

Смотрите также