<body>

Blog

Tuesday, September 2, 2008

How to Make a Cheap Multitouch Pad

via MTmini

The above demo shows 1/2 of the ingredients of a "true" multi-touch display.

To make images appear under your fingers instead of over on the computer's screen, takes only a few more steps:

1) Remove the IR filter from the camera so it can detect infrared, then add a filter over the lens to ignore visible light, so the camera only "sees" IR.

2) Add an IR source inside the box, pointing up (many commercially available security cameras already come configured with IR "blast" arrays, or they can be purchased as a separate unit, or make your own).

3) Exchange the tracing paper for a material that is still translucent yet allows IR light thru.

4) Add a little LCD projector next to the camera in the box, also pointed up.

TaDa!

Now your hands will be bathed in invisible infrared light. As your fingers approach and/or touch the surface, the camera "sees" IR blobs, which are then processed in software to differentiate touch and other gestures. The "Touchlib" library includes everything you need to process the images (as seen in the video). Now you project the image up onto the touch surface from below. The image is projected in the visible spectrum and so doesn't interfere with the IR blobs being received by the camera.

There is also a way to get crisper IR blobs, without bathing the user's hands in IR, by using a technology called "Frustrated Total Internal Refraction" (FTIR), popularized by Jeff Han. FTIR relies on the unique properties of acrylic sheet, e.g. it is extremely reflective on the inside surface, until touched (or until it gets dirty). By shooting IR into the edges of the sheet, touches are "seen" by the IR camera whenever the internal refractive properties of the acrylic are "frustrated" by being touched. Each touch bounces a blob of IR down into the camera.

*

I've been having some great conversations about multi-touch lately. What constitutes multi-touch? Does dual-touch count? Can multi-touch be "faked" on a single-touch surface using close timing of events (e.g. milliseconds apart)? What if you use the same approach on a dual-touch surface? Is this how the iPhone works (e.g. software detection of finger-spacing)? What about the Macbook's dual-touch mousepad? How does that work, anyways? Which technologies are dominating, if any? Capacitive, grid o' wires, heat sensing, IR bath? Which approach is typically used for which commercial application?



previously:

April 2007 * May 2007 * June 2007 * July 2007 * August 2007 * September 2007 * October 2007 * November 2007 * December 2007 * January 2008 * February 2008 * March 2008 * May 2008 * July 2008 * August 2008 * September 2008 * October 2008 * November 2008 * December 2008 * January 2009 * April 2009 * May 2009 * June 2009 * July 2009 * August 2009 * September 2009 * October 2009 * November 2009 * January 2010 * February 2010 * March 2010 *