18c2ecf20Sopenharmony_ci.. include:: <isonum.txt>
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ci----------------------------------
48c2ecf20Sopenharmony_ciApple Touchpad Driver (appletouch)
58c2ecf20Sopenharmony_ci----------------------------------
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_ci:Copyright: |copy| 2005 Stelian Pop <stelian@popies.net>
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciappletouch is a Linux kernel driver for the USB touchpad found on post
108c2ecf20Sopenharmony_ciFebruary 2005 and October 2005 Apple Aluminium Powerbooks.
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciThis driver is derived from Johannes Berg's appletrackpad driver [#f1]_,
138c2ecf20Sopenharmony_cibut it has been improved in some areas:
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci	* appletouch is a full kernel driver, no userspace program is necessary
168c2ecf20Sopenharmony_ci	* appletouch can be interfaced with the synaptics X11 driver, in order
178c2ecf20Sopenharmony_ci	  to have touchpad acceleration, scrolling, etc.
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ciCredits go to Johannes Berg for reverse-engineering the touchpad protocol,
208c2ecf20Sopenharmony_ciFrank Arnold for further improvements, and Alex Harper for some additional
218c2ecf20Sopenharmony_ciinformation about the inner workings of the touchpad sensors. Michael
228c2ecf20Sopenharmony_ciHanselmann added support for the October 2005 models.
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ciUsage
258c2ecf20Sopenharmony_ci-----
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ciIn order to use the touchpad in the basic mode, compile the driver and load
288c2ecf20Sopenharmony_cithe module. A new input device will be detected and you will be able to read
298c2ecf20Sopenharmony_cithe mouse data from /dev/input/mice (using gpm, or X11).
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ciIn X11, you can configure the touchpad to use the synaptics X11 driver, which
328c2ecf20Sopenharmony_ciwill give additional functionalities, like acceleration, scrolling, 2 finger
338c2ecf20Sopenharmony_citap for middle button mouse emulation, 3 finger tap for right button mouse
348c2ecf20Sopenharmony_ciemulation, etc. In order to do this, make sure you're using a recent version of
358c2ecf20Sopenharmony_cithe synaptics driver (tested with 0.14.2, available from [#f2]_), and configure
368c2ecf20Sopenharmony_cia new input device in your X11 configuration file (take a look below for an
378c2ecf20Sopenharmony_ciexample). For additional configuration, see the synaptics driver documentation::
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci	Section "InputDevice"
408c2ecf20Sopenharmony_ci		Identifier      "Synaptics Touchpad"
418c2ecf20Sopenharmony_ci		Driver          "synaptics"
428c2ecf20Sopenharmony_ci		Option          "SendCoreEvents"        "true"
438c2ecf20Sopenharmony_ci		Option          "Device"                "/dev/input/mice"
448c2ecf20Sopenharmony_ci		Option          "Protocol"              "auto-dev"
458c2ecf20Sopenharmony_ci		Option		"LeftEdge"		"0"
468c2ecf20Sopenharmony_ci		Option		"RightEdge"		"850"
478c2ecf20Sopenharmony_ci		Option		"TopEdge"		"0"
488c2ecf20Sopenharmony_ci		Option		"BottomEdge"		"645"
498c2ecf20Sopenharmony_ci		Option		"MinSpeed"		"0.4"
508c2ecf20Sopenharmony_ci		Option		"MaxSpeed"		"1"
518c2ecf20Sopenharmony_ci		Option		"AccelFactor"		"0.02"
528c2ecf20Sopenharmony_ci		Option		"FingerLow"		"0"
538c2ecf20Sopenharmony_ci		Option		"FingerHigh"		"30"
548c2ecf20Sopenharmony_ci		Option		"MaxTapMove"		"20"
558c2ecf20Sopenharmony_ci		Option		"MaxTapTime"		"100"
568c2ecf20Sopenharmony_ci		Option		"HorizScrollDelta"	"0"
578c2ecf20Sopenharmony_ci		Option		"VertScrollDelta"	"30"
588c2ecf20Sopenharmony_ci		Option		"SHMConfig"		"on"
598c2ecf20Sopenharmony_ci	EndSection
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ci	Section "ServerLayout"
628c2ecf20Sopenharmony_ci		...
638c2ecf20Sopenharmony_ci		InputDevice	"Mouse"
648c2ecf20Sopenharmony_ci		InputDevice	"Synaptics Touchpad"
658c2ecf20Sopenharmony_ci	...
668c2ecf20Sopenharmony_ci	EndSection
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ciFuzz problems
698c2ecf20Sopenharmony_ci-------------
708c2ecf20Sopenharmony_ci
718c2ecf20Sopenharmony_ciThe touchpad sensors are very sensitive to heat, and will generate a lot of
728c2ecf20Sopenharmony_cinoise when the temperature changes. This is especially true when you power-on
738c2ecf20Sopenharmony_cithe laptop for the first time.
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ciThe appletouch driver tries to handle this noise and auto adapt itself, but it
768c2ecf20Sopenharmony_ciis not perfect. If finger movements are not recognized anymore, try reloading
778c2ecf20Sopenharmony_cithe driver.
788c2ecf20Sopenharmony_ci
798c2ecf20Sopenharmony_ciYou can activate debugging using the 'debug' module parameter. A value of 0
808c2ecf20Sopenharmony_cideactivates any debugging, 1 activates tracing of invalid samples, 2 activates
818c2ecf20Sopenharmony_cifull tracing (each sample is being traced)::
828c2ecf20Sopenharmony_ci
838c2ecf20Sopenharmony_ci	modprobe appletouch debug=1
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_cior::
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ci	echo "1" > /sys/module/appletouch/parameters/debug
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ci.. Links:
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ci.. [#f1] http://johannes.sipsolutions.net/PowerBook/touchpad/
938c2ecf20Sopenharmony_ci
948c2ecf20Sopenharmony_ci.. [#f2] `<http://web.archive.org/web/*/http://web.telia.com/~u89404340/touchpad/index.html>`_
95