electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » DIY Hardware and Software
Multi-Touch Proto 2
Post new topic   Reply to topic Moderators: jksuperstar, Scott Stites, Uncle Krunkus
Page 1 of 3 [74 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: 1, 2, 3 Next
Author Message
Scott Stites
Janitor
Janitor


Joined: Dec 23, 2005
Posts: 4127
Location: Mount Hope, KS USA
Audio files: 96

PostPosted: Sun Dec 07, 2008 9:16 am    Post subject: Multi-Touch Proto 2
Subject description: Jaw-Droppingly Cool!!!!
Reply with quote  Mark this post and the followings unread

Hope this hasn't been posted elsewhere, but I caught this on MatrixSynth a couple of days ago. This thing (IMO) is sheer frikkin' genius!!

Watch the vid and go to his site and download the PDF of this guy's Masters Thesis - good reading (I know, because I only understand half of it Laughing ):

http://matrixsynth.blogspot.com/2008/12/multitouch-prototype-2.html

_________________
My Site
Back to top
View user's profile Send private message
neandrewthal



Joined: May 11, 2007
Posts: 672
Location: Canada

PostPosted: Sun Dec 07, 2008 11:54 am    Post subject: Reply with quote  Mark this post and the followings unread

OMG. Did he really just do the old tighten the skin of the drum while you bang on it trick....on a CONTROLLER? That's amazing!
_________________
" I went through quite a few trannies til I found one I liked" - Wild Zebra
Back to top
View user's profile Send private message
Scott Stites
Janitor
Janitor


Joined: Dec 23, 2005
Posts: 4127
Location: Mount Hope, KS USA
Audio files: 96

PostPosted: Sun Dec 07, 2008 12:48 pm    Post subject: Reply with quote  Mark this post and the followings unread

Yeah - that was the part that really got my attention!
_________________
My Site
Back to top
View user's profile Send private message
wetterberg



Joined: Jun 27, 2008
Posts: 48
Location: denmark

PostPosted: Mon Dec 08, 2008 6:10 am    Post subject: Reply with quote  Mark this post and the followings unread

neandrewthal wrote:
OMG. Did he really just do the old tighten the skin of the drum while you bang on it trick....on a CONTROLLER? That's amazing!
the Roland HandSonic devices have this too.

But an amazing diy job, nonetheless - it's a shame it basically uses up a full, very expensive audio interface!
Back to top
View user's profile Send private message
slabman



Joined: Sep 01, 2005
Posts: 102
Location: UK

PostPosted: Mon Dec 08, 2008 10:39 am    Post subject: Output interface Reply with quote  Mark this post and the followings unread

It's a brilliant piece of lateral thinking. As I understand it, there are 16 'pickup' outputs. Each output contains a signal made up of any or all of 16 'carrier' sinewaves. The interface pipes the pickup signals to Max MSP which decodes the amplitude envelopes of the carriers and deduces the position and force of the percussive impacts.

This provokes two trains of thought for me:

1. Is the interface and decoding achievable with a DSP chip of some sort?

2. Could the matrix of sensors be physically rearranged (eg a 'marimba' layout)?
Back to top
View user's profile Send private message
wetterberg



Joined: Jun 27, 2008
Posts: 48
Location: denmark

PostPosted: Mon Dec 08, 2008 1:26 pm    Post subject: Re: Output interface Reply with quote  Mark this post and the followings unread

slabman wrote:
This provokes two trains of thought for me:

1. Is the interface and decoding achievable with a DSP chip of some sort?
yes it is - look at products such as the (drool-worthy) Haaken Continuum fingerboard
http://www.cerlsoundgroup.org/Continuum/html/overview/HowItWorks.html
-so it's definitely possible.
slabman wrote:
2. Could the matrix of sensors be physically rearranged (eg a 'marimba' layout)?
yes, although a 4x4 scanning matrix is more efficient than, say, a 2x8, since that would require 2 more scan rows/columns.
Back to top
View user's profile Send private message
Tasmanian Alkaloid



Joined: Jun 29, 2008
Posts: 116
Location: Isle De Mort

PostPosted: Tue Dec 09, 2008 12:29 am    Post subject: Reply with quote  Mark this post and the followings unread

That's incredible! I'd like something like this for a modular synth.
Back to top
View user's profile Send private message
slabman



Joined: Sep 01, 2005
Posts: 102
Location: UK

PostPosted: Tue Dec 09, 2008 2:23 am    Post subject: Touch operated filter bank? Reply with quote  Mark this post and the followings unread

Not sure if this is of any value whatsoever but I'll float it anyway.

It's a slight diversion from the concept of the prototype. Imagine n carrier strips under one pickup strip. Multi-touch pressure on that pickup strip is going to give you an output signal composed of a mix of the carrier signals at various amplitudes. Choose the carrier frequencies to match the filter frequencies of an n-channel vocoder. Feed the pickup signal into the modulator input of the vocoder. Voila - touch-controlled filter bank.

Maybe...
Back to top
View user's profile Send private message
slabman



Joined: Sep 01, 2005
Posts: 102
Location: UK

PostPosted: Wed Dec 10, 2008 10:25 am    Post subject: More bunkum Reply with quote  Mark this post and the followings unread

I guess you could also use this technique to implement a touch sensitive waveform mixer as seen on the Electronic Sackbut
Back to top
View user's profile Send private message
urbanscallywag



Joined: Nov 30, 2007
Posts: 317
Location: sometimes

PostPosted: Sun Dec 14, 2008 9:42 am    Post subject: Reply with quote  Mark this post and the followings unread

Wow!

I am surprised at the size of the copper strips. I would have imagined that you would need finer granularity for usable results, but apparently not. Smile
Back to top
View user's profile Send private message
ian-s



Joined: Apr 01, 2004
Posts: 2672
Location: Auckland, New Zealand
Audio files: 42
G2 patch files: 626

PostPosted: Sun Dec 14, 2008 1:37 pm    Post subject: Reply with quote  Mark this post and the followings unread

urbanscallywag wrote:
Wow!

I am surprised at the size of the copper strips. I would have imagined that you would need finer granularity for usable results, but apparently not. Smile


The software would probably use relative levels from adjacent strips to give an accurate position. On the down side, the multitouch would probably get confused if two fingers got too close together.

Nice project.
Back to top
View user's profile Send private message
Randy Jones



Joined: Dec 15, 2008
Posts: 12
Location: Seattle

PostPosted: Mon Dec 15, 2008 8:07 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi there. I'm glad people enjoy my project! If anyone is crazy enough to make one of these, I'd be happy to offer advice and software. I'd be interested to hear if other audio interfaces work OK. One could start with a single-point touch sensor very easily...

I am also looking into refining this into a product and seeing if people will buy some. Encouragement and ideas are welcome.

Quote:

The software would probably use relative levels from adjacent strips to give an accurate position. On the down side, the multitouch would probably get confused if two fingers got too close together.


Exactly. You can see in the demo that I avoid playing two simultaneous notes too near to each other. The interpolated location of one touch is fairly accurate though, as evidenced by the vibrato in the video. Strictly speaking, it is more precise than accurate, because it's very repeatable but my handmade antennas are far from perfectly square.
Back to top
View user's profile Send private message
urbanscallywag



Joined: Nov 30, 2007
Posts: 317
Location: sometimes

PostPosted: Mon Dec 15, 2008 10:29 pm    Post subject: Reply with quote  Mark this post and the followings unread

Nice work Randy. Smile

Would you make more and narrower strips in a future version? Was the number of audio I/O the limiting factor in the original design?
Back to top
View user's profile Send private message
Randy Jones



Joined: Dec 15, 2008
Posts: 12
Location: Seattle

PostPosted: Tue Dec 16, 2008 6:36 pm    Post subject: Reply with quote  Mark this post and the followings unread

Quote:
Would you make more and narrower strips in a future version? Was the number of audio I/O the limiting factor in the original design?


Yes and yes. Luckily the RME has a DAC dedicated to its headphone amp, so I can use that for actual sound output!
Back to top
View user's profile Send private message
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24446
Location: The Netherlands, Enschede
Audio files: 297
G2 patch files: 320

PostPosted: Tue Dec 16, 2008 7:40 pm    Post subject: Reply with quote  Mark this post and the followings unread

Randy Jones wrote:
Luckily the RME has a DAC dedicated to its headphone amp, so I can use that for actual sound output!


Laughing and welcome , looks good, as in fun!

_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
urbanscallywag



Joined: Nov 30, 2007
Posts: 317
Location: sometimes

PostPosted: Tue Dec 16, 2008 9:05 pm    Post subject: Reply with quote  Mark this post and the followings unread

Randy Jones wrote:
Quote:
Would you make more and narrower strips in a future version? Was the number of audio I/O the limiting factor in the original design?


Yes and yes. Luckily the RME has a DAC dedicated to its headphone amp, so I can use that for actual sound output!
Saved by the headphone DAC!

Getting (high speed) data into the PC is really easiest with a multi-channel soundcard like you've done. That way the drivers are there for you. Doing custom hardware would make things a lot cheaper (an 8 channel CODEC is less than $20) but then how do you get data into the computer? Or even to CV/MIDI outputs (thinking of multi-touch type problems here)?

Now that I think about it your computer software is much more mind boggling than the hardware! Shocked
Back to top
View user's profile Send private message
skrasms



Joined: Feb 21, 2008
Posts: 121
Location: Portland, OR

PostPosted: Mon Dec 22, 2008 1:58 pm    Post subject: Reply with quote  Mark this post and the followings unread

That's clever, multiplexing in the frequency domain to get 64 pieces of data over 8 transmission lines. Most of the commercial capacitive sensor chips use a single excitation plane (only one frequency) and then put a grid of sensors on top of that. They would take 16 channels to do the same thing.

Have you looked into higher frequencies (though you wouldn't be able to use a regular sound card anymore) and the dissipation factors of different types of rubber or polymers? Are you doing any compensation for environmental factors?

What is the overall system latency?

I'm really curious about this. You could take it much further with a dedicated DSP.

_________________
Software and Hardware Design
Back to top
View user's profile Send private message
urbanscallywag



Joined: Nov 30, 2007
Posts: 317
Location: sometimes

PostPosted: Sun Dec 28, 2008 12:14 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hello Randy,

Congratulations on your master's thesis! I just made it all the way through. I really appreciate application oriented thesis work rather than purely academic/theoretical research.

How long would you say it would take to build the sensor box? I am interested in giving a hardware-only version a try. Do you have any ideas on what dielectric might be better than rubber? Would something less dense like foam give a "faster" response time?

I think I may be able to help with the DSP algorithms as well as bring everything into a cheaper self contained unit. Are you actively working on your project at all?


Nicholas
Back to top
View user's profile Send private message
Randy Jones



Joined: Dec 15, 2008
Posts: 12
Location: Seattle

PostPosted: Sun Dec 28, 2008 3:05 pm    Post subject: Reply with quote  Mark this post and the followings unread

Thanks Nicholas.

It's hard for me to answer how long it might take you to make a device. You have read what goes into it. It could really be a one-day project, but making it work well is likely to take longer. I have thought of making a how-to guide that would be more practically oriented than the thesis, with antenna layouts, and step-by-step construction details. On the other hand, I think everyone weird enough to make this thing in something like its present form will want to customize the design, probably a lot, so the general use of such a guide might be small. So I'm here to answer questions in the meantime, and happy to share software.

You want a very resilient material if the dielectric is providing the restoring force for the surface. The problem with less dense foams is that they take a second or so to recover. There would be no problem with using air for the dielectric and using some other kind of spring, though.

I think of the DSP as more or less done, but would be interested to hear what ideas you have. I am working on making a self-contained version of the device to sell. I think that openness about the design and helping people make their own will be an important part of this work. Monome has been inspirational in this regard.

-Randy
Back to top
View user's profile Send private message
urbanscallywag



Joined: Nov 30, 2007
Posts: 317
Location: sometimes

PostPosted: Sun Dec 28, 2008 3:23 pm    Post subject: Reply with quote  Mark this post and the followings unread

OK I should have clarified how long to build the actual device. Making it work (well) is a whole 'nother project. Wink

I think the DSP could be done much more efficiently as well as bandwidth used more effectively (allowing use of cheaper ADC/DAC and processor). I am also interested in using your design without a computer.

For example you are sampling at 44.1 ksps but your lowest frequency of interest is 6 kHz, more than a quarter of the bandwidth isn't used. I also suspect the FFT is not the best way to do what you're trying to do. Individual filters may offer significant computational savings as well as better responsiveness. Your signals have effectively 0 bandwidth which lets you play some neat tricks in filter design.

Like I said I just finished reading your paper today and I found it quite inspiring. I have not studied physical modeling at all so that was an eye opener, and I think your processing of the actual multi-touch data is very nice. I think that some improvements could be made into acquiring and processing the signals to create that data.

I will try and do some simulations on the filters I was thinking of using instead of the FFT and get back to you. Knowing whether that will work will help me decide on what kind of converters to use.
Back to top
View user's profile Send private message
Randy Jones



Joined: Dec 15, 2008
Posts: 12
Location: Seattle

PostPosted: Sun Dec 28, 2008 7:55 pm    Post subject: Reply with quote  Mark this post and the followings unread

Making the antennas is probably the hardest part of the project. It can probably be completed in a day though. I'll add a few details that are not in the thesis:

My antennas are 1/2" 3M copper tape with approx. 1/16" spacing in between. laid down on 3 mil polyethylene film they are removable for experiments, yet do not seem to creep across the surface even after weeks of playing.

I arrange them like
Code:

XXXXXXXXXXXXXXXX
XAAAAAAAAAAAAAAX
XXXXXXXXXXXXXXXX
XBBBBBBBBBBBBBBX
XXXXXXXXXXXXXXXX
...


where A and B are different row carriers, and X is ground. The antenna geometry is a tradeoff between capacitive area, which you want to increase, and leakage between carriers, which you want to decrease.

Copper tape to copper tape joints, using the conductive glue of the tape, are not sufficiently conductive to make reliable connections in this application. To connect two pieces of the tape electrically, make a soldered wire bridge.

The capacitive coupling will dictate a low frequency cutoff for usable carriers. With my dimensions this was about 6kHz.

I don't know what you mean about effectively 0 bandwidth. The gesture signals are sampled at around 1300Hz. Choosing the carrier frequencies to be integer divisors of the FFT size lets the FFT act as a perfect demodulator, in the sense that stopband rejection is complete. This is described in the thesis. I don't think bandpass filters can be either as efficient or as effective. On the other hand there are always more tricks I haven't thought of, so happy exploring-- I await your results with interest.
Back to top
View user's profile Send private message
urbanscallywag



Joined: Nov 30, 2007
Posts: 317
Location: sometimes

PostPosted: Sun Dec 28, 2008 10:05 pm    Post subject: Reply with quote  Mark this post and the followings unread

Thanks for the construction tips. I don't think I'm mechanically fit enough to take this on. I wonder if the flexi-PCB stuff would be durable enough for this project.

Bandwidth is the highest frequency of interest minus the lowest, fH - fL. If you are looking for a single tone, fH - fL = 0, there is no bandwidth. When you have less bandwidth you can lower your sample rate, when you lower your sample rate you save computations and so on.

1/2 of your FFT bins are empty, right? But you're computing them still, so those computations are basically wasted.

I already did some groundwork on the FIR filters I had in mind, I think they meet or exceed the performance of a 32 point FFT per operation. I am not really into computer science but general purpose CPU/DSP aren't particularly great at FFT, right? Broken pipelines wasting clock cycles and such? While a FIR filter lends itself to pipelining very well? So what I'm thinking is for a given number of operations, say 100, an FFT will put a greater load on the CPU than a FIR. Or am I way off? Perhaps the increase in efficiency will mean more when the target is a hardware processor rather than a computer CPU.

I could be wrong about all this, its just my initial impression that an FFT might not be the best way to do this, or certainly not the only. Either way its something interesting for me to think about. Smile

So to test my filters I can generate 8 samples at 16 bit and 44.1 kHz. Each sample will have a random amplitude of a sinusoid at [5 6 7 8 9 10 11 12]/32*44100 Hz. Anything else to note?

Also there are ways to recover that bandwidth between DC and 6 kHz.

I am much too interested in your project over doing my own stuff. Embarassed
Back to top
View user's profile Send private message
urbanscallywag



Joined: Nov 30, 2007
Posts: 317
Location: sometimes

PostPosted: Sun Dec 28, 2008 10:18 pm    Post subject: Reply with quote  Mark this post and the followings unread

This link has what I was getting into about the FFT inefficiency:

http://cnx.org/content/m12021/latest/

Quote:
fact: On general-purpose machines, computation is only part of the total run time. Address generation, indexing, data shuffling, and memory access take up much or most of the cycles.


That's why I'd go FPGA* in a hardware version.


*I am biased. Cool
Back to top
View user's profile Send private message
Randy Jones



Joined: Dec 15, 2008
Posts: 12
Location: Seattle

PostPosted: Mon Dec 29, 2008 10:00 am    Post subject: Reply with quote  Mark this post and the followings unread

The test signal you want to look at is a sum of eight sine waves of the frequencies you mention. The amplitudes of the sines can vary smoothly, but if you make them random, you have to lowpass filter the randomness. If one carrier varies too fast, its frequency will spread into adjacent bands. So I would probably use another sine as a test signal to start.

This would indeed be a great application for FPGA.
Back to top
View user's profile Send private message
urbanscallywag



Joined: Nov 30, 2007
Posts: 317
Location: sometimes

PostPosted: Mon Dec 29, 2008 11:55 am    Post subject: Reply with quote  Mark this post and the followings unread

OK got it, not random amplitudes per sample. I actually just left each tone at maximum amplitude for my test.

I believe I have a neat solution. I will verify it and write something up tonight or tomorrow. Very Happy
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Moderators: jksuperstar, Scott Stites, Uncle Krunkus
Page 1 of 3 [74 Posts]
View unread posts
View new posts in the last week
Goto page: 1, 2, 3 Next
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use