Loud Objects Noise Toy (AKA the Arduino Noise Machine)

16K5843

Intro: Loud Objects Noise Toy (AKA the Arduino Noise Machine)

Okay, okay, I know you all were wondering what I am up to now.

I love synths and so, I built this. There are three things that can catch my attention: Synthesizers, Amplifiers and free. The other day (Actually it was just Thursday) I was cruising around Make's website when I saw the Deal of the Day was the Loud Objects Noise Toy. I had seen it before but had not cared much for it. I the n saw a Vimeo video on it and was hooked. I quickly ordered it at half-price from Make but I couldn't wait. I saw the had code on the bottom and so, even though I know it wouldn't work, I tried to compile it. IT WORKED! I grabbed my AtTiny Programming Shield and hit Upload. The results were not satisfactory. Then I said to myself: "If it can compile in the Arduino IDE why can't it Upload?" I uploaded the code and tried every Digital Out pin I could find. I finally reached Pins 10 and 11 and had thought that maybe the code worked but the software didn't. I had tried 9 already and knew it outputted on two pins and the only two pins that were PWM pins were 10 and 11. I tried them and it worked!

Here is the result. The names of the codes were kind of misleading so I renamed them but renamed them as .pde files.

If you have Windows or Mac, use Word to open the code. :-)

P.S. You may be wondering why I haven't posted much lately...midterms. :-) 

P.P.S. Second picture goes through every part of Arduino plus the shield.



STEP 1: Parts to Acquire.

You will Need:
2 buttons (Momentary. I used the smallest kind, tactile.)
Bunches of jumper wires. 
1 Breadboard
1 Perf board
1 3.5mm female jack (Only if your amp has a male jack. :-))
1 speaker with or without an amp (8ohm, 0.25 watts...you get the idea.)
Male Headers (One row of them will do just fine.)
1 Arduino (Preferably UNO.)

STEP 2: MUST ATTACH WIRES...MUST ATTACH WIRES...MUST ATTACH WIRES!

I have included a EagleCAD schematic above. REMEMBER IT IS VERY BASIC AND SO, DON'T NECCESSARILY TRY TO FOLLOW THE SCHEMATIC. I will move into Fritzing later on and will add results.

Connect one switch's lead to ground on the Arduino. The other goes to Digital I/O Pin 8.

Do the same for the other except for using Digital 9 for the second switch. 

Attach the Jack as shown. If you are using an 8ohm speaker, one wire to either 10 or 11 and the other to ground. Connect it to Pin 11 and Pin 12 for higher sound output...

STEP 3: Test Your Lovely Circuit.

Plug in your Arduino. Open the IDE. Download the code from below. (Pick RandomBlipsAndBleeps_Metroid. (You can thank me later.)) Upload the code and listen.

If you have Windows or Mac, use Word to open the code.

Here is the code in which you can try in alphabetical order:


STEP 4: Solder.

Cut the Perf board until it feels most "comfortable" as a shield. You can use my shape if you want. Make sure it doesn't block the valuable reset button unless it is UNO Version R3...

Then solder from the schematic. Remember. Pin 11 not 10 for highest Ouput Level.

 One Lead from switch One goes to Pin 9. On the other switch, connect Lead 1 to Pin 8. Both switch's pin 2s go to Pin 13 on Arduino. (AKA Ground.)


STEP 5: Fin.

You have now completed your synth. With all these random blips and bloops You could dominate the world...or neighborhood.

This is small, compact and easy to play because you only need two buttons and a speaker.

40 Comments

Hi, love this noise machine. i build two of them. is it possible to change the tempo in the program bleeps&blips? if yes how? i need this kind of sounds for my chill music compo, and i would like to slow down Again, thx
This code looks like its all written with an extremely early version of the IDE. Hopefully everything is backwards compatible in 1.0.4
Try it. If not, use an older version.
Nope, works great. I had tried some older code recently that looked like this and didn't compile but this works fine with 1.0.4. Awesome glitchyness on that RandomBlipsAndBleeps_Metroid.pde.. Great 'ible, thanks!!

I was thinking of trying to put all of these together into one program and then make a momentary button or rotary knob or something to switch in between them. Not sure if it would make it into program code with all of them though, but maybe pick the best ones..
flash memory (program space)*
Your code compiled and worked.

