So I recently got a Wacom Bamboo Pen graphics tablet, which is wonderful. I've been trying it out as a general purpose mouse on my 14.04 laptop. The only annoyance is scrolling. The tablet has no scroll wheel nor scroll buttons, and moving to the scroll bar on the screen is really very annoying.

I remember using Windows you could click the middle mouse button to "autoscroll", which would be amazing with a tablet---it's exactly the sort of solution I want. I can't however, for the life of me work out how to implement this system-wide on Ubuntu.

I am aware that there are Chrome and Firefox extensions/options for enabling this for those browsers, but I would love something system wide. I understand that middle-click is "supposed to be" copy/paste on Linux, but when I have Ctrl+C/V I really don't need another clipboard, what I need is easy scrolling.

Any other solutions for simple scrolling with a graphics tablet would be much appreciated too. A keyboard shortcut perhaps?

3 Answers 3


I wanted to enable scroll/pan actions in my wacom, like we do in Windows by pressing the mouse middle button and move the mouse to up and down. To do this:

  1. First I listed the devices using xsetwacom --list devices:
$ xsetwacom --list devices
Wacom Intuos S Pen stylus           id: 14  type: STYLUS    
Wacom Intuos S Pen eraser           id: 15  type: ERASER    
Wacom Intuos S Pen cursor           id: 16  type: CURSOR    
Wacom Intuos S Pad pad              id: 17  type: PAD
  1. Since I wanted to enable scroll/pan using the lower button in wacon pen (Button 2), I used the command below (where "pan" is the value to enable the feature in Button 2)
xsetwacom --set "Wacom Intuos S Pen stylus" Button 2 "pan"
  1. To test, go to your browser or any other document, drag the pen to up/down/left/ right while you click the pen Button 2.

  2. To increase the sensitivity, I decreased the value of "PanScrollThreshold" parameter (the default value was 1300)

xsetwacom --set "Wacom Intuos S Pen stylus" "PanScrollThreshold" 200


  • Saved my life thanks!. Took me a while to find this. Do not understand why this is not a default in Ubuntu 20.04.
    – swapsCAPS
    Commented Jul 5, 2020 at 9:22
  • Perfect! Thank you!
    – Grisha S
    Commented Dec 3, 2020 at 6:34
  • 1
    Actually, not that perfect... it only works in the Chrome browser, but not in any other apps. Also, the setting is reverted after reboot.
    – Grisha S
    Commented Dec 3, 2020 at 6:48
  • I'm on Mint 20.3 and it works only for scrolling down. It can't scroll up for some reason. Wacom INTUOS Pen & Pad Firefox Commented Jan 19, 2022 at 6:40
  • This works great! .......except it breaks panning in Krita. Anyone got a solution for that? Commented Apr 16 at 20:26

You can use xsetwacom to redefine the keys of the stylus. Identify the stylus using xsetwacom --list devices

Wacom Serial Penabled Touchscreen stylus    id: 15  type: STYLUS    
Wacom Serial Penabled Touchscreen eraser    id: 16  type: ERASER    

and bind the button you want to use for scrolling (in my case the button at 2/3 of the pen, Button 2) via

xsetwacom set "Wacom Serial Penabled Touchscreen stylus" Button 2 2

The first value after the device name string is the name of the Button, i.e., Button 2 (with a space) and the second value "2" is the X11 button number of the middle mouse button, see also man xsetwacom.

  • 2 should already be the default for Button 2. And clicking the middle mouse button doesn't scroll. The scroll wheel is buttons 4 and 5 (depending on direction)
    – bobpaul
    Commented Mar 20, 2023 at 18:49

As a fellow owner of Wacom tablet, I decided to make an autoscrolling utility. It works only on X11-based desktop environments (so no Wayland + Gnome).

Example config:

# Use `xinput list` to get device list. Wacom Bamboo registers 4
# devices. The relevant one is called "Wacom Bamboo Pen stylus". But
# there is nothing wrong with grabbing all 4 of them, which is why I use
# "Wacom" filter to catch them all. `_grep` part comes from the fact
# that the program is just running `xinput list | grep ${xinput_grep}`.
xinput_grep = "Wacom"

# Windows-like auto-scrolling. Press `button_id` to start scrolling,
# then move your mouse up or down. The longer the distance between the
# cursor and the starting point, the faster you scroll. Remove/comment
# out whole section if you don't want it.
# `hold = false` means click once to enable, click once to disable.
# Recommended `false` on tablets, as it's annoying when you connectivity
# while using `hold = true`.
hold = false
# Scrolling speed. Has different effect on different screen resolutions.
# Recommended to set `speed` to high value and decrease system-wide
# scrolling speed as much as possible. Equation: `speed`×`distance`[px]
# ÷1_000_000_000 = emulated mouse wheel rolls.
speed = 1000000
# Which button toggles scrolling. Button 2 is the middle mouse button.
# Button 3 is upper button on Wacom Bamboo Pen.
button_id = 3

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .