Touchpad sorunu: yazarken imleci zıplamak (Ubuntu 14.04), syndaemon yardımcı olmuyor


22

Bu konuyla ilgili başka sorular olduğunu biliyorum, ancak düzeltmek için doğru ayarları bulamıyorum.

Dokunmatik yüzey, eşya yazarken hala avuç içimi algılıyor. Bu gerçekten can sıkıcı bir durum, çünkü üretkenliğimi yeni Dell XPS Gold Edition ürünümde bozuyor. Bu yeni bir Ubuntu 14.04 kurulumu ve sonunda touchpad tanımayı bozacak senaryolar ve şeyler denemek istemiyorum.

Bu hata için en iyi geçici çözüm gibi göründüğü için syndaemon kullanmaya çalıştım:

syndaemon -i 0.5 -d

Terminalde denediğimde oturumumdan çıkış yapmadığım sürece çalışıyor gibi görünüyor.

Ancak komutu başlangıç ​​programları yardımcı programına koyarsam ve yeniden başlatırsam, imleç bir iki dakika sonra her zaman donar. Bu yüzden, klavyemi kullanarak komutun işaretini kaldırmalıyım ve bu çok sinir bozucu avuç içi tespit malzemesine geri döndüm. Herhangi bir çözüm?

Sistemim hakkında bazı bilgiler:

greguti@greguti-XPS13-9333:~$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SYNAPTICS Synaptics Large Touch Screen    id=9    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Integrated_Webcam_HD                      id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=13   [slave  keyboard (3)]
greguti@greguti-XPS13-9333:~$ xinput list-props "SynPS/2 Synaptics TouchPad" | grep -i finger
    Synaptics Finger (288): 25, 30, 0
    Synaptics Two-Finger Pressure (294):    282
    Synaptics Two-Finger Width (295):   7
    Synaptics Two-Finger Scrolling (298):   1, 1

Bu web sayfası yardımcı olabilir: xps13-9333.appspot.com/#touchpad
greguti



@kos Bunun bir kopya olduğunu sanmıyorum. Bu soru, atlama imleci sorununu önlemekle ilgilidir ve aşağıdaki cevaplar, soruna 1 olası çözüm olsa da, eşlik eden ayarların nasıl yapılacağı ile ilgili değildir. Ayrıca OP'nin emri başlangıç ​​uygulamalarına koymaya çalıştığını ve bu nedenle önerilen sorudaki cevapların sorunu çözüp çözemeyeceğinden şüpheli olduğunu belirtti.
Seth,

@Seth Bu, Synaptics'in sonraki sürümlerinde düzeltilmiş bir hatadır (bkz. OP'nin cevabı), bu yüzden Synaptics'in ayarlarını değiştirmenin "doğru" yolunu kapatmanın iyi bir fikir olduğunu düşündüm. Ancak OP aslında nasıl synclientkullanılması gerektiğini söylemiyor ... Yani evet, kötüyüm, kopya olarak kapamak kafa karıştırıcı olurdu. Yakın oylamam kaldırılıyor.
kos

Yanıtlar:


16

Bu cevabı My XPS 13 ve Ubuntu 14.04 ile takip edemedim.

Ancak yazarken dokunmatik yüzeyi devre dışı bırakmak için hızlı bir çözüm buldu:

sudo apt-get install gpointing-device-settings

o zaman koş

gpointing-device-settings

Kontrol Et: Palm Algılamayı etkinleştir ve menzili değiştir: Baştan itibaren% 10'a kadar dar


bu işe yaramıyor, korkarım. Bunu yapar almaz bir hata alıyorum: Bir X hatası oluştu. Hata BadAtom (geçersiz Atom parametresi) idi. Bir X hatası oluştu. Hata BadAtom (geçersiz Atom parametresi) idi. ve dokunmatik yüzey eşit derecede kötü çalışıyor. Aslında, bu düzenlemeyi bundan dolayı birkaç kez
ilişkilendirmek zorundayım

1
Bu paketin adı artık
16.04'te

8

Sanırım kendi soruma cevap verip sonunda çözümü buldum.

Suçlu gibi görünüyor Synaptics sürücüsü kendisi. Kullandığınız ön uç veya komut, sürücü yamalanmadığı sürece çalışmaz.

Harika web sitesi http://xps13-9333.appspot.com/#touchpad ve sahibinin e-posta adresleri sayesinde, sonunda bu korkunç hatayı düzeltmeyi başardım!

Yani burada bir somun kabuğundaki süreç, ayrıntılar için yukarıdaki web sayfasına bakın.

Synaptics sürücüsünden kurtulmak için daha sonra, yukarı akış sürücüsünün kaynaklarını indirin, uygun bir avuç algılaması için yama yapın ve ardından touchpad için doğru ayarlarla dosyayı oluşturun. Aşağıdaki adımlar, Ubuntu 14.04 ile Dell XPS "Gold Edition" (xps-9333) cihazımda iyi çalışıyor.

1. BİRİNCİ KONTROL EDECEK ŞEYLER

