Showing posts with label wizardpen. Show all posts
Showing posts with label wizardpen. Show all posts

Sunday, April 11, 2010

Great News and Bad News for Wizardpen Linux driver

It's been more than a year since I posted any updates on the Wizardpen driver, and I have both good news and bad news in relation to that.

First, the bad news is that: I'm now on the Mac == any breakage of the driver with the latest release of Ubuntu will not be captured or spotted by myself.

But! Here's the good news: the Wizardpen Linux driver is now more actively maintained at Launchpad. I have been subscribing to their code commits for the past year and the code base and configuration files have been cleaned up significantly. And the best part is that they are currently maintaining a list of supported devices the FDI rules so that make using the Wizardpen almost a plug-and-play experience. (well, if PnP doesn't happen, do file a bug report there :))

So, in many ways, I'll be officially stepping down from the responsibility of maintaining the build documentation (which has been pretty stable since 0.7) as well as tracking code updates (as, hopefully, Launchpad will be its permanent home and there's will always at least a code maintainer there to assist).

In case you'd still like to update me on the progress on the driver so that I can post it up here, feel free to email me at seh_hui@yahoo.com.

Sunday, September 13, 2009

What the Linux Wizardpen driver needs right now

To be honest: I don't really check this site often - I am quite used to only log into Blogger when I had something new to say about the progress of the Linux Wizardpen driver. And only recently I found out a lot of comments that was pending moderation and I was completely flooded by old comments, so greatest apology to everyone who had left their questions unanswered, unpublished and unnoticed for the past three months =.=.

