Thursday, May 24, 2012

Arduino do the Touché dance

The Touché hardware uses a really fancy Direct Digital Synthesizer IC from Analog Devices. It generates a really pure sine wave signal with frequencies between 1kHz and 3.5MHz with crazy high resolution.
While the Arduino is capable of generating frequencies in this range the signal is a square wave with lots of harmonic frequency components and really low frequency resolution.
Simply using this signal with the circuit described in the Touché paper result in a really messy frequency graph due to the harmonics from the square wave.
The solution is to use the filtering properties of the LC circuit to our advantage. By measuring the signal after the inductor (coil) rather than before we only see a nice sine wave shaped signal free of all the unwanted frequency components.
As a result we now see a peak in signal at resonance rather than a notch but the signal contains the same information.
The Arduino is only able to generate about 200 frequencies within the usable frequency range but the signal measured at these frequencies is very clean and stable allowing for interpolation to get better resolution.
We are currently working on algorithms to determine touch gestures from this signal.


Here are some external links about the touch interface:

 More may be added.


  1. amazing man! How can i make a similar circuit like this? can you show me? i apreciate that!

  2. This is so great! , could you use this technique to mix it up with some multi touch screen?

  3. Hey, well done! Cudos from Touche team.

  4. I am trying to build one of these here in the U.S. Do you think this inductor would do the job?