Bluetooth mouse (Русский)

From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи 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+.

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