Sistemimde libevdev-dev paketinin bulunmaması nedeniyle sorun yaşadım (sanırım Ubuntu 14.04 ile yüklü değil mi?). İlk önce, bu paketi yüklemeyi deneyin:

sudo apt-get install libevdev-dev

Sisteminizde henüz mevcut değilse, 3 paket yüklemelidir: libevdev-dev , libevdev2 {a} ve libjs-jquery {a}

Yapılacak bir şey de, GIT paketlerinden, GTH sunucularından yukarı akış Synaptics sürücüsünün kaynak kodunun indirilmesine izin vermek için kurmaktır.

sudo apt-get install git

Bu paketler sisteminize girdikten sonra bu komutları takip edebilirsiniz.

2. GERÇEK SENTAPİK SÜRÜCÜ SÜRÜCÜSÜNÜN KURULDU

Terminal'e aşağıdaki komutları girin (enter tuşuna basın ve her komuttan sonra çıkışları kontrol edin):

sudo aptitude purge xserver-xorg-input-synaptics

sudo aptitude build-dep xserver-xorg-input-synaptics

Bir sonraki komut GIT kullanır. İlk kez kullanıyorsanız, işlemi tamamlamak için sizden bir posta adresi ve bir takma ad isteyecektir (yani, sürücünün kaynak kodunu indirin). Terminalde bunu yapabilirsiniz, oldukça basit bir işlem. Komutun çıktısı ne yazmanız gerektiğini belirtir, talimatları izlemeniz yeterlidir. GIT'yi kendimden önce hiç kullanmadım ve bu adımı çok kolay halledebildim.

sudo git clone git://anongit.freedesktop.org/xorg/driver/xf86-input-synaptics

Şimdi kaynak kodun indirildiği klasörün içine girin:

cd xf86-input-synaptics

Şimdi yeni sürücünün düzeltme ekini indirdiğinizde, bu düzeltme eki, avuç içi algılamasını ve dokunmatik yüzeydeki parmağın genişliğini etkinleştirerek sürücüyü düzeltir.

wget -q -O - http://xps13-9333.appspot.com/root/0001-Don-t-use-finger-width-for-the-palm-detection.patch | git am

Şimdi yeni sürücüyü yamalı kaynak kodundan oluşturun (her satırdan sonra Enter yazın, her komut oldukça fazla çıktı üretecektir):

./autogen.sh --prefix=/usr
make
sudo make install

Yeni Synaptics sürücünüz, avuç içi algılamaya izin veren bir yamayla, şimdi sisteminizde yüklü ancak yine de buna izin veren ayarları belirtmeniz gerekiyor.

3. 20-SENAPTİK-KONF DOSYASI OLUŞTURMA VE DÜZENLEME

Ve şimdi son bölüm için, dokunmatik yüzeye yönelik ayarları olan bir dosya oluşturun, sisteminizi her açtığınızda bu dosya okunacaktır.

İlk önce doğru klasörü yaratın:

mkdir -p /etc/X11/xorg.conf.d/

Ardından, daha önce bahsedilen web sayfasının sahibi tarafından sağlanan dosyayı indirir ve yeni oluşturduğunuz yeni klasöre kopyalarsınız:

sudo wget -q -O /etc/X11/xorg.conf.d/20-synaptics.conf http://xps13-9333.appspot.com/root/etc/X11/xorg.conf.d/20-synaptics.conf

Son olarak, PalmMinZ parametresinin optimal değerini belirlemek için synclient'i kullanabilirsiniz ("VALUE" yerine bir sayı yazın, benim için harika olan 100'ü öneririm).

synclient PalmMinZ=VALUE

Bu işlemin sonunda, /etc/X11/xorg.conf.d içinde 20-synaptics.conf adlı yeni dosyaya sahip olmalısınız ve dosya şöyle görünmelidir:

20-synaptics.conf dosyam

4. yeniden başlatmak için UNUTMAYIN :)


Bu tavsiyeyi
uyguladıktan

... ve yazılım merkezinden synaptics touchpad sürücüsünü kurarak geri aldı
vicatcu

Bu, Ubuntu 14.04 çalıştıran Toshiba Chromebook 2 cihazımdaki ürkütücü touchpad'i bir crouton chroot üzerinden çözdü. Git yaması artık çalışmıyor gibi gözüküyor, fakat kaynağından gelen en yeni synaptics sürücüsünü kurmak sorunumu çözdü.
Josh

6

Buradaki cevapların hiçbiri, bir XPS12'ye Ubuntu 14.04.3'ün yeni kurulumu için çalışmıyordu, en azından psmouse modülünü kara listeye alana kadar. Aşağıdaki talimatlar, esas olarak bir XPS13 makinesi için verilen bu talimat setinden alıntılanmıştır :

Dokunmatik yüzeyinizin sadece I2C veri yolu kullanıp kullanmadığını kontrol edin, ps2 modunu değil. Bir terminal başlat ve gir

 xinput 

Sanal çekirdek işaretçisinin yalnızca iki öğeye sahip olması gerekir:

 Virtual core XTEST pointer
 DLL0665:01 06CB:76AD UNKNOWN 

