how to disable the trackstick in dell?
How to disable the trackstick which is in between the keys of the Dell laptop keyboard. It really causes a lot of problem while typing.
Go to the terminal and type the following:
xinput -set-prop "DualPoint Stick" "Device Enabled" 0
How to disable the trackstick in Dell laptops
2 Commands to disable it, and 1 additional step to make this persistent across reboots:
Open a terminal with Ctrl + Alt + T and type:
-
xinput
Here is my output, for example:
The key line we care about is the "DualPoint Stick". Mine is the 7th line down:
⎜ ↳ AlpsPS/2 ALPS DualPoint Stick id=15 [slave pointer (2)]
Take note of its id number (15 in my case), then use that in the next command:
-
To disable it:
xinput --disable 15
You might also try the following, as recommended by @Brent Zundel in his comment under this answer:
xinput --set-prop "AlpsPS/2 ALPS DualPoint Stick" "Device Enabled" 0
If you'd ever like to re-enable it, try the following:
xinput --enable 15
OR
xinput --set-prop "AlpsPS/2 ALPS DualPoint Stick" "Device Enabled" 1
See
man xinput
for more details. -
Now the problem is that our change above is not persistent across reboots. To fix that do the following:
- Open the "Startup Applications" program in Ubuntu.
- Click "Add" to add an additional startup program.
- Put your disable command from above (ex:
xinput --disable 15
) into the "Command" box, and anything you want into the "Name" and "Comment" boxes. Mine looks like this:- See also the comment under this answer from @Brent Zundel. He recommends you use the following command instead, to ensure that it always works even if the device ID number changes:
xinput -set-prop "AlpsPS/2 ALPS DualPoint Stick" "Device Enabled" 0
.
- See also the comment under this answer from @Brent Zundel. He recommends you use the following command instead, to ensure that it always works even if the device ID number changes:
- Click "Add" and then "Close".
Done! Now it will run this script every time you reboot, thereby automatically disabling it again.
Note: if you think you can place this command in
/etc/rc.local
instead, to run at startup, it probably won't work since xinput requires the X Window System to be running. See here: Why won't rc.local run xinput?. In either case, I couldn't get it to work that way, even with addingsleep 10
before the command. But, adding it to the "Startup Applications" as I explain above does work.
Related:
- See my touchpad_toggle.sh script in my dotfiles project: https://github.com/ElectricRCAircraftGuy/eRCaGuy_dotfiles.
References:
- Thanks to @YetAnotherG33k's answer for first getting me on the right track by informing me about
xinput
. - And thanks to @Brent Zundel for his comment below my answer too.
In addition to fine answer of Gabriel Staples I'd like to mention that in some Dell laptop models xinput's output may not contain any sign of pointing stick. In my case (Latitude 5591 laptop) it was "DELL0819:00 044E:121F Mouse" with "id=13" and disabling it with xinput --disable 13
helped.
What can you do to find out the name of the pointing stick device in that case? Try grep "input device" /var/log/Xorg.0.log
output, the desired device should have type: MOUSE
. Corresponding id
should be the one you are looking for.
More universal way of disabling pointing stick which should work both in X and in Wayland is to use udev rules. If you are using Wayland then xinput tool will be unavailable.
First run cat /proc/bus/input/devices
and scan its output for the devices with Handlers
containing the word mouse
. One of them will be the pointing stick. Notice its Name
field, we will use it later (in my case it was "DELL0819:00 044E:121F Mouse", as I mentioned earlier). Then copy the long value of Sysfs
field of this device and use it in the next command. In my case it was:
udevadm test /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-DELL0819:00/0018:044E:121F.0001/input/input24
The output of this command should contain several parameters starting with ID_INPUT. Combining the name of our pointing stick and these parameters we can create the rule:
ATTRS{name}=="DELL0819:00 044E:121F Mouse", ENV{ID_INPUT}="", ENV{ID_INPUT_MOUSE}="", ENV{ID_INPUT_POINTINGSTICK}=""
Now create the file 99-pointstick-off.rules
in /etc/udev/rules.d/
folder and add the rule there. Reboot. Pointing stick should be disabled now.
The insight regarding this method I gained here.