Let's Make Robots!

Yellow Drum Machine

Drives around and finds stuff to play drums on. Samples what it plays, and play to the samples.

How to make a Yellow Drum Machine



Audiofile Engineering asked me to make a robot like this for them, to be won in a promotional contest. Yellow Drum Machine II is done now, and it can be found here.

.. There is always more fun to do with this robot, but for now I will just mark it "complete" in the current version, hope you enjoy it.

Notice how the robot first plays on the object it finds (or is forced to find by the angry cameraman), plays a small beat, and records the beat it plays on it. Then this recorded beat is played again, and it starts to play on the object (an belt tracks and everything else it has),and also playing this sampled beat :)

Also some videos from construction and tuning-time..

What it does? Basically:

  • Navigate around, collect some data, avoid obstacles, until it
  • Finds something "worth playing on" (a single isolated object or a wide flat surface that it can find an angle onto)
  • Snakes into place
  • Plays some beats on what it have found, and samples this, checking it has a "good sound"
  • Based on data collected in the area, and sample just made, then compose a little rhythm, and plays this along with the sample

Why? Well.. I was sitting thinking what I should do for my next robot, what it should do.. Listening to music.. making a rythm with some robot-parts.. Thought; "Hey, I will make a robot that drives around and plays on stuff"

It is just made with sticks mounted very fast with a melt glue gun. But it is really solid still.


Under neath is speaker and a microphone.

The speaker is used for beeps from the microcontroller, and to make click-sounds to the beat. The click-sounds are simply made by setting a pin high and then low straight after each oter. This way I can have the Microcontroller make sound to the music it is also playing, without using any time / causing delay.


The microphone (located on the stick between the two motors) is used to sample sounds and take input, measuring if the sticks are hitting anything or not.

Also it can be used to detect a foot stumping on the floor or someone clapping, and so the robot can find the speed of this after four beats, and play along / fall in to your clapping or stumping.

And.. It can be used when there are kids playing with the robot; Signals "Record", the kids shout, and the robot then plays music / a beat with their shouting as a part of "the music" :)


This robot is made interely without servos. The drumsticks (The "Bass Drum" on the picture) are just these litle geared motors that I am quite fond of.


At the top there is another speaker. It is quite too large, I know, but I thought it looked cool :D Also because it is so torn and twisted, as I could not get it out of it´s old cabinet. On the top-speaker there is a red LED. It lights when the robot is recording, and gives a small blink when it is playing back a sample.


As said above, there is no servo on this robot. The head is also using the little motors from solarbotics. It was, however necessary to use some very thin wire to connect the SRF05, as it otherwise would sort of jam the head now and then if I was using my standard blue wire.

It was quite a fun challenge to make the rather complicated navigation and not having a servo, but only left /right/front to place the head, and then do the rest with the body.

The navigation is complicated because it is not just a matter of navigating around obstacles - that was the easy part. Second the robot has to find good places to drum; A single, isolated object, or a flat wall. Then the robot has to place itself on a good angle to the wall, or straight infront of the object.. All with only L/R/F with the head ;) But it does it quite well now! I am usually amazed of what it finds to play on, when I just let it drive around.


The robot runs for ever on just 4 cells. It must be because the belt-tracks are so geared that there is no strain on the motors.. And no servos, and the sampler takes nothing either.. I dont know, I just know that it runs for hours, more than my wife can stand to listen to - on one charge :D


In the center of this image is a L293D Motor driver. It is just used to enable the head to turn both ways.

Notice how easy it is to mount stuff with this glue; I just thought it would look good there on the side. Put some glue on, and stick it there. Hey, the cables are dangling.. Well.. press then onto the wood, and add a line of glue, bingo!

There is a blue print sticking out behind the wood from a cheese-container ;) That is "the sampler". It is actually this


- And it is just hacked; I took off the switches, and now the microcontroller can record and playback sounds.


- As almost always; Picaxe 28X1 mounted on a standard board. So fast, so effective!!


