Huion and Wacom Tablets How To Install in Linux Mint / Ubuntu and make the stylus work properly

It took a lot of fiddling to make a Huion Kamvas 13 Pro work in Linux but it simple once you know what to do.  Don't bother searching as it is unlkely there is a guide out there that will actually make your tablet work.

It mainly comes down to the fact that the hid_uclogic kernel module is buggy or doesn't support MANY of these wacom based/Huion tablets properly.

What was happening with me is that I had the Kamvas 13 Huion setup as a secondary screen/monitor.  If I tried to draw it would control the mouse on the original screen so there was a HUGE offset and it was impossible to make it work and draw.

A lot of blogs will say use "xsetwacom" but this will not work if your driver (hid_uclogic.ko) is buggy like me.  The solution is to make and install the updated kernel module and then use xsetwacom to map the stylus so it is tied to our tablet and not our main screen.

1. First of all identify your device using lsusb (which will probably not show you the name but you will know by the identifier).

lsusb

Bus 002 Device 019: ID 256c:006d 

If it starts with 256c you've probably found your device ID which is important for the X11 conf file that will be added to /usr/share/X11/xorg.conf.d

2.) Now we need the digimend drivers that will provide a proper working driver

Download the latest from here: https://github.com/DIGImend/digimend-kernel-drivers/archive/master.zip

unzip master.zip

cd digimend-kernel-drivers

make; make install

3.) Make sure that your tablet was correctly added or list here:

If your ID is not there you can always try to add it manually by adding a | and then your ID like the example in bold which represents my Kamvas 13.  

Section "InputClass"
    Identifier "Huion tablets with Wacom driver"
    MatchUSBID "5543:006e|256c:006e|256c:006d"
    MatchDevicePath "/dev/input/event*"
    MatchIsKeyboard "false"
    Driver "wacom"
EndSection

vi /usr/share/X11/xorg.conf.d/50-digimend.conf

4.) Remove the bad driver and insert the new one

sudo rmmod hid-uclogic

sudo modprobe hid-uclogic

5.) Use xsetwacom so the stylus works only on our tablet:

Remember HEAD is specifying which monitor ID so it's important to choose the right one.

Remember that 11 is the ID in xsetwacom of your stylus. 

How to find your stylus ID

We can see below the ID is 11

 xsetwacom list
Tablet Monitor Pen stylus           id: 11    type: STYLUS   
Tablet Monitor Pad pad              id: 12    type: PAD      
Tablet Monitor Touch Strip pad      id: 13    type: PAD

*Note that each time you unplug or replug the tablet that its ID will change and increase.  Generally the highest number ID is going to be the correct one. 

HEAD-1 = monitor 2 (if you wanted monitor 3 it would be HEAD-2 or if you wanted monitor 1 it would be HEAD-0)

This command maps the stylus to your tablet.  The advantage here is that there is no need to get or set area, the command below does it for us so there's no math involved to make our tablet work!

xsetwacom --verbose set 11 MapToOutput HEAD-1

... 'set' requested for '11'.
... Checking device 'Virtual core pointer' (2).
... Checking device 'Virtual core keyboard' (3).
... Checking device 'Virtual core XTEST pointer' (4).
... Checking device 'Virtual core XTEST keyboard' (5).
... Checking device 'Power Button' (6).
... Checking device 'Power Button' (7).
... Checking device 'PixArt Lenovo USB Optical Mouse' (8).
... Checking device 'Logitech USB Keyboard' (9).
... Checking device 'Logitech USB Keyboard' (10).
... Checking device 'Tablet Monitor Pen stylus' (11).
... Checking device 'Tablet Monitor Pad pad' (12).
... Checking device 'Tablet Monitor Touch Strip pad' (13).
... Checking device 'Tablet Monitor Dial' (14).
... Device 'Tablet Monitor Pen stylus' (11) found.
... RandR extension not found, too old, or NV-CONTROL extension is also present.
... Setting xinerama head 1
... Remapping to output area 1024x768 @ 1600,0.
... Transformation matrix:
...     [ 0.390244 0.000000 0.609756 ]
...     [ 0.000000 0.853333 0.000000 ]
...     [ 0.000000 0.000000 1.000000 ]

 


Tags:

huion, wacom, tablets, install, linux, mint, ubuntu, stylus, properlyit, fiddling, kamvas, unlkely, tablet, mainly, hid_uclogic, kernel, module, buggy, doesn, secondary, offset, blogs, quot, xsetwacom, ko, updated, lsusb, identifier, ve, conf, usr, xorg, digimend, drivers, download, https, github, archive, zip, unzip, correctly, manually, adding, bold, represents, inputclass, matchusbid, matchdevicepath, dev, input, matchiskeyboard, endsection, vi, insert, sudo, rmmod, uclogic, modprobe, specifying, pad, unplug, replug, generally, maps, verbose, maptooutput, requested, virtual, pointer, keyboard, xtest, pixart, lenovo, usb, optical, logitech, randr, extension, nv, xinerama, remapping, output, transformation, matrix,

Latest Articles

  • du - VAS Billing Subscriptions Hack/Scam MLPremiumSub Invascom Astromart Issues Complaint
  • Docker Swarm vs Kubernetes Comparison Guide
  • When is it time to leave your VPS/VDS Cloud Hosting Provider?
  • 2024 Buyer's Guide: How to Choose and Buy the Best VPS/VDS for Your Needs - Tips and Strategies
  • Postfix / sendmail config for DKIM, SPF and DMARC Tutorial Guide E-mail Delivery for Hotmail.com Gmail.com and More HowTo
  • Install Grafana on Linux Debian Ubuntu Tutorial Guide
  • How To Completely Disable ufw in Linux Ubuntu Mint Debian
  • System has not been booted with systemd as init system (PID 1). Can't operate. Failed to talk to init daemon. Ubuntu Debian Linux Solution Cannot reboot
  • Mint Ubuntu Linux Gnome Showing Home Directory on Desktop instead of Desktop Directory
  • vi vim not doing code highlighting E319: Sorry, the command is not available in this version solution
  • Proxmox How To Rename Node Hostname Fix Solution
  • Linux how to get list of all timezones on system Ubuntu
  • Proxmox install issue cannot see the buttons or install wrong / bad resolution cannot see the entire screen problem solution
  • configure.ac:75: error: possibly undefined macro: AC_PROG_LIBTOOL If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. solution
  • Can't exec "aclocal": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 326. autoreconf: failed to run aclocal: No such file or directory solution
  • /bin/sh: autoreconf: command not found solution
  • glib-2.0 required to compile QEMU solution
  • How To Upgrade Debian 8,9,10 to Debian 12 Bookworm
  • Linux dhcp dhclient Mint Redhat Ubuntu Debian How To Use Local Domain DNS Server Instead of ISPs
  • Docker dockerd swarm high CPU usage cause solution