New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Huion Giano WH1409 does not work anymore with newest digimend driver #217

Closed
hvfrancesco opened this Issue Nov 5, 2018 · 63 comments

Comments

Projects
None yet
7 participants
@hvfrancesco

hvfrancesco commented Nov 5, 2018

My Huion Giano WH1409 works well with v7 of Digimend driver, but it doesn't with newer version.
the tablet is recognized and it appears in xsetwacom --list output, but gives no sign of life

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 5, 2018

evtest shows no output

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 5, 2018

ubuntu 14.04
3.13.0-161-generic kernel

@ThePreviousOne

This comment has been minimized.

ThePreviousOne commented Nov 6, 2018

I would try testing with a newer (still maintained) kernel

@ThePreviousOne

This comment has been minimized.

ThePreviousOne commented Nov 6, 2018

or maybe not #203

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 7, 2018

Hi folks, I'll try to look into this on the weekend, hold tight!

@tomvdab

This comment has been minimized.

tomvdab commented Nov 7, 2018

I bought a Huion Giano Wh1409 v2 some days ago and it works perfectly with Digimend v8 + Arch Linux with it's most recent kernel. I don't know why the Digimend site says the wh1409 is unsupported... Thx for your work with Digimend btw! :)

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 8, 2018

tried on a freshly installed Ubuntu 18.04 with 4.15.0-38-generic kernel, unfortunately same results. The tablet works well with distribution provided driver, but if I switch to v.8 dkms provided on digimend site, it is not responding anymore.

@tomvdab

This comment has been minimized.

tomvdab commented Nov 8, 2018

I use linux kernel 4.18.16. Before installing Digimend v8 dkms the tablet was not functioning. After installing Digimend dkms it worked.

@ChiSamurai

This comment has been minimized.

ChiSamurai commented Nov 9, 2018

I'm on Linux Mint 18.3 with kernel 4.10.0-38 and got the same issues. With the out of the box driver it works like a mouse, with digimend drivers (tried v6 - v8) xsetwacom --output lists two devices (Pen & Pencil) but no reaction at all :-(

I commented another issue some days before and attached some additional infos here: #51 (comment)

#issuecomment-435598029-permalink

@tomvdab

This comment has been minimized.

tomvdab commented Nov 9, 2018

I have only this configuration for X11 and everything is working:

/etc/X11/xorg.conf.d/50-tablet.conf

Section "InputClass"
    Identifier "Tablet"
    Driver "wacom"
    MatchDevicePath "/dev/input/event*"
    MatchUSBID "256c:006e"
EndSection

I just followed the instructions on the README
It's a bit strange that on Ubuntu the tablet works as a mouse out of the box. On Arch Linux the tablet didn't function at all before installing Digimend.

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 10, 2018

Well, you can see why we don't have it listed as "supported" - nobody actually went and made sure it is, and nobody figured out how it works yet, so nobody keeps it working. That's why it broke, perhaps.

First of all, please try installing the current development version: https://github.com/DIGImend/digimend-kernel-drivers/archive/master.zip

If that doesn't work, please reconnect your tablet and post the following:

  • the output of sudo dmesg (last 100 lines or so is enough)
  • the output of /sbin/modinfo hid-uclogic
  • the output of cat /sys/module/hid_uclogic/version
  • the output of sudo evtest, just what it prints at the start, without any event dumps

And then let's go from here.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 10, 2018

tried what you suggested: I installed with dkms the current development version.
I'm on a freshly installed Ubuntu 18.04.1 LTS, kernel is distribution provided 4.15.0-38-generic.
The installation via "make dkms_install" went perfectly, no error reported, but after that the tablet is not responding, here is a report after installing the newest driver and then, following it, the same report after uninstalling, using distribution provided hid-uclogic module with which the tablet seems to be working almost perfectly:

with development version:

/sudo/dmesg

[ 145.653433] usb 3-11.1: New USB device found, idVendor=256c, idProduct=006e
[ 145.653435] usb 3-11.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 145.653436] usb 3-11.1: Product: Pen Tablet
[ 145.653437] usb 3-11.1: Manufacturer: TABLET
[ 145.657072] input: TABLET Pen Tablet Pen as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0004/input/input22
[ 145.713484] input: TABLET Pen Tablet Pad as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0004/input/input23
[ 145.713745] uclogic 0003:256C:006E.0004: input,hidraw0: USB HID v1.10 Keypad [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input0
[ 145.716564] input: TABLET Pen Tablet Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.1/0003:256C:006E.0005/input/input24
[ 145.716692] uclogic 0003:256C:006E.0005: input,hiddev0,hidraw1: USB HID v1.11 Mouse [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input1
[ 145.821291] usb 3-11.2: new high-speed USB device number 8 using xhci_hcd
[ 145.926970] usb 3-11.2: New USB device found, idVendor=058f, idProduct=6366
[ 145.926972] usb 3-11.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 145.926973] usb 3-11.2: Product: Mass Storage Device
[ 145.926974] usb 3-11.2: Manufacturer: Generic
[ 145.926974] usb 3-11.2: SerialNumber: 058F63666352


modinfo hid-uclogic

filename: /lib/modules/4.15.0-38-generic/updates/dkms/hid-uclogic.ko
version: 9
license: GPL
author: Nikolai Kondrashov
author: Martin Rusko
srcversion: 0485A47017CB313B2F84B27
alias: hid:b0003gv000028BDp00000042
alias: hid:b0003g
v000028BDp00000094
alias: hid:b0003gv000028BDp00000075
alias: hid:b0003g
v000028BDp00000071
alias: hid:b0003gv000028BDp00000074
alias: hid:b0003g
v00002179p00000053
alias: hid:b0003gv00005543p00003031
alias: hid:b0003g
v00005543p00000047
alias: hid:b0003gv00005543p00000045
alias: hid:b0003g
v00005543p00000081
alias: hid:b0003gv00005543p0000004D
alias: hid:b0003g
v00005543p0000006E
alias: hid:b0003gv0000256Cp0000006E
alias: hid:b0003g
v00005543p00000781
alias: hid:b0003gv00005543p00000522
alias: hid:b0003g
v00005543p00000064
alias: hid:b0003gv00005543p00000005
alias: hid:b0003g
v00005543p00000004
alias: hid:b0003gv00005543p00000003
alias: hid:b0003g
v00005543p00000042
depends: hid
retpoline: Y
name: hid_uclogic
vermagic: 4.15.0-38-generic SMP mod_unload


cat /sys/module/hid_uclogic/version
9

sudo evtest

No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Power Button
/dev/input/event1: Power Button
/dev/input/event2: AT Translated Set 2 keyboard
/dev/input/event3: ImExPS/2 Logitech Explorer Mouse
/dev/input/event4: Eee PC WMI hotkeys
/dev/input/event5: TABLET Pen Tablet Pen
/dev/input/event6: TABLET Pen Tablet Pad
/dev/input/event7: TABLET Pen Tablet Mouse
/dev/input/event11: HDA Intel PCH Front Mic
/dev/input/event12: HDA Intel PCH Rear Mic
/dev/input/event13: HDA Intel PCH Line
/dev/input/event14: HDA Intel PCH Line Out
/dev/input/event15: HDA Intel PCH Front Headphone
/dev/input/event16: HDA NVidia HDMI/DP,pcm=3
/dev/input/event17: HDA NVidia HDMI/DP,pcm=7
/dev/input/event18: HDA NVidia HDMI/DP,pcm=8
/dev/input/event19: HDA NVidia HDMI/DP,pcm=9
Select the device event number [0-19]: 5
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x256c product 0x6e version 0x110
Input device name: "TABLET Pen Tablet Pen"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 320 (BTN_TOOL_PEN)
Event code 330 (BTN_TOUCH)
Event code 331 (BTN_STYLUS)
Event code 332 (BTN_STYLUS2)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 0
Min 0
Max 55200
Resolution 157
Event code 1 (ABS_Y)
Value 0
Min 0
Max 34500
Resolution 157
Event code 24 (ABS_PRESSURE)
Value 0
Min 0
Max 2047
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Properties:

(no event is reported after that)


xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ImExPS/2 Logitech Explorer Mouse id=12 [slave pointer (2)]
⎜ ↳ TABLET Pen Tablet Pen stylus id=8 [slave pointer (2)]
⎜ ↳ TABLET Pen Tablet Pad pad id=9 [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)]
↳ Eee PC WMI hotkeys id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]

