Solved Mouse Pointer Won't Move for Acer Laptop Touchpad

I have an Acer Aspire 4730z Laptop running FreeBSD 9.1-RELEASE. It works well as a desktop, with XFCE4 and X11 configured automatically without any/etc/X11/xorg.conf (in which case the touchpad is recognized as a PS/2 mouse).

However, I wanted to run the touchpad with the synaptics driver, mostly because this will allow me to disable tap clicking, which lets me type without accidently relocating the pointer with my thumbs. I know that the touchpad works with the synaptics driver under Xubuntu.

Searching the forums and google, I've found some limited suggestions on how to set it up, but it's still not working correctly. What I have now, results in the touchpad being recognized by XFCE4's Mouse Settings as Touchpad0. Both synclient and gsynaptics can be used to change associated variables, but I don't know which ones to change, or to what values, that it might solve my problem. I can navigate the desktop with the keyboard keys, but the pointer is stuck in the middle of the screen and won't move. It is responding to button pushes by bringing up menus on the desktop.

I installed /usr/ports/x11-drivers/xf86-input-synaptics.
/boot/loader.conf has the line:
Code:
hw.psm.synaptics_support="1"

/etc/rc.conf has the following:
Code:
moused_enable="NO"
hald_enable="YES"
dbus_enable="YES"

I've tried several variations of rc.conf. Enabling and disabling moused, dbus, and hald. The settings I've posted here come closest to getting the touchpad recognized, while still having a working keyboard, provided I have the following xorg.conf.

/etc/X11/xorg.conf
Code:
Section "ServerLayout"
	Identifier     "X.org Configured"
	Screen      0  "Screen0" 0 0
	InputDevice    "Keyboard0" "CoreKeyboard"
	InputDevice    "Touchpad0" "CorePointer"
EndSection

Section "ServerFlags"
	Option	     "AllowEmptyInput" "no"
EndSection

Section "Files"
	ModulePath   "/usr/local/lib/xorg/modules"
	FontPath     "/usr/local/lib/X11/fonts/misc/"
	FontPath     "/usr/local/lib/X11/fonts/TTF/"
	FontPath     "/usr/local/lib/X11/fonts/OTF"
	FontPath     "/usr/local/lib/X11/fonts/Type1/"
	FontPath     "/usr/local/lib/X11/fonts/100dpi/"
	FontPath     "/usr/local/lib/X11/fonts/75dpi/"
EndSection

Section "Module"
	Load  "extmod"
	Load  "record"
	Load  "dbe"
	Load  "dri"
	Load  "dri2"
	Load  "glx"
	Load  "synaptics"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
EndSection

Section "InputDevice"
	Identifier  "Touchpad0"
	Driver      "synaptics"
	Option 	    "UseShm" "true"
	Option	    "SHMConfig" "On"
	Option	    "Protocol" "alps" #"auto" does not work
	Option	    "Device"   "/dev/psm0" # "/dev/sysmouse"
	Option      "SendCoreEvents" "true"
 	Option	    "ZAxisMapping" "4 5 6 7" #Varying this might help?
	Option      "FingerLow" "26"
        Option      "FingerHigh" "51"
        Option      "FingerPress" "254"
        Option      "HorizEdgeScroll" "1"
        Option      "MinSpeed" "0.10"
        Option      "MaxSpeed" "0.20"
        Option      "RTCornerButton" "2"
        Option      "RBCornerButton" "3"
        Option      "TapButton2" "2"
        Option      "TapButton3" "3"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
        ### [arg]: arg optional
        #Option     "NoAccel"            	# [<bool>]
        #Option     "SWcursor"           	# [<bool>]
        #Option     "ColorKey"           	# <i>
        #Option     "CacheLines"         	# <i>
        #Option     "Dac6Bit"            	# [<bool>]
        #Option     "DRI"                	# [<bool>]
        #Option     "NoDDC"              	# [<bool>]
        #Option     "ShowCache"          	# [<bool>]
        #Option     "XvMCSurfaces"       	# <i>
        #Option     "PageFlip"           	# [<bool>]
	Identifier  "Card0"
	Driver      "intel"
	VendorName  "Intel Corporation"
	BoardName   "Mobile 4 Series Chipset Integrated Graphics Controller"
	BusID       "PCI:0:2:0"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	SubSection "Display"
		Viewport   0 0
		Depth     1
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     4
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     8
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     15
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     16
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection

