최근에 새 Dell XPS 15를 구입하고 여기에 데비안을 설치했습니다. 이전에는 Windows 10을 실행 중이었고 손바닥 감지/거부 기능이 예상대로 잘 작동했습니다. 하지만 이제 데비안을 실행하고 libinput
손바닥 감지를 사용하면 (내가 알 수 있는 한) 존재하지 않거나 완전히 손상되었습니다.
출력 xinput | grep -i touchpad
:
⎜ ↳ SynPS/2 Synaptics TouchPad id=13 [slave pointer (2)]
출력 xinput list-props 13
:
Device 'SynPS/2 Synaptics TouchPad':
Device Enabled (116): 1
Coordinate Transformation Matrix (118): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Tapping Enabled (269): 1
libinput Tapping Enabled Default (270): 0
libinput Tapping Drag Enabled (271): 1
libinput Tapping Drag Enabled Default (272): 1
libinput Tapping Drag Lock Enabled (273): 0
libinput Tapping Drag Lock Enabled Default (274): 0
libinput Tapping Button Mapping Enabled (275): 1, 0
libinput Tapping Button Mapping Default (276): 1, 0
libinput Accel Speed (251): 0.000000
libinput Accel Speed Default (252): 0.000000
libinput Natural Scrolling Enabled (256): 0
libinput Natural Scrolling Enabled Default (257): 0
libinput Send Events Modes Available (236): 1, 1
libinput Send Events Mode Enabled (237): 0, 0
libinput Send Events Mode Enabled Default (238): 0, 0
libinput Left Handed Enabled (258): 0
libinput Left Handed Enabled Default (259): 0
libinput Scroll Methods Available (260): 1, 1, 0
libinput Scroll Method Enabled (261): 1, 0, 0
libinput Scroll Method Enabled Default (262): 1, 0, 0
libinput Click Methods Available (277): 1, 1
libinput Click Method Enabled (278): 1, 0
libinput Click Method Enabled Default (279): 1, 0
libinput Middle Emulation Enabled (265): 0
libinput Middle Emulation Enabled Default (266): 0
libinput Disable While Typing Enabled (280): 1
libinput Disable While Typing Enabled Default (281): 1
Device Node (239): "/dev/input/event1"
Device Product ID (240): 2, 7
libinput Drag Lock Buttons (267): <no items>
libinput Horizontal Scroll Enabled (268): 1
내 /etc/X11/xorg.conf.d/40-libinput.conf
파일:
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
Option "Tapping" "on"
Option "TappingDrag" "on"
EndSection
ㅏ입력 이벤트 샘플sudo evemu-record /dev/input/event1 >> eventlog-finger.log
일반적인 사용 중에 하는 것처럼 터치패드에 손가락을 대고 빌드합니다 .
ㅏ입력 이벤트 샘플손바닥을 사용하면 터치패드에서 sudo evemu-record /dev/input/event1 >> eventlog-palm.log
입력을 시도할 때 발생하는 것과 같은 현상이 발생합니다.
이벤트 로그를 보면 ABS_TOOL_WIDTH
각 로그 시작 부분에 한 번만 나타나는 것을 알 수 있습니다. 제가 찾아본 결과,여기그리고여기, 이는 (다소) 알려진 문제이며 ABS_TOOL_WIDTH
0 이외의 것으로 보고된 적이 없습니다. 이것은 분명히 시냅틱 드라이버를 사용한 손바닥 감지를 중단할 것이며 libinput에서도 마찬가지라고 가정합니다.
외부 마우스를 연결하지 않고 터치패드를 비활성화하지 않고 랩톱에서 작업을 수행하는 것은 거의 불가능합니다. 마우스가 점프하고 문제를 가중시키는 경우가 있습니다. 때로는 손바닥이 터치패드에 닿아 예측할 수 없는 위치에 놓이거나 입력할 곳이 전혀 없는 경우도 있습니다.
누구든지 방법을 알고 있다면시작이 문제를 해결하는 데 도움을 주시면 대단히 감사하겠습니다.
편집 1:
내가 언급해야 할 것은가지다다음을 포함하여 Synaptics 터치패드 드라이버를 사용해 보았습니다.
apt install -y xserver-xorg-input-synaptics
synclient PalmDetect=1
그런 다음 다음 설정을 사용해도 아무 소용이 없습니다.
synclient PalmMinWidth=4
synclient PalmMinZ=80
PalmMinWidth
나는 0에서 15 사이의 모든 것과 50에서 150 사이의 모든 것을 시도했습니다 PalmMinZ
.아무것도 없다일하다. 하지만 아직 명확하지 않다면 - 그 이유는 이미 알고 있습니다.ABS_TOOL_WIDTH
보고 없음. 나는 이것을 확신하므로 이것이 내 질문의 기초가 아닙니다. 내 질문에는 보고서를 수정하는 방법 ABS_TOOL_WIDTH
이나 유사한 결과를 생성하는 다른 해결 방법이 포함됩니다.
답변1
/etc/X11/xorg.conf.d/50-synaptics.conf
다음 내용으로 파일을 만듭니다 .
Section "InputClass"
Identifier "touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "synaptics"
Option "PalmDetect" "1"
Option "PalmMinWidth" "5"
Option "PalmMinZ" "100"
EndSection
새 구성을 적용하려면 나중에 노트북을 다시 시작하세요. PalmMinWidth
최상의 결과를 위한 옵션을 실험해 보세요 . 값 3
등을 실험해 보세요.4
또 다른 방법은 속성을 임시로 설정하고 터미널에서 실행하는 것입니다.
xinput set-prop 13 "Synaptics Palm Detection" 1
xinput set-prop 13 "Synaptics Palm Dimensions" 5, 5
다른 값을 시도해 보십시오 Synaptics Palm Dimensions
.
또한 읽어보세요시냅틱스(synaptics) - 시냅틱스 터치패드 입력 드라이버.
답변2
몇 주 동안 큰 고민 끝에 마침내 어리석고 간단한 해결책을 찾았습니다.
패키지만 업그레이드하세요.
다음 4개의 패키지를 다운로드했습니다.
libinput10_1.11.3-1_amd64.deb
libinput-bin_1.11.3-1_amd64.deb
libwacom2_0.30-1_amd64.deb
libwacom-common_0.30-1_all.deb
dpkg
다음과 같이 설치하십시오 .
trevor@xps:~$ cd ~/downloads/
trevor@xps:~$ sudo dpkg -i libwacom-common_0.30-1_all.deb
...dpkg runs...
trevor@xps:~$ sudo dpkg -i libwacom2_0.30-1_amd64.deb
...dpkg runs...
trevor@xps:~$ sudo dpkg -i libinput-bin_1.11.3-1_amd64.deb
...dpkg runs...
trevor@xps:~$ sudo dpkg -i libinput10_1.11.3-1_amd64.deb
...dpkg runs...
그리고 시스템을 다시 시작했습니다(X를 다시 시작해도 작동합니다). 노트북을 다시 시작하면 손바닥 감지 기능이 작동됩니다.
답변3
내 답변이 실제로 시나리오별(OS, 랩톱 모델 등)이 아니라는 것을 알고 있지만 이 문제를 해결한 방법을 언급해야 했습니다.
저는 Lenovo ThinkPad E14 Gen 4에서 Fedora 38, KDE Plasma 5.27 및 X11을 사용하고 있습니다.
어떤 이유로 나는 다음을 설치했습니다.
xorg-x11-drv-synaptics-devel 1.9.2-3.fc38
xorg-x11-drv-synaptics-legacy 1.9.2-3.fc38
이러한 RPM은 모든 것의 근본 원인입니다. 그것들을 제거하고 손바닥 감지만 남겨둔 후 libinput
(위 패키지를 제거한 후에는 더 이상 KDE 설정에 그러한 설정/구성이 없었지만) 매력처럼 작동하기 시작했습니다.
답변4
libinput은 압력 기반 손바닥 감지를 수행하지만 임계값이 필요합니다. 여기 링크를 참조하세요.https://wayland.freedesktop.org/libinput/doc/latest/touchpad-Pressure-debugging.html
도구 너비는 절대 설정되지 않기 때문에(비록 libinput은 이를 고려하지 않지만) 여기에서 할 수 있는 전부입니다. 그러나 일단 quirk 파일(또는 libinput에 있는 경우 hwdb <= 설정)에 있으면 압력과 가능성이 높습니다 1.11) 효과가 있을 것입니다.
압력 임계값이 결정되면 버그를 신고하세요.