Picture of Crazy Looper
The Crazy Looper is a small hand held device that allows you to create real-time noise loops with a fast modulation metallic effect. It's a simple microcontroller project that I give an easy to build rating.

If you want one that is ready to play, you can buy one here: http://www.etsy.com/listing/43908950/crazy-looper

These instructions will give you all the info you need to build a crazy looper, Schematic, software file etc. I got the circuit board made but you can easily use vero board because it's such a simple circuit. 

Step 1:

Picture of

1 x 100nF Capacitor  (C5)
1x  10nF Capacitor   (C6)

2x  10k Pot(spline shaft)  (VR1 VR2)
2x  10K Resistor (1/4W)  (R2 R4)
4x  1K Resistor (1/4W)  (R6 R7 R8 R10)

1x  Regulator 78L05 (5V)  (IC3)
1x  Ic Holder 8Pin  
1x  Picaxe 08M  (IC2)
1x  3.5mm Socket(stereo switched) (SPKR) 
2x  LED (RED)  (LED1 LED2)
2x  Knob (Grey) 
1x  Battery Holder(9v) 
1x  Circuit board 
1x  LDR(10M)  (SW1)
If you don't have a picaxe programmer or programming cable you will need to get on try SPARKFUN
1-40 of 73Next »
fx81 year ago
well i've got a problem finding the chip. So my question is, can i use other chip? And which chip?
rarebeasts (author)  fx81 year ago
Just use the 08m2, it's just an updated version of the 08m but totally compatible. I get mine from Sparkfun: https://www.sparkfun.com/products/10803
I ran into great trouble to found a working programmable config for the 12f683 (PICAXE08M equivalent, from the datasheet), so could you enlight me about how do you program them please ?
fox645 years ago
Would it be possible to add a Mic in place of the light sensitive input?
In theory yes, but you might not get the results you're hoping for.

To get a "quality" loop, you'd need to sample the microphone input very quickly - ~44kHz is the standard for CDs, MP3s (and that's each second) so for a two second audio clip you'd need 88 thousand samples. Each sample will be processed by an ADC on the micro - generally something like 8-10 bits resolution. Assuming 8 bits, you're going to need 8*88000 bits = 88 kBytes for a two second loop. For reference, most microcontrollers of this size barely even have 10kB of RAM to store data. In any case you'd need an interrupt running at 44kHz (certainly doable) to get the data into memory and then output the data at the same time.

The trouble is, you need both a fast microcontroller and a lot of storage memory - I haven't looked at the code for this so I don't know how it stores the input data - to process things like a microphone.

That said... There is nothing stopping you from simply sampling at a lower rate and storing as much as you can on the chip - you could even add an EEPROM module if storage becomes an issue. One other thing to remember is that electret microphones require amplification (typically the signal they give out will be in the mV region) before you can feed them into a PIC/AVR so you'd have to put in a pre-amp stage.

The key to all electronics is to have fun and experiment, push the hardware to its limits!

(For reference, BBC radio uses 44.1kHz, 16-bit audio)
1-9v is perfect for operating an electret mic.
Get the power for the mic BEFORE the regulator (IC3), or the audio will create ripple on your nice regulated, quiet 5v that the microprocessor needs to be reliable.
Some mics even have a fet built in so amplification may already be in it.
Otherwise use an NPN transistor to boost it with a resistor cap filter to limit high frequencies to 1/2 your sample rate or less.

8bit 22.8khz sampling is typical for children's toys.
That gives an audio high frequency limit of 11.4kHz.
You must filter out any audio higher than 10kHz with an r-c filter to avoid "random noise" artifacts due to the low sample rate.

Audio is fun.
Wow very informative! I see now that sticking a Mic in this project would be a horse of a another color. EEPROM scares me and I've never been brave enough slap one on my protoboard. The circuit-bender in me wants to try it, but the computer scientist in me is lazy. In any case, thanks Whiternoise for the MC info! Much appreciated.
jerryang fox645 years ago
Lots has been said but has not pay attention in the most important detail. The light sensitive resistor is not the frequency source. It is an on/off switch. The frequency is coming from POT on the right side. For those who has doubt on that, please check the schematic or BAS program file.
That's true - as I said in my post, I've not looked at the source. What I said still stands though, if you want to use a microphone as an input device for the sound loop, you're going to need more processing power and storage than what's presented here.
Mutantflame3 years ago
Is it possible to see a diagram for the circuit board please? I would like to make this project myself soon but you don't supply a diagram for the circuit board.
rarebeasts (author)  Mutantflame3 years ago
Sorry you are having troubles finding the circuit diagram, go to step 14 and you should see it no problem. I have also included the eagle files for the board layout if you need them.
justbennett3 years ago
I saw the Luna Mod in Make and replaced both pots with LDRs. I stuck with the momentary switch for the "record" button. The output was too unpredictable with LDRs and your fancy smanchy (yet sweet) loop program. So I wrote a simpler program with continuous beeps and no loop. It turned out to be a fun instrument of sorts in which you could control the tone and duration with the shade of your fingers.

