ブログ

Armadillo-440:QtのGUIでUSBマウスを使う方法

at_kazutaka.bito
2015年10月19日 16時26分

Armadillo-440でQtで作成したGUIをUSBマウスで操作できるようにしてみました。 (本方法はArmadillo-410、Armadillo-460も同様に使用できます。)

1.カーネルコンフィギュレーションで、マウスデバイスを有効にします。

make menuconfigで、コンフィギュレーションの画面を開いて、MainMenuで、

Kernel/Library/Defaults Selection  --->
[*] Customize Kernel Settings (NEW)

を選択してExitします。

カーネルコンフィギュレーションの画面が開くので、下記の★箇所の設定を有効にします。

Linux Kernel Configuration
Device Drivers  --->
Input device support  --->
-*- Generic input layer (needed for keyboard, mouse, ...) 
---   Userland interfaces
<*>   Mouse interface // ★*をつけて有効にする
 
---   Input Device Drivers
[*]   Mice  ---> // ★*をつけて有効にする

Miceの下にドライバを選択できる項目がありますが、 当方の使用したMicrosoft Optical Mouse 200だと、デフォルトで有効になっているドライバで動作しました。

上記の設定でビルドしたカーネルをArmadillo-440に書き込みます。

2.Armadillo-440を起動して、USBマウスのデバイスファイルを確認します。

例)Armadillo-440を起動後にUSBマウスを差した場合

[root@armadillo440-0 (ttymxc1) ~]# cat /sys/class/input/mouse0/device/name
imx_adc_ts
[root@armadillo440-0 (ttymxc1) ~]# cat /sys/class/input/mouse1/device/name
USB Optical Mouse

この場合、USBマウスのデバイスファイル名は、/dev/input/mouse1になります。

なお、/dev/input/mouseの番号は認識した順番によって異なります。 ->USBマウスを差した状態でArmadillo-440を起動するとmouse0になります。  Armadillo-440を起動後にUSBマウスを差すとmouse1になります。

参考)USBマウスの認識をArmadillo-440を起動後にしたい(デバイスファイルの番号を固定したい)場合は、

USBデバイスの認識を遅らせる https://users.atmark-techno.com/blog/615/1189

という方法があります。

3.QtのマウスデバイスとしてUSBマウスを設定します。

例)USBマウスのデバイスファイル名が/dev/input/mouse1の場合

[root@armadillo440-0 (ttymxc1) ~]# export QWS_MOUSE_PROTO=IntelliMouse:/dev/input/mouse1

上記の設定後、Qtのプログラムを起動すると、USBマウスに合わせてマウスポインタが反応します。