ブログ

USBマルチタッチパネルを使用する

at_ito
2014年8月31日 21時33分

HDMIやDVIで接続するディスプレイでは、タッチパネルがUSBで接続するマルチタッチパネルになっている場合があります。

ここではUSBマルチタッチパネルを使用するための方法を紹介します。

環境

  • 製品: Armadillo-840
  • 使用したディスプレイ: シーズウェア製 TMG-310-AC00

設定

Linuxカーネルの以下のコンフィギュレーションを有効にしてください。

Device Drivers  --->
  [*] HID Devices  --->
    Special HID drivers  --->
      <*> HID Multitouch panels    ← 有効化

このデバイスは、Linuxカーネルのドライバーに登録されていないため、 Linuxカーネルのdrivers/hid/hid-multitouch.cのmt_devices変数に、 ベンダーIDと、プロダクトIDを追加します。

ベンダーIDと、プロダクトIDは以下のコマンドで確認できます。

[armadillo ~]# lsusb
Bus 002 Device 002: ID 0afa:07d2
Bus 001 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0001

※: 接続されているすべてのUSBデバイスが表示されます。そのため、タッチパネルの接続前、接続後で比較すると該当のデバイスがわかります。

以上の設定が終わりましたら、LinuxカーネルをビルドしてArmadilloに書き込んでください。

確認

さきほど書き込んだLinuxカーネルで起動すると/dev/input/ディレクトリ下に、新しくeventX(Xには数字が入ります)ファイルが作成されています。

タッチパネルのからイベントがとれているかは、以下のコマンドで確認できます。

[armadillo ~]# evtest /dev/input/eventX