Erling Ellingsen made a $2 multi-touch pad with a plastic bag, some dye, and a camera. Eat your heart out, MacGyver
- The main idea is that you threshold the image into three areas: background (light blue), fingers (dark blue; these are shown as an overlay on-screen) and pressure points (not blue).
- I used a bag of dye for now, since that was easy to make. It might be feasible to tape LEDs to the edges of the table, and use FTIR-like scattering; I’d like to try that later. Actually, if you have one of those cheesy engraved-perspex-plate-with-blue-LEDs-in-the-base things lying around, you might be able to use that.
- Large areas of non-blue are interpreted as fingers. There is a mouse mode, where every touch immediately moves the mouse to that point, and a multi-touch mode which sends an NSNotification with a list of points for each frame. These will of course only be understood by programs that understand this protocol—of which there currently exist only one (the rotozoomer at the end)
- The on-screen display is just a regular transparent OSX window. The background pixels are 100% transparent (alpha=0), and the hands show up as black with alpha 0.1 or so.
So cool to see this sort of innovative thinking and embrace of constraints.
Stan D
on 26 Sep 07Wow. That is amazingly simple and creative. Great find, Matt.
Anonymous Coward
on 26 Sep 07I have that same soundtrack following me around.
Anonymous Coward
on 26 Sep 07Why does everything have to do with a “constraint?” This is hardly an example of a constraint. He wanted to create a multi-touch device and was able to do it for a couple bucks.
ML
on 26 Sep 07Why does everything have to do with a “constraint?”
I just mean he didn’t sit around and say, “I don’t have access to the expensive form of this technology so I can’t do it.” He figured out a way to make it out of materials that were cheap and easily available.
Mark M
on 26 Sep 07Cool stuff, Matt.
I’d like to try that with one of the “light wedge” led-lit book lights. I was watching my baby daughter play with it and noticed that where her fingertips were touching the surface, they were illuminated nicely.
I think I’m going to have to write some software to do layout with this method (though ideally it would use a whole table). I’ve always missed being able to slide things around with my fingers to nudge design elements.
Noah
on 26 Sep 07Wow. That is one cheap camera (eyebrows cocked just so to indicate tone: a little bit critical, a little amused and satirical).
Simon
on 26 Sep 07Reminds me of the Amazing LEGO n’ milk 3D Scanner!
Simon
on 26 Sep 07Trying again: Reminds me of the Amazing LEGO n’ milk 3D Scanner!
Daniel
on 26 Sep 07Cool! I thought about trying the dye-in-a-bag once, but I figured if I had the time to try and build a multi-touch interface, I’d like it to be overlaid on a screen or use rear-projection, the dye bag was not the solution for me.
I do still want to build a multi-touch-thingy, but if I find the time, it’s going to be a display. Did help a friend build one that used diffusion-paper on pane of glass, rear-projection and IR-reflection to pick up touches. Didn’t need the actual multi-touch-part, just the touch-part, so it didn’t need to be very precise or anything.
Cool to see that the dye technique works, though. I feeling the urge to start experimenting with multi-touch stuff again after seeing it. I’m thinking it would possibly be more precise, and still quite cheap, and to use to taut pieces of clear foil, with something more viscous (oil, liquid soap, gel) sandwiched – very thinly – in between. Like if you get water between sheets of overhead-transparencies. Maybe I’ll try that, actually
Allan White
on 26 Sep 07The main thing holding back multitouch right now is the software interfaces, IMHO. There’s just precious few software libraries for doing this right now – a classic chicken-and-egg conundrum. Why make software if there aren’t multitouch screens in wide use (and the inverse)?
Great solution, quite fun – very outside the box.
Josh Walsh
on 28 Sep 07But…. I can’t take it on a plane!
This discussion is closed.