reinderien / xcalibrate

X.org touchscreen calibrator
MIT License
51 stars 18 forks source link

What this?

This is an alternative to _xinputcalibrator (as seen on github, FreeDesktop, Ubuntu, etc.).

Similarities:

Differences:

Thing xinput_calibrator xcalibrate
Language C++ Python3
LOC 2,289 284
Interface Command-line args with some GUI Walkthrough-based with some GUI
GUI toolkit X tk
Cal points 4 Selectable
Math Manual Numpy least-squares
Outputs Xorg.conf, hal, xinput xinput
Popularity High Zero so far
Tested Pretty well Not very well
OS distribution Available in most major repos Zero so far
Dependencies libstdc++, libx11, libxi python3, tkinter, numpy

_xinputcalibrator features precalibration, timeouts, misclick detection, fake driver testing, and a resizable window. xcalibrate features none of those things, but offers some other features not present in _xinputcalibrator, including pre-save cal test, cal quality indicator, arbitrary cal point count, and a slightly more informative GUI. Also, the source is quite simpler.

Why this?

After I couldn't figure out why _xinputcalibrator wasn't doing anything on my system (an old CF-29), I read and followed this excellent walkthrough on the Arch wiki. It was too hacky for my comfort, so I wrote this tool inspired by Zootboy's procedure but with some key differences - this is a stand-alone tool that does not require running _xinputcalibrator; and it uses Numpy to do some real matrix math instead of hacking around with element-by-element calculations and a fixed calibration dataset size.

How this?

./xcalibrate

To do

Discuss

Check out the Discussions page. Github Discussions has superceded the Gitter instance.