Hallo, Leute, es geht hier nicht um ein Synaptics-Touchpad - bei denen funktioniert ja auch alles soweit ganz gut. Probleme machen die ALPS Touchpads! Diese sollen zwar auch mit dem Treiber von Peter Osterlund funktionieren (http://web.telia.com/~u89404340/touchpad/index.html), auf der Homepage steht dazu nur: "Can I use this driver with an ALPS Glidepoint device? Yes, see the README.alps file included in the package for more information." In der README.alps ist Folgendes zu lesen: "On some (all?) ALPS hardware, it is not possible to disable tapping unless you apply the patch below. However, some users have reported that this patch breaks tap-and-drag operations, which is why the patch is not included in the main alps.patch file." Es muss also noch ein Patch angewendet werden. Das setzt aber voraus, dass man den Kernel neu compiliert. Ich meine mich zu erinnern, dass es auch mit dem Patch nicht richtig funktionierte, und auf meinen Bug-Report antwortete er nicht. In der README.alps stehen auch die ganzen Parameter, die man für den Treiber in der /etc/xorg.conf (9.2) bzw. /etc/XF86Config (9.1) setzen kann, aber auch nach längerem Herumprobieren kam nichts sinnvolles heraus, sprich, das Touchpad war so unbenutzbar, da es entweder zufällig Taps erkannte, und/oder aber das Tapping verzögert beim System ankam, sodass ein Arbeiten sehr unangenehm war, und sich alles sehr langsam anfühlte. Ich habe die README.alps als Attachment angefügt. Nachfolgend noch den E-Mail-Verkehr zwischen Peter Osterlund und mir:
On Thu, 16 Sep 2004, Patrick Nagel wrote:
I just wanted to let you know that I got your touchpad driver working with the Toshiba Satellite A50-543 Notebook.
Thanks, I have updated the compatibility list.
But there is one fallback that kind of annoys me: Touching shortly as left-click emulation (called tapping?) is now kind of slow! It takes some noticable time from tapping until the event actually appears on the screen. I played around with MaxTapTime but if I set it below 100, tapping doesn't work at all, if I set it to 110 oder 120 it works but slowly as described. If I set it even higher (let's say 500) there's an even longer pause between tapping and the event.
Is there some workaround for this? I guess it's caused by disabling hardware tapping.
I think the problem is that even when you tell the touchpad to disable hardware tapping, it is not 100% disabled. See
http://marc.theaimsgroup.com/?l=linux-kernel&m=109104309904873&w=2
for details.
In dem angegebenen Link zwei Zeilen weiter oben schreibt Osterlund, dass er es mit einem hässlichen Patch, der die Hardware-Emulation umgeht, geschafft hat, das Tapping richtig hin zu bekommen. Er schreibt aber auch, dass es manchmal Verzögerungen gibt. Bei mir treten diese Verzögerungen immer auf, und sie sind unerträglich, weshalb ich den Treiber nicht mehr verwende, und stattdessen den normalen PS/2-Treiber benutze. Dieser verlässt sich natürlich komplett auf die Hardwareemulation, und das funktioniert dann auch. Leider hat man dann keine Scrollrademulation, das ist ärgerlich. Schade eigentlich... mit dem Windows-Treiber funktionierts ja auch einwandfrei (der Treiber ist dort sogar einer der besten die ich je für Touchpads gesehen habe). Gruß, Patrick. Michael Hoehne wrote:
Am Samstag, 4. Dezember 2004 19:51 schrieb Peter Vogt-Goes:
Hallo Patrick,
vielen Dank für die ausführlichen Erläuterungen. Das mit dem Bug-Report werde ich machen. An den Kernel traue ich mich noch nicht ran.
Werde es mal mit dem Synaptics-Treiber probieren. Wenn das auch nicht läuft ... mal schauen.
Bei der Konfiguration (sowohl unter 9.1 wie auch 9.2) hat mir folgender Artikel sehr gut geholfen: http://portal.suse.com/sdb/de/2004/04/wessels_touchpad91.html
Auf der Homepage zum Treiber (Adresse habe ich gerade nicht zur Hand) gibt es ebenfalls ein paar gute Tipps. So kann man das Tap=Klick ausschalten, indem man die folgenden Einträge macht:
Option "MaxTapMove" "0" Option "MaxTapTime" "0"
Gruß, Michael
It is possible to use this driver with an ALPS Glidepoint device. If you use a 2.6 linux kernel, you need to apply the ALPS kernel patch in the alps.patch file. Since ALPS touchpads don't have the same resolution as Synaptics touchpads, you probably have to change some parameter values. Here is an example InputDevice section for the X configuration file. Section "InputDevice" Driver "synaptics" Identifier "Mouse[1]" Option "Device" "/dev/psaux" Option "Protocol" "auto-dev" Option "LeftEdge" "120" Option "RightEdge" "830" Option "TopEdge" "120" Option "BottomEdge" "650" Option "FingerLow" "14" Option "FingerHigh" "15" Option "MaxTapTime" "180" Option "MaxTapMove" "110" Option "EmulateMidButtonTime" "75" Option "VertScrollDelta" "20" Option "HorizScrollDelta" "20" Option "MinSpeed" "0.2" Option "MaxSpeed" "0.5" Option "AccelFactor" "0.01" Option "EdgeMotionMinSpeed" "15" Option "EdgeMotionMaxSpeed" "15" Option "UpDownScrolling" "1" Option "CircularScrolling" "1" Option "CircScrollDelta" "0.1" Option "CircScrollTrigger" "2" EndSection If you use a 2.4 linux kernel, you don't need to patch the kernel, but you should instead set "Device" and "Protocol" like this: Option "Protocol" "alps" On some (all?) ALPS hardware, it is not possible to disable tapping unless you apply the patch below. However, some users have reported that this patch breaks tap-and-drag operations, which is why the patch is not included in the main alps.patch file. --- linux/drivers/input/mouse/alps.c~alps-test3 2004-02-28 20:46:34.000000000 +0100 +++ linux-petero/drivers/input/mouse/alps.c 2004-02-28 20:49:12.000000000 +0100 @@ -87,6 +87,10 @@ static void ALPS_process_packet(struct p y = (packet[4] & 0x7f) | ((packet[3] & 0x70)<<(7-4)); z = packet[5]; + if (packet[2] & 1) { + z = 35; + } + if (z > 0) { input_report_abs(dev, ABS_X, x); input_report_abs(dev, ABS_Y, y); @@ -97,7 +101,6 @@ static void ALPS_process_packet(struct p if (z > 30) input_report_key(dev, BTN_TOUCH, 1); if (z < 25) input_report_key(dev, BTN_TOUCH, 0); - left |= (packet[2] ) & 1; left |= (packet[3] ) & 1; right |= (packet[3] >> 1) & 1; if (packet[0] == 0xff) {