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