Permanently Disable Touchpad - Lubuntu 16.04
I believe so. You'll have to use a few commands and make a startup script, but you know the former and the latter isn't hard to do.
First, run xinput list
. Your output should be similar to the following:
zachary@MCServer:~$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [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)]
↳ Power Button id=7 [slave keyboard (3)]
If you can, unplug your mouse beforehand.
Now you need to find the ID of the trackpad. Use the main ID (not the one that's indented under a main item) for now. If it turns out that the main item covers both the mouse and touchpad, choose the corresponding sub-ID.
Now you need to run
xinput set-prop DEVICEID "Device Enabled" 0
For example, if I wanted to disable my mouse, I'd use 2
for DEVICEID
.
Plug in your mouse and make sure it works and the touchpad doesn't. If the mouse doesn't work, then run
xinput set-prop DEVICEID "Device Enabled" 1
and run the first command again with the sub-ID instead.
To make this apply on startup, you need to make it a startup command. Open Startup Applications
(or the equivalent on your desktop environment) and add the first command.
Alternatively, you could just disconnect the trackpad internally.
Yes it is very easy. Blacklist the touchpad module.
To find out what module it is, you can run
grep -iA 2 touchpad /proc/bus/input/devices
Here you will see something like elan or synaptic
And then
ls $(find /lib/modules/$(uname -r) -type d -name mouse)
To see all the mouse & touchpad modules for the current kernel. The touchpad will have i2c
or touch
in the name, mouse modules will have mouse
or usb
. Cross reference these two results
Edit: I recently figured out how to reliably get the name of the driver in use with a convoluted command, which terdon simplified nicely for me:
grep -hriPo 'DRIVER=\K.+' /sys 2>/dev/null | while read driver; do [ -e /lib/modules/$(uname -r)/kernel/drivers/input/mouse/"$driver"* ] && echo $driver; done
I'm guessing your touchpad module is synaptics_i2c.ko
. You will omit the .ko
when writing the blacklist
check you got the right module
sudo modprobe -r synaptics_i2c
immediately the touchpad will die, if you got the correct module. Now to prevent it from ever being loaded:
Create a file in the /etc/modprobe.d
directory with the .conf
extension, containing the words blacklist synaptics_i2c
(replace with your module name, excluding .ko
). For example
echo "blacklist synaptics_i2c" | sudo tee /etc/modprobe.d/blacklist-touch.conf
(but check that the filename you choose does not already exist)
Run synclient TouchpadOff=1
to remove the touchpad.