Wie deaktiviere ich die Touchscreen-Treiber?


41

Ich habe einen Touchscreen, aber die Treiber funktionieren nicht richtig und stören meine Maus.

Kann ich meinen Touchscreen deaktivieren, damit ich wieder richtig arbeiten kann?

Antworten:


52

Sie können versuchen, das Eingabegerät mit dem xinputBefehl zu deaktivieren . Sehen Sie zuerst, über welche Eingabegeräte Sie verfügen. Geben Sie einfach Folgendes ein:

xinput

Und Sie sollten eine Liste sehen wie:

$ xinput 
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Atmel Atmel maXTouch Digitizer            id=9    [slave  pointer  (2)]
⎜   ↳ TPPS/2 IBM TrackPoint                     id=13   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [slave  pointer  (2)]
...

Dann können Sie das gewünschte Eingabegerät mit diesem Befehl deaktivieren:

xinput disable 9

Wobei 9 die ID des Geräts ist, das Sie deaktivieren möchten. Sie können den Gerätenamen auch in Anführungszeichen setzen.

In der xinput-Version 1.5.99.1 müssen Sie dies xinput set-prop 9 'Device Enabled' 0stattdessen tun . Seltsamerweise unter xinput v1.6.2 funktioniert der erste Weg.


1
Dies funktioniert auf meinem Lenovo Yoga (2012) mit Ubuntu 14.04.
Jeremy Upsal

7
Funktioniert auf Dell XPS 13 mit Ubuntu 16.04. Ich habe dies auch hinzugefügt, ~/.profileum nach einem Neustart automatisch xinput | grep 'ELAN Touchscreen' | grep -Po 'id=\d+' | cut -d= -f2 | xargs xinput disable
angewendet zu werden

Atmel scheint auch ziemlich üblich, eine alternative Art und Weise , wie @TalkLittle: xinput enable `xinput | grep Atmel | sed "s/^.*id=\([0-9]*\).*$/\1/"`. Command inside Was bedeutet Backticks, um die ID zurückzugeben.
Pablo A

Danke. Arbeitet an Dell Inspiron 13 7000 Series mit Ubuntu 16.10
Durga

Dies ist eine wichtige Option. Ich bevorzuge einen Weg, um i
midopa

27

Die xinputLösung hat bei mir nicht funktioniert. Ich habe stattdessen die Anweisungen in diesem Thread befolgt . Dadurch wird es beim Booten deaktiviert.

  1. Bearbeiten /usr/share/X11/xorg.conf.d/10-evdev.conf
  2. Fügen Sie Option "Ignore" "on"am Ende des Abschnitts den touchscreenBezeichner hinzu
  3. Starten Sie neu

Bildbeschreibung hier eingeben

  • Für die Aufzeichnung (Google) habe ich ein Samsung Series 7 und mein Touchscreen wurde wie ELAN Touchscreenin aufgeführt xinput.
  • Auch JFTR sagt in dieser Frage, dass der Stromverbrauchsunterschied größtenteils vernachlässigbar ist.

Danke, es funktionierte auf meinem XPS 13 9343 (2015), der Touchscreen war evdev-Touchscreen gelistet.
HG8

2
Ich habe das auf einem Dell XPS gemacht und es hat den Bildschirm komplett deaktiviert. Nach dem Booten ist der Bildschirm nur schwarz. Im Wiederherstellungsmodus gebootet, die Leitung entfernt und alles wieder normal.
Pieroxy

1
Dies verhinderte, dass mein Laptop in X-Windows neu gestartet werden konnte. Es ist keine große Sache, diese Einstellung zu entfernen, aber Neulinge möchten überprüfen, ob sie dies können, bevor sie es versuchen.
Davide

2
Deaktivierte auch das Touchpad auf meinem Sony Vaio. Das Setzen des Treiberwerts auf "libinput" hat den Trick gemacht
Jason Pawlak,

2
Unter Ubuntu 17.10 konnte ich die aufgeführte Datei nicht finden, aber es gab sie /usr/share/X11/xorg.conf.d/40-libinput.conf. Ich habe einen ähnlichen Block in dieser Datei geändert und beim nächsten Neustart werde ich wahrscheinlich herausfinden, wie es gelaufen ist!
Oliv Utilo

4

Datei bearbeiten die Datei mit

sudo nano /usr/share/X11/xorg.conf.d/10-evdev.conf

Ändern Sie MatchIsTouchscreen im Bereich Touchscreen von "Ein" in "Aus", sodass es so aussieht:

Section "InputClass"
    Identifier "evdev touchscreen catchall"
    MatchIsTouchscreen "off"
    MatchDevicePath "/dev/input/event*"
    Driver "evdev"
    EndSection

Speichern, benennen und beenden

Der Touchscreen ist deaktiviert und wird in der XInput-Liste nicht mehr erkannt.


Dies funktionierte auf meinem Lenovo IdeaCenter Flex 20, das einen rissigen Bildschirm hatte.
Merlin04

Dies funktionierte für Dell XPS 15 und Linux Mint 18. Ich denke, dies ist sicherer als die Verwendung Option = ignoreaus der Antwort, da es das Gerät nicht deaktiviert und es nicht als Touchscreen behandelt.
Matt Wilkie

Das funktioniert nicht mehr. Ich habe auf Ubuntu 18.04 aktualisiert und die Datei 10-evdev.conf ist weg. Ich habe versucht, es neu zu erstellen, aber es hat nicht funktioniert.
Merlin04

@ Merlin04 Hast du die libinput-Datei überprüft? Es gibt eine Antwort, die dies erwähnt: askubuntu.com/a/1038259/167115
mchid

0

Wenn es sich bei Ihrem Touchscreen um einen Touchscreen wie einen USB-Monitor handelt, können usbtouchscreenSie der Blacklist-Datei ( /etc/modprobe.d/blacklist.conf) von modprobe einen Standard- Kerneltreiber hinzufügen und Ihren benutzerdefinierten Treiber wie touchkitoder verwenden evtouch.


0

Da sich die ID für xinput beim Neustart ändert, habe ich beim Laden der Sitzung einen einfachen einzeiligen Bildschirm hinzugefügt:

#!/bin/bash
xinput --list | awk '/Atmel Atmel maXTouch Digitizer/ {print $7}' | awk '{split($0,a,"="); print a[2]}' | xargs xinput disable

Der Name meines Geräts ist "Atmel Atmel maXTouch Digitizer", ändern Sie dies mit Ihrem Gerät ( xinput --listfür den Gerätenamen verwenden).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.