Re: PROBLEM: Regression likely in hid_uclogic driver breaks Huion Inspiroy H640 drawing tablet

From: José Expósito
Date: Sun Jul 24 2022 - 07:57:01 EST


Hi!

Thanks for CCing me Jiří.

On Fri, 22 Jul 2022, Stefan Hansson wrote:
> Hi!
>
> Somewhere between Linux 5.17.6 and 5.18.11 the Huion tablet I have stopped
> working properly. In GNOME Control Center it is identified as Huion New 1060
> Plus, however that's a different tablet than the one I have. Mine is a Huion
> Inspiroy H640, and it uses the hid_uclogic driver.
>
> With Linux 5.17.6, the tablet works as expected with all the buttons being
> detected and the stylus being usable. With 5.18.11, the buttons work fine but
> the stylus does not work correctly. The first time I approach the tablet with
> the stylus it works properly, i.e., the cursor on my screen moves around and
> follows the stylus around the tablet as expected. It continues working like
> this until I remove the stylus from the tablet. After I remove it from the
> tablet, the cursor never gets controlled by the stylus again. I can see that
> the tablet detects the stylus (it has a small indicator light), but the cursor
> doesn't move when I approach the tablet again. To clarify, with Linux 5.17.6,
> the cursor moves around just fine when I remove and then put it back to the
> tablet, just as you would expected.
>
> It may also be worth noting that it worked fine when I previously used it
> around six months ago, although I'm not sure what version of Linux I was using
> at that time (whatever Fedora shipped back then). I also tried reproducing it
> with yesterday's linux-next and Linux 5.19.0-RC7, and the behaviour was the
> same as 5.18.11. I am currently trying to bisect this, but it's not going very
> fast as I currently only have access to a dual core laptop from 2014, so
> building Linux takes a good while.

Thanks a lot for reporting the issue.

HUION and other non-Wacom tablets are handled by the UCLogic driver.
This driver is present in the kernel but its changes were deployed
and tested first in the DIGImend driver:
https://github.com/DIGImend/digimend-kernel-drivers

A while ago, I started including in the kernel the code present in
DIGImend. At this moment, 5.19.0-RC7 and DIGImend have the same code
(well, 5.19 has more features, but they don't affect your tablet).

I'm telling you this because it might be easier for you to bisect the
changes in the DIGImend driver as it builds way faster than the kernel.
Let me know if you need help bisecting it and I'll do my best to help
you.

Is this your device?
https://www.huion.com/pen_tablet/Inspiroy/H640P.html

It is affordable, so I ordered it. I don't have any HUION devices to
debug and this is a good excuse to buy one ;)
I'll let you know how it goes once I receive it.

Jose