저는 Titan6001 터치스크린을 사용하여 Fedora 35를 설정하고 있습니다. Linux는 터치에 반응하지만 X축이 반전됩니다(오른쪽 마우스 버튼이 왼쪽에 닿거나 그 반대). Y축은 괜찮습니다.
어떻게 하면 이 문제를 되돌릴 수 있나요? 저는 X11(Wayland 아님)을 사용하고 있습니다.
"Xorg -configure" 명령을 사용하여 새 xorg.conf를 생성했지만 Titan6001(eGalax) 장치에 대한 섹션이 포함되어 있지 않습니다. 하지만 이전 게시물에서 하나를 찾아서 다음과 같이 xorg.conf에 추가했습니다.
Section "InputDevice"
Identifier "EETI"
Driver "egalax"
Option "Device" "usbauto"
Option "Parameters" "/var/lib/eeti.param"
Option "ScreenNo" "0"
Option "InvertX" "true"
EndSection
그러나 아무런 차이가 없습니다(InvertX는 효과가 없습니다). 이 부분이 받아들여지는지 궁금합니다. 내 Xorg.0.log는 다음을 보여줍니다:
72.646] (II) config/udev: Adding input device eGalax Inc. USB TouchController (/dev/input/event4)
[ 72.646] (**) eGalax Inc. USB TouchController: Applying InputClass "evdev touchscreen catchall"
[ 72.646] (**) eGalax Inc. USB TouchController: Applying InputClass "libinput touchscreen catchall"
[ 72.646] (II) Using input driver 'libinput' for 'eGalax Inc. USB TouchController'
[ 72.646] (**) eGalax Inc. USB TouchController: always reports core events
[ 72.646] (**) Option "Device" "/dev/input/event4"
[ 72.646] (**) Option "_source" "server/udev"
[ 72.647] (II) event4 - eGalax Inc. USB TouchController: is tagged by udev as: Touchscreen
[ 72.648] (II) event4 - eGalax Inc. USB TouchController: device is a touch device
[ 72.648] (II) event4 - eGalax Inc. USB TouchController: device removed
[ 72.674] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1a.0/usb3/3-2/3-2:1.0/input/input13/event4"
[ 72.674] (II) XINPUT: Adding extended input device "eGalax Inc. USB TouchController" (type: TOUCHSCREEN, id 8)
[ 72.674] (**) Option "AccelerationScheme" "none"
[ 72.674] (**) eGalax Inc. USB TouchController: (accel) selected scheme none/0
[ 72.674] (**) eGalax Inc. USB TouchController: (accel) acceleration factor: 2.000
[ 72.674] (**) eGalax Inc. USB TouchController: (accel) acceleration threshold: 4
[ 72.676] (II) event4 - eGalax Inc. USB TouchController: is tagged by udev as: Touchscreen
[ 72.676] (II) event4 - eGalax Inc. USB TouchController: device is a touch device
[ 72.678] (II) config/udev: Adding input device eGalax Inc. USB TouchController (/dev/input/mouse1)
mouse1을 참조하는 것으로 나타났습니다. 이것이 단서입니까? 이에 대한 섹션을 만들어야 합니까?
그래서 다음으로 시도해 봤는데
xinput --set-prop "eGalax Inc. USB TouchController" "Evdev Axis Inversion" 1, 0
그러나 재산은 인정되지 않았습니다. 그래서 사용 가능한 속성을 나열하고 다음을 살펴보았습니다.
Device 'eGalax Inc. USB TouchController':
Device Enabled (142): 1
Coordinate Transformation Matrix (144): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix (278): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix Default (279): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Send Events Modes Available (261): 1, 0
libinput Send Events Mode Enabled (262): 0, 0
libinput Send Events Mode Enabled Default (263): 0, 0
Device Node (264): "/dev/input/event4"
Device Product ID (265): 3823, 1
좌표 변환 행렬이나 입력 교정 행렬이 내가 원하는 효과를 얻을 수 있나요? (xorg.conf 대신 명령줄에서 설정해야 한다고 가정)
답변1
예. 나는 이것을 직접 겪고 있습니다. "오래된" InvertX, SwapXY 등도 사용하므로 xinput_calibrate를 사용하지 마십시오. 이제 모든 작업은 스케일링/오프셋팅/반전 등을 한 번에 처리하는 변환 매트릭스를 통해 수행됩니다. 다음 내용을 읽으면서 설정 방법을 배우고 있습니다.https://wiki.archlinux.org/title/Talk:Calibration_Touchscreen