I think the biggest advantege with building fast as I do (instead of measuring and drawing) - is that you get cooler designs! Lot more soul in this one, than a robot I would make if I was to draw it first..


I know nothing is straight or even or level etc.. But who gives? It is made to play the drums, not to have straight lines :) And trust me; it IS actually quite solid. I will not try, but I am sure it could withstand to be dropped from a table without any harm done.. And if not, it is REALLY fast to fix it again!


Basic construction-materials..


Thanks for listening!

Any questions? If not, then let´s get funky :D





Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Hi, and thanks for writing this online ;) (We had this conversation in mail, and I asked if we could do it in here so that everyone else could participate if they should whish)

 YES! It would be way cool!!

I KNOW that you would NOT get anything out of my code, seriously. it is so many tweaks on top of each other, variables re-used in stangest of ways etc.

Of course if it your dream to have excactly YDM-original-spirit, you are welcome to have it and try to tweak it to fit your HW, but I doubt it can be done easely.

I'd much rather release individual parts, drawn out and adapted for the purpose of teaching, pseudo-code, diagrams & online colaboration of your work than a bulk that I know won't get you anywhere.

So I suggest that you start by say the base with a stick or two, and I will be more than happy to share what I have learned about making a good sequencer-part for that, dump code etc. Cause this IS a little tricky  - different sticks are not the same speed, you know ;)

.. Or you take the object-finding first - whatever suits you. My main code base is 3 parts:

  • Drive around
  • Find and place in front
  • Play

If we make these 3 "together", everyone else can read if they'd like, and  you can then yourself mix it all up in the end, film and enjoy fame ;)

So I suggest that you start by making some tracks with some sticks on, enter it as a new robot-project "CowGod's YDM" or something ;) - And we take it from there!

Cool & thanks :) 

/ Frits

Sounds good, I've already started on construction, I'll post it up when I've got something to post. If I'm going to code it from scratch, I'll probably start with the Arduino since it's what I've got on hand, but if we find that it's difficult to recapture the 'spirit' of the original YDM on the Arduino then I'll order a Picaxe so that it can be powered the way god intended (you are its god, of course :) "Drum for me, little robot!"

 this made my day when I foud this (my dad liked it too) amazing

YDM you make me happy


No, sorry, I could do nothing else, make no new robots, hope you understand.

TheCowGod is building one, and I have provided a lot of info to him - feel fre to ask him, he is a very nice man ;) 

However - I will be building a second now, and I will try to document it some :)

And.. If you read along on this site, over time I must have published enough walkthroughs so that you should be able to get at least a far bit of the way. If you should get stuck with something particular, please do not hesitate to aske me, I will always try to help with specific problems!  


/ Fritsl

Thank you!

To put is short, if you are a newbee, you should havefun first making your first robot.

The drummer is based on layers of trial and error-knowledge gained over perhaps half a year I had from my first robot to this.

I hope you will try some of the "first-robot"-tutorials! It's good fun!!

Do a search on top of this page "where to buy picaxe"


/ Fritsl

haha well ok i'll do that i'm planning on just using my vex system but using the picaxe for the controller 

look where i found you.. in a tokyo website..





This is one of my favorites, its very unique. I cold never have thought of this in a million years! Very well done. One day (when I actually know what I'm doing) I might want to try and make this. :)


“Our deepest fear is not that we are inadequate. Our deepest fear is that we are powerful beyond measure. It is our light, not our darkness that most frightens us.... -Marianne Williamson

My first post,

I joined up because I saw this bot on youtube, as it was a highlighted vid today... AWESOME, I'd buy one!

What with the film Wall-e coming out your WDM robot has got that cute 'johnny5' look about it that wall-e also has. I love it.

I don't suppose you've built any identical ones for selling? I'm sure you've been asked that before eh?

I'm going to make a thread about a project I have in my head for an R/C or bluetooth remote contolled wheelchair - would really like your input. :)