Hackster is hosting Hackster Holidays, Ep. 6: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Monday!Stream Hackster Holidays, Ep. 6 on Monday!
Tim Krahmer
Published © GPL3+

Kravox! Wireless, Motion and Touch-Sensing Instrument

Musical instrument for multiple users – with Arduino, nRF24L01, MPR121 and MPU-6050 connected to Pure Data Vanilla.

IntermediateFull instructions provided8 hours13,656
Kravox! Wireless, Motion and Touch-Sensing Instrument

Things used in this project

Hardware components

Arduino Nano R3
Arduino Nano R3
About 3$ / piece. from china (year 2018). Make sure to find an offer that comes with a cable (see next entry)
×2
USB-A to Mini-USB Cable
USB-A to Mini-USB Cable
Those cables are for connecting the Arduinos to the powerbank and the Computer. They can often be bought in a bundle with an Arduino nano. Mini-USB is also called USB-C.
×2
GY-521 MPU-6050 3 Axis Gyroscope + Accelerometer Module For Arduino
MPU6050 Gyroscopes can be ordered from china for about 1$ / piece (year 2018)
×1
MPR121 Touch Sensor Board
The MPR121 is not sold by sparkfun anymore, BUT cheap copies from china can be ordered for about 2$ / piece (year 2018)
×2
nRF24L01+ radio transceiver
nrf24L01+ radio transceivers are often sold on ebay or elsewhere in quantities of 3, 5 or 10 pieces. They cost about 1$ / piece (year 2018) and it's advisable to buy about 5 and up as one out of ten might not work perfectly (and once you have built something functional with them you will want to have more!)
×2
Capacitor 10 µF
Capacitor 10 µF
×2
Capacitor 100 nF
Capacitor 100 nF
×2
40-pin female pin header
40-pin female pin headers can be ordered for about 1$ / 10 pieces (year 2018) from china.
×5
Male Header 40 Position 1 Row (0.1")
Male Header 40 Position 1 Row (0.1")
×2
cable, preferably in several colors like in ribbon cable
The amount of wire that you need depends on what you want to build (=how far the touch sensor electrodes shall be away from the sensor board. This can quickly add up because there are 24 touch electrodes in a controller – so if you estimate to use approx. 15 cm per electrode, you will already need more than 3,5 meters for them only. For the three broom-shaped controllers that I built for the Milan Design fair I used about 70m to wire the electrodes). For wiring the rest (female pin headers, LEDs, potentiometers, etc.) you will need about 3 meters, so I would suggest to get at least 7-10 meters of cable – if you find a meter of 10-wire-ribbon-cable you are fine.
×2
LED (generic)
LED (generic)
You need three blue 5mm-standard-LEDs. Of course you could also use other colors. (For standard LEDs the matching resistors are green LED: 220 Ohm, blue LED: 120 Ohm, white LED: 56 Ohm. However we will use 150 Ohm resistors for the blue LEDs to limit the current flowing through them)
×3
10k Potentiometer
×5
150 Ohm resistor (1/4 Watt)
Used to limit the current flowing through the LEDs
×3
Resistor 220 ohm
Resistor 220 ohm
These resistors are optional. You need them in case the powerbank you use with the controller automatically turns off because it assumes that no device is connected due to low power consumption. If that happens, you can solder those three resistors in parallel between +5 and GND of the Arduino – just to make it consume more power
×3
Perf board (min 50 holes)
To get the same pcb-layout as me, you will need perf-boards that have at least 50 holes on the longest side. For the controller you need to cut a perf-board of minimum 9 * 50 holes. The receiver module's perf-board needs to be 31 * 8 holes wide. For convenience you will also like to cut two small boards to attach the male pin headers to. For that you need two more boards of 2 * 24 and 2 * 17 holes. Assuming that one row will be cut away by each cutting of the perf-board, you will need at least a perfboard, that is 50 * 24 holes wide.
×1
small box / food container or similar
To put the components for the master-device inside. The container should be made from a material that can be drilled and/or cut well. Preferably not a metal box as that might affect the radio transceiver's ability to communicate with the controller(s)
×1
powerbank
You can use any USB-powerbank, preferably a small one, as it will be part of the handheld controller
×1
Old boxes of household items or something else...
This is the part to be creative: For the design fair in Milan I used water pipes as a housing for the controllers. In this tutorial I use boxes that cling-film and plastic bags came in. What will you use?
×1
Solder
×1
Copper tape
Used to make the touch electrodes. you can also use other conductive objects as electrodes – preferably from copper as it can be soldered well. If you want to use a cling-film box as enclosure like in this tutorial you need a bit less than 4 meters copper tape (1cm wide)
×1
Glue
×1
super glue
Super glue is optional. You can use it to glue the single-row female pin headers together to get double-row female pin headers. Of course you can also use standard glue or your glue gun.
×1
Rubber bands
×1

Software apps and online services

Arduino IDE
Arduino IDE
Pure Data Vanilla

Hand tools and fabrication machines

Soldering iron (generic)
Soldering iron (generic)
Of course a soldering station is nicer, but a simple soldering iron will do
Drill driver + M7 drill bit
Utility knife
Small saw
Steel ruler
Wire stripper
Small pliers
Hot glue gun (generic)
Hot glue gun (generic)
Clamp
Can be useful when glueing the boxes together

Story

Read more

Schematics

Kravox Receiver and Interface circuit

Kravox Controller Circuit

Code

Kravox Code for Arduino and Pure Data

Under this link you can download a Zip-File that contains the Arduino Code for the Kravox controller and the Kravox receiver, the Kravox.pd-file for Pure Data and the necessary drumsamples for the instrument. Please refer to the tutorial for instructions how to use the files.

Credits

Tim Krahmer

Tim Krahmer

3 projects • 12 followers

Comments