Page 1 of 2 12 LastLast
Results 1 to 10 of 85

Thread: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

Hybrid View

  1. #1
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    Often rebranded as Aiptek, Genius, Monoprice, Princeton, or Trust tablets amongst other brands.

    Last updated: June 2, 2012


    Preliminaries
    Because of re-branding it is not always obvious what tablet you actually have. You can determine your tablet's OEM Vendor ID and Product ID by entering the following command in a terminal:
    Code:
    lsusb
    and looking for the tablet line in the output.
    Code:
    KYE Systems Vendor ID = 0458
    UC-Logic Vendor ID = 5543
    Waltop Vendor ID = 172F
    The Product ID (essentially the model #) immediately follows the Vendor ID, separated from it by a colon.


    Sources
    DIGImend project
    DIGImend project mediawiki
    [PATCH v2] HID: kye: Add support for 3 tablets
    Ubuntu Community Documentation KernelCompile
    genius mousepen tablet i608 pen does not draw post #45
    HOW TO set up a Waltop tablet in Lucid & Maverick & Natty & Oneiric


    Summary
    The UC-Logic and new KYE tablets are intended to use their HID kernel drivers and evdev as the X driver starting with Natty. The Waltops can use the xf86-input-wacom driver starting with Maverick, however both stylus buttons are treated as the same button unless the Maverick kernel is patched. This is fixed in Natty. See the Waltop HOW TO.

    When we need to patch the kernel to add tablet support we'll start off as if we planned on rolling our own custom kernel. But after patching the kernel rather than recompile the entire kernel we'll just compile and use the patched kernel drivers/modules. This has the advantage of saving quite a bit of time. The disadvantage is the use of the patched "vanilla" modules excludes other Ubuntu specific patches if they are also applied to those modules. That may mean fixes or functionality for some devices may be absent if they depended on Ubuntu kernel patches to the modules. Although unlikely breakage is also possible. You could of course use the Ubuntu Community wiki's Kernel Compile to go ahead and recompile the kernel if you wished.

    The HID section of the kernel does not permit a DKMS implementation of HID modules. The reason is that the generic HID driver hid.ko has a list of devices with out-of-tree or special drivers in it and if the device is not present in the list the hid.ko can not chose a special driver (e.g. hid-kye.ko) for it. This means a kernel update will break your tablet support and there is no way around it. So if you need use of your tablet do not allow kernel updates until you have some time to recompile the modules you need. Nikolai Kondrashov has come up with a way to implement DKMS for HID modules and submitted it to the kernel. So maybe in a future kernel this limitation will be addressed. Update (4-2-12): Jiri Kosina (kernel HID maintainer) is not enthusiastic about the DKMS idea. Instead he suggested trying binding and unbinding modules. However when Nikolai tested this feature it did not work. Currently Jiri and Nick are planning on seeing if they can get it working rather than doing the DKMS.


    Patched pre-Compiled Kernels with KYE, UC-Logic, and Waltop Tablet Support
    Pre-compiled kernels are now available from the DIGImend site. See the project blog post "First kernel packages are out" for details. Instructions are on the DIGImend mediawiki page "Kernel packages".

    The patched kernels are located at kernel-packages in Files on the DIGImend SourceForge site. Pick the one closest to your current kernel, usually the most recent one. You can determine your kernel version by entering in a terminal:
    Code:
    uname -r
    And you can determine whether you have a 32-bit (i386) or 64-bit (amd64) install with:
    Code:
    uname -m
    Then follow the instructions on the DIGImend mediawiki.


    HOW TO Add KYE Tablet Support to Ubuntu's Oneiric and Precise Kernels (also includes the Waltop Pen button fix)
    Genius EasyPen i405X, Genius MousePen i608X, and Genius EasyPen M610X

    I. Available Compiled Kernels with KYE Tablet Support

    Oneiric Ocelot (11.10)
    32-bit
    linux-headers-3.0.0-17-kye_3.0.0-17.30_i386.deb
    linux-image-3.0.0-17-kye_3.0.0-17.30_i386.deb
    * kernel by Nick, provided by Janailson Leite

    64-bit
    linux-headers-3.0.0-16-kye_3.0.0-16.28_amd64.deb
    linux-image-3.0.0-16-kye_3.0.0-16.28_amd64.deb
    * kernel by Nick, link provided by viktoria.s


    II. Compiling the KYE Modules
    The KYE tablets are supported natively by the 3.3 kernel. We'll do everything on the Desktop.

    First download on your Desktop HID-kye-Add-support-for-3-tablets.patch (and the waltop_button_fix_v2.patch if fixing your Waltop) attached below and extract it. The Waltop patch also adds support for 2 models, the Q Pad and PID 0038. Then open a terminal and download your Ubuntu kernel's source code onto your Desktop with the following commands.
    Code:
    cd Desktop
    
    sudo apt-get build-dep --no-install-recommends linux-image-$(uname -r)
    
    apt-get source linux-image-$(uname -r)
    The dependencies can take a while to download. The kernel is about 94 MB and takes a few minutes to download depending on your connection. With Oneiric you'll see something like linux_3.0.0.orig.tar.gz, linux_3.0.0-16.29.dsc, linux_3.0.0-16.29.diff.gz, and linux-3.0.0. If the kernel source code doesn't download then you may need to check in Software Sources in the Ubuntu Software tab if you have the box in front of Source code checked.

    To see the files you want to patch and then compile you can use Nautilus (Places) to go into the kernel's folder (e.g. linux-3.0.0) now on your Desktop and navigate to drivers/hid.

    You'll apply the patch in the terminal using the following commands changing the folder name for Precise (to linux-3.2.0) of course.
    Code:
    cd linux-3.0.0
    
    patch -p1 < ~/Desktop/HID-kye-Add-support-for-3-tablets.patch
    
    (needed if fixing the Waltop pen's buttons or adding the Q Pad or PID 0038 tablets)
    patch -p1 < ~/Desktop/waltop_button_fix_v2.patch
    After the files are patched change directory to the downloaded kernel's source code /drivers/hid directory:
    Code:
    cd drivers/hid
    Now you are ready to compile the HID modules. Use the following command:
    Code:
    make -C/lib/modules/`uname -r`/build M=`pwd` modules
    This compiles all the HID modules, which you don't need, but the compile goes fast even so.

    We want 4 of the compiled modules: hid.ko, hid-kye.ko, usbhid.ko, and usbmouse.ko. First make a backup of your current versions using some extension. You want to be able to restore them from the Recovery Mode command line if you have to.
    Code:
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/hid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid.ko.orig
    
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/hid-kye.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid-kye.ko.orig
    
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbhid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbhid.ko.orig
    
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbmouse.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbmouse.ko.orig
    
    (only if the Waltop patch was applied)
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/waltop.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/waltop.ko.orig
    Now copy the four newly compiled modules into your system kernel's modules directory with:
    Code:
    sudo cp hid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid.ko
    
    sudo cp hid-kye.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid-kye.ko
    
    sudo cp usbhid/usbhid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbhid.ko
    
    sudo cp usbhid/usbmouse.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbmouse.ko
    
    (only if the Waltop patch was applied)
    sudo cp usbhid/waltop.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/waltop.ko
    * need for usbmouse.ko from viktoria.s - Nick is dubious that this is needed, if your tablet works without it let me know

    Rebuild all of the module dependencies:
    Code:
    sudo depmod -a
    Then reboot and with luck the KYE tablet should be working.

    Thank you to viktoria.s for testing in Precise.
    Attached Files Attached Files
    Last edited by Favux; June 2nd, 2012 at 07:11 PM.

  2. #2
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    Last updated: April 17, 2012


    Preliminaries
    You can determine your kernel version by entering the following command in a terminal:
    Code:
    uname -r
    You should be able to determine your tablet model by running this command in a terminal:
    Code:
    xinput list

    Summary
    The HOW TO below adds HID kernel driver support for the following 4 UC-Logic tablets: WP4030U, WP5540U, WP8060U, and PF1209. And the following 4 Waltop tablets: Slim Tablet 5.8", Slim Tablet 12.1", Media Tablet 10.6", and Media Tablet 14.1". These models are supported natively in the 2.6.37 kernel. In addition several patches make the HID drivers generally more drawing tablet capable.

    This HOW TO is untested. Several of the patches affect multiple hid drivers beyond hid-uclogic.ko and hid-waltop.ko. This HOW TO does not copy all of the affected compiled drivers into the kernel's modules directory to save time. The assumption is that will not break things. So proceed at your own risk and please provide feed back if you test. If it can not be made to work then compiling an entire custom kernel may be necessary.


    HOW TO Apply the Backported digimend-kernel-patches to Kernel's 2.6.32 (Lucid), 2.6.35 (Maverick), and 2.6.36
    Kernel HID support for 4 UC-Logic (hid-uclogic.ko) and 4 Waltop (hid-waltop.ko) tablets

    We'll do everything on the Desktop using Maverick's 2.6.35 kernel as an example. Change the commands as needed for the kernel you are patching.

    First download on your Desktop the digimend-kernel-patches tar from the DIGImend project site and extract it. Then open a terminal and download your Ubuntu kernel's source code onto your Desktop with the following commands.
    Code:
    cd Desktop
    
    sudo apt-get build-dep --no-install-recommends linux-image-$(uname -r)
    
    apt-get source linux-image-$(uname -r)
    The dependencies can take a while to download. The kernel is about 94 MB and takes a few minutes to download depending on your connection. You'll see something like linux_2.6.35.orig.tar.gz, linux_2.6.35-32.66.dsc, linux_2.6.35-32.66.diff.gz, and linux-2.6.35 if your release is Maverick.

    To see the files you want to patch and then compile you can use Nautilus (Places) to go into the kernel's folder (e.g. linux-2.6.35) now on your Desktop and navigate to drivers/input/hid. You might notice modules such as usbmouse.ko are missing depending on the kernel version. This is because whether a driver is compiled as part of the baseline kernel (not visible) or as a loadable module is determined by the kernel's config file (/boot/grub). These options are decided by the kernel team. Loadable modules are selected with an "m".

    Example 1: digimend-kernel-patches-0.4 tar (12-26-10)
    You'll apply the patches in the terminal using the following commands changing the folder name if using another kernel of course.
    Code:
    cd linux-2.6.35
    
    patch -p1 < ~/Desktop/digimend-kernel-patches-0.4/vanilla/2.6.35/0001-HID-allow-resizing-and-replacing-report-descriptors.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-0.4/vanilla/2.6.35/0002-HID-rdesc-parser-remove-local-item-size-limit.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-0.4/vanilla/2.6.35/0003-HID-Add-Tablet-Pick-BTN_STYLUS2-mapping.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-0.4/vanilla/2.6.35/0004-HID-add-absolute-axis-resolution-calculation.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-0.4/vanilla/2.6.35/0005-Add-support-for-4-UC-Logic-tablets.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-0.4/vanilla/2.6.35/0006-Add-support-for-4-Waltop-tablets.patch
    Example 2: digimend-kernel-patches-5 tar (4-16-12)
    As you can see a new patch adds tilt support for Waltops with tilt and another patch adds 3 KYE tablets. Support is also added for an additional UC-Logic tablet and 3 Waltop tablets. You'll apply the patches in the terminal using the following commands changing the folder name if using another kernel of course.
    Code:
    cd linux-2.6.35
    
    patch -p1 < ~/Desktop/digimend-kernel-patches-5/stable/2.6.32.59/0001-HID-allow-resizing-and-replacing-report-descriptors.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-5/stable/2.6.32.59/0002-HID-rdesc-parser-remove-local-item-size-limit.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-5/stable/2.6.32.59/0003-HID-Add-Tablet-Pick-BTN_STYLUS2-mapping.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-5/stable/2.6.32.59/0004-HID-add-absolute-axis-resolution-calculation.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-5/stable/2.6.32.59/0005-HID-hid-input-Add-digitizer-tilt-usage-support.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-5/stable/2.6.32.59/0006-Add-support-for-5-UC-Logic-tablets.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-5/stable/2.6.32.59/0007-Add-support-for-7-Waltop-tablets.patch
    patch -p1 < ~/Desktop/digimend-kernel-patches-5/stable/2.6.32.59/0008-HID-kye-Add-support-for-3-tablets.patch
    Since some of the patches have made their way into the kernel you'll notice that the 3.0.28 and 3.2.9 folders only contain 4 patches (and they are different for each). See post #1 above for links to Oneiric and Precise kernels with the patches already applied.

    After the files are patched change directory to the downloaded kernel's source code /drivers/hid directory:
    Code:
    cd drivers/hid
    Now you are ready to compile the HID modules. Use the following command:
    Code:
    make -C/lib/modules/`uname -r`/build M=`pwd` modules
    This compiles all the HID modules, which you don't need, but the compile goes fast even so.

    We want 5 of the compiled modules: hid.ko, hid-uclogic.ko, hid-waltop.ko, usbhid.ko, and usbmouse.ko. First make a backup of your current versions using some extension. You want to be able to restore them from the Recovery Mode command line if you have to.
    Code:
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/hid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid.ko.orig
    
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/hid-kye.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid-uclogic.ko.orig
    
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/hid-kye.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid-waltop.ko.orig
    
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbhid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbhid.ko.orig
    
    sudo cp /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbmouse.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbmouse.ko.orig
    Now copy the five newly compiled modules into your system kernel's modules directory with:
    Code:
    sudo cp hid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid.ko
    
    sudo cp hid-kye.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid-uclogic.ko
    
    sudo cp hid-kye.ko /lib/modules/$(uname -r)/kernel/drivers/hid/hid-waltop.ko
    
    sudo cp usbhid/usbhid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbhid.ko
    
    sudo cp usbhid/usbmouse.ko /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbmouse.ko
    Rebuild all of the module dependencies:
    Code:
    sudo depmod -a
    Then reboot and with luck your UC-Logic or Waltop tablet should be working or working better.
    Last edited by Favux; April 17th, 2012 at 09:50 PM.

  3. #3
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    Last updated: March 25, 2012

    In order to use the evdev X driver for tablet support in Lucid and Maverick with our shiny new kernel in post #2 we would need to patch it so that it has most of the functionality of evdev 2.5.99. Unfortunately neither of the two patches currently available at the DIGImend project site's "Evdev patches" in the digimend-evdev-patches-0.1 tar work with Lucid's 2.3.2-5 or Maverick's 2.3.2-6 versions of evdev. This is because one patch is for evdev version 2.0.8-1, which is the Debian Lenny version and the other is for evdev version 2.5.0. The Lucid and Maverick versions lie in between and are too different for either patch to apply to their evdev deb package source code.


    DIGImend patches are available for evdev versions:
    2.0.8-1
    2.5.0


    Natty evdev v. 2.6.0-1 - patching of evdev not needed
    Maverick evdev v. 2.3.2-6
    Lucid evdev v. 2.3.2-5
    Last edited by Favux; March 25th, 2012 at 05:45 PM.

  4. #4
    Join Date
    Oct 2012
    Beans
    1

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    So after doing depmod, does we need to compile the kernel? I follow your step but it's not working.

    Thanks before

  5. #5
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    Hi p1xelbud,

    Welcome to Ubuntu forums!


    No. If the modules compiled successfully and you copied them into place correctly a tablet supported by the patches should start working after a reboot. Although occasionally it take a few reboots for things to shake out.

    That's the idea of the HOW TO. It is a short cut to compiling the entire kernel.
    Last edited by Favux; October 5th, 2012 at 02:52 PM.

  6. #6
    Join Date
    Sep 2011
    Beans
    23

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    Greetings, and sorry for the inconvenience but I wonder if I could get some help with a Kanvus tablet, The H85 is not on the list of supported tablets.

    Previously used WizardPen 0.8.1 driver for this tablet will work on a Debian 6, 32bit. But when you start using Kubuntu 4.12 amd64 (need to improve the support of proprietary bus) I lose the ability to use this driver.

    A few hours ago I sent a diagnosis with the specifications of the tablet, and I wonder: Will there be simulated or support for this tablet with current driver components? If I can use with this driver, please tell me how? (I'm way too novice to compile kernel)

    The tablet has specifications very paresidas to those shown by UC-Logic Tablet TWHA60 by Monoprince (5543:0781), but the H85 is 5543:0782 (UC-Logic from what I can see)

    If it is useful here is the data used in the configuration of H85 with 70-wizardpen.conf driver, and I see that the syntax is similar.

    Code:
    Section "InputClass"
    **** Identifier "WizardPen class"
    **** MatchIsTablet "on"
    # MatchVendor "UC-LOGIC | H850S | KYE Systems | Ace Cad"
    **** MatchProduct "H850S"
    **** MatchDevicePath "/ dev / input / event *"
    **** Driver "wizardpen"
    EndSection
    
    Section "InputClass"
    **** Identifier "WizardPen ignore mouse dev class"
    **** MatchIsTablet "on"
    # MatchVendor "UC-LOGIC | H850S | KYE Systems | Ace Cad"
    **** MatchProduct "H850S"
    **** MatchDevicePath "/ dev / input / mouse *"
    **** Option "Ignore" "yes"
    EndSection
    Thanks for any help you can give.

  7. #7
    Join Date
    Jan 2011
    Location
    Poor Country
    Beans
    22
    Distro
    Ubuntu 10.10 Maverick Meerkat

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    OMG thank you guys. People who make things work make Ubuntu the choice for me. My Genius EasyPen i405x is working perfectly

  8. #8
    Join Date
    Oct 2012
    Beans
    3

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    Has anyone figure out how to get the tablet's button to work? I have a Digi Pro 640 (UC-LOGIC Tablet WP5540U) and the pen and it's buttons work automaticallly, but the preset buttons on the tablet don't. From what I've read it doesn't sound like there's been an answer to this.

  9. #9
    Join Date
    Nov 2008
    Beans
    9,635
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    Hi Stethea,

    If you are talking about what are sometimes called the hotkeys or shortcut keys or whatever no they don't work. There's usually a whole bunch of those things, right? I have no idea how they are implemented. A couple of folks have posted saying "hey I looked at them, no big deal to figure out". Then they are never heard from again

    If the tablet has actual frame or bezel buttons or a scroll wheel etc. then Nick enables them when he does a kernel driver for the tablet.

  10. #10
    Join Date
    Oct 2012
    Beans
    3

    Re: HOW TO Add Support for KYE, UC-logic, and Waltop Tablets in Ubuntu

    Yeah.. well looking at it,
    It doesn't seem like it would be too hard to implement. Just figure out the dimensions of each button and what function it should perform.... But being a noob, I don't know how to do any of that. So in reality it could be a lot more difficult than I think. I've been thinking of running the software cd that came with the tablet on a windows computer to see if it can give me some information about it, since I can't get it to run in Wine. If somehow I could figure it out I'll be sure to post back here.

Page 1 of 2 12 LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •