Discussion:
A diy midi drum surface
andy baxter
2010-08-13 13:16:01 UTC
Permalink
Hi,

Just letting people know about a project I've been working on the last
six months or so which uses supercollider to make sound effects for a
diy midi drum surface.

Physically, it's a sheet of aluminium, suspended on rubber buffers in a
wooden frame, which uses piezo sensors to detect the position and
velocity of strikes on the pad surface. The electronics is based on an
arduino board, and there is some python code which runs on the host
computer to map the raw incoming sensor data from the arduino into a
stream of midi events, including the x and y coordinates of each strike.
These events are then picked up by supercollider and used to play sounds.

The position sensing is reasonably good considering how simple the
design is - strikes can be located repeatably to within about 5% of the
width of the pad in each direction.

Details of how to build one are here:

http://www.instructables.com/id/A-position-sensitive-midi-drum-pad/

There is a youtube video here:



and the software for it is here:

http://ganglion.me/synpad/software/

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
aucotsi
2010-08-13 14:15:25 UTC
Permalink
looks great, nice job
--
View this message in context: http://new-supercollider-mailing-lists-forums-use-these.2681727.n2.nabble.com/A-diy-midi-drum-surface-tp5419976p5420151.html
Sent from the SuperCollider Users New (Use this!!!!) mailing list archive at Nabble.com.

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
andy baxter
2010-08-13 15:33:43 UTC
Permalink
Post by aucotsi
looks great, nice job
Thanks!

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Dan Stowell
2010-08-13 16:17:35 UTC
Permalink
Nice demo! Thanks for it (and the diy tutorial etc)

Dan
Hi,
Just letting people know about a project I've been working on the last six
months or so which uses supercollider to make sound effects for a diy midi
drum surface.
Physically, it's a sheet of aluminium, suspended on rubber buffers in a
wooden frame, which uses piezo sensors to detect the position and velocity
of strikes on the pad surface. The electronics is based on an arduino board,
and there is some python code which runs on the host computer to map the raw
incoming sensor data from the arduino into a stream of midi events,
including the x and y coordinates of each strike. These events are then
picked up by supercollider and used to play sounds.
The position sensing is reasonably good considering how simple the design is
- strikes can be located repeatably to within about 5% of the width of the
pad in each direction.
http://www.instructables.com/id/A-position-sensitive-midi-drum-pad/
http://youtu.be/2w-r9WraaWI
http://ganglion.me/synpad/software/
_______________________________________________
sc-users mailing list
http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
--
http://www.mcld.co.uk

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Saul
2010-08-13 17:56:02 UTC
Permalink
Hi Andy,

Nice work, Just got an Arduino. Out of interest could the sensor
calculation be achieved in SC, is there an advantage to using Python?
Post by andy baxter
Hi,
Just letting people know about a project I've been working on the
last six months or so which uses supercollider to make sound effects
for a diy midi drum surface.
Physically, it's a sheet of aluminium, suspended on rubber buffers
in a wooden frame, which uses piezo sensors to detect the position
and velocity of strikes on the pad surface. The electronics is based
on an arduino board, and there is some python code which runs on the
host computer to map the raw incoming sensor data from the arduino
into a stream of midi events, including the x and y coordinates of
each strike. These events are then picked up by supercollider and
used to play sounds.
The position sensing is reasonably good considering how simple the
design is - strikes can be located repeatably to within about 5% of
the width of the pad in each direction.
http://www.instructables.com/id/A-position-sensitive-midi-drum-pad/
http://youtu.be/2w-r9WraaWI
http://ganglion.me/synpad/software/
_______________________________________________
sc-users mailing list
info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
andy baxter
2010-08-13 18:00:22 UTC
Permalink
Post by Saul
Hi Andy,
Nice work, Just got an Arduino. Out of interest could the sensor
calculation be achieved in SC, is there an advantage to using Python?
The only solid reason for using python is because the algorithm for
mapping the raw sensor readings to x-y coordinates uses a least squares
curve fitting algorithm which there is a library for in python (scipy).
There might be other ways of doing it though, or you could code the
curve fitting bit by hand if you felt adventurous.

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Arthur Carabott
2010-08-16 11:55:56 UTC
Permalink
Very nice, although I spotted a bug ;-) - (2:15 - 2:43, watch the foam)
Post by Saul
Hi Andy,
Nice work, Just got an Arduino. Out of interest could the sensor
calculation be achieved in SC, is there an advantage to using Python?
The only solid reason for using python is because the algorithm for mapping
the raw sensor readings to x-y coordinates uses a least squares curve
fitting algorithm which there is a library for in python (scipy). There
might be other ways of doing it though, or you could code the curve fitting
bit by hand if you felt adventurous.
_______________________________________________
sc-users mailing list
http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Wouter Snoei
2010-08-17 08:07:52 UTC
Permalink
Post by Arthur Carabott
Very nice, although I spotted a bug ;-) - (2:15 - 2:43, watch the foam)
LOL! :-)

It would be nice to have a least squares algorithm in sc somehow, can
be useful for many purposes. Or is it already in one of the quarks?

cheers,
Wouter
Post by Arthur Carabott
Hi Andy,
Nice work, Just got an Arduino. Out of interest could the sensor
calculation be achieved in SC, is there an advantage to using Python?
The only solid reason for using python is because the algorithm for
mapping the raw sensor readings to x-y coordinates uses a least
squares curve fitting algorithm which there is a library for in
python (scipy). There might be other ways of doing it though, or you
could code the curve fitting bit by hand if you felt adventurous.
_______________________________________________
sc-users mailing list
info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
rags música
2010-08-17 11:30:49 UTC
Permalink
LOL, it is a real bug on there!
Post by Arthur Carabott
Very nice, although I spotted a bug ;-) - (2:15 - 2:43, watch the foam)
Post by andy baxter
Post by Saul
Hi Andy,
Nice work, Just got an Arduino. Out of interest could the sensor
calculation be achieved in SC, is there an advantage to using Python?
The only solid reason for using python is because the algorithm for
mapping the raw sensor readings to x-y coordinates uses a least squares
curve fitting algorithm which there is a library for in python (scipy).
There might be other ways of doing it though, or you could code the curve
fitting bit by hand if you felt adventurous.
_______________________________________________
sc-users mailing list
http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-users/
search: http://www.listarc.bham.ac.uk/lists/sc-users/search/
Loading...