コンテンツにスキップ

Top

Ubuntu 20.04 で xinput_calibrator で タッチパネル のキャリブレーションしたけど設定が反映されない

タッチパネルPCにUbuntu 20.04をインストール。

当然だが、タッチの位置がおかしい。ので、 xinput_calibrator でキャリブレーション。

$ xinput_calibrator -v
Calibrating EVDEV driver for "DIALOGUE INC PenMount USB" id=15
        current calibration values: min_x=0, max_x=16777215 and min_y=0, max_y=16777215
        If these values are estimated wrong, either supply it manually with the --precalib option, or run the 'get_precalib.sh' script to automatically get it (through HAL).
        --> Making the calibration permanent <--
  copy the snippet below into '/etc/X11/xorg.conf.d/99-calibration.conf' (/usr/share/X11/xorg.conf.d/ in some distro's)
Section "InputClass"
    Identifier  "calibration"
    MatchProduct    "DIALOGUE INC PenMount USB"
    Option  "MinX"  "58479"
    Option  "MaxX"  "7152"
    Option  "MinY"  "6883"
    Option  "MaxY"  "58310"
    Option  "SwapXY"    "0" # unless it was already set to 1
    Option  "InvertX"   "0"  # unless it was already set
    Option  "InvertY"   "0"  # unless it was already set
EndSection

/etc/X11/xorg.conf.d/99-calibration.conf というファイルを作って、SectionからEndSectionまでをまるっとコピー。

んで再起動すればばっちり!!

とってもかんたん!!

...のはずがなぜか設定が反映されない!!!

結論をいうとどうもバグみたい。

以下の手順で xinput_calibrator の出力が変わるのでそれを設定すればOK!

注意!再起動が必要!!

$ sudo apt install -y xserver-xorg-input-evdev
$ sudo apt remove -y xserver-xorg-input-libinput
$ sudo apt install -y xinput-calibrator
$ sudo reboot

立ち上がったら、xinput_calibratorでキャリブレーション。

$ xinput_calibrator 
Calibrating EVDEV driver for "DIALOGUE INC PenMount USB" id=15
    current calibration values (from XInput): min_x=922, max_x=105 and min_y=113, max_y=916

Doing dynamic recalibration:
    Setting calibration data: 914, 113, 106, 921 
    --> Making the calibration permanent <-- 
  copy the snippet below into '/etc/X11/xorg.conf.d/99-calibration.conf' (/usr/share/X11/xorg.conf.d/ in some distro's)
Section "InputClass"
    Identifier  "calibration"
    MatchProduct    "DIALOGUE INC PenMount USB"
    Option  "Calibration"   "914 113 106 921"
    Option  "SwapAxes"  "0" 
EndSection

出力されたコメントにあるように、 /etc/X11/xorg.conf.d/99-calibration.conf というファイルを作って、その下ののSectionからEndSectionまでをまるっとコピー。
んで、再起動すればキャリブレーションバッチリになる!

要はテキストの出力形式が変わっちゃったということ。

以上!!