This wiki contains information about the aiptek-based USB tablet for Linux and X11, not to be confused with the older serial-based hyperpen module. This tablet is also known as a Dolphin, Medion (Aldi tablet), Nisis and other generic brands.

The xserver-xorg-input-aiptek package must be installed to use this tablet.

Support for the Aiptektablet has improved a lot since Ubuntu 8.04, but there are still many problems. The main problem is setting the correct configuration.

Ubuntu 13.10 (Saucy Salamander)

Configuration

for Saucy as usual make sure first to install aiptek xorg driver with:

sudo apt-get install xserver-xorg-input-aiptek

Then in /usr/share/X11/xorg.conf.d add a config file called 50-aiptek.conf (the 50 is important), containing following text:

Section "InputClass"
        Identifier "Aiptek class"
        MatchProduct "Aiptek|AIPTEK|aiptek"
        MatchDevicePath "/dev/input/event*"
        Driver "aiptek"
        Option "USB" "on"
        Option "Type" "stylus"
        Option "Mode" "absolute"
        Option "zMin" "0"
        Option "zMax" "511"
EndSection

reboot and check in xorg log if the driver has been correctly loaded. This should work also for previous versions of Ubuntu as 12.04.

Ubuntu 10.10 (Maverick Meerkat)

Configuration

Maverick users will have to face yet another change in configuration system. Follow instructions for Lucid Lynx that you find on this page, but pay attention because the location where you have to put the X server config file has changed again: instead of writing a 10-aiptek.conf in /usr/lib/X11/xorg.conf.d directory, you must put it in /usr/share/X11/xorg.conf.d The rest of the instructions for Lucid should work in Maverick as well. We need some testing in order to find out if the problems with function-keys that were present in xorg under Lucid are solved in Maverick. If, after following the instructions below, your tablet functions using only the minimal fail-safe evdev drivers or has other problems, try changing the name of the 10-aiptek.conf file into 50-aiptek.conf.

Ubuntu 10.04 (Lucid Lynx)

Configuration

With 'Lucid' (10.04), HAL has been dropped in favor of a udev based system, so the configuration system for our Aiptek tablets has to be changed again. Basically we use an approach similar to the one used with older Ubuntu releases:

at startup, udev by default will identify our tablet as an evdev input device, so we must write an udev rule to tell xorg to load aiptek driver: in /lib/udev/rules.d add a file (e.g. 69-xserver-xorg-input-aiptek.rules) with something like this:

ACTION!="add|change", GOTO="xorg_aiptek_end"
KERNEL!="event[0-9]*", GOTO="xorg_aiptek_end"

ATTRS{idVendor}=="08ca", ENV{x11_driver}="aiptek", SYMLINK+="input/aiptektablet"

LABEL="xorg_aiptek_end"

'08ca' is for Aiptek tablets in general, maybe it would be nicer and wiser to fine-tune better the udev rule using product id, but this is just an example.

Then we must configure the xorg driver. In Lucid you can write an old style 'xorg.conf', but the recomended method uses sort of config snippets located in /usr/lib/X11/xorg.conf.d directory. There you must add our tablet config file (e.g. 10-aiptek.conf) containing something like:

Section "InputClass"
        Identifier "pen"
        MatchProduct "Aiptek|AIPTEK|aiptek"
        MatchDevicePath "/dev/input/event*"
        Driver "aiptek"
        Option "SendCoreEvents" "true"
        Option "USB" "on"
        Option "Type" "stylus"
        Option "Mode" "absolute"
        Option "zMin" "0"
        Option "zMax" "511"
EndSection

Restart udev and X, and you should have a working tablet, with pressure working.

Unfortunately not all is ironed out: you will probably have a stylus tip acting as left-mouse button, but no other button working. In this case open a terminal and try:

xinput get-button-map Aiptek

it will probably return "1 2 3 4 5" try then to remap the buttons with:

xinput set-button-map Aiptek 1 3 2 4 5