The above setup results in the following in /var/log/Xorg.0.log (Please let me know if I've left out pertinent portions.)
Code:
X.Org X Server 1.7.7
Release Date: 2010-05-04
X Protocol Version 11, Revision 0
Build Operating System: FreeBSD 9.1-RELEASE amd64 
Current Operating System: FreeBSD Acer.no-ip.org 9.1-RELEASE FreeBSD 
9.1-RELEASE #3 r245703: Mon Jan 21 05:31:59 PST 2013 
 root@Acer.no-ip.org:/usr/obj/usr/src/sys/ACER amd64
Build Date: 22 January 2013  01:32:58AM


(==) Log file: "/var/log/Xorg.0.log", Time: Sun Jan 27 08:50:02 2013
(==) Using config file: "/etc/X11/xorg.conf"
...
(II) LoadModule: "synaptics"
(II) Loading /usr/local/lib/xorg/modules/input/synaptics_drv.so
(II) Module synaptics: vendor="X.Org Foundation"
	compiled for 1.7.7, module version = 1.5.0
	Module class: X.Org XInput Driver
	ABI class: X.Org XInput driver, version 7.0
...
(II) LoadModule: "synaptics"
(II) Reloading /usr/local/lib/xorg/modules/input/synaptics_drv.so
...
(**) Option "Protocol" "alps"
(**) Option "Device" "/dev/psm0"
(--) invalid x-axis range.  defaulting to 1615 - 5685
(--) invalid y-axis range.  defaulting to 1729 - 4171
(--) invalid pressure range.  defaulting to 0 - 255
(--) invalid finger width range.  defaulting to 0 - 15
(**) Option "SHMConfig" "On"
(**) Option "FingerLow" "26"
(**) Option "FingerHigh" "51"
(**) Option "FingerPress" "254"
(**) Option "HorizEdgeScroll" "1"
(**) Option "RTCornerButton" "2"
(**) Option "RBCornerButton" "3"
(**) Option "TapButton2" "2"
(**) Option "TapButton3" "3"
(**) Option "MinSpeed" "0.10"
(**) Option "MaxSpeed" "0.20"
(**) Option "SendCoreEvents" "true"
(**) Option "CorePointer"
(**) Touchpad0: always reports core events
(II) XINPUT: Adding extended input device "Touchpad0" (type: TOUCHPAD)
(**) (accel) MinSpeed is now constant deceleration 10.0
(**) MaxSpeed is now 2.00
(**) AccelFactor is now 0.042
(**) Touchpad0: (accel) keeping acceleration scheme 1
(**) Touchpad0: (accel) acceleration profile 1
(II) config/hal: Adding input device PS/2 Mouse
(II) LoadModule: "mouse"
(II) Loading /usr/local/lib/xorg/modules/input/mouse_drv.so
(II) Module mouse: vendor="X.Org Foundation"
	compiled for 1.7.7, module version = 1.7.1
	Module class: X.Org XInput Driver
	ABI class: X.Org XInput driver, version 7.0
(**) Option "Device" "/dev/psm0"
(==) PS/2 Mouse: Protocol: "Auto"
(**) PS/2 Mouse: always reports core events
(**) Option "Device" "/dev/psm0"
(EE) xf86OpenSerial: Cannot open device /dev/psm0
	Device busy.
(EE) PS/2 Mouse: cannot open input device
(II) UnloadModule: "mouse"
(EE) PreInit returned NULL for "PS/2 Mouse"
(EE) config/hal: NewInputDeviceRequest failed (8)
(II) config/hal: Adding input device AT Keyboard
(**) AT Keyboard: always reports core events
(**) Option "Protocol" "standard"
(**) Option "XkbRules" "base"
(**) Option "XkbModel" "pc105"
(**) Option "XkbLayout" "us"
(II) XINPUT: Adding extended input device "AT Keyboard" (type: KEYBOARD)
...
(II) UnloadModule: "kbd"
(II) UnloadModule: "synaptics"
(II) UnloadModule: "kbd"

I've noticed that if I comment out the ZAxisMapping option in the Touchpad0 InputDevice section of xorg.conf, the four (--) invalid lines don't appear in the log, but the pointer still doesn't move. Perhaps if I change that option it will work, but to what?

I'm open to suggestions, and hope something in this post will provide a clue to others trying to solve the same problem.
 
Sorry to resurrect a stale thread but I noticed it went unanswered and there was no follow-up if you ever got it resolved? I came across your post while researching my current problem, which is exactly the opposite of yours; my trackpad moves perfectly well but the left and right buttons don't work at all. The only "button" that does work is a single-finger tap to left-click; the two-finger tap for a right-click does not.

I suspect the reason your trackpad isn't moving is due to the Protocol option; try setting it to "psm" and see if that fixes it.

Also, some of the Options in your xorg.conf are invalid (e.g. ZAxisMapping.) See synaptics(4) for details.

FWIW, I also get the "invalid .... range" warnings and my trackpad moves just fine.

I would suggest modifying your pointer section to use the bare minimums (identifier, driver, protocol option, and device option) and then slowly add options from there. You may also want to try enabling the "SHMConfig" option, because then you can run symclient -m 50 from xterm to monitor the data from touchpad.

Here's a copy of the section from my xorg.conf, which works just fine (other than the button issues; I'm still trying various other options to get that sorted out):

