RaspbianでマレーシアのChalkboard Electronics製7インチタッチパネル液晶を使った時のメモ。
つかっているタッチパネル付液晶はこちらのもの。
基本
基本的には
xinput_calibrator
を使ってキャリブレーションします。
ない場合はapt-get
でインストールしましょう。
シェルから実行すると、
キャリブレーション用の画面が表示されるので、画面にしたがって点をタッチしましょう。
$ xinput_calibrator
Warning: multiple calibratable devices found, calibrating last one (Chalkboard Electronics HID Touchscreen)
use --device to select another one.
Calibrating EVDEV driver for "Chalkboard Electronics HID Touchscreen" id=7
current calibration values (from XInput): min_x=4, max_x=1200 and min_y=800, max_y=-1
Doing dynamic recalibration:
Setting new calibration data: 8, 1268, 793, 1
--> Making the calibration permanent <--
copy the snippet below into '/etc/X11/xorg.conf.d/99-calibration.conf'
Section "InputClass"
Identifier "calibration"
MatchProduct "Chalkboard Electronics HID Touchscreen"
Option "Calibration" "8 1268 793 1"
EndSection
すると、こんな感じで設定がシェルに書きだされます。
これをxorgの設定ファイルに書き込む必要があります。
設定ファイルの書き込み
シェル上では、/etc/X11/xorg.conf.d/99-calibration.conf
に書き込めと出ていますが、 これは間違いです。
Debian/Ubuntuでは、/usr/share/X11/xorg.conf.d/99-calibiration.conf
の一番下の行に追加します。
ファイルがなければ作成しましょう。
こんな感じで。
Section "InputClass"
Identifier "calibration"
MatchProduct "Chalkboard Electronics HID Touchscreen"
Option "Calibration" "4 1200 800 -1"
Option "SwapAxes" "1"
EndSection
"SwapAxes"
は画面を回転させて使っている時、軸の方向あわなくなる場合に使用します。
xinput-calibrationの出力で自動的に付与される場合もあります。
キャリブレーションがうまくいかない場合
そもそもキャリブレーション時に画面の外にカーソルが行ってしまうような状態だと、うまくキャリブレーションができない場合があります。
その場合は、一度上記の設定ファイル/usr/share/X11/xorg.conf.d/99-calibiration.conf
に書きこんだあと、
Option "Calibration"
の値を手動で変更して、画面のどこを触ってもカーソルが画面の外にいかないように調整します。
設定した値を反映するには、KDEを使用している場合
$ sudo killall lightdm
$ sudo service lightdm start
これで、xを再起動すると、値が反映されます。
なぜかservice lightdm restart
ではダメで、一度lightdmをkillしないと再起動できませんでした。
カーソルが常に画面内に表示されたら、もう一度xinput_calibrator
を実行して上記の手順を行いましょう。
補足
どうやら、x.orgのドキュメントを読むと、Option "Calibration"
の値は、それぞれ min-x, max-x, min-y, max-yらしいので、それぞれを解像度に合わせて設定してあげれば大丈夫...?
ちなみに、Chalkboard-electroncisの7インチ1280x800液晶を+90度回転して使うときの設定は、
Section "InputClass"
Identifier "calibration"
MatchProduct "Chalkboard Electronics HID Touchscreen"
Option "Calibration" "0 1280 800 0"
Option "SwapAxes" "1"
EndSection
追記
あれ、、、xinput-calibrator
はapt-get
じゃはいらない...?
http://engineering-diy.blogspot.co.uk/2013/01/adding-7inch-display-with-touchscreen.html