Adında PS2 dokunmatik yüzeyli üçüncü bir öğe listeleniyorsa, bu satırları ekleyerek psmouse modülünü kara listeye almalısınız /etc/modprobe.d/blacklist.conf:

# remove SynPS/2 Synaptics Touchpad because we want the mouse to work over IC2b
blacklist psmouse

Sonra ara

sudo update-initramfs -u

Yeniden başlatmadan sonra, seçenek Disable touchpad while typingde System Settings/ ' Mouse & Touchpadbeklendiği gibi işini yaptı.


4
Adımlarınızı uyguladıktan sonra uygun olan "Yazarken dokunmatik yüzeyi devre dışı bırak" seçeneği hala görünmüyordu, ama en azından syndaemondiğer cevaplarda da çalıştığı gibi çalışabiliyorum . Yani, cevabınız gerçekten çok yardımcı oldu ve benim için gerekli bir adımdı. Çok teşekkürler! Bu bir Dell Inspiron 5559 ve Ubuntu 16.10'da.
egmont

3
Bu talimatları izledim ve Ubuntu 16.10'da çalışıyor. @ Egmont'un dediği gibi, dokunmatik yüzeyi devre dışı bırakma seçeneğim yok, ancak daha sonra yazarken dokunmatik yüzeyimle ilgili artık bir sorunum yok.
ekangas

1
Çekirdek 4.10 sürümünü çalıştıran Ubuntu 16.04.2 için çalıştığını onaylayabilirim. GUI görünmüyor, ancak şimdi syndaemon istenildiği gibi çalışıyor. Çok teşekkürler!
andrebrait

2

syndaemonBaşlangıç ​​Uygulamalarınıza eklerseniz , Fare ve Dokunmatik Yüzey ayarlarında "Yazarken devre dışı bırak" seçeneğinin işaretini de kaldırmanız gerekir. Bunu yapmazsanız, iki mekanizma müdahale eder ve dokunmatik yüzeyin tanımladığınız şekilde çalışmayı tamamen durdurmasına neden olur. Bu benim için 14.04 (Lenovo T410 dizüstü bilgisayar) sürücüsünde yükseltme yapmadan çalışıyor.


0

Greguti bahsettiği yükseltme şimdi 3.1.6+ için Linux için genel çekirdek yükseltme dahil edilmiştir: bakınız http://xps13-9333.appspot.com/#touchpad .

Ubuntu için çekirdeği yükseltme genel talimatları burada http://ubuntuhandbook.org/index.php/2014/08/install-upgrade-linux-kernel-3-16/ adresinde bulunabilir . Genel bir 64-bit sistem için, onları aşağıda kopyaladım:

cd /tmp/
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-headers-3.16.0-031600-generic_3.16.0-031600.201408031935_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-headers-3.16.0-031600_3.16.0-031600.201408031935_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-image-3.16.0-031600-generic_3.16.0-031600.201408031935_amd64.deb
sudo dpkg -i linux-headers-3.16.0-*.deb linux-image-3.16.0-*.deb

Ve sonra yeniden başlat.

Bilgisayarım yeniden başlatıldıktan sonra greguit'in tavsiyesine uydum ve PalmMinZ parametresini değiştirdim. Ben de 100 kullandım.

synclient PalmMinZ=VALUE

Ayrıca, GUI'yi kullanarak yazarken devre dışı bırakmak için izleme dörtgeni ayarını yeniden etkinleştirdim.

Bunu yaptıktan sonra bilgisayarı kullanarak yalnızca 10-15 dakika geçirdim, ancak şu ana kadarki deneyim çok daha iyi.


Ben orada, 3.16 çekirdeğine yükseltme yapmaya çalıştım, imleç düştü! "Eski" 3.13 çekirdeğine geri dönmek zorunda kaldım ... Bugün 14.04 LTS'den 14.10 Ütopik Unicorn'a yükseltme yaptım, aynı hatayla sonuçlandı: imleç artık burada değil, her şeyi yapmak zorundayım klavye, * ss'de gerçek bir acı. Henüz bir çözüm bulunamadı ... ÇOK, ÇOK can sıkıcı.
greguti

Bilgisayarınızın neden benimkimden daha farklı davrandığını bilmiyorum, ama ilk (sadece!) Düşündüm, kutudan çıkardıktan sonra ilk yaptığım şey Ubuntu OS'yi 14.04'e yükseltmek ve bu çekirdek yükseltmeyi uygulamak olduğu. Yani belki de makinenizde taze olduğu ve çatışma çıkmasına neden olan bir şey var ...?
Andy Wickert

Greguti ile benzer bir deneyim yaşadım, ancak linux-çekirdek-ekstraları yüklemeyi unutmamdan kaynaklandı.
Jeff Ober

Her iki çözümden hiçbiri de çalışmıyor. Önerilen sürücüyü derledim, yükledim, başarı yok. Ben kesinlikle touchpad'i devre dışı bırakmayı seçtim, gerçekten can sıkıcı ve bin dolarlık bir dizüstü bilgisayarın bu gözle görülür şekilde bariz bir hatadır olması üzücü.
user260881 13:15
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.