Code:
Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "synaptics"
        Option      "Protocol" "psm"
        Option      "Device" "/dev/psm0"
        Option      "SHMConfig" "true"
EndSection
 
Thanks @leth. I had given up on the Synaptics issue. Glad to get a response. I'll take another look at it over the weekend.
 
Last edited by a moderator:
Followup: Still not working.

I didn't have much time to work on this. I tried disabling hald in /etc/rc.conf, and using the xorg.conf below. With that, I can't even get the keyboard to respond. And the pointer is still stuck in the middle of the screen. I wasn't sure if having both SHMConfig and UseShm set true in xorg.conf was redundant.

/etc/rc.conf
Code:
hostname="acer.no-ip.org"
keymap="us.dvorak.kbd"
devfs_system_ruleset="Removeable_Media"
wlans_ath0="wlan0"
ifconfig_wlan0="DHCP WPA"
dumpdev="NO"
moused_enable="NO"
ntpd_enable="YES"
linux_enable="YES"
powerd_enable="YES"
powerd_flags="-a hiadaptive -b adaptive -M 1666"
webcamd_enable="YES"
hald_enable="NO"
dbus_enable="YES"
slim_enable="YES"
fusefs_enable="YES"

/usr/local/etc/X11/xorg.conf
Code:
Section "ServerLayout"
	Identifier     "X.org Configured"
	Screen      0  "Screen0" 0 0
#	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Touchpad0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
	ModulePath   "/usr/local/lib/xorg/modules"
	FontPath     "/usr/local/lib/X11/fonts/misc/"
	FontPath     "/usr/local/lib/X11/fonts/TTF/"
	FontPath     "/usr/local/lib/X11/fonts/OTF/"
	FontPath     "/usr/local/lib/X11/fonts/Type1/"
	FontPath     "/usr/local/lib/X11/fonts/100dpi/"
	FontPath     "/usr/local/lib/X11/fonts/75dpi/"
	FontPath     "/usr/local/lib/X11/fonts/URW/"
	FontPath     "/usr/local/lib/X11/fonts/freefont/"
	FontPath     "/usr/local/lib/X11/fonts/TrueType/"	
	FontPath     "/usr/local/lib/X11/fonts/Liberation/"
	FontPath     "/usr/local/lib/X11/fonts/LinLibertineG/"
	FontPath     "/usr/local/lib/X11/fonts/bitstream-vera/"
	FontPath     "/usr/local/lib/X11/fonts/cyrillic/"
	FontPath     "/usr/local/lib/X11/fonts/dejavu/"
	FontPath     "/usr/local/lib/X11/fonts/encodings/"
        FontPath     "/usr/local/lib/X11/fonts/local/"
	FontPath     "/usr/local/lib/X11/fonts/misc/"
	FontPath     "/usr/local/lib/X11/fonts/util/"
        FontPath     "/usr/local/lib/X11/fonts/webfonts/"
	FontPath     "/usr/local/lib/X11/fonts/GentiumBasic/"
EndSection

Section "Module"
	Load  "extmod"
	Load  "record"
	Load  "dbe"
	Load  "dri"
	Load  "dri2"
	Load  "glx"
	Load  "freetype"
	Load  "synaptics"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
EndSection

Section "InputDevice"
#	Identifier  "Mouse0"
	Identifier  "Touchpad0"
#	Driver      "mouse"
	Driver	    "synaptics"
#	Option	    "Protocol" "auto"
	Option	    "Protocol" "psm"
#	Option	    "Device" "/dev/sysmouse"
	Option	    "Device" "/dev/psm0"
#	Option	    "ZAxisMapping" "4 5 6 7"
        Option 	    "UseShm" "true"
	Option	    "SHMConfig" "true"
	Option 	    "SendCoreEvents" "true"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
        ### [arg]: arg optional
        #Option     "NoAccel"            	# [<bool>]
        #Option     "SWcursor"           	# [<bool>]
        #Option     "ColorKey"           	# <i>
        #Option     "CacheLines"         	# <i>
        #Option     "Dac6Bit"            	# [<bool>]
        #Option     "DRI"                	# [<bool>]
        #Option     "NoDDC"              	# [<bool>]
        #Option     "ShowCache"          	# [<bool>]
        #Option     "XvMCSurfaces"       	# <i>
        #Option     "PageFlip"           	# [<bool>]
	Identifier  "Card0"
	Driver      "intel"
	VendorName  "Intel Corporation"
	BoardName   "Mobile 4 Series Chipset Integrated Graphics Controller"
	BusID       "PCI:0:2:0"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	SubSection "Display"
		Viewport   0 0
		Depth     1
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     4
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     8
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     15
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     16
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection

