Commit | Line | Data |
---|---|---|
f7214ff4 SP |
1 | Apple Touchpad Driver (appletouch) |
2 | ---------------------------------- | |
3 | Copyright (C) 2005 Stelian Pop <stelian@popies.net> | |
4 | ||
5 | appletouch is a Linux kernel driver for the USB touchpad found on post | |
6 | February 2005 Apple Alu Powerbooks. | |
7 | ||
8 | This driver is derived from Johannes Berg's appletrackpad driver[1], but it has | |
9 | been improved in some areas: | |
10 | * appletouch is a full kernel driver, no userspace program is necessary | |
11 | * appletouch can be interfaced with the synaptics X11 driver, in order | |
12 | to have touchpad acceleration, scrolling, etc. | |
13 | ||
14 | Credits go to Johannes Berg for reverse-engineering the touchpad protocol, | |
15 | Frank Arnold for further improvements, and Alex Harper for some additional | |
16 | information about the inner workings of the touchpad sensors. | |
17 | ||
18 | Usage: | |
19 | ------ | |
20 | ||
21 | In order to use the touchpad in the basic mode, compile the driver and load | |
22 | the module. A new input device will be detected and you will be able to read | |
23 | the mouse data from /dev/input/mice (using gpm, or X11). | |
24 | ||
25 | In X11, you can configure the touchpad to use the synaptics X11 driver, which | |
26 | will give additional functionalities, like acceleration, scrolling, 2 finger | |
27 | tap for middle button mouse emulation, 3 finger tap for right button mouse | |
28 | emulation, etc. In order to do this, make sure you're using a recent version of | |
29 | the synaptics driver (tested with 0.14.2, available from [2]), and configure a | |
30 | new input device in your X11 configuration file (take a look below for an | |
31 | example). For additional configuration, see the synaptics driver documentation. | |
32 | ||
33 | Section "InputDevice" | |
34 | Identifier "Synaptics Touchpad" | |
35 | Driver "synaptics" | |
36 | Option "SendCoreEvents" "true" | |
37 | Option "Device" "/dev/input/mice" | |
38 | Option "Protocol" "auto-dev" | |
39 | Option "LeftEdge" "0" | |
40 | Option "RightEdge" "850" | |
41 | Option "TopEdge" "0" | |
42 | Option "BottomEdge" "645" | |
43 | Option "MinSpeed" "0.4" | |
44 | Option "MaxSpeed" "1" | |
45 | Option "AccelFactor" "0.02" | |
46 | Option "FingerLow" "0" | |
47 | Option "FingerHigh" "30" | |
48 | Option "MaxTapMove" "20" | |
49 | Option "MaxTapTime" "100" | |
50 | Option "HorizScrollDelta" "0" | |
51 | Option "VertScrollDelta" "30" | |
52 | Option "SHMConfig" "on" | |
53 | EndSection | |
54 | ||
55 | Section "ServerLayout" | |
56 | ... | |
57 | InputDevice "Mouse" | |
58 | InputDevice "Synaptics Touchpad" | |
59 | ... | |
60 | EndSection | |
61 | ||
62 | Fuzz problems: | |
63 | -------------- | |
64 | ||
65 | The touchpad sensors are very sensitive to heat, and will generate a lot of | |
66 | noise when the temperature changes. This is especially true when you power-on | |
67 | the laptop for the first time. | |
68 | ||
69 | The appletouch driver tries to handle this noise and auto adapt itself, but it | |
70 | is not perfect. If finger movements are not recognized anymore, try reloading | |
71 | the driver. | |
72 | ||
73 | You can activate debugging using the 'debug' module parameter. A value of 0 | |
74 | deactivates any debugging, 1 activates tracing of invalid samples, 2 activates | |
75 | full tracing (each sample is being traced): | |
76 | modprobe appletouch debug=1 | |
77 | or | |
78 | echo "1" > /sys/module/appletouch/parameters/debug | |
79 | ||
80 | Links: | |
81 | ------ | |
82 | ||
83 | [1]: http://johannes.sipsolutions.net/PowerBook/touchpad/ | |
84 | [2]: http://web.telia.com/~u89404340/touchpad/index.html |