Since it was my first picaxe project (almost my first electronics project ever) I went ahead and wired it to be reprogrammed. This turned out to be an awesome idea as I have had a lot of fun trying to adapt this device using only software. It is amazing what you can do with three inputs (LDR 1+2, and a button), a peizo, and an LED.

If I had it to do over I would probably keep at least one pot, as having two LDR's is a little superfluous for most of the programs I have written. You rarely need two analog inputs at once, and the math to make sure the numbers stay in comfy range can be advanced.
Can I see the code to your project?
This is basically your Luna Mod...
rarebeasts (author)  blinkyblinky3 years ago
You're right. Apart from the case it's almost the same. The sound and way it handles tempo are also a little different.
Where is the echo coming from?

I like it.

Can I use a switch because I might not be able to play it in the dark...
rarebeasts (author)  blinkyblinky3 years ago
No problem just replace the light sensor with a momentary switch.
would it be possible to add a 3.5mm jack instead of the LDR so any sound source could be the input?
rarebeasts (author)  cheesemarathon4 years ago
Not that simple because it's a digital input. I'm working on a looper like this one that will sample it's own input.
great thanks will you be making an instructible on it as i would love to build it.
ghasty5 years ago
Where did you have the board printed and wondering if they can take multiple orders from all the folks reading this instructable wanting to play?
rarebeasts (author)  ghasty5 years ago
I got the boards made at seeedstudio.com, orders are 10 at a time. When I get my workshop computer up and running again I will upload a zip of the gerber files.
Hello, you have done a great job with this, can u upload that zip file you were talking of because i get a error while opening it with eagle.
PS. The sound is so great almost sounds like dubstep music which i listen to.
radial775 years ago
I tried changing setfreq to m4 and got a nice tone, but can't figure out how to make the sound mute at certain points in the loop. When the setting is m8, you can acheive this by using the freq pot. Any ideas to get it to work on m4?
I set the tempo to 3 when I did this. Even though the loop seemed very slow, the tone was nice.
radial775 years ago
Does anyone know how to give the tempo pot a broader range? Would it be possible to make the global tempo setting (currently 6) in the code adjustable from , say 1-10, with a pot or even selectable with a rotary switch?
jerryang5 years ago
Thanks for your insperation. I made mine with Arduino.
Since Arduino has more memory and process power.
Here is what has changed:
1. Frequency samples: Picaxe 48, Arduino 400
2. Frequency range: Picaxe 94~120480...not audiable range, Arduino 40~any.
3. Delay for Tempo: Picaxe ?, Arduino settable at microsecond.
Hi Jerrang. Did you ever upload your Arduino code? I would love to try this. Thanks.
Also, could you please explain that about the frequency range... what do you mean?
At higher pitch, people tend to ignor the difference between pitches. For example, 12000hz and 12500hz. But if it is 50hz or 55hz. People tend to see a lot of difference. So fine tune adjustable range is best fix at 40~1000hz, so steps is best like 40, 45, 50, 55, 60, etc... Everything above that frequency can be divide into big steps. Like 12000, 12500, 13000, 14000, etc.
Ok, I think I understand what you mean. By the way, I noticed that the Arduino does not generate white noise :( I kind-of copied the code from the BAS file, I tried to understand it and then made the same for the Arduino. It works but mine doesn't sound as good as in this video here. Maybe it's the speaker though... Also, I don't like the way I "manage" the tempo, the delay between the notes.... I am trying to make that better...
Anything above 10khz is consider white noise. Those noises are not very playful. I tend to rule them out.
Could you post the code for that? :) Thanks!
I will post my code after I fine tune everything.
wmanidi5 years ago
My computer is having trouble with eagle... =[ can you upload PDFS of the board?
tororm5 years ago
Is there any chance of uploading the eagle files? Thanks!
rarebeasts (author)  tororm5 years ago
I'll get them up on Friday when I'm back in town and my Computer has been fixed. Sorry about the delay, I was going to have them up a week ago.
Thanks! Much appreciated
rarebeasts (author)  tororm5 years ago
I have attached the eagle PCB files to step 14, if any one wants to make a board with them.
hrta5 years ago
and how can we make the Circuit board .you have an layout .or buy it ready ?
1-40 of 73Next »