cityscape banner2

Here is a project I could have contributed to the Linux driver repository if I had been allowed to by my superiors.

The touch screens came with no drivers, in both USB and with old style D9 UART COM port interface. No documentation or technical specifications were included in the screens shipped to us, direct from an unknown Korean manufacturer.

As well as being cheap, the panels used the new acoustic wave pickups technology to determine where the user was touching the panel, which was fit over a normal monitor.

My job was to get them working, and the first task was to decipher the data being sent back and forth from the panel to the serial port.

Without knowing baud rates or parity, I systematically analyzed captured port input and output at various speeds. This output can be seen in various files in the top directory of this project.

The "guts" directory contains the modified GUTS (GNU Universal Touch Screen) driver, together with my own documentation on data formats.

It's a great example of fast problem solving and device driver coding. Of course, nobody I worked with had any idea how much was involved in getting the panels to work, but I made myself smile by nutting them out in time for the product launch.



Files in directory (./portfolio/Linux-XWindows-TouchScreen-Driver):