5
\$\begingroup\$

I am currently trying to build a capacitive touch screen. My end goal is to create a giant track pad/keyboard for my computer. Since abnormally large touch screens are quite pricy I have set out to build my own. Unfortunately it seems as though this has not been done before by regular electronics enthusiasts.

As far as the touch pad goes, I don't need more than one touch to be registered at any one time.

From what I understand, this can be accomplished by using a large conductive plate (I am currently using sheet metal) and four capacitive sensors in the four corners. A set voltage is applied to the plate through a large resistor. The sensors in the corners continually measure the voltage of the plate. When a user touches the screen, it will act as a capacitor and disrupt the voltage making it drop. This will be read as a touch and can somehow be interpreted as x y values.

Designs for capacitive touch screens typically involve a "grid" of sensors that give x y values, but if I am not mistaken, this is only needed to register multiple touches.

So far, just for testing, I am using a small piece of sheet metal. I am using an Arduino Uno to report the raw voltage levels from either side of the metal. When it is not touched the sensors report a value between 1014 and 1023 (the Arduino has a 10 bit ADC).

When the plate is touched the values drop. These values, however, don't seem to be consistent enough for me to get any location information about the touch.

So my questions are:

Does my project seem like it can be done? Is there anything that could be changed about my project to make it better? Would making a touch pad in this way be possible with reasonably accurate results?

How can I stabilize the readings so I can translate them into x y values and how do I convert them into x y values?

I tried to do research and I think I understand the basics of capacitive touch screens, but I could only find information giving a general description of the science of these devices. I couldn't find anything that would give me enough detail to replicate the process.

Thanks for taking an interest in this question!

\$\endgroup\$
  • \$\begingroup\$ Why not buy an existing touch screen glass and put it in front of a LCD panel? \$\endgroup\$ – Ignacio Vazquez-Abrams Jul 1 '15 at 17:02
  • 1
    \$\begingroup\$ Sorry, I should have been more clear. I don't need a screen, just a touch sensitive surface. I could buy a standalone touch screen overlay, but large ones can cost hundreds or even thousands of dollars depending on the size. \$\endgroup\$ – CBSoftware Jul 1 '15 at 17:11
  • \$\begingroup\$ So then just a touch pad? \$\endgroup\$ – Ignacio Vazquez-Abrams Jul 1 '15 at 17:13
  • \$\begingroup\$ Exactly right. I should have worded it better. \$\endgroup\$ – CBSoftware Jul 1 '15 at 17:16
  • \$\begingroup\$ Neat project; good to see you actually investigated this instead of just asking "I want 'x' thing and have done nothing, how do I build everything?" \$\endgroup\$ – Nick Williams Jul 1 '15 at 17:30
2
\$\begingroup\$

It's hard for me to imagine that your 1 big sheet of metal would work as a touch pad for 3 main reasons

  1. The (x, y) extraction from the measurement. Having only one big capacitor won't be accurate enough, and that's why touch panel on the maket place have a grid of capacitors. This is the first problem you are trying to solve now.
  2. The touch tracking. It's a fundamental need to detect the position of a touch, but not enough. To build a touch pad you'll also need to follow the touch movement, manage the case of a possible "not desired" second touch, handle the "tip switch" in other words when the touch is leaving the touch pad... and many others.
  3. The touch driver. To make your customized touch pad as pointing device, you'll need your OS to understand data from your touch pad. You'll build you own protocol, or used a USB standard for example, which requires a huge work IMHO.

Although, I congratulate you for your effort, and I'm just adding one remark

Designs for capacitive touch screens typically involve a "grid" of sensors that give x y values, but if I am not mistaken, this is only needed to register multiple touches.

No, not really. In an other post that have nothing to deal with yours, I've added 2 pictures that a touch screen controller (with image processros inside) is using as primary data. You would notice how a grid is used to capture the touched area. Imagine a big big finger touching the screen.

It would be seen on many "touch pixels", then an algorithm like a centroid detection, will compute the center (x, y) of the touch area. That's not only for multi-touch.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.