Ubuntu Weekly Recipe

第397回SolaarでロジクールのUniyingレシーバーを管理する

ロジクール(海外名Logitech)が提供する無線デバイスには、Bluetoothとは別にUnifyingレシーバーと呼ばれる共用の小型レシーバーを利用するモデルが存在します。今回は、このレシーバーをUbuntuで使う方法を紹介します。

Unifyingレシーバー

「Unifying」はロジクールの無線デバイスで使われている独自の通信プロトコルです。そのレシーバーはUSBドングルとして製品に添付されており、PCに接続するだけでペアリングすることなく普通のUSB接続の入力デバイスのように扱えます。このためUbuntuでも特にドライバー等をインストールする必要はありません。

周辺機器の無線通信としてはBluetoothが一般的です。こちらはいろいろなメーカーから対応デバイスが発売されていますので、より選択の幅が広がります。またUnifyingと違い、ヘッドフォンやファイル送受信などさまざまなプロファイルがあるため、汎用的に使えます。最近のラップトップやスマートフォン、タブレットであれば大抵はBluetooth機能がついていることもあり、Bluetoothデバイスのほうが使い勝手が良いでしょう。

それに対してデスクトップPCには、Bluetoth機能がついていない機種もまだ存在します。わざわざBluetoothドングルを購入して、そのドライバーをインストールすることを考えたら、Unifyingレシーバー対応機器のほうが手軽です。USBポートを専有することになりますが、一つのレシーバーで、6台まで同時利用可能なので、USBポートが足りないということもないはずです。

ちなみに先月開催されたOSC Tokyo/Fallにおいても、XubuntuをインストールしたRaspberry Pi 2に このUnifyingレシーバーを接続して展示していました。

図1 ラップトップの右にあるのがロジクールのタッチパッド付きキーボードK400
画像

実はこのOSCのとき、キーボードは持ってきていたもののUnifyingレシーバーを忘れてしまったのです。するとそれを聞きつけた心優しいOさんが、ご自身の自宅にあった余っているレシーバーをわざわざ会場まで届けて、貸してくださいました。Oさん、まじイケメンです。

さて、購入時のレシーバーとデバイスであればあらかじめペアリングがされていますが、異なるレシーバーと組み合わせる場合はまずペアリングが必要になります。先程も言ったように、Unifyingレシーバーはロジクールの独自プロトコルを採用しています。つまりペアリングも、ロジクールの専用ツールを使う必要があるのです。そして残念ながらLinux用の公式ツールはありません。

さぁ、困った。

Unifyingレシーバーの管理ツール「Solaar」

そこで登場するのが、今回紹介するSolaarです。これはユーザーがUnifyingデバイスの動作を調べた上で作成したLinux用の独自ツールなのです[1]⁠。当然のことながら、このツールを使うことによる保証はロジクールからは受けられませんのでご注意ください。

さて、Solaarを使えば次のようなことができます。

  • Unifying対応デバイスのペアリング・アンペアリング
  • シリアルナンバーやバッテリー残量といったペアリングしたデバイスの情報表示
  • Fnキー設定、DPI設定などのデバイス設定

Ubuntu 15.04以降であれば公式リポジトリからパッケージをインストールできます。Ubuntu 14.04以前ならPPAがありますので、そちらからインストールしてください。

14.04以前の場合はまずPPAを追加
$ sudo add-apt-repository ppa:daniel.pavel/solaar
$ sudo apt-get update
Solaarパッケージのインストール
$ sudo apt-get install solaar solaar-gnome3

solaar-gnome3パッケージはAppIndicator用のライブラリなどに依存したメタパッケージです。Ubuntuデスクトップの場合は、インストールしてもしなくても結果は変わりません。

さっそく使ってみましょう。適当なUnifyingレシーバーをPCに接続した上で、solaar-cliコマンドを実行してください。

$ solaar-cli show
Unifying Receiver [/dev/hidraw2:CD2E924F] with 4 devices
1: Marathon Mouse M705 [M705:6801AE8A] offline
2: Wireless Mouse M325 [M325:C33657C6] offline
3: M315/M235 [M315/M235:137B694E] offline
4: Wireless Touch Keyboard K400 [K400:9A6FA63A] offline

ペアリング済みのデバイス一覧が表示されます。上記の例だとマウス3つにキーボード1つペアリングしていて、すべてオフラインになっていることがわかります。

たとえばキーボードの設定を見る場合は、次のように実行します。

$ solaar-cli config 4
[9A6FA63A:keyboard]
# Wireless Touch Keyboard K400

# Swap Fx function
#   possible values: on/true/t/yes/y/1 or off/false/f/no/n/0
# fn-swap = ? (failed to read from device)

残念ながら現在の設定が見えないので、未対応のようです。

キーボードをアンペアリングしてみましょう。ちなみにUnifying対応デバイスには、1つのレシーバーにしかペアリングできない(別のレシーバーにペアリングするためには一度アンペアリングする必要がある)デバイスがあるそうです。うまくペアリングできないときは、明示的にアンペアリングするとうまくいく場合があります。

$ solaar-cli unpair 4
Unpaired 4: Wireless Touch Keyboard K400 [K400:9A6FA63A]
$ solaar-cli show
Unifying Receiver [/dev/hidraw2:CD2E924F] with 3 devices
1: Marathon Mouse M705 [M705:6801AE8A] offline
2: Wireless Mouse M325 [M325:C33657C6] offline
3: M315/M235 [M315/M235:137B694E] offline

4番目のK400が消えたことがわかりますね。

次はペアリングです。先ほどアンペアリングしたK400を再びペアリングしてみましょう。今度はアンペアリングと異なり、実際に接続するデバイスも必要です。

$ solaar-cli pair
Pairing: turn your new device on (timing out in 20 seconds).
(ここでデバイスの電源をオンにする)
solaar-cli: error: no device detected?
$ solaar-cli show
Unifying Receiver [/dev/hidraw2:CD2E924F] with 4 devices
1: Marathon Mouse M705 [M705:6801AE8A] offline
2: Wireless Mouse M325 [M325:C33657C6] offline
3: M315/M235 [M315/M235:137B694E] offline
4: Wireless Touch Keyboard K400 [K400:9A6FA63A] offline

Solaar側の不具合で、ペアリングできても「no device detected?」が表示されます。しかしキーボード入力はできていること、そしてshowコマンドで表示するとリストアップされることからペアリングできていることはわかるはずです。

GUI版のSolaar

SolaarのGUIは画面右上のインジケーターとして実装されています。solaarパッケージをインストールすると/etc/xdg/autostart/solaar.desktopがインストールされるため、次回ログイン時からは右上にインジケーターが表示されるはずです。

図2 Solaarインジケーターにはデバイス一覧が表示される
画像

「Unifying Receiver」をクリックすると、情報・設定ダイアログが起動します。 CUIツールと同様にここでもペアリングやアンペアリングが可能です。

図3 Solaarダイアログにはペアリング済みのデバイス一覧が表示される
画像
図4 GUIの場合は特にエラーなくペアリングが完了する
画像
図5 ペアリング済みのデバイスがオンラインになった時には通知が表示される
画像
図6 対応していればバッテリーの状態なども表示される
画像

このようにUnifyingレシーバー対応デバイスでも、Ubuntuで普通に使用できます。無線の入力デバイスを探す場合、BluetoothだけでなくUnifyingも選択肢に入れておくと良いでしょう。

ちなみにOさんから借りたレシーバー、まだ返していません。この記事を書くまで忘れてました。

おすすめ記事

記事・ニュース一覧