You should have now a stylus with tip acting as button 1, and probably partially working stylus buttons, acting as right click (and middle click if you're really lucky), but the button mapping needs a bit more investigation. Button mapping will be lost at session restart, so you must add it to session startup configuration if you want to make it permanent. In case your buttons won't work, it may be due to some work yet to be done on the driver in order to make it interact better with newer version of xserver, but first of all check your stylus battery (I had buttons working much better after replacing mine).

As a final note, be aware that at present tablet's function-keys won't work under Lucid as X server 1.7 has a different initialization method for key events that is currently not employed at all by the aiptek driver. So under 1.7, the driver has no key symbols at all

Ubuntu 8.10 - Ubuntu 9.10

Configuration

Make sure your tablet is not plugged in

The settings for the tablet are now stored with HAL, so no longer does one have to edit xorg.conf

After the xserver-xorg-input-aiptek package has been installed, create the file 10-linuxaiptek.fdi, in the directory /usr/share/hal/fdi/policy with content:

<?xml version="1.0" encoding="UTF-8"?> 
<deviceinfo version="0.2">
  <device>
    <match key="info.product" contains="Aiptek">
      <merge key="input.x11_driver" type="string">aiptek</merge>
      <merge key="input.x11_options.SendCoreEvents" type="string">true </merge>
      <merge key="input.x11_options.USB" type="string">On</merge>
      <merge key="input.x11_options.Type" type="string">stylus</merge>
      <merge key="input.x11_options.Mode" type="string">absolute</merge>
    </match>
  </device>
</deviceinfo>

Then plug in your tablet to get it working.

If clicks and pressure are not working as expected, add the following lines

<merge key="input.x11_options.zMin" type="string">0</merge>
<merge key="input.x11_options.zMax" type="string">511</merge>

just above the </match> line in the above file, then unplug and plugin your tablet again. Note that at the time of this writing there's a bug that causes X to restart when you unplug your tablet: Unplugging USB tablet crashes xserver Check if it's fixed, if not you may want to close all open applications before unplugging your tablet.

If your tablet has 1024 levels of pressure sensitivity, change that the to 1023, although 511 should work just fine.

If your monitor's screen ratio differs from your tablet's active area's ratio, or if you may want to use your monitor in a portrait orientation, adding this line (also before the </match> line) will crop down the tablet's area to fit your screen.

<merge key="input.x11_options.KeepShape" type="string">On</merge>

udev rules

Ubuntu 8.10 - 9.10 does not require special udev rules for the tablet to work.

Wacom driver

Some tablets (6000U, 12000U, 14000U) seems to use Wacom drivers, if you experience problems with button presses (Your mouse pointer freezes), but you can move the cursor try the updated packets for Wacom.

On older Ubuntu versions

The support for this tablet is very flaky in Ubuntu 5.04 (Hoary Hedgehog), 5.10 (Breezy Badger), and possibly 6.06 (Dapper Drake), but it is possible to get half-working. Ubuntu does have the module in the kernel and the X11 driver, but they don't work very well and need to be replaced with the ones from CVS (especially the xorg driver). The unified_package is too out of date and should not be used at all.

Setup

This tablet is a little tricky to set up, but this is what I have done to get it to work at least in Wine Photoshop 7:

  1. Before beginning you should back up your current version of xorg.conf. If anything goes wrong in the steps below, you could be prevented from booting into X. Having an easily restored working version of xorg.conf could save you a lot of trouble. (if you have already modified xorg.conf and are now stuck at a terminal screen unable to load X, use

    sudo nano /etc/x11/xorg.conf
    to edit xorg.conf back to it's original state.
  2. Create an udev rules file called '/etc/udev/rules.d/61-aiptek.rules' and add the following content to it:

    BUS=="usb", DRIVER=="aiptek", KERNEL=="event[0-9]*", SYMLINK+="input/aiptektablet"
    KERNEL=="event[0-9]*", SYSFS{vendor_id}=="0x08ca", SYMLINK+="input/aiptektablet"

Then restart udev with

sudo /etc/init.d/udev restart 

and your /dev/input/aiptektablet symlink should now appear.If it does not, see UDEV-TroubleShooting.

  1. In your xorg.conf, put the following under your other input device entries:

    Section "InputDevice"
      Identifier "pen"
      Driver "aiptek"
    # Option "Device" "/dev/input/eventX"
      Option "Device" "/dev/input/aiptektablet"
      Option "Type" "stylus"
      Option "Mode" "absolute"
      Option "Cursor" "stylus"
      Option "PressCurve" "0,5,95,100"
      Option "zMin" "0"
      Option "zMax" "512"
      Option "zThreshold" "0"
      Option "USB" "on"
      Option "KeepShape" "on"
      Option "AlwaysCore" "on"
    EndSection

    Under Section "ServerLayout" (at or near the bottom of xorg.conf), put:

    InputDevice "pen" "SendCoreEvents"
    Under Ubuntu Intrepid, input devices configuration is not done with xorg.conf. Instead, create the file /etc/hal/fdi/policy/10-aiptek.fdi containing :
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <deviceinfo version="0.2">
    <device>
    <match key="info.product" contains="Aiptek">
    <merge key="input.x11_driver" type="string">aiptek </merge>
    <merge key="input.x11_options.SendCoreEvents" type="string">true </merge>
    <merge key="input.x11_options.Type" type="string">stylus </merge>
    <merge key="input.x11_options.Mode" type="string">absolute </merge>
    </match>
    </device>
    </deviceinfo>
  2. Ensure your mouse (probably Configured Mouse) is set to CorePointer. See man xorg.conf for a description of the AlwaysCore and SendCoreEvents options. All other options are explained in man aiptek.

  3. Make sure the aiptek module is loaded (and the tablet is plugged in!), check by using either:

    dmesg |grep aiptek

    or

    lsmod |grep aiptek

    if neither of these work, try

    sudo modprobe aiptek
  4. Restart X by logging out and back in, with your fingers crossed Smile :) if this is possible...

  5. PROFIT!

If the tablet plays around like the "absolute" option isn't all that "absolute" to your screen, or pressure sensitivity doesn't work at all, try using the aiptek CVS. There is a newer module to update for kernel 2.4.x and 2.6.x as well as an imake for the xserver driver (this might mean trouble for the new modular xorg7). If you can't compile it like me (it compiles on fedora core and opensuse just fine with the right stuff installed) then try to copy the pre-made driver out of the unified package.

Issues

Other Notes

Comments below apply specifically to Ubuntu 6.06, but may apply to other versions as well:

UDEV-TroubleShooting

If the rule did not work, you want to write your own.

  1. Get Information about your device by plugging it in and calling

    dmesg | tail

    which should you give something like this:

    [ 6452.359600] usb 1-1: new low speed USB device using uhci_hcd and address 5
    [ 6452.538397] usb 1-1: configuration #1 chosen from 1 choice
    [ 6455.002229] /build/buildd/linux-2.6.24/drivers/input/tablet/aiptek.c: input: Aiptek using 400 ms programming speed
    [ 6455.002232]
    [ 6455.002321] input: Aiptek as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.0/input/input9
  2. Here we need the devpath /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.0/input/input9 for udevinfo

    devpath=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.0/input/input9
    udevinfo -a -p $devpath | less 

    to get

    # ...
    
     looking at device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.0/input/input9':
        KERNEL=="input9"
        SUBSYSTEM=="input"
        DRIVER==""
        ATTR{name}=="Aiptek"
        ATTR{phys}=="usb-0000:00:1a.0-1/input0"
    
    # ...
    
    looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.0':
        KERNELS=="1-1:1.0"
        SUBSYSTEMS=="usb"
        DRIVERS=="aiptek"
        ATTRS{size}=="3000x2250"
        ATTRS{pointer_mode}=="either"
        ATTRS{model_code}=="0x0064"
    
    # ...
  3. Add udev-rule, that matches attributes which uniquely identify our device and adds a symlink:

    sudo bash
      rule='SUBSYSTEMS=="usb", DRIVERS=="aiptek", ATTRS{size}=="3000x2250", ATTRS{model_code}=="0x0064", SYMLINK+="input/aiptektablet"'
      echo $rule > /etc/udev/rules.d/61-aiptek.rules
    exit
  4. Restart udev and see if the device is there:

    sudo /etc/init.d/udev restart
    ls /dev/input/ | grep aiptek

Links

Launchpad xserver-xorg-input-aiptek package

Sourceforge Page

Outdated Home Page

SVN Svn repository where original development happened. X driver is now in xorg, and kernel driver in kernel development. Gaiptek in svn is unmaintained.

http://ubuntuforums.org/showthread.php?t=122735


CategoryWacom

AiptekTablet (last edited 2013-12-11 09:22:06 by dynamic-adsl-78-13-170-77)