evcalibrate

Alan McCosh amccosh at gmail.com
Tue Jan 26 20:22:39 PST 2010


Tias,

I'm impressed by xinput_calibrate's design, especially with the research you
did before writing it.  I was not aware of several of the calibration
utilites you mentioned on your site.

I built evcalibrate last summer strictly to serve the needs of my employer
and hoped it might be useful to someone else.  Now that i'm aware of
xinput_calibrator, it's really nice to compare solutions for the evdev
backend.

I noticed a TODO statement in your evdev Calibrator class:
// TODO: swap_xy and flip_x/flip_y stuff
This is one area where I think evcalibrate does a good job.  Given the data
from at least 1 touch event in each quadrant of the screen, we can determine
exactly which combination of flipx, flipy, and swapxy values are
appropriate.  That being said, it looks like your implementation is just
fine.  Evdev must be doing a linear transformation based on the min/max x/y
pairs that supports, for instance, minx being greater than maxx.  I always
assumed it wasn't that smart.

My front-end is designed in large part to make calibration as quick and
painless as possible.  The results aren't incredibly accurate but are
generally good enough for desktop touchscreens (15-17").  In the future, I
might simply try adding evcalibrate's Qt/OpenGL interface as a front-end to
xinput_calibrator.

Cheers,
Alan

On Mon, Jan 25, 2010 at 7:16 AM, Tias <tias at ulyssis.org> wrote:

> Hey Alan,
>
> On Fri, Jan 22, 2010 at 10:47:25PM -0500, Alan McCosh wrote:
> > A new tool is available for evdev touchscreen calibration, evcalibrate.
> > http://sourceforge.net/projects/evcalibrate/
> >
> > First, apologies to the creator(s) of ev_calibrate.  I picked the name
> > without first considering the existence of similarly named software.
>
> I don't think he minds. As far as I know, that project is unmaintained
> for some years. The only touchscreen calibration software of which I
> know it is actively maintained is xinput_calibrator, and now evcalibrate
> : )
>
> > - Evcalibrate uses a very simple approach to determining the filpx,
> flipy,
> > swapxy values.  Only 4 screen touches are required.
> > - Written in c++/qt/opengl, quite a few packages are required to
> > build/deploy.
> > - Support is pretty good for certain ELO, 3M, and eGalax screens.  I've
> not
> > had access to other hardware so beyond those I can't be certain.
> > - Some patching of evdev was required to better support the 3M and eGalax
> > screens.  These patches are available from the same project site,
> > http://sourceforge.net/projects/evcalibrate/
> >
> > Feedback/criticism is welcome, especially for users of new/different
> > hardware.
>
> I'm speaking from my experience with xinput_calibrator:
> We seem to have quite a different approach: in dependencies, the way the
> clicks are read, maybe even the way we calculate the calibration, ...
> I think it would be good to see what we can learn from eachother, to
> avoid duplicate work etc.
>
>
> Kind regards, Tias
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x.org/archives/xorg/attachments/20100126/a8cf6bd7/attachment.html>


More information about the xorg mailing list