Mug Music: Turn Water Into an Instrument with Arduino and ChucK

What if you could turn any conductive surface into an instrument? Like, say…a mug of water? Best of all, it’s cheap; you’ll only need $1 worth of extra electrical components (not including the Arduino).

Mug Music-Turn Water Into an Instrument with Arduino and ChucK

 

For this project, my friend Harvest and I combined Disney’s Touché touch-sensing system with Arduino, and then used ChucK to generate music based on the input. Rain falls gently in the background, and when the user approaches, they can trigger notes on a whole-note scale by touching the mug. Touching the water directly results in some lovely raindrop-inspired, high-pitched notes. Finally, touching the water while also touching a grounded surface will trigger a thunderclap!

 

Some thank-you’s are in order:

  • Disney’s original Touché paper
  • madshobye’s Touche for Arduino Instructable
  • madlabdk’s github project, which implements a more human-readable, less efficient encoding for the data, which we used, because it made it easy to feed the data into ChucK
  • The makers of ChucK, because it’s an awesome programming language for synthesizing music (OK, I’m biased, it’s from my school)

Prerequisites:

You will find this Instructable much easier to follow if you have a basic understanding of circuits. Additionally, if you want to edit the musical behavior, you’ll have to use the ChucK language.

Common problems, things to watch out for, etc:

Make sure your laptop is properly grounded when you do this (e.g. plug it into a wall). Otherwise you’ll get some weird readings. Additionally, you may have to alter some of the values in the springshowers.ck file in order for this to work for your personal setup. We used a plain ceramic mug.

Github:

A .zip download of all code is available at the next step, but here’s the github repo if you want to download the code from there as well.

More projects:
Check out my blog at bonnie-eisenman.tumblr.com to see what I’m up to.

Step 1: Materials and Setup

HARDWARE

You will need one each of the following:

Resistors: 10k, 1M, 3,3k

Capacitors: 100pf, 10nf

Diode: 1N4148

Coil / inductor: 10mH

We purchased these from Mouser. This sample shopping cart contains enough materials for 3 such projects. It comes out to  about $1.11 per project for all of these components, not including shipping!

Additionally, you will need an Arduino, breadboard, jumper wires, and an alligator clip — all of which should be pretty standard.

SOFTWARE

Install ChucK and the Arduino IDE. Then download the mug-music-master.zip file from this step, which contains all necessary code.

CIRCUIT

See attached image for the circuit image, taken from this Instructable, which includes instructions on how to setup the circuit.

You’ll want to set up the circuit on a breadboard, and connect an alligator clip to the end where the “object” should be. We then dunked the free end of the alligator clip into a mug filled with water, and plugged the Arduino into our USB port.

Step 2: Upload the Arduino Sketch

The attached Arduino sketch is taken from madlabdk’s github repository. The only difference is that we added a delay() line to slow the rate of new data.

Upload it without modifications to your Arduino. (This file is attached here, or go back a step to download all relevant code.)

If you want to change the frequency of notes later, you can change the delay duration, but for now this will work.

 

For more detail: Mug Music: Turn Water Into an Instrument with Arduino and ChucK


About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top