Thread: [DIGImend-devel] Testing Huion GT-190 on Linux Mint 17.3
Brought to you by:
spb_nick
|
From: Bernd W. <bwe...@ya...> - 2015-12-27 12:33:30
|
Bus 004 Device 009: ID 256c:006e
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x256c
idProduct 0x006e
bcdDevice 0.00
iManufacturer 5 (error)
iProduct 6 Tablet Monitor
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 84
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 177
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 2
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 244
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 2
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.0b
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 92
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 8
Device Status: 0x0000
(Bus Powered)
|
|
From: Bernd W. <bwe...@ya...> - 2015-12-27 12:56:08
|
Actually, I just restarted that laptop and played around a bit more. I have it nailed to a very simple scaling issue and reproducible at this stage. So probably an easy ting to fix somewhere. Let me see if I can explain it. On Linux Mint 17.3 Cinnamon Edition, I can configure the displays in a Display widget that shows the two monitors and I can drag them around to model their physical relationship. Much like in MS-Windows, and quite awesomely slick really. Now I have experimented with my table configured to left, right, above and below, and performed pen motion tests across the screen and here is what is clear: Imagine the edge that the two monitors logically join at, and call it E. Let us define the axial direction as that orthogonal to (perpendicular to E) conceptually the line I'd move the pen along if I went from the outside edge of one monitor to the outside edge of the other crossing E. Now: If I move the pen across the table perpendicular to the axial direction (parallel with E) the cursor tracks the pen nib well. If I move the pen along the axial direction then, at the far edge of the tablet the cursor is under the nib and as I move towards the other monitor the cursor runs ahead of the pen nib, increasingly such that by the time I reach the opposite edge of the tabled, edge E, the cursor is now at the far edge of the monitor. A further test reveals that if I mirror rather than extend the displays, the problem goes away, the cursor tracks under the pen nib fine. My conclusion: There is a mapping somewhere that is erroneously reading the pen coordinate in the tablet space and moving the cursor in a larger X windows space. I wonder if that is easy to fix? I wonder also if this is specific to the Huion GT-190 or if it's generically an issue with Digimend and Linux MINT or Ubuntu on which its based or Xorg or? Regards, Bernd. |
|
From: Bernd W. <bwe...@ya...> - 2016-01-01 09:34:01
|
Well it's a quiet time of year all right. Not much traffic on this list it seems. On the flip side it affords a little free time (which I would much rather spend on other things but hey, I need to get the tablet working it was a Christmas gift ;-). In that time I am pleased to say I have been in discussion with Daniel Pinheiro Lima and learned much. To wit I hacked this up quickly today: https://github.com/bernd-wechner/tablet-config may it be of use to others and self explanatory. Easily the best documentation I found was here: https://wiki.archlinux.org/index.php/Calibrating_Touchscreen And things I have learned along the way: 1. xinput_calibrator is broken and simply does not work for dual monitors. I'd be interested in trying to fix it if I can get time. simply needs to constrain its interest to a nominated monitor and not the whole X screen. I'm not sure what issues this may pose alas, not having a calibrator. Mostly touchscreens are pretty fine as is, but the purist in me certainly believes it's handy to be able to recalibrate. 2. xrestrict probably does what my script does only better ;-). I haven't tried it yet but I hope to if I have time. In particular it may be easier in C to use the pen and monitor to determine the association between the two that is needed. But it's sloppy no matter what as it takes a little learning to work out where to look for the cursor when you approach the tablet with your pen. 3. GIMP 2.8 can't read pen pressure though allegedly GIMP 2.6 can and GIMP 3.0 will be able to. Krita has no problem with it though and rocks It would be lovely to see the connection between the monitor and pen made automatically using ID information probably in the EDID (that xrandr --verbose reveals) and the USB ID (that lsusb reveals). Somewhere there would need to be a mapping I suspect and this could then work out of the box, or? Regards, Bernd. |