I was thinking of modifying them to put them all in one program, just add another switch to go in between the different 'modes'.
I wanted to try this synth tutorial with my Arduino but cant get it to compile under the arduino ide 1.0.2. I get about an eigth of the way and it stops with multiple errors.
java.util.regex.Pattern$Branch.match......ect.
Pattern.java('then a number between the parentheses')
Any suggestions, what did I miss?
Yeah, this code hasn't been ported over to 1.0 and beyond. I still use Arduino 0022 for maximum compatibility but I do have 1.0.1 as well. With codes that are already written there are some required libraries that have changed names and some commands. Most notably, WProgam.h became, I believe Arduino.h...I have tried adding both libraries into the same Arduino folder but that failed...so I would just stick with an older version of Arduino.

P.S. What Arduino are you using?
Arduino duemilanove is what i've been using for almost 2 years. I tried compiling using version 0020 and got the same error. I figured out that the problem was caused from copy pasting directly into the arduino ide instead of saving as a .txt/ .pde file and using file open. Thanks for answering. To many Sunday football barley distillates, to upload the sketch at this time....will do later
Thanks for the 'ible! I've driven lots of people crazy with this. I find it rather enjoyable. I was wondering if you might know why, though, I can get the buttons to work when I move it (circuit is on a protoshield with mini breadboard) from my Uno to my Mega 2560. Also, the sound works on D10, but not D11 or D12.
Never mind. That statement made me think to check other pins. On the Mega 2560 the buttons go to pins D52 & D53. It's late, & I have to work in the morning so I'll look for the sound pins tomorrow.
But, hey. I'm gonna be building some of your other projects. I, too, love synths and other noise/sound makers. I think I may have to make some stuff for my grand kids for Christmas.

I'm fairly new to electronics, but this stuff is fun!!

Thanks for your time and effort!
AptPupil
That should have read "cannot get the buttons to work..."
Apt
Try grounding every pin (one pin at a time) on the Mega 2560 to see if the sound changes. If you can't get the sound to work, try connecting every pin one at a time to find the output. Make sure you check your connections. Tell me what you get.
Okay, D10 & D50 are the two speaker outputs & D52 & D53 are the button pins. It works just fine. What sucks is that I made a shield for this to fit the Uno, but it seems that I've screwed up my Uno. I was trying to hook up an 8x8 LED matrix for the first time. Loooong story short, my Uno powers on by indication of the on-board LED, but it won't get in sync when it's time to upload. I had an ATMega8-16 ic in it that I had just burned the bootloader to. Uploaded blink & it worked. Tried the matrix, which turned out to have an odd pin configuration, and it stopped working. Put the 328 back in & it still wouldn't work. I had been burning bootloaders onto ATMega8-16PU's (8 or 9 of them) just before that. I don't know if I burned something up while trying to figure out the matrix (got it working after mapping with the "try another pin" method), or from the frustration of burning bootloaders (had a hard time at first) onto those chips placed in the Uno & burned from the Mega 2560.
Anyway, I got my noise toy back in action. A shield for this to fit the Mega 2560 would be pretty big & bare, but I haven't had the time to learn how to combine stetches to ad something like sound reactive LEDS and a logger to record the sounds, or whatever.. Maybe some day.

Apt
How about a circuit that allows the use of computer speakers like these:  The LED doesn't flash or anything. I guess the sound to light circuit would be inside the speaker? Or, separate wires leading to the Arduino shield where there would be a mic? Just thinking. Gotta run. Gonna be late for work.

Apt
P.S.: I hope my pic shows up. It's my first attempt.
Alright, as long as the speakers have an input place for the speakers then you can hook it up...I'm not sure about the lights.

Okay, in the code, change wherever it says DDRB or PORTB or PINB to PORTH, DDRH or PINH...Then repeat the same process. My Arduino software isn't working right now and I need to find my Arduino Mega...
Have you made the shield yet? If you didn't then I might just be able to save you from making a huge blank shield.
No, I haven't. What do you have in mind??
Maybe I could edit the code to not make the buttons and speaker pins so apart. I'm working on it.
Just wondering if you've come up with something for this?

Thanks
More Comments