Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I am currently trying to fix an Advent 4211 Netbook (a rebranded MSI Wind) - and whenever I use the touchpad the mouse (even an external USB mouse) stops working - when I run xev it does not register any mouse events.

I wanted to prevent the system from loading a driver for the touchpad or disable it all together - is there a way to do this? I just want to be able to 'touch' the touchpad without breaking my external mouse as well.

The running distro is open suse 11.04 lxde.

share|improve this question

2 Answers 2

up vote 5 down vote accepted

The trackpad can be disabled from the commandline, similar to what is described here. First, we need the device name or id for Synaptics Trackpad with "xinput list"

nostromo ~ $ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Microsoft  Microsoft Basic Optical Mouse v2.0     id=9    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ HP Webcam-50                              id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ HP WMI hotkeys                            id=13   [slave  keyboard (3)]
nostromo ~ $ 

On my PC, the touchpad's device name is 'SynPS/2 Synaptics TouchPad' with an id of 12. But yours may be different.

Our next step is to find the properties of the device, with "xinput list-props ". So using the device-name obtained from the previous step,

nostromo ~ $ xinput list-props 'SynPS/2 Synaptics TouchPad'
Device 'SynPS/2 Synaptics TouchPad':
    Device Enabled (135):   1
    Coordinate Transformation Matrix (137): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    Device Accel Profile (253): 1
    Device Accel Constant Deceleration (254):   2.500000
    Device Accel Adaptive Deceleration (255):   1.000000
    Device Accel Velocity Scaling (256):    12.500000
    Synaptics Edges (270):  1753, 5211, 1628, 4336
    Synaptics Finger (271): 24, 29, 255

I didn't list the whole output. But near the top of the list is a property 'Device Enabled' with a value of 1, which here means that it is enabled.

To disable the trackpad, we need to change the value of 'Device Enabled' for the device 'SynPS/2 Synaptics TouchPad' to 0. So at the commandline, we can enter

xinput set-prop 'SynPS/2 Synaptics TouchPad' 'Device Enabled' 0

Indeed, the xinput command can be expressed more briefly. From the above listings, for my PC, the device id for 'SynPS/2 Synaptics TouchPad' is 12 and the property id for 'Device Enabled' is 135. Again, these numbers may vary for your PC. So, with those numbers, the xinput command to disable the touchpad can be entered as...

xinput set-prop 12 135 0

You will need to run these commands on your PC, to make sure you find the right device ids etc. for your laptop. Good luck.

share|improve this answer
    
That worked tremendously well and thanks to xinput i even found out that only the first mouse button was broken and reported to be continously pressed - I could disable it in Xorg.conf via the option 'ClickFinger1' '0' and now the touchpad does not break the usb mouse any more. –  Gjallar Sep 7 '11 at 12:40

I've created a script for toggling which you can link to a short-cut.

file='.touchpad_enabled'

TOUCH_PAD_ENABLED=0

if [ -a $file ] 
then
  TOUCH_PAD_ENABLED=0
  rm $file
else 
  TOUCH_PAD_ENABLED=1
  echo "TOUCH_PAD_ENABLED=1" > $file
fi
echo $TOUCH_PAD_ENABLED
xinput set-prop "ImPS/2 Generic Wheel Mouse" "Device Enabled" $TOUCH_PAD_ENABLED
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.