xsetwacom --list
TABLET Pen Tablet Pen stylus id: 8 type: STYLUS
TABLET Pen Tablet Pad pad id: 9 type: PAD

And this is the output I get when I uninstall the development version, using the Ubuntu provided hid-uclogic module (tablet working then):


sudo dmesg

[ 536.165625] usb 3-11: new high-speed USB device number 6 using xhci_hcd
[ 536.314003] usb 3-11: New USB device found, idVendor=058f, idProduct=6254
[ 536.314006] usb 3-11: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 536.314008] usb 3-11: Product: USB2.0Hub
[ 536.314384] hub 3-11:1.0: USB hub found
[ 536.314409] hub 3-11:1.0: 2 ports detected
[ 536.601670] usb 3-11.1: new full-speed USB device number 7 using xhci_hcd
[ 536.705623] usb 3-11.1: New USB device found, idVendor=256c, idProduct=006e
[ 536.705624] usb 3-11.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 536.705625] usb 3-11.1: Product: Pen Tablet
[ 536.705627] usb 3-11.1: Manufacturer: TABLET
[ 536.709642] input: TABLET Pen Tablet Pen as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0004/input/input22
[ 536.709774] input: TABLET Pen Tablet Pad as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0004/input/input23
[ 536.709828] uclogic 0003:256C:006E.0004: input,hidraw0: USB HID v1.10 Keypad [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input0
[ 536.712481] input: TABLET Pen Tablet Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.1/0003:256C:006E.0005/input/input24
[ 536.712644] uclogic 0003:256C:006E.0005: input,hiddev0,hidraw1: USB HID v1.11 Mouse [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input1
[ 536.714145] input: TABLET Pen Tablet Keyboard as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0006/input/input26
[ 536.773783] input: TABLET Pen Tablet Consumer Control as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0006/input/input27
[ 536.773867] input: TABLET Pen Tablet System Control as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0006/input/input28
[ 536.773995] uclogic 0003:256C:006E.0006: input,hidraw2: USB HID v1.11 Keyboard [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input2


modinfo hid-uclogic

filename: /lib/modules/4.15.0-38-generic/kernel/drivers/hid/hid-uclogic.ko
license: GPL
author: Nikolai Kondrashov
author: Martin Rusko
srcversion: 1DD838FD354887326DC6A47
alias: hid:b0003gv000028BDp00000071
alias: hid:b0003g
v00002179p00000053
alias: hid:b0003gv00005543p00003031
alias: hid:b0003g
v00005543p00000045
alias: hid:b0003gv00005543p00000081
alias: hid:b0003g
v00005543p0000004D
alias: hid:b0003gv00005543p0000006E
alias: hid:b0003g
v0000256Cp0000006E
alias: hid:b0003gv00005543p00000781
alias: hid:b0003g
v00005543p00000522
alias: hid:b0003gv00005543p00000064
alias: hid:b0003g
v00005543p00000005
alias: hid:b0003gv00005543p00000004
alias: hid:b0003g
v00005543p00000003
alias: hid:b0003g*v00005543p00000042
depends: hid
retpoline: Y
intree: Y
name: hid_uclogic
vermagic: 4.15.0-38-generic SMP mod_unload
signat: PKCS#7
signer:
sig_key:
sig_hashalgo: md4


cat /sys/module/hid_uclogic/version

cat: /sys/module/hid_uclogic/version: File o directory non esistente

seems ubuntu provided kernel module doesn't report a 'version' property, it reports a somewhat obscure 'srcversion' instead

cat /sys/module/hid_uclogic/srcversion

1DD838FD354887326DC6A47

sudo evtest

No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Power Button
/dev/input/event1: Power Button
/dev/input/event2: AT Translated Set 2 keyboard
/dev/input/event3: ImExPS/2 Logitech Explorer Mouse
/dev/input/event4: TABLET Pen Tablet Pen
/dev/input/event5: TABLET Pen Tablet Pad
/dev/input/event6: TABLET Pen Tablet Mouse
/dev/input/event7: TABLET Pen Tablet Keyboard
/dev/input/event8: TABLET Pen Tablet Consumer Control
/dev/input/event9: TABLET Pen Tablet System Control
/dev/input/event10: Eee PC WMI hotkeys
/dev/input/event11: HDA Intel PCH Front Mic
/dev/input/event12: HDA Intel PCH Rear Mic
/dev/input/event13: HDA Intel PCH Line
/dev/input/event14: HDA Intel PCH Line Out
/dev/input/event15: HDA Intel PCH Front Headphone
/dev/input/event16: HDA NVidia HDMI/DP,pcm=3
/dev/input/event17: HDA NVidia HDMI/DP,pcm=7
/dev/input/event18: HDA NVidia HDMI/DP,pcm=8
/dev/input/event19: HDA NVidia HDMI/DP,pcm=9
Select the device event number [0-19]: 4
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x256c product 0x6e version 0x110
Input device name: "TABLET Pen Tablet Pen"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 320 (BTN_TOOL_PEN)
Event code 330 (BTN_TOUCH)
Event code 331 (BTN_STYLUS)
Event code 332 (BTN_STYLUS2)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 0
Min 0
Max 55200
Resolution 157
Event code 1 (ABS_Y)
Value 0
Min 0
Max 34500
Resolution 157
Event code 24 (ABS_PRESSURE)
Value 0
Min 0
Max 2047
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Properties:

it then reports correctly events, includin pressure values, as an example:

Event: time 1541845021.085565, -------------- SYN_REPORT ------------
Event: time 1541845021.089552, type 3 (EV_ABS), code 0 (ABS_X), value 24628
Event: time 1541845021.089552, type 3 (EV_ABS), code 1 (ABS_Y), value 15732
Event: time 1541845021.089552, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 15
Event: time 1541845021.089552, -------------- SYN_REPORT ------------
Event: time 1541845021.091554, type 4 (EV_MSC), code 4 (MSC_SCAN), value d0042
Event: time 1541845021.091554, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1541845021.091554, type 3 (EV_ABS), code 0 (ABS_X), value 24631
Event: time 1541845021.091554, type 3 (EV_ABS), code 1 (ABS_Y), value 15729
Event: time 1541845021.091554, type 3 (EV_ABS), code 24 (ABS_PRESSURE), value 0


xinput --list

⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ImExPS/2 Logitech Explorer Mouse id=12 [slave pointer (2)]
⎜ ↳ TABLET Pen Tablet Pen stylus id=8 [slave pointer (2)]
⎜ ↳ TABLET Pen Tablet Pad pad id=9 [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)]
↳ Eee PC WMI hotkeys id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]


xsetwacom --list

TABLET Pen Tablet Pen stylus id: 8 type: STYLUS
TABLET Pen Tablet Pad pad id: 9 type: PAD

@tomvdab

This comment has been minimized.

tomvdab commented Nov 10, 2018

If you guys want me to post info about my working setup, feel free to ask! To simplify troubleshooting, @hvfrancesco , did you connect your tablet with usb-cable only? When you have the wireless dongle attatched to your computer, VID:PID shows up two times in lsusb, which might complicate things.

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 10, 2018

I see, thank you, @hvfrancesco. The tablet might be reporting the pen on another interface, perhaps. Please post the output of the latest development version of uclogic-probe for your tablet. As well as the output of usbhid-dump -m 256C:006E -es where you do a stroke with the pen.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 11, 2018

thank you @spbnick, I try to include a little more information, and I attacch as well the Xorg.0.conf with development driver and with stock driver. Thank you a lot for your help
Xorg.0.log-dev.txt
Xorg.0.log-stock.txt

:

first the results of uclogic-probe and usbhid dump using development drivers:

lsusb

Bus 003 Device 007: ID 256c:006e

sudo ./uclogic-probe 3 7
M 54 00 41 00 42 00 4C 00 45 00 54 00
P 50 00 65 00 6E 00 20 00 54 00 61 00 62 00 6C 00 65 00 74 00
S 64 12 03 A0 D7 C4 86 03 00 FF 07 A0 0F 08 00 00 00 00 00
S 65 04 03 20 A0
S 6E 02 00
S 79 02 00
S 7A 08 03 01 08 00 00 00 00
S 7B 0C 03 48 00 4B 00 20 00 4F 00 6E 00
S C8 12 03 A0 D7 00 C4 86 00 FF 07 A0 0F 03 0C 00 00 10 00
S C9 24 03 48 00 55 00 49 00 4F 00 4E 00 5F 00 54 00 31 00 35 00 33 00 5F 00 31 00 36 00 30 00 36 00 30 00 37 00
S CA 46 03 48 00 55 00 49 00 4F 00 4E 00 20 00 41 00 6E 00 69 00 6D 00 61 00 74 00 69 00 6F 00 6E 00 20 00 54 00 65 00 63 00 68 00 6E 00 6F 00 6C 00 6F 00 67 00 79 00 20 00 43 00 6F 00 2E 00 2C 00 6C 00 74 00 64 00

sudo usbhid-dump -m 256C:006E -es
Starting dumping interrupt transfer stream
with 1 minute timeout.

003:007:000:STREAM 1541929568.007272
07 80 86 3D C1 43 00 00

003:007:000:STREAM 1541929568.009254
07 80 86 3D C1 43 00 00

003:007:000:STREAM 1541929568.013257
07 80 86 3D C1 43 00 00

003:007:000:STREAM 1541929568.015258
07 80 78 3D C1 43 00 00

003:007:000:STREAM 1541929568.019258
07 80 6E 3D CC 43 00 00

003:007:000:STREAM 1541929568.021259
07 80 64 3D CC 43 00 00

003:007:000:STREAM 1541929568.025256
07 80 5A 3D CC 43 00 00

003:007:000:STREAM 1541929568.027256
07 80 51 3D D4 43 00 00

003:007:000:STREAM 1541929568.033256
07 80 40 3D E2 43 00 00

003:007:000:STREAM 1541929568.037222
07 80 38 3D E7 43 00 00

003:007:000:STREAM 1541929568.039223
07 80 30 3D EC 43 00 00

003:007:000:STREAM 1541929568.053236
07 80 03 3D F7 43 00 00

003:007:000:STREAM 1541929568.055238
07 80 F3 3C FF 43 00 00

003:007:000:STREAM 1541929568.059238
07 80 E3 3C 03 44 00 00

003:007:000:STREAM 1541929568.061237
07 80 D5 3C 07 44 00 00

003:007:000:STREAM 1541929568.065225
07 80 C8 3C 07 44 00 00

003:007:000:STREAM 1541929568.067238
07 80 BC 3C 0B 44 00 00

003:007:000:STREAM 1541929568.077227
07 80 99 3C 0F 44 00 00

003:007:000:STREAM 1541929568.079225
07 80 8F 3C 0E 44 00 00

003:007:000:STREAM 1541929568.083224
07 80 85 3C 0C 44 00 00

003:007:000:STREAM 1541929568.085225
07 80 80 3C 0A 44 00 00

003:007:000:STREAM 1541929568.095239
07 80 6B 3C 0C 44 00 00

003:007:000:STREAM 1541929568.097228
07 80 67 3C 0E 44 00 00

003:007:000:STREAM 1541929568.101236
07 80 64 3C 0B 44 00 00

003:007:000:STREAM 1541929568.107245
07 80 60 3C 0D 44 00 00

003:007:000:STREAM 1541929568.115235
07 80 5D 3C 0E 44 00 00

003:007:000:STREAM 1541929568.121245
07 80 5D 3C 0D 44 00 00

003:007:000:STREAM 1541929568.133249
07 80 5A 3C 0D 44 00 00

003:007:000:STREAM 1541929568.137236
07 80 5C 3C 0D 44 00 00

003:007:000:STREAM 1541929568.139236
07 80 5F 3C 0D 44 00 00

003:007:000:STREAM 1541929568.143224
07 80 5E 3C 0D 44 00 00

003:007:000:STREAM 1541929568.151237
07 80 5D 3C 0E 44 00 00

003:007:000:STREAM 1541929568.161238
07 80 5D 3C 0E 44 00 00

003:007:000:STREAM 1541929568.163222
07 80 5D 3C 0E 44 00 00

003:007:000:STREAM 1541929568.167232
07 80 5D 3C 0E 44 00 00

003:007:000:STREAM 1541929568.173232
07 80 5D 3C 05 44 00 00

003:007:000:STREAM 1541929568.177220
07 80 61 3C FF 43 00 00

003:007:000:STREAM 1541929568.179220
07 80 66 3C FA 43 00 00


then the same report with ubuntu distribution provided module:

lsusb
Bus 003 Device 004: ID 256c:006e


sudo uclogic-probe 3 4
M 54 00 41 00 42 00 4C 00 45 00 54 00
P 50 00 65 00 6E 00 20 00 54 00 61 00 62 00 6C 00 65 00 74 00
S 64 12 03 A0 D7 C4 86 03 00 FF 07 A0 0F 08 00 00 00 00 00
S 65 04 03 20 A0
S 6E 02 00
S 79 02 00
S 7A 08 03 01 08 00 00 00 00
S 7B 0C 03 48 00 4B 00 20 00 4F 00 6E 00
S C8 12 03 A0 D7 00 C4 86 00 FF 07 A0 0F 03 0C 00 00 10 00
S C9 24 03 48 00 55 00 49 00 4F 00 4E 00 5F 00 54 00 31 00 35 00 33 00 5F 00 31 00 36 00 30 00 36 00 30 00 37 00
S CA 46 03 48 00 55 00 49 00 4F 00 4E 00 20 00 41 00 6E 00 69 00 6D 00 61 00 74 00 69 00 6F 00 6E 00 20 00 54 00 65 00 63 00 68 00 6E 00 6F 00 6C 00 6F 00 67 00 79 00 20 00 43 00 6F 00 2E 00 2C 00 6C 00 74 00 64 00


usbhid-dump -m 256C:006E -es

003:004:000:STREAM 1541928865.128577
07 81 30 5D BD 38 A7 05

003:004:000:STREAM 1541928865.132566
07 81 71 5D A3 38 AF 05

003:004:000:STREAM 1541928865.252557
07 80 96 63 74 36 00 00

003:004:000:STREAM 1541928865.270551
07 80 2B 63 B4 36 00 00

003:004:000:STREAM 1541928865.274548
07 80 10 63 C6 36 00 00

003:004:000:STREAM 1541928865.294530
07 80 45 62 62 37 00 00

003:004:000:STREAM 1541928865.310531
07 80 E0 61 CC 37 00 00

003:004:000:STREAM 1541928865.316530
07 80 C6 61 EC 37 00 00

003:004:000:STREAM 1541928865.346542
07 80 79 61 2B 38 00 00

003:004:000:STREAM 1541928865.352542
07 80 67 61 36 38 00 00


@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 12, 2018

I'm really sorry, I made a mess with copy and paste on my previous comment, the actual output of
sudo usbhid-dump -m 256C:006E -es with the development driver is as follows (it seems there should not be the 0A code at the beginning):

Starting dumping interrupt transfer stream
with 1 minute timeout.

003:004:001:STREAM 1542013945.696547
0A C0 25 1E A5 39 00 00

003:004:001:STREAM 1542013945.700532
0A C0 25 1E B0 39 00 00

003:004:001:STREAM 1542013945.730560
0A C0 3B 1E DC 39 00 00

003:004:001:STREAM 1542013945.742548
0A C0 57 1E DA 39 00 00

003:004:001:STREAM 1542013945.754564
0A C0 84 1E D7 39 00 00

003:004:001:STREAM 1542013945.766574
0A C0 B9 1E DA 39 00 00

003:004:001:STREAM 1542013945.846586
0A C1 9E 20 88 39 63 05

003:004:001:STREAM 1542013945.858603
0A C1 22 21 51 39 B7 05

003:004:001:STREAM 1542013945.928641
0A C1 FB 25 E0 36 57 07

003:004:001:STREAM 1542013945.956641
0A C1 B3 28 9A 35 5B 07

003:004:001:STREAM 1542013945.970644
0A C1 56 2A AA 34 3B 07

003:004:001:STREAM 1542013945.976636
0A C1 08 2B 35 34 F3 06

003:004:001:STREAM 1542013945.980655
0A C1 62 2B F4 33 A7 06

003:004:001:STREAM 1542013945.988641
0A C1 7B 2C 1A 33 D7 04

003:004:001:STREAM 1542013945.994647
0A C1 39 2D 75 32 A7 02

003:004:001:STREAM 1542013945.998658
0A C1 96 2D 1F 32 C3 01

003:004:001:STREAM 1542013946.000663
0A C1 F4 2D C4 31 0B 01

003:004:001:STREAM 1542013946.004666
0A C1 50 2E 65 31 7B 00

003:004:001:STREAM 1542013946.010638
0A C0 05 2F A0 30 00 00

003:004:001:STREAM 1542013946.012640
0A C0 5C 2F 3A 30 00 00

003:004:001:STREAM 1542013946.016657
0A C0 B3 2F D4 2F 00 00

003:004:001:STREAM 1542013946.018643
0A C0 07 30 6C 2F 00 00

003:004:001:STREAM 1542013946.022654
0A C0 59 30 02 2F 00 00

003:004:001:STREAM 1542013946.024655
0A C0 A9 30 9D 2E 00 00

003:004:001:STREAM 1542013946.028646
0A C0 F7 30 39 2E 00 00

003:004:001:STREAM 1542013946.030638
0A C0 45 31 D6 2D 00 00

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 13, 2018

I've tried to dump the hid report descriptor, maybe it's of some use
wh_1409.code.txt
wh_1409.spec.txt
wh_1409.xml.txt
wh1409_desc.txt

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 13, 2018

Thank you for the dumps, @hvfrancesco. Alright, the reports starting with 0A seem to be due to the tablet not being initialized by the driver. Perhaps the development driver didn't load in that case.

So far it appears that even though this tablet says it's a new version, it's still using the old protocol. This throws a wrench into the auto-detection method used in the driver, but perhaps we can salvage the situation.

Now, let's verify this is the case. Install the latest development version ("master") of the driver, reboot or run sudo modprobe -r hid-uclogic, connect the tablet, make sure the new driver loaded (cat /sys/module/hid_uclogic/version should output 9). Then run sudo usbhid-dump -m 256C:006E -es and do a stroke with the pen. Post a few lines of the output.

As an additional verification, run uclogic-probe on your tablet, discard the output (we don't need it anymore), run usbhid-dump again, do a stroke, and post a few lines of the output.

As the last verification, please execute echo "module hid_uclogic +pfl" | sudo tee /sys/kernel/debug/dynamic_debug/control to enable debug logging, reconnect the tablet, and post about 100 lines from the end of dmesg output.

Thank you.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 13, 2018

thanks a lot @spbnick ,

here it is


cat /sys/module/hid_uclogic/version
9

THIS IS THE OUTPUT AFTER LOADING THE DRIVER

sudo usbhid-dump -m 256C:006E -es
Starting dumping interrupt transfer stream
with 1 minute timeout.

003:007:001:STREAM             1542100182.824954
 0A C0 4A 1F 4A 4E 00 00

003:007:001:STREAM             1542100182.828946
 0A C0 4A 1F 4A 4E 00 00

003:007:001:STREAM             1542100182.830947
 0A C0 4A 1F 4A 4E 00 00

003:007:001:STREAM             1542100182.834947
 0A C0 3F 1F 4A 4E 00 00

003:007:001:STREAM             1542100182.836944
 0A C0 35 1F 3B 4E 00 00

003:007:001:STREAM             1542100182.840944
 0A C0 2C 1F 3B 4E 00 00

003:007:001:STREAM             1542100182.842946
 0A C0 22 1F 3B 4E 00 00

003:007:001:STREAM             1542100182.846946
 0A C0 1A 1F 3B 4E 00 00

003:007:001:STREAM             1542100182.848945
 0A C0 11 1F 35 4E 00 00

THIS IS THE OUTPUT AFTER RUNNING uclogig-probe

sudo usbhid-dump -m 256C:006E -es
Starting dumping interrupt transfer stream
with 1 minute timeout.

003:007:000:STREAM             1542100310.622020
 07 80 06 40 39 41 00 00

003:007:000:STREAM             1542100310.685985
 07 80 4B 42 74 40 00 00

003:007:000:STREAM             1542100310.826000
 07 81 EF 46 DE 3E 07 03

003:007:000:STREAM             1542100310.877999
 07 81 F7 48 23 3E 97 04

003:007:000:STREAM             1542100310.949998
 07 81 A8 4D FB 3B A3 06

003:007:000:STREAM             1542100310.967985
 07 81 CF 4E 95 3B BF 06

003:007:000:STREAM             1542100311.010004
 07 81 52 51 FB 3A 0B 06

and here is the output of dmesg:

[  532.935167] usb 3-11.1: new full-speed USB device number 13 using xhci_hcd
[  533.039201] usb 3-11.1: New USB device found, idVendor=256c, idProduct=006e
[  533.039204] usb 3-11.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  533.039206] usb 3-11.1: Product: Pen Tablet
[  533.039208] usb 3-11.1: Manufacturer: TABLET
[  533.042997] uclogic_params_init:894: uclogic 0003:256C:006E.0010: pen v2 parameters found
[  533.043008] uclogic_probe:205: uclogic 0003:256C:006E.0010: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = false
               .pen.desc_ptr = 00000000587a0660
               .pen.desc_size = 96
               .pen.id = 8
               .pen.inrange = none
               .pen.fragmented_hires = true
               .frame.desc_ptr = 0000000041b5a96d
               .frame.desc_size = 70
               .frame.id = 247
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x20
[  533.043518] input: TABLET Pen Tablet Pen as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0010/input/input50
[  533.043770] input: TABLET Pen Tablet Pad as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0010/input/input51
[  533.044106] uclogic 0003:256C:006E.0010: input,hidraw0: USB HID v1.10 Keypad [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input0
[  533.046910] uclogic_probe:205: uclogic 0003:256C:006E.0011: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = true
               .pen.desc_ptr =           (null)
               .pen.desc_size = 0
               .pen.id = 0
               .pen.inrange = normal
               .pen.fragmented_hires = false
               .frame.desc_ptr =           (null)
               .frame.desc_size = 0
               .frame.id = 0
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x00
[  533.047370] input: TABLET Pen Tablet Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.1/0003:256C:006E.0011/input/input52
[  533.047952] uclogic 0003:256C:006E.0011: input,hiddev0,hidraw1: USB HID v1.11 Mouse [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input1
[  533.049498] uclogic_probe:205: uclogic 0003:256C:006E.0012: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = true
               .pen.desc_ptr =           (null)
               .pen.desc_size = 0
               .pen.id = 0
               .pen.inrange = normal
               .pen.fragmented_hires = false
               .frame.desc_ptr =           (null)
               .frame.desc_size = 0
               .frame.id = 0
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x00
[  533.049883] input: TABLET Pen Tablet Keyboard as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0012/input/input54
[  533.107492] input: TABLET Pen Tablet Consumer Control as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0012/input/input55
[  533.107670] input: TABLET Pen Tablet System Control as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0012/input/input56
[  533.107883] uclogic 0003:256C:006E.0012: input,hidraw2: USB HID v1.11 Keyboard [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input2
[  533.191221] usb 3-11.2: new high-speed USB device number 14 using xhci_hcd
[  533.293168] usb 3-11.2: New USB device found, idVendor=058f, idProduct=6366
[  533.293173] usb 3-11.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  533.293176] usb 3-11.2: Product: Mass Storage Device
[  533.293180] usb 3-11.2: Manufacturer: Generic
[  533.293183] usb 3-11.2: SerialNumber: 058F63666352
[  533.294101] usb-storage 3-11.2:1.0: USB Mass Storage device detected
[  533.294341] scsi host6: usb-storage 3-11.2:1.0
[  534.323975] scsi 6:0:0:0: Direct-Access     Multi    Flash Reader     1.00 PQ: 0 ANSI: 0
[  534.324428] sd 6:0:0:0: Attached scsi generic sg3 type 0
[  534.862706] sd 6:0:0:0: [sdc] 15613952 512-byte logical blocks: (7.99 GB/7.45 GiB)
[  534.863125] sd 6:0:0:0: [sdc] Write Protect is off
[  534.863128] sd 6:0:0:0: [sdc] Mode Sense: 03 00 00 00
[  534.863566] sd 6:0:0:0: [sdc] No Caching mode page found
[  534.863575] sd 6:0:0:0: [sdc] Assuming drive cache: write through
[  534.867876]  sdc: sdc1
[  534.870071] sd 6:0:0:0: [sdc] Attached SCSI removable disk
[  535.313998] FAT-fs (sdc1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[  552.480145] uclogic_probe:205: uclogic 0003:256C:006E.0013: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = true
               .pen.desc_ptr =           (null)
               .pen.desc_size = 0
               .pen.id = 0
               .pen.inrange = normal
               .pen.fragmented_hires = false
               .frame.desc_ptr =           (null)
               .frame.desc_size = 0
               .frame.id = 0
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x00
[  552.480452] input: TABLET Pen Tablet Keyboard as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0013/input/input57
[  552.539846] input: TABLET Pen Tablet Consumer Control as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0013/input/input58
[  552.540032] input: TABLET Pen Tablet System Control as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0013/input/input59
[  552.540243] uclogic 0003:256C:006E.0013: input,hidraw0: USB HID v1.11 Keyboard [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input2
[  552.543034] uclogic_probe:205: uclogic 0003:256C:006E.0014: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = true
               .pen.desc_ptr =           (null)
               .pen.desc_size = 0
               .pen.id = 0
               .pen.inrange = normal
               .pen.fragmented_hires = false
               .frame.desc_ptr =           (null)
               .frame.desc_size = 0
               .frame.id = 0
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x00
[  552.543672] input: TABLET Pen Tablet Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.1/0003:256C:006E.0014/input/input60
[  552.544098] uclogic 0003:256C:006E.0014: input,hiddev0,hidraw1: USB HID v1.11 Mouse [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input1
[  552.547911] uclogic_params_init:894: uclogic 0003:256C:006E.0015: pen v2 parameters found
[  552.547923] uclogic_probe:205: uclogic 0003:256C:006E.0015: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = false
               .pen.desc_ptr = 000000002c2c3263
               .pen.desc_size = 96
               .pen.id = 8
               .pen.inrange = none
               .pen.fragmented_hires = true
               .frame.desc_ptr = 000000006e089d9b
               .frame.desc_size = 70
               .frame.id = 247
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x20
[  552.548347] input: TABLET Pen Tablet Pen as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0015/input/input62
[  552.548650] input: TABLET Pen Tablet Pad as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0015/input/input63
[  552.548913] uclogic 0003:256C:006E.0015: input,hidraw2: USB HID v1.10 Keypad [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input0
francesco@francesco:/mnt/sviluppo/uclogic-tools-master$ 

thank you again a lot for your efforts

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 13, 2018

Thank you, @hvfrancesco, this confirms it: even though the tablet responds to new-model initialization from the driver, it doesn't actually switch to the new mode and continues in default mode, on another interface. It does respond to old-model initialization and that's what we can use. Must have been a model released some time during the transition. This will need special handling in the driver, which I'll try to find time for, this week.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 13, 2018

thank you in advance Nikolai

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 13, 2018

I think you're absolutely right: as a check I just inverted the order of v2 and v1 probe in uclogic_params_init(), recompiled, and the tablet is correctly working with the modified driver

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 13, 2018

Yes, the problem is that would break the newer tablets, so we'll have to do something smart here.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 13, 2018

sure, thanks again. I'm sorry I can't help more, but I'm taking the occasion to learn a bit of new stuff too

@ChiSamurai

This comment has been minimized.

ChiSamurai commented Nov 15, 2018

Wow, thanks for all the work!! I'd wish I could help you anyhow on this... at least by visiting your patreon site for a donation :-)

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 17, 2018

I'm thinking about making the driver detect the WH1409 quirk using the value of a string descriptor, which seems to contain firmware version. Everyone here, who wants their WH1409 supported by the driver, please post the output of uclogic-probe for your tablet, so that I can verify I'm not missing your version. Thank you.

@hvfrancesco, I already have yours, so no need to do anything.

@ChiSamurai

This comment has been minimized.

ChiSamurai commented Nov 17, 2018

Thanks a lot! I'll post mine tomorrow as soon as I'm back home!

@tomvdab

This comment has been minimized.

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 18, 2018

@tomvdab, thank you! Your uclogic-probe output looks very much different from @hvfrancesco one. The firmware is much newer and the resolution is higher. I would say that your tablet might just work with the new driver. Have you tried that?

@hvfrancesco, do you think you could try asking Huion for a firmware update? That might actually fix your issue.

I'll wait a bit for more uclogic-probe outputs to decide what to do.

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 20, 2018

Thank you for the update, @hvfrancesco. OK, let's proceed with our plan. I'll write some code checking for the firmware version and changing the initialization logic for your model.

@Mraize

This comment has been minimized.

Mraize commented Nov 22, 2018

Hey, here's my tablet's dmesg and probe/decode output, should be the first version, or late in production.

huionwh1409_dmesg_probe_decode.txt

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 22, 2018

Thank you, @Mraize, your tablet is the same as the ones @hvfrancesco and @ChiSamurai have.

@spbnick spbnick referenced this issue Nov 24, 2018

Merged

Add support for Huion WH1409 #225

1 of 1 task complete
@spbnick

This comment has been minimized.

Member

spbnick commented Nov 24, 2018

OK, I implemented support for Huion WH1409 and pushed it to #225. Please download and test the modified code available at https://github.com/spbnick/digimend-kernel-drivers/archive/add_support_for_huion_wh1409.zip

Please report your results here!

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 24, 2018

@spbnick the code seems to work perfectly! the tablet is correctly initialized and performs as expected. Only thing not working are the buttons on the frame, but that's not a big issue for me. Thanks

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 24, 2018

Glad to hear that, @hvfrancesco! The buttons should work, could you describe how you expect them to work, and also provide the output of evtest for the "pad" device, where you press them all in turn.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 24, 2018

I was trying to map them with xsetwacom as the pad is correctly using wacom X11 driver.

xsetwacom --list
TABLET Pen Tablet Pen stylus id: 8 type: STYLUS
TABLET Pen Tablet Pad pad id: 9 type: PAD

It does not give any error message when, for example, do:
xsetwacom --set "TABLET Pen Tablet Pad pad" Button 10 "key y"
but there's no effect, and so I've tried to check with evtest and there seems to be no effect either when pressing them. Maybe I'm doing something wrong here. This is the output:

sudo evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Power Button
/dev/input/event1: Power Button
/dev/input/event2: AT Translated Set 2 keyboard
/dev/input/event3: ImExPS/2 Logitech Explorer Mouse
/dev/input/event4: TABLET Pen Tablet Pen
/dev/input/event5: TABLET Pen Tablet Pad
/dev/input/event6: TABLET Pen Tablet Mouse
/dev/input/event7: TABLET Pen Tablet Keyboard
/dev/input/event8: TABLET Pen Tablet Consumer Control
/dev/input/event9: TABLET Pen Tablet System Control
/dev/input/event10: HDA Intel PCH Front Mic
/dev/input/event11: HDA Intel PCH Rear Mic
/dev/input/event12: HDA Intel PCH Line
/dev/input/event13: HDA Intel PCH Line Out
/dev/input/event14: HDA Intel PCH Front Headphone
/dev/input/event15: Eee PC WMI hotkeys
/dev/input/event16: HDA NVidia HDMI/DP,pcm=3
/dev/input/event17: HDA NVidia HDMI/DP,pcm=7
/dev/input/event18: HDA NVidia HDMI/DP,pcm=8
/dev/input/event19: HDA NVidia HDMI/DP,pcm=9
Select the device event number [0-19]: 5
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x256c product 0x6e version 0x110
Input device name: "TABLET Pen Tablet Pad"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 256 (BTN_0)
Event code 257 (BTN_1)
Event code 258 (BTN_2)
Event code 259 (BTN_3)
Event code 260 (BTN_4)
Event code 261 (BTN_5)
Event code 262 (BTN_6)
Event code 263 (BTN_7)
Event code 264 (BTN_8)
Event code 265 (BTN_9)
Event code 304 (BTN_SOUTH)
Event code 305 (BTN_EAST)
Event code 331 (BTN_STYLUS)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 0
Min 0
Max 1
Event code 1 (ABS_Y)
Value 0
Min 0
Max 1
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Properties:
Testing ... (interrupt to exit)

Xorg.0.log

@ChiSamurai

This comment has been minimized.

ChiSamurai commented Nov 24, 2018

Tablet indeed seems to work like a charm. I did not try the buttons yet, but I'll do it in a minute.
I had one issue after installing the drivers: X11 was not starting and dropped an error:

"NoMatchProduct" is not a valid keyword in this section.

The section was in /usr/share/X11/xorg.conf.d/50-digimend.conf, Line 18:

NoMatchProduct "MousePen"

After commenting it out, X11 was starting normally.

@ChiSamurai

This comment has been minimized.

ChiSamurai commented Nov 24, 2018

Okay, I tried to get some events from the buttons with evtest - without luck. I tried all "TABLET Pen Tablet" devices but got no output by triggering the buttons :-(

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 24, 2018

@hvfrancesco, @ChiSamurai, could you please post the output of sudo usbhid-dump -es -m 256C:006E for your tablet, where you press the buttons one-by-one, top-to-bottom, with this driver installed?

@ChiSamurai, I must be using a new X.org feature in the driver (NoMatchProduct), which doesn't work for you. Could you tell me which distribution version you're using?

@Mraize

This comment has been minimized.

Mraize commented Nov 24, 2018

@spbnick , getting the same as @ChiSamurai, that's what mine spits out.
usbhid-dump.txt

@tomvdab

This comment has been minimized.

tomvdab commented Nov 24, 2018

Commit 99bd2a3 seems to be working for my Huion WH1409 V2, including all buttons. I'm on Arch linux kernel 4.19.2 .

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 25, 2018

Thanks, @tomvdab, that's good to know. Even though this change wasn't addressing your tablet (it should be working without it), that means I haven't broken it :)

@ChiSamurai

This comment has been minimized.

ChiSamurai commented Nov 25, 2018

@spbnick I'm on Linux Mint 18.3 Cinnamon 64bit (Cinnamon Version 3.6.7, Kernel 4.15.0-39-generic).
X11 Version:

xdpyinfo|grep -i version
version number: 11.0
X.Org version: 1.18.4

Here's my usbhid dump:
usbhid-dump.log

Since the tablet has two columns of buttons I was going top-left, top-right to finally bottom-left, bottom-right.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 26, 2018

here is mine:
usbhid-dump.txt

@spbnick

This comment has been minimized.

Member

spbnick commented Nov 26, 2018

@hvfrancesco, @ChiSamurai, the reports from usbhid-dump look good, I'm not sure what's happening there.

Could you please execute echo "module hid_uclogic +pfl" | sudo tee /sys/kernel/debug/dynamic_debug/control to enable debug logging, reconnect the tablet, and post about 100 lines from the end of dmesg output?

Please also make sure that you don't get any output from evtest when running it for the device named "TABLET Pen Tablet Pad" (or similar, ending with "Pad"), when pressing the frame buttons.

Thank you.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Nov 26, 2018

@spbnick I've checked and there's actually no event reported for Pad when running evtest.
This is the output of dmesg when re-connecting the tablet:

[ 1504.446929] usb 3-11: USB disconnect, device number 2
[ 1504.446934] usb 3-11.1: USB disconnect, device number 4
[ 1504.718677] usb 3-11.2: USB disconnect, device number 5
[ 1512.877798] usb 3-11: new high-speed USB device number 6 using xhci_hcd
[ 1513.026107] usb 3-11: New USB device found, idVendor=058f, idProduct=6254
[ 1513.026113] usb 3-11: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 1513.026117] usb 3-11: Product: USB2.0Hub
[ 1513.026737] hub 3-11:1.0: USB hub found
[ 1513.026787] hub 3-11:1.0: 2 ports detected
[ 1513.313794] usb 3-11.1: new full-speed USB device number 7 using xhci_hcd
[ 1513.418103] usb 3-11.1: New USB device found, idVendor=256c, idProduct=006e
[ 1513.418109] usb 3-11.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1513.418113] usb 3-11.1: Product: Pen Tablet
[ 1513.418116] usb 3-11.1: Manufacturer: TABLET
[ 1513.422457] uclogic_params_huion_init:760: uclogic 0003:256C:006E.0004: transition firmware detected, not probing pen v2 parameters
[ 1513.422977] uclogic_params_huion_init:795: uclogic 0003:256C:006E.0004: pen v1 parameters found
[ 1513.423489] uclogic_params_frame_init_v1_buttonpad:482: uclogic 0003:256C:006E.0004: generic buttons enabled
[ 1513.423495] uclogic_params_huion_init:806: uclogic 0003:256C:006E.0004: buttonpad v1 parameters found
[ 1513.423508] uclogic_probe:205: uclogic 0003:256C:006E.0004: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = false
               .pen.desc_ptr = 000000000c6dca2a
               .pen.desc_size = 92
               .pen.id = 7
               .pen.inrange = inverted
               .pen.fragmented_hires = false
               .frame.desc_ptr = 00000000236a31d6
               .frame.desc_size = 70
               .frame.id = 0
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x20
[ 1513.424126] input: TABLET Pen Tablet Pen as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0004/input/input29
[ 1513.424435] input: TABLET Pen Tablet Pad as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.0/0003:256C:006E.0004/input/input30
[ 1513.424730] uclogic 0003:256C:006E.0004: input,hidraw0: USB HID v1.10 Keypad [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input0
[ 1513.427514] uclogic_probe:205: uclogic 0003:256C:006E.0005: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = true
               .pen.desc_ptr =           (null)
               .pen.desc_size = 0
               .pen.id = 0
               .pen.inrange = normal
               .pen.fragmented_hires = false
               .frame.desc_ptr =           (null)
               .frame.desc_size = 0
               .frame.id = 0
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x00
[ 1513.427976] input: TABLET Pen Tablet Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.1/0003:256C:006E.0005/input/input31
[ 1513.428360] uclogic 0003:256C:006E.0005: input,hiddev0,hidraw1: USB HID v1.11 Mouse [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input1
[ 1513.429922] uclogic_probe:205: uclogic 0003:256C:006E.0006: parameters:
               .invalid = false
               .desc_ptr =           (null)
               .desc_size = 0
               .pen_unused = true
               .pen.desc_ptr =           (null)
               .pen.desc_size = 0
               .pen.id = 0
               .pen.inrange = normal
               .pen.fragmented_hires = false
               .frame.desc_ptr =           (null)
               .frame.desc_size = 0
               .frame.id = 0
               .frame.re_lsb = 0
               .frame.dev_id_byte = 0
               .pen_frame_flag = 0x00
[ 1513.430324] input: TABLET Pen Tablet Keyboard as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0006/input/input33
[ 1513.490134] input: TABLET Pen Tablet Consumer Control as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0006/input/input34
[ 1513.490342] input: TABLET Pen Tablet System Control as /devices/pci0000:00/0000:00:14.0/usb3/3-11/3-11.1/3-11.1:1.2/0003:256C:006E.0006/input/input35
[ 1513.490557] uclogic 0003:256C:006E.0006: input,hidraw2: USB HID v1.11 Keyboard [TABLET Pen Tablet] on usb-0000:00:14.0-11.1/input2
@ChiSamurai

This comment has been minimized.

ChiSamurai commented Nov 28, 2018

@spbnick
Sorry for the delay, but here is mine:
debug.log

@DamnWidget

This comment has been minimized.

DamnWidget commented Nov 30, 2018

Hi @spbnick
I am in the same boat, the Stylus works perfectly with your PR code but pad buttons are dead, this is the relevant output from dmesg when I unplug and plug the WiFi receiver.

[141461.966057] usb 1-2: new high-speed USB device number 12 using xhci_hcd
[141462.147752] hub 1-2:1.0: USB hub found
[141462.147826] hub 1-2:1.0: 4 ports detected
[141462.466066] usb 1-2.1: new full-speed USB device number 13 using xhci_hcd
[141462.607062] uclogic_params_huion_init:760: uclogic 0003:256C:006E.0017: transition firmware detected, not probing pen v2 parameters
[141462.607780] uclogic_params_huion_init:795: uclogic 0003:256C:006E.0017: pen v1 parameters found
[141462.608467] uclogic_params_frame_init_v1_buttonpad:482: uclogic 0003:256C:006E.0017: generic buttons enabled
[141462.608476] uclogic_params_huion_init:806: uclogic 0003:256C:006E.0017: buttonpad v1 parameters found
[141462.608490] uclogic_probe:205: uclogic 0003:256C:006E.0017: parameters:
                .invalid = false
                .desc_ptr =           (null)
                .desc_size = 0
                .pen_unused = false
                .pen.desc_ptr = ffffa061b40c8660
                .pen.desc_size = 92
                .pen.id = 7
                .pen.inrange = inverted
                .pen.fragmented_hires = false
                .frame.desc_ptr = ffffa061b40c8120
                .frame.desc_size = 70
                .frame.id = 0
                .frame.re_lsb = 0
                .frame.dev_id_byte = 0
                .pen_frame_flag = 0x20
[141462.608990] input: TABLET Pen Tablet Pen as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.1/1-2.1:1.0/0003:256C:006E.0017/input/input95
[141462.609427] input: TABLET Pen Tablet Pad as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.1/1-2.1:1.0/0003:256C:006E.0017/input/input96
[141462.609910] uclogic 0003:256C:006E.0017: input,hidraw1: USB HID v1.10 Keypad [TABLET Pen Tablet] on usb-0000:00:14.0-2.1/input0
[141462.613261] uclogic_probe:205: uclogic 0003:256C:006E.0018: parameters:
                .invalid = false
                .desc_ptr =           (null)
                .desc_size = 0
                .pen_unused = true
                .pen.desc_ptr =           (null)
                .pen.desc_size = 0
                .pen.id = 0
                .pen.inrange = normal
                .pen.fragmented_hires = false
                .frame.desc_ptr =           (null)
                .frame.desc_size = 0
                .frame.id = 0
                .frame.re_lsb = 0
                .frame.dev_id_byte = 0
                .pen_frame_flag = 0x00
[141462.613736] input: TABLET Pen Tablet Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.1/1-2.1:1.1/0003:256C:006E.0018/input/input97
[141462.614168] uclogic 0003:256C:006E.0018: input,hiddev1,hidraw2: USB HID v1.11 Mouse [TABLET Pen Tablet] on usb-0000:00:14.0-2.1/input1
[141462.615697] uclogic_probe:205: uclogic 0003:256C:006E.0019: parameters:
                .invalid = false
                .desc_ptr =           (null)
                .desc_size = 0
                .pen_unused = true
                .pen.desc_ptr =           (null)
                .pen.desc_size = 0
                .pen.id = 0
                .pen.inrange = normal
                .pen.fragmented_hires = false
                .frame.desc_ptr =           (null)
                .frame.desc_size = 0
                .frame.id = 0
                .frame.re_lsb = 0
                .frame.dev_id_byte = 0
                .pen_frame_flag = 0x00
[141462.616164] input: TABLET Pen Tablet Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.1/1-2.1:1.2/0003:256C:006E.0019/input/input99
[141462.686048] input: TABLET Pen Tablet Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.1/1-2.1:1.2/0003:256C:006E.0019/input/input100
[141462.686269] input: TABLET Pen Tablet System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2.1/1-2.1:1.2/0003:256C:006E.0019/input/input101
[141462.686585] uclogic 0003:256C:006E.0019: input,hidraw3: USB HID v1.11 Keyboard [TABLET Pen Tablet] on usb-0000:00:14.0-2.1/input2
[141462.786056] usb 1-2.4: new high-speed USB device number 14 using xhci_hcd
[141462.920400] usb-storage 1-2.4:1.0: USB Mass Storage device detected
[141462.920940] scsi host1: usb-storage 1-2.4:1.0
[141462.935259] udevd[14255]: failed to execute '/lib/udev/hid-rebind' 'hid-rebind': No such file or directory
[141462.935665] udevd[14257]: failed to execute '/lib/udev/hid-rebind' 'hid-rebind': No such file or directory
[141462.935989] udevd[14260]: failed to execute '/lib/udev/hid-rebind' 'hid-rebind': No such file or directory
[141463.101222] [1711]: Watching system buttons on /dev/input/event24 (TABLET Pen Tablet Keyboard)
[141463.131076] [1711]: Watching system buttons on /dev/input/event26 (TABLET Pen Tablet System Control)
[141463.237610] [1711]: Watching system buttons on /dev/input/event25 (TABLET Pen Tablet Consumer Control)

Let me know what else can I do to help you help me

@spbnick

This comment has been minimized.

Member

spbnick commented Dec 1, 2018

Thank you everyone for the information. I'll try with one of the tablets using the older protocol, at home. Meanwhile, somebody, please post the output of sudo bash -c 'cat /sys/kernel/debug/hid/0003:256C:006E.*/rdesc' and then also the output of sudo bash -c 'cat /sys/kernel/debug/hid/0003:256C:006E.*/events' where you try to press one or two buttons on the tablet frame. I either messed up the report descriptor or massaging the reports here. Thank you.

@DamnWidget

This comment has been minimized.

DamnWidget commented Dec 1, 2018

Here you are:
Rdesc: https://gist.github.com/DamnWidget/cf82be4d5ddafe10a7ca8b05a036a5f4
Events: https://gist.github.com/DamnWidget/0875b3f9c114ca359e489cc76684a345

In the events report I pressed from button 1 to 12 sequentially in order

@spbnick

This comment has been minimized.

Member

spbnick commented Dec 1, 2018

Thank you, @DamnWidget, I think I found the problem. Stand by for a fix!

@spbnick

This comment has been minimized.

Member

spbnick commented Dec 1, 2018

OK, fixed version available at https://github.com/spbnick/digimend-kernel-drivers/archive/add_support_for_huion_wh1409.zip - please test!

I lost assignment of the virtual frame report ID during latest refactoring. Good that we caught it.

@DamnWidget

This comment has been minimized.

DamnWidget commented Dec 1, 2018

Confirmed, it works flawlessly with this last update. I think you can merge the PR into the mainline.

Thank you very much for take care of this one.

@ChiSamurai

This comment has been minimized.

ChiSamurai commented Dec 1, 2018

Fantastic! I'm in hurry but evtest gives output for each button and assigning one to a key with xsetwacom worked! Thank you for all the effort in this issue!

@spbnick spbnick closed this in #225 Dec 1, 2018

@spbnick

This comment has been minimized.

Member

spbnick commented Dec 1, 2018

Thank you everyone for your help. Official support for Huion WH1409 is now merged to the drivers.

@hvfrancesco

This comment has been minimized.

hvfrancesco commented Dec 1, 2018

thanks a lot Nikolai!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment