Touch calibration necessary

We use an USB based capacitive touch in aT20 (WEC7) based device. The same touch and the same display is used in an other X86 based application under Windows Embedded 7.

The manufacturer of the touch calibrates the touch for the X86 application and the calibration data are stored in the controller of the touch (NOT in the X86 device). A calibration in the X86 based device is not necessary.

If we use the touch in the T20 based device under WEC7 we must recalibrate it.

Why is this necessary?

WEC7 always feeds the touch coordinates through the calibration function.
This function does not only compensate inaccuracies, but it also can transform coordinates for example for rotated screens.

The calibration information is stored in the registry at

[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH]  
CalibrationData = "..."

You can export this registry value from a calibrated device, and import it on every other device, instead of doing a real calibration.

Is there a possibility to disable or remove the recalibration function of the stylus tool in the control panel?
Alternatively, how can I remove the complete stylus tool from the control panel?

There is no simple way to disable the Calibration function or the Stylus applet alone.

The Stylus applet is part of the cplmain.cpl file. You can overwrite this with an empty file:

  • create an empty file (e.g. with Notepad)
  • store the empty file to \FlashDisk\AutoCopy\Windows\cplmain.cpl
  • Reboot

This will disable most of the control panel applets, including the Stylus.

Another option would be to disable the whole file explorer, to prevent users from accessing any files or control panel applets outside your own application.