Thursday, August 20, 2009

Fujitsu Lifebook P1630 Touchscreen

I have a new ultraportable (1 kg) Lifebook P1630 with a touchscreen. I hope to use it for presentations in the same manner I use currently the Fujitsu Stylistic 5010 tablet.
The P1630 comes with Vista installed - but this is unusable slow on a Core 2 Duo processor and I do not tolerate the waiting updates of MS software forces on me. I want to run Linux, meaning Ubuntu 9.04 Jaunty!
Installation was a breeze (much faster than just the update with MS) and everything worked out of the box, except for the touchscreen.

With help from the web, I got it working. This is to report what I did, to help others with P1630 (and probably P1620). The P1630 (and 1620) connect the touchscreen via usb, not serial - thus the advice for P1510 etc. does not work (e.g. this script). The method proposed by Sam Engstrom propagated here does also not work, because it connects the touchscreen using a setserial and /dev/ttyS0. It seems that this could be solved by connecting the touchscreen to an eventN (with a hal/policy?) and then use wacdump /dev/input/eventN (N a number 1..9). I did not explore this further.

I got the touchscreen of the P1630 working with these tools. This worked immediately, with the BIOS set to "tablet" (not "touch screen") except for some confusion with the calibration. The calibration routine acted strangely on my system: after calibration any touch on the screen would open the trash folder (anybody has an explanation? I had observed this before I installed any touchscreen software already). The calibration routine did leave the max_x and max_y values set to the initial -1 values. I fixed in the code by adding two additional tests to read:

if (calibrate) {
calib_minx = ..
calib_miny = ..
calib_maxx = (calib_maxx==-1)?x:((x>calib_maxx)?x:calib_maxx);
calib_maxy = (calib_maxy==-1)?y:((y>calib_maxy)?y:calib_maxy);

make! sudo make install! and it works.

The sampling of the stylus is unfortunately not very rapid and handwriting looks wiggly. Does anybody have a hint how this could be improved?

Addition: I learned that there are new (corrected) versions available, the change has the same effect, but I have not tried it yet.

No comments:

Post a Comment