Microtouch Axis Inversion!

I’m trying to set up QNX 4.25 systems with a Microtouch flatpanel LCD
touchscreen. After running acalib and following the procedure
for calibration, the X and Y axis are flipped 90 degrees. Up yields
right, Right yields up, Left yields down, and Down yields left. What’s
really perplexing is that sometimes (rarely) it works correctly. Once
it’s working it seems to keep working.

The contents of my Input.XX file are:

Input kbd fd -d/dev/kbd ps2 -r kb -2 &
Input microtch fd -d/dev/ser1 &


Any help would be appreciated.

Walter

Previously, Walter R. Greene wrote in qdn.public.qnx4:

I’m trying to set up QNX 4.25 systems with a Microtouch flatpanel LCD
touchscreen. After running acalib and following the procedure
for calibration, the X and Y axis are flipped 90 degrees. Up yields
right, Right yields up, Left yields down, and Down yields left. What’s
really perplexing is that sometimes (rarely) it works correctly. Once
it’s working it seems to keep working.

I suspect there may be a bug in acalib. It seems to assume that when comparing the differences between the 2 sample points, the dimension with the greatest difference must be the X dimension. If your hardware scales/normalizes X and Y to be approximately the same range (as ours does), there’s a 50-50 chance acalib will get the axes wrong.

Take a look at “/etc/config/absf/absf.X”. There should be entries like this:

0x0:1023x767:974 55 26 967 1

The very last value indicates whether the X and Y axes should be swapped by Photon. Try changing this value (1 to 0, or 0 to 1). This may fix the problem (temporarily).

  • Pete

“Pete D.” wrote:

Previously, Walter R. Greene wrote in qdn.public.qnx4:
I’m trying to set up QNX 4.25 systems with a Microtouch flatpanel LCD
touchscreen. After running acalib and following the procedure
for calibration, the X and Y axis are flipped 90 degrees. Up yields
right, Right yields up, Left yields down, and Down yields left. What’s
really perplexing is that sometimes (rarely) it works correctly. Once
it’s working it seems to keep working.


I suspect there may be a bug in acalib. It seems to assume that when comparing the differences between the 2 sample points, the dimension with the greatest difference must be the X dimension. If your hardware scales/normalizes X and Y to be approximately the same range (as ours does), there’s a 50-50 chance acalib will get the axes wrong.

Take a look at “/etc/config/absf/absf.X”. There should be entries like this:

0x0:1023x767:974 55 26 967 1

The very last value indicates whether the X and Y axes should be swapped by Photon. Try changing this value (1 to 0, or 0 to 1). This may fix the problem (temporarily).

  • Pete

I tried your suggestion, and it is indeed the case. I had an absf.XX file from a calibration that worked, and it’s value was 0. The non-working calibrations that I made all had 1 in that position. I changed them to 0 and the worked properly. Thanks for the tip!

Walter