Bluetooth マウス

提供: ArchWiki
2021年4月9日 (金) 14:55時点におけるKgx (トーク | 投稿記録)による版 (→‎Logitech BLE マウス (M557、M590、anywhere mouse 2 など) の問題: 翻訳ミスを修正)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

関連記事

この記事では、 Bluetooth マウスに固有の構成とトラブルシューティングの手順について説明します。 ここでの情報は、メインの Bluetooth 記事に基づいており、ユーザーがその記事のインストール、構成、またはトラブルシューティングをすでに実行していることを前提としています。

設定

Apple MagicMouse のスクロール速度

スクロール速度が遅すぎる場合は、次を試してみて下さい。

# 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 MagicMouse のミドルクリック

ミドルクリックが機能しない場合、無効にすることができます

# 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

マウスのペアリングとデュアルブート

Windows と Linux をデュアルブートする場合、 Bluetooth マウスを何度も再ペアリングする必要がある場合があります。これは、 OS を切り替えるたびに発生します。これは、デバイスをペアリングすると、 Bluetooth サービスが一意のペアリングキーのセットを生成するためです。そして、主な理由は、ペアリングキーのセットを2つの OS 間で共有できないことです。

まず、コンピュータに Bluetooth デバイスの MAC アドレスとペアリングキーが保存されます。次に、 Bluetooth デバイスはコンピュータの MAC アドレスと一致するキーを保存します。これは通常は正常に機能しますが、 Bluetooth ポートの MAC アドレスは Linux と Windows の両方で同じになります(ハードウェアレベルで設定されます)。ただし、 Windows または Linux でデバイスを再ペアリングすると、新しいキーが生成されます。そのキーは、 Bluetooth デバイスに以前に保存されたキーを上書きします。 Windows は Linux キーを上書きし、その逆も同様です。

この問題を解決するには、こちらを参照 [1]

Bluetooth LE デバイスを使用している場合は、こちら python スクリプトを使用した例は こちら これは、arch に合わせて少し編集されています

トラブルシューティング

マウスの遅延

マウスの遅延が発生した場合は、ポーリングレートを上げることができます。詳細については、マウスのポーリングレート を参照してください。

BlueZ でマウスの最小/最大遅延を設定してみることができます [2]:

/var/lib/bluetooth/mac-of-your-adapter/mac-of-your-mouse/info の次のセクションを追加または変更します(それに応じてパスを調整します)::

[ConnectionParameters]
MinInterval=6
MaxInterval=9
Latency=44
Timeout=216

また、hcitool (bluez-hcitoolAUR) を使用して、デバイスの遅延パラメーターを変更することもできます。

# HANDLE="$(hcitool con | grep '<Bluetooth マウス 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} を参照してください。

この例ではラグの問題を解決しますが、マウスのペアリングを解除してペアリングする必要があります。

# 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 ドングルの問題

USB ドングルに問題がある場合は、次のことも試してみてください。

# modprobe -v rfcomm

この時点で、次の hci0 デバイスを入手する必要があります。

# hcitool dev

デバイスがすぐにアクティブにならない場合があります。次のコマンドでインターフェースを開始してみてください。

# hciconfig hci0 up

上記のようにデバイスを検索します。

マウスが切断される

Bluetooth を再起動した後、マウスが機能しなくなっても再び機能する場合は、選択したデバイスに対して USB の自動サスペンドを無効にする 必要がある場合があります。

この問題は、デバイスのタイムアウトと HID 設定にもある可能性があります。 #ThinkpadBluetooth レーザーマウスの問題 を参照してください。

Logitech デバイスを使用している場合、この問題は #Logitech BLE マウス (M557、M590、anywhere mouse 2 など) の問題 の手順に従って解決される場合があります。

ThinkpadBluetooth レーザーマウスの問題

Thinkpad Bluetooth レーザーマウスが接続された後、数秒ごとに (マウスを動かすかボタンを押すと) 再び切断される場合は、コード 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

これらの変更により、接続を維持するためのデバイスのタイムアウトが防止されます。 2番目の設定は、 Bluetooth デバイスのユーザースペース HID 処理を有効にします。 bluetooth.service を再起動して、変更をテストします。また、再起動してデバイスを再ペアリングする必要がある場合もあります。

Kensington Expert Wireless Trackball の問題

Kensington Expert Wireless Trackball のデフォルトのポーリングレートは200ミリ秒の範囲であるため、遅延が発生します。これを修正するには、[ConnectionParameters] セクションの /var/lib/bluetooth/mac-of-your-adapter/mac-of-your-mouse/info (マウスの Bluetooth アドレスに応じてパスを調整します) 待ち時間を少数または 0 に下げます。

Logitech BLE マウス (M557、M590、anywhere mouse 2 など) の問題

マウスがペアリングされていても、機能しない場合。デバイスが、信頼され、ブロックが解除されるように追加します。 まず、ターミナルを開いて bluetoothctl を実行します。

  1. Bluetooth の電源を切る:
    [bluetooth] # power off
  2. Bluetooth の電源を入れ、必要に応じてマウスでペアリング方法を有効にします。
    [bluetooth] # power on
  3. 使用可能な Bluetooth デバイスを一覧表示します。マウスデバイスID XX:XX:XX:XX:XX:XX をコピーする必要があります:
    [bluetooth] # scan on
  4. すでにペアリングされている場合は、デバイスのペアリングを解除します:
     [bluetooth] # XX:XX:XX:XX:XX:XX
    を削除します
  5. デバイスをペアリングモードにします(通常、ボタンを長押しするか、一部のキーボードではキーの組み合わせを使用します)。スキャンで検出して表示します。デバイス ID が(わずかに)変更されている可能性があることに注意してください。スキャンで示されたデバイス ID をコピーしてください。
  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 の電源をオフにしてからオンにします。

マウスが直接機能しない場合は、マウスの電源をオフにしてからオンにします。

カーネル5.9+上のすべての BLE マウスの問題

カーネル 5.9 以降のすべての BLE デバイスの問題 を参照してください。

参照