This sketch realizes a simple USB Piano with no additional circuitery. It uses the build in USBMIDI possibility of the Arduino Leonardo. Simply connect wires to Analog in A0 – A6 and start playing!
The Code can be found here:
Korg chose to use some very strange DC power adapter. If you want to use build your own power supply, I found that this one works:
- HS 17-10 : Hohlstecker Knickschutz, Ø außen: 4,0 mm, Ø innen: 1,7 mm
- HS 17-10 :: DC plug 1.7 mm/4.0 mm/9.5 mm straight
In this article I will explain the technical background of my techno music robots. Maybe you have seen my giant MR-808 Robot. Thats where I started dealing with Robotic Electronic Music (R.E.M.) on a daily basis. Since then my whole life is dedicated to experimenting, building and playing shows with music robots. I wake up with them in the morning and think about music robots at night. Why? Because I think that electronic music has to evolve and I am very bored with music synthezisers, modular synthezisers, samplers, and computers. I want Future! Robots! And Techno!
Also I am just release my first debut album with help from Mouse On Mars, Kompakt and many many other wonderful people. Its the worlds first techno record made only with robot! You can find it here
But back to robotics. My music robots always consist of four parts:
- The Electronics (PCB with MIDI-In, Mosfet, )
Winter time – workshop time! Experiment with an monchord which is triggered by the changing field of a solenoid. It creates beautiful and a little haunting overtones.
The solenoid is switched on and off. When the bass note or an overtone is hit, the string startes to vibrate. It works like an ebow without the feedback coil.
Grove I2C Touch Sensor Midi keyboard
Create a Midi keyboard with 4 buttons with the Seedstudio Grove Kit touch sensor.
- It uses the USB MIDI Library with an Arduino Leonardo,
- the Arduino USB interface can be used directly as an MIDI Interface
Repository and Files: https://github.com/Sonicrobots/Capacitive-Touch-Midi-Keyboard/blob/master/main.ino
We wanted to create light effect: short fades of 10W Leds which can be put on stage and are triggered via MIDI.
- 8 Channels
- Up to 10W LEDs at 12V per channel
- One LED Driver CAT 4101 per channel
- PWM Dimming of the brightness via Midi
- MIDI-IN and through
We used a dedicated LED Driver for each channel. Its the CAT 4101 which can drive up to 1A. A TLC5940 creates the PWM Signal. Up to 16 PWM Channels from the TLC (here we use only 8) are controlled via SPI from an ATMEGA168. Like this the load of the ATMEGA is kept low when a lot of dimming is performed. Midi-In is straight forward through an Optocoppler.
The MIDI Channel can be set with an hex coded 16 stage switch.
Our sketch contains a programm for fast dimming of the LEDs. Like this an LED will flash and slowly decay, which is a cool effect together with sound. You can see an example here (with 3W LEDs):
You can of course write your own sketch using ours. A good start is the example in the TLC5940 Arduino Library.
The HiHat machine is part of the Drum Robot MR-808. It took some experiments until I figured out how this can be crafted into a high-performance working instrument: A HiHat is normally used in any track and plays most of the time!
This robotic HiHat is based on a normal drummers hihat, with two cymbals and parts of the hihat-stand. It also contains two solenoids (electro magnets), one for opening and closing the cymbals, on for the actual beating of the cymbal.
The force needed to open the HiHat is quite high, as it has to work against the force that closes the HiHat. The solenoid used here comes from a car engine starter. They have the most powerful solenoids, are reasonably cheap, easy to get at any car junk jard (or eBay) and operate at 12V. Perfect for low budget robotics!
The disadvantage is, that they consume roughly between 30 and 50A. Un-technically spoken: This is very much! I use server power supplies which can supply a current up tp 50A@ 12V.
I started with a standard HiHat machine (the full hardware Hihat Stand) and cut the lower part off. One thing you have to consider: a HiHat is default-OPEN, meaning that the spring inside keeps the cymbals separated when no pressure is applied. Only if the drummer steps on the foot-part, the HiHat closes. Replacing the drummers-foot with a solenoid (yeeha!) would mean that you would have a constantly powered solenoid, in this case about 35A, for most of the time (closed HiHat).
As we don’t want to fry eggs with the robot (solenoids can get quite hot) its recommended to reverse this mechanics, meaning that the HiHat is default-closed, and the solenoid is only powered when you want an open HiHat. I then removed the spring and let the gravity do the closing of the cymbals. Afterward I attached a fan inside the HiHat machine as the solenoid gets really hot for off-beat disco music. The huge car solenoid is only for the opening and closing of the hihat.
The actually beater is another solenoid which just hammers directly on the lower cymbal. It is used for both closed and open HiHat.
I’m a big fan of Simplify 3D. Its a commercial software but its worth every 149$ that it costs. If you digging deeper into 3D-Printing you can take your pre-processing to the next level. I had the issue, that when printing a model with solid infill (100%) and 0.1mm layer height on an Makerbot Replicator 2 the base would show gaps in between the extrusion lines.
As the model should be water tight I made a simply test – blowing through the model. It was not watertight, you could blow “through” the wall. Holding it against the light you could also see that there were gaps in between the extrusion lines.
One thing with Simplify 3D is that you have a lot of parameters, which also interact from time to time and sometimes its unclear what change bring the solution.
I fiddled with a lot of parameters, including extrusion width, gap fill or infill extrusion width. What helped was to tweak the parameter “Extrusion multiplier” to 1.10 (formally 0.8). Like this I can make really solid model with out gaps of holes between the extrusion lines.
Lately I was trying to install the spotify Client on a Win7 machine. Although setting up the firewall correctly, I couldn’t tunnel spotify through the firewall. Turning the firewall of, solved the problem but left me without a firewall.
I have locked the system with strict rules in the advanced settings of the native windows firewall. Normally that works quite well, you can add rules for incoming and outgoing connections under System –> Firewall –> Advanced.
Finding out the folder for the Spotify client is also easy ($user\AppData\Roaming\Spotify) but adding the different executables to the firewall rules doens’t help. In the forums guides change between “open all the ports” and “turn off your Firewall”. Well …
What helped was to install the Windows Firewall Control. Its a freeware tool that lets you configure the internal windows firewall. After you did the changes you can uninstall the programm again.
1. Download and install the firewall control
2. Start the firewall control
3. Start Spotify
4. Go to “connections log” (bottom-left) of the firewall control
5. Click refresh (right) and look for all the spotify apps that have been blocked.
6. And now the fun part: A left click lets you unblock them.
7. Restart Spotify to see if it worked.
Collaborative drum sound installation: decovering digital action & physical reaction
The drum robot installation MR-808 as it exists gives an immediate feedback on how the sound is created. The listener can see the sound physically evolving from the robots.
The drum robot is controlled via a web interface by users with tablet computers. The audience can program the drum robot in a collaborative process and listen to and see the emerging sound in real time on the exhibition site.
In November 2012, the “MR-808”, a huge robotic drum machine installation, was
released, developed under the direction of Moritz Simon Geist. The drum robot, build after the famous TR-808 has so far been presented on various events, from techno club nights to media and hacking congresses.
The robot installation MR-808 is a replica of the famous 1980s electronic drum machine TR-808, with robots playing the drum sounds! For the Installation MR-808 eleven sound of the 80s drum computer TR-808 are replaced by mechanical actuators and physical tone-makers. The actors are placed in a 330 x 170 cm size replica of the original drum machine. The robot installation visualizes the motion and formation of sound creation in a way no other tool of electronic sound creation is able to.
Program beats together, in a Browser!
The idea was to have a universal interface with which the average everyday person can program “moderated beats” – a step sequencer – with an interface they already know. We choose Nexus 7 tablets because they were reasonably cheap and esay to use. The interface itself consist of a basic step sequencer which is quickly comprehensible.
- Server running on a Raspberry Pi
- Node.js and SuperCollider
The Colaborative Sequencer is a web-based MIDI sequencer application. The server runs on a RasperryPi (Model B) rendering an node.js based interactive website and is connected with websockets. Different clients can connect to the server, manipulating a SuperCollider Step Sequencer (also running on the RasPi). A midi-interface connected to the RasPi outputs the Midi note whoch then go to the MR-808 to trigger the different instruments.
Special care has been taken to control the latencies of the different instruments. Each robotic instrument (Snare, Bass Drum…) has its own unique latency, given by the time between the “note on” signal (triggering a note in the sequencer), and the time when the tone finally leaves the physical instrument. These latencies can be up to several 100 microseconds, a delay that a human ear will definitely recognize. The latency consists of the time for the physical path that the actor has to resolve to get to the instrument and the electrical and digital delay inside the electronics and software. Read more about it here.
We try to open-source all the technologies used. If you have any questions, contact us.