Tabletkiosk Sahara Touchscreen Linux Kernel Module

After having had success with the backlight module I tried my luck with a touchscreen driver. In the drivers/input/touchscreen/ directory of the linux kernel source there are already a few drivers, and especially the touchright.c does almost what is needed for the touchscreen of the Sahara Touch-iT i213.

Both touchscreens send their information over the serial interface, and both use 5 byte per message. This is the encoding used by the Sahara Touch-iT i213:

+-----+-----+-----+-----+-----+-----+-----+-----+
|  1  |  0  |  0  |  0  |  0  |  0  |  0  |  p  |
+-----+-----+-----+-----+-----+-----+-----+-----+

+-----+-----+-----+-----+-----+-----+-----+-----+
|  0  | x13 | x12 | x11 | x10 | x09 | x08 | x07 |
+-----+-----+-----+-----+-----+-----+-----+-----+

+-----+-----+-----+-----+-----+-----+-----+-----+
|  0  | x06 | x05 | x04 | x03 | x02 | x01 | x00 |
+-----+-----+-----+-----+-----+-----+-----+-----+

+-----+-----+-----+-----+-----+-----+-----+-----+
|  0  | y13 | y12 | y11 | y10 | y09 | y08 | y07 |
+-----+-----+-----+-----+-----+-----+-----+-----+

+-----+-----+-----+-----+-----+-----+-----+-----+
|  0  | y06 | y05 | y04 | y03 | y02 | y01 | y00 |
+-----+-----+-----+-----+-----+-----+-----+-----+

p: 1=pressed, 0=not pressed
x13..x00: x-Coordinate 0..0x3fff
y13..x00: y-Coordinate 0..0x3fff

Note: You just get one packet with the "not pressed" attribute when you stop touching the screen. Obviously without contact with the surface you can't get any more updates after that.

This is a patch against the kernel source from git taken 2007-07-22.

The kernel configuration and rebuild script are the same as for the backlight driver

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.