Such experience points to a fatal functional flaw: that the driver does not have a functional project structure. Currently here's a few items that the driver need, in order of importance:

  1. A support forum
  2. Package the driver to make it user-friendly, which includes the following:
    • Precompiled packages (DEB, RPM) - I'm aware that there are a few people who had already done so and a couple others working on making it PnP. We need some way for these package maintainers to collaborate with each other
    • Generic FDI rule that could allow PnP to be possible
    • A graphical calibrator program - Similar to what has been done for Aiptek (Or would it better for us to use the gAiptek software and make it more general purpose?)
  3. Choosing a project home for the driver. Currently there's two that has been setup, which I'm aware of:
    1. Feature request and bug fixes, e.g.
      • Better mouse support (i.e. the Genius tablets that came with the stylus and mouse)
      • Correct detection of screen in driver and removal of ScreenX and ScreenY parameters
      • Lines drawn on GIMP/Inkscape not as smooth as what that could be drawn on Windows (workaround: Modify the ScreenX and ScreenY parameters that doubles the current screen resolution)
      • Etc.
    Personally I have to admit I couldn't do it by myself: I really needed a lot of help. Both in terms of building a community site and the programming effort. If anyone is interested, please comment on this thread (with the e-mail followup checkbox checked :), so you get the latest updates on who has the same interest on this project as you do).

    Saturday, September 12, 2009

    Wizardpen driver 0.7 series compatible with Ubuntu Karmic Koala

    Just upgraded my machine to the Ubuntu 9.10 Karmic Koala Alpha 5 and I'm happy to say that Wizardpen would work seamlessly with the next version of Ubuntu. So when October comes, you don't need to worry about the upgrade breaking support for your creative pursuits. (I'll keep you updated in case it breaks some time before the actual launch occur in October)

    Recently there isn't any progress on the driver due to a lack of a active maintainer for the code. Currently there are a few project pages being setup for the driver, currently the one with recent activity was the one at the Wizardpen project in Launchpad: which they are taking up an ambitious goal of setting up the appropriate FDI rule to have it auto-detect most (hopefully all) supported tablets. Greatly appreciate that you'll be able to submit the appropriate `lsusb` output for them to maintain a database of sorts ;).

    Anyway, it is to be noted that Ubuntu 9.10 introduced a lot of major changes in packages: e.g. SCIM input to iBus, utilizing GRUB2 and Ext4 and eventual migration to DeviceKit in replacement for HAL in the future (meaning that the setup guide will need to be updated as soon as Xorg deprecates HAL as well). So I do greatly suggest that you prepare for the release by reading these new changes up.

    Tuesday, April 21, 2009

    wizardpen-0.7.0-alpha2 DEB package now available

    First of all, all thanks to Giorgo Enrico who made the package! I have personally tested it and find it to be working, so I suppose it'd be of great help to those who aren't too comfortable in compiling :).

    Anyway, here's the place to download the packages:
    Driver: http://www.mediafire.com/file/nyzyynygiyy/wizardpen_0.7.0-alpha2_i386.deb
    Calibrator tool: COMING SOON!

    I'm not particular sure about whether it does support 8.10 or not, so if somebody had tested it, please let me know ;)

    Friday, April 17, 2009

    Driver Update: wizardpen-0.7.0-alpha2

    Hi all, I've just made a quick bug fix in relation to the compilation issues with Ubuntu 9.04 and (reportedly, from what I read from the linuxgenius project page) Fedora 11. The code fix should allow the compilation of the driver for both Ubuntu 8.10 and Ubuntu 9.04, however I do need someone to help me test to compile the driver for Ubuntu 8.10.

    The latest driver is available here:

    Till then, have fun!

    Monday, March 30, 2009

    Wizardpen, Ubuntu 9.04 and Everchanging Xorg APIs

    Here's the good news: I'm announcing that Wizardpen is compatible with Ubuntu 9.04! Apparently it was a quick fix actually as the reason the driver isn't compiling is due to the fact that Xorg had tinkered the argument list of one of its functions (specifically InitValuatorClassDeviceStruct, which it removed the motionProc argument). Doing so created a clean compile and a working driver.

    However, the fact that all this while I was never involved in maintaining the driver nor had any knowledge in Xorg module programmer. Therefore it'd take me a while to test to make sure that there wouldn't be any side effects. But my guess is that I shouldn't take me more than a few days, so I think I'd be able to come up with a quick patch for that.

    For now, I had the feeling that Xorg is starting to become more of a moving target seeing the API changing from time to time. With that in mind, I'm in an opinion that we'd probably need to catalogue the versions of Wizardpen drivers and to which release of Xorg it'll still work. From memory:
    9.04 - 0.7.0-alpha2 (?)
    8.10 - 0.6.0.2 to 0.7.0-alpha1
    8.04 - 0.6.0.2
    7.10 - Probably 0.5? Can't quite remember that one...

    Would probably figure out a time to quickly sort it out, probably merging the new code over to project at Google Code or SourceForge. I'll see to it then.

    P/S: For those who's confident in patching their own code, you can refer to this page.

    Thursday, March 26, 2009

    Wizardpen on Ubuntu 9.04 (Jaunty Jackalope): WORKING

    UPDATE: I got it to work now, please see my latest blog announcement for the details

    Seeing that Ubuntu 9.04 is coming up and I had installed Alpha 6 of the release, it is fair enough for me just to forewarn you that the Wizardpen driver will not work with Ubuntu 9.04... for now, at least. (UPDATE: It works now)

    So for those who really needed the compatibility with Wizardpen in Ubuntu, hold your horses, stick to 8.10 (Interpid Ibex) for a while and wait until a patch is up.

    OR... if you had done a fix, do share it out ;).

    Wednesday, November 26, 2008

    Updated Wizardpen Driver (0.7.0-alpha1? :p)

    Out of the blue I received an updated source file in my mailbox for the Linux Wizardpen driver from a very nice guy called Mike. The driver itself addresses a significant amount of improvements including optimization for performance, which I was completely astonished and blown away by it as I previously have to deal with sluggishness when painting in a maximized GIMP window.

    You can download it from the link below:

    (*Note: Yeah, I'm being a stupid dumbass for plugging a version number myself... but I suppose the improvement warrants a major number increment ;)

    List of features: (*Note: UNTESTED means I was never able to test it myself, please feedback if you had problems with it)

    • Major performance and reliability improvements
    • (UNTESTED) Support for bundled scroll-wheel mouse (I know a lot of people wanted this, hence bolded ;)
    • Pressure sensitivity now configurable (Xorg param: TopZ and BottomZ; range: 0-1024)
    • Reliable button press/release event mechanism (using pressure thresholds)
    • (UNTESTED)Support vertical tablet orientation (useful if are using stacked dual monitors and want the tablet layout to the vertical orientation) (Xorg param: Rotate90 - "0" or "1"
    • [UNTESTED] Ability to tell driver your screen size in case gets confused (xorg param: ScreenX and ScreenY)
    • Debug mode (Xorg parm: debugyn - "0" or "1")

    Do have to iterate the fact that Mike should be credited fully for his work and I'm just disseminating this piece of good code :).

    Have fun experimenting and post any bugs or issues found!

    P/S: The installation steps are already outlined here

    (*NOTE: My webhost is acting stupid again, so have to exploit the resources of the "empire" from now :p)

    Thursday, October 23, 2008

    Genius Wizardpen with Intrepid Ibex

    NOTE

    The tutorial currently still works with Ubuntu 9.04 (Jaunty Jackalope)

    NEWS UPDATE

    An updated (though not thoroughly tested) driver is available thanks to Mike! Please find full details by clicking on this link.

    UPDATE HISTORY:

    21 October 2008

    Obtaining the driver
    Option 1: Using a precompiled driver - UNTESTED!!

    Miriad have provided a precompiled driver for Hardy and can be obtained from http://specificcrap.arbitrarycrap.com/wizardpen_drv.so. Just download the driver and put it in /usr/lib/xorg/modules/input/.

    Once that's done, follow the steps outlined in "Configuring and using your Wizardpen".

    For the latest version (0.7.0-alpha2): Alternatively, you could use the Debian package done by Giorgo Enrico, which you can download it here http://www.mediafire.com/file/nyzyynygiyy/wizardpen_0.7.0-alpha2_i386.deb

    Option 2: Building from source
    1. Download the source package: http://specificcrap.arbitrarycrap.com/wizardpen-0.6.0.2.tar.gz
      (or the latest, untested driver here:
    2. Unpack it somewhere with following command: tar -zxvf wizardpen-0.6.0.2.tar.gz
    3. Grab the necessary packages:sudo aptitude install xutils libx11-dev libxext-dev build-essential xautomation xinput xserver-xorg-dev
    4. Change directory to where you unpacked the source code: cd wizardpen-0.6.0.2
    5. Compile and install the driver: ./configure --with-xorg-module-dir=/usr/lib/xorg/modules && make && sudo make install
    6. Verify that the driver is installed correctly (Check for wizardpen_drv.la and wizardpen_drv.so): ls /usr/lib/xorg/modules/input/wizardpen_drv.*
    Configuring and using your Wizardpen

    For Xorg7.3, the recommended way to configure your input device is by adding HAL fdi files, which in turn allows you to hotplug your Wizardpen. This step is not only recommended, it's essentially CRUCIAL in the case of Intrepid Ibex as the xorg.conf method used in my Hardy tutorial WILL NOT WORK.

    This new configuration method may be supported by Hardy Heron, but I greatly appreciate anyone who is able to confirm this to me :).

    1. Connect your Wizardpen tablet (if you haven't already done so)
    2. Find out the name of your tablet : grep -i name /proc/bus/input/devices
    3. Double confirm that HAL captured the name of the tablet correctly as well: lshal | less
    4. Create a new file with the name /etc/hal/fdi/policy/99-x11-wizardpen.fdi
      <?xml version="1.0" encoding="ISO-8859-1" ?>
      <deviceinfo version="0.2">
      <device>
      <!-- This MUST match with the name of your tablet -->
      <match key="info.product" contains="NAME OF YOUR TABLE OBTAINED FROM PREVIOUS STEP">
      <merge key="input.x11_driver" type="string">wizardpen</merge>
      <merge key="input.x11_options.SendCoreEvents" type="string">true</merge>
      <merge key="input.x11_options.TopX" type="string">5619</merge>
      <merge key="input.x11_options.TopY" type="string">6554</merge>
      <merge key="input.x11_options.BottomX" type="string">29405</merge>
      <merge key="input.x11_options.BottomY" type="string">29671</merge>
      <merge key="input.x11_options.MaxX" type="string">29405</merge>
      <merge key="input.x11_options.MaxY" type="string">29671</merge>
      </match>
      </device>
      </deviceinfo>
    5. Reboot your computer (*Note: Thanks to Ociosu for the update)
    6. If X fails to start up, or that the cursor runs amok with unpredictable and unacceptable behaviour (e.g. button mapping screw-ups), I greatly recommend that you start to debug your configuration.

    TROUBLESHOOTING - IMPORTANT STEPS:

    Should you find your Wizardpen not working yet, check out the /var/log/Xorg.0.log to see what went wrong (Search for "EE" and "WW" would give you some important hint). Google and the UbuntuForums are always your friend when it come to troubleshooting things ;).

    Calibrating your tablet
    1. Execute the following command: lshal | less
    2. Search the section with the name of your tablet, as obtained from Step 2 in the configuration step. The line should read something like: info.product = '[Name of your tablet]'
    3. Scroll down until you find the following line: linux.device_file = '/dev/input/eventN' (N will a number)
    4. The source package contains a program called 'wizardpen-calibrate', which is in the 'calibrate' folder, which actually echoes the appropriate X11 calibration settings
    5. Using a terminal/console, execute the calibration program: calibrate/wizardpen-calibrate /dev/input/eventN (*Note: Subtitute /dev/input/eventN with the one obtained from Step 3)
    6. Follow the instructions issued by the program, which will ask you to touch the top-left corner and bottom-right corner. Once completed, the program will echo the corresponding xorg.conf setting
    7. Edit the FDI file (/etc/hal/fdi/policy/99-x11-wizardpen.fdi) and subtitute the Top/Bottom/MaxX and Top/Bottom/MaxY values to the one obtained from the wizardpen-calibrate command
    8. Once done, restart your computer and test your tablet (UPDATE: Noy noted in the comments that you don't have to restart, but rather unplug and replug the tablet for the new settings to take effect. I'm pretty sure it'd work but I haven't tested it yet)

    Till then, good luck and have fun!

    FAQ - Draft, TODO
    1. Wireless mouse for Wizardpen support is only available in the latest wizardpen-0.7.0-* driver.
    2. Pressure sensitivity not working in GIMP: Check your GIMP preferences at "Edit > Preferences". Under the "Input Devices" menu item, click on "Configure Extended Input Devices...". Choose the WizardPen device and MAKE SURE YOU SET THE MODE TO SCREEN/WINDOW (not "Disabled"). Without that setting, it won't work ;)

    [REFERENCE AND RESOURCES]

    1. TabletSetupWizardpen (Ubuntu Community Help)
    2. HOWTO: Setup a wizardpen-based tablet (Ubuntu Forums)
    NOTES:
    • Thanks to Pedro for his unexpected email and helping me out to test out my HAL fdi policy file.
    • TODO: Add stuff to the FAQ (Contribution appreciated)
    • Wishlist:
      1. Someone helping me out to test whether the HAL fdi rule method works with Hardy Heron
      2. Have the tutorial posted in Ubuntu Community wiki (too lazy to bother doing it myself :lol)

    Saturday, April 12, 2008

    Genius Wizardpen with Ubuntu Linux (8.04 only)

    NOTE
    • AN UPDATED TUTORIAL FOR INTREPID IBEX IS AVAILABLE! Need someone to check whether that tutorial is compatible with Hardy Heron
    • [Compatible with Hardy Heron (8.04) ONLY]
    • [TODO]
      • Add a FAQ section (especially the fact that only realized that recently the original forum was down x_x...) -- main proof that I have been neglecting this blog and WizardPen progress these days
      • Any update if necessary

    UPDATE HISTORY:

    21 October 2008

    • Verified that steps are compatible with Intrepid Ibex (using compile by source method),
    • Added draft FAQ [Big TODO item, help needed]

    27 May 2008

    • Added a troubleshooting step in the setting up section which recommends you to regenerate a fresh xorg.conf

    27 April 2008

    • Updated link to download the driver source (Contributor: zack)
    • Included instruction on how to using precompiled driver
    • Modified xorg.conf on where to put the "CorePointer" option

    As Ubuntu 8.04 (Hardy Heron) was released end of April 2008, one of the major change is XOrg 7.3, which sports hot-plugging, auto-configuration, better support of multiple input device and other powerful features. However, with those features in place, the existing Genius Wizardpen driver was not compatible with the latest XOrg.

    Currently, Miriad (whom participated in the original Wizardpen driver forums) have updated the driver to make it compatible with XOrg 7.3 (rejoice!). Here are the instructions to configuring your Wizardpen:

    Obtaining the driver
    Option 1: Using a precompiled driver (Recommended)

    Miriad have provided a precompiled driver for Hardy and can be obtained from http://specificcrap.arbitrarycrap.com/wizardpen_drv.so. Just download the driver and put it in /usr/lib/xorg/modules/input/.

    Option 2: Building from source

    (*Note: I haven't tested this with completely fresh Hardy system though ^^||)

    1. Download the source package: http://specificcrap.arbitrarycrap.com/wizardpen-0.6.0.2.tar.gz
    2. Unpack it somewhere with following command: tar -zxvf wizardpen-0.6.0.2.tar.gz
    3. Grab the necessary packages (UNCONFIRMED! Let me know if I missed out an important package): sudo aptitude install xutils libx11-dev libxext-dev x-dev build-essential xautomation xinput xserver-xorg-dev
    4. Change directory to where you unpacked the source code: cd wizardpen-0.6.0.2
    5. Compile and install the driver: sudo ./configure --with-xorg-module-dir=/usr/lib/xorg/modules && make && make install
    6. Verify that the driver is installed correctly (Check for wizardpen.la and wizardpen.so): ls /usr/lib/xorg/modules/input/wizardpen.*
    Configuring and using your Wizardpen
    1. Connect your Wizardpen tablet (if you haven't already done so)
    2. Find out the name of your tablet : cat /proc/bus/input/devices | grep Name
    3. Edit your /etc/X11/xorg.conf file and type the following (or to verify against your last working xorg.conf with the Wizardpen in Gutsy):
      Section "InputDevice"
      Identifier "Configured Mouse"
      Driver "vmmouse"
      Option "Emulate3Buttons" "true"
      EndSection

      Section "InputDevice"
      Identifier "WizardPen Tablet"
      # Paste the name of the tablet as found in the previous step
      Option "Name" "UC-LOGIC Tablet WP5540U"
      Option "SendCoreEvents" "true"
      Driver "wizardpen"
      Option "TopX" "5619"
      Option "TopY" "6554"
      Option "BottomX" "29405"
      Option "BottomY" "29671"
      Option "MaxX" "29405"
      Option "MaxY" "29671"
      EndSection

      Section "ServerLayout"
      Identifier "Default Layout"
      Screen "Default Screen"
      InputDevice "WizardPen Tablet" "SendCoreEvents"
      InputDevice "Configured Mouse" "CorePointer"
      EndSection
    4. Restart your X server: sudo /etc/init.d/gdm restart (*Note: It'd be better for you to logout, press Alt-F1 to go into the command prompt screen to execute this command)
    5. If X fails to start up, or that the cursor runs amok with unpredictable and unacceptable behaviour (e.g. button mapping screw-ups), I greatly recommend that you execute sudo dpkg-reconfigure xserver-xorg to regenerate a new working copy of xorg.conf and reattempt to configure the Wizardpen again (i.e. repeat Step 3-4 in this section). It may be helpful to read the IMPORTANT NOTE I had below.

    IMPORTANT NOTE: The "SendCoreEvents" option is mandatory to prevent focus stealing between your mouse and Wizardpen, which would lead to a jerky pointer which is not what you'd want when you're drawing ;). It may be required to have your mouse being set with the "CorePointer" option (Reason I'm setting this option for the mouse is because without the actual mouse configured with "CorePointer" would give X11 an option to select the Wizardpen as the core [read: main] pointer and royally screw the button mapping of my mouse).

    Should you find your Wizardpen not working yet, check out the /var/log/Xorg.0.log to see what went wrong (Search for "EE" and "WW" would give you some important hint). Google and the UbuntuForums are always your friend when it come to troubleshooting things ;).

    Till then, good luck and have fun!

    [FAQ - DRAFT]
    1. Wireless mouse for Wizardpen is not working: From my understanding is that support for the wireless mouse that comes with Wizardpen is NOT IMPLEMENTED yet. Therefore it won't work.
    2. Pressure sensitivity not working in GIMP: Check your GIMP preferences at "Edit > Preferences". Under the "Input Devices" menu item, click on "Configure Extended Input Devices...". Choose the WizardPen device and MAKE SURE YOU SET THE MODE TO SCREEN/WINDOW (not "Disabled"). Without that setting, it won't work ;)

    [REFERENCE AND RESOURCES]

    1. WizardPen driver and XOrg 7.3
    2. TabletSetupWizardpen (Ubuntu Community Help)
    3. HOWTO: Setup a wizardpen-based tablet (Ubuntu Forums)