Resulting in the following in /var/log/Xorg.0.log
Code:
...
(==) Log file: "/var/log/Xorg.0.log", Time: Fri May 10 09:39:55 2013
(==) Using config file: "/usr/local/etc/X11/xorg.conf"
(==) ServerLayout "X.org Configured"
(**) |-->Screen "Screen0" (0)
(**) |   |-->Monitor "Monitor0"
(**) |   |-->Device "Card0"
(**) |-->Input Device "Touchpad0"
(**) |-->Input Device "Keyboard0"
(==) Automatically adding devices
(==) Automatically enabling devices
...

(**) ModulePath set to "/usr/local/lib/xorg/modules"
(WW) AllowEmptyInput is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
(WW) Disabling Keyboard0
...

(**) Option "Protocol" "psm"
(**) Option "Device" "/dev/psm0"
(--) invalid x-axis range.  defaulting to 1615 - 5685
(--) invalid y-axis range.  defaulting to 1729 - 4171
(--) invalid pressure range.  defaulting to 0 - 255
(--) invalid finger width range.  defaulting to 0 - 15
(**) Option "SHMConfig" "true"
(EE) Touchpad0 Found no Synaptics, found Mouse model 1 instead
(--) no supported touchpad found
(EE) Unable to query/initialize Synaptics hardware.
(EE) PreInit returned NULL for "Touchpad0"
(EE) config/hal: couldn't initialise context: unknown error (null)
(II) intel(0): xf86UnbindGARTMemory: unbind key 3
(II) intel(0): xf86UnbindGARTMemory: unbind key 4
(WW) intel(0): drmDropMaster failed: Unknown error: -1
(WW) intel(0): drmDropMaster failed: Unknown error: -1

...

Not the whole log there, just what I thought was pertinent. Maybe I have to disable AllowEmptyInput in xorg.conf. I'll have to come back to it later. For now hald seems to get it recognized as a PS/2 which works OK, as long as I keep my thumbs up. Thank you anyway, @leth.

P.S. Thanks also to @DutchDaemon for making my posts more readable.
 
Last edited by a moderator:
Re: [SOLVED] Mouse Pointer Won't Move for Acer Laptop Touchp

This thread is over a year old, but today I found out how to solve the problem so I returned to mark it "SOLVED". This is an Alps Glidepoint touchpad for which I had always used the synaptics driver under Linux. I didn't care about any other synaptics touchpad features, I just wanted to disable "tap to click". I recently tried setting up synaptics again but still had the same problem. Then I stumbled onto a forum discussion where it was advised that with the mouse recognized as a PS/2 all I had to do was add
Code:
moused_flags="-m 11=4"
to rc.conf. Voila, no more "tap to click" and I still have a working mouse in both the console and X11! I'm batting 1000 lately, because only about a week ago I found out how to enable suspend/resume on this laptop. It's now a perfect FreeBSD laptop.
 
I registered just to comment on here, and also help out anyone else doing a search for this.

This was the magic incantation/options I needed when I replaced my T440s trackpad with the crappy software emulated trackpoint keys with the one from the T450. Except the one I got ended up being an ALPS GlidePoint, which took me a while to figure out. And then forever to finally find the one post which had the moused options which makes the hardware left/right trackpoint buttons work correctly.

THANK YOU!

Re: [SOLVED] Mouse Pointer Won't Move for Acer Laptop Touchp

This thread is over a year old, but today I found out how to solve the problem so I returned to mark it "SOLVED". This is an Alps Glidepoint touchpad for which I had always used the synaptics driver under Linux. I didn't care about any other synaptics touchpad features, I just wanted to disable "tap to click". I recently tried setting up synaptics again but still had the same problem. Then I stumbled onto a forum discussion where it was advised that with the mouse recognized as a PS/2 all I had to do was add
Code:
moused_flags="-m 11=4"
to rc.conf. Voila, no more "tap to click" and I still have a working mouse in both the console and X11! I'm batting 1000 lately, because only about a week ago I found out how to enable suspend/resume on this laptop. It's now a perfect FreeBSD laptop.
 
Back
Top