Introduction: Sound Reactive Lightning Cloud

This is a DIY cloud lamp that flashes like realistic lightning if it hears a loud noise. It took me only 4 hours to make and my knowledge of coding NeoPixels and wiring is very basic! So if I can do it, then pretty much anyone can!

I followed this tutorial ( but had to make some adjustments due to having different resources. To do my version of this project you will need:

Paper Lanterns:

Hot glue and gun

A breadboard (small is better, but a normal-sized one will work. Just be sure it has the + and - strip on the side):

An Arduino Uno:

An A to B USB cord:

A cell phone charger block (5v, 2A sats work best; the one I used was a 5V, 1A iPhone charger)

A sound sensor/microphone module for arduino:

2 meters of NeoPixels:

What I used –

What I suggest using–

Pillow Stuffing (you can buy bags of this at Walmart or craft stores if you don't have any old pillows to tear open)

Spray Adhesive (you can find this at Walmart in the craft section)

(May also need soldering gun and solder.)

Step 1: Solder (optional)

My NeoPixel strand came with wires a special connector on the beginning end so I didn't have to solder wires onto the LED. But, if yours doesn't come with a connector, you will need to do some soldering (honestly, I find this easier than trying to figure out which wire is ground, Din, or +5V). Also, if you're like me, you may need to solder two strands of NeoPixels together. Just make sure to solder the Din side of the LED to the Dout side of the of LED (on my strands there were little arrows on the strand to show the flow of information, so as long as all the arrows point the same direction than you're good.)

Step 2: Create the Structure

Picture of Create the Structure

Open all the paper lanterns and then hot glue them together in a formation you think resembles a cloud. Then wrap the NeoPixel strand around the structure (the strand I used had an adhesive back to them, but if yours don't then you can apply copious amounts of the spray adhesive to the back of the strand). As you can see, I wrapped mine horizontally, but I suggest sort of wrapping them around in a sort of spiral-like pattern to have all sides (including top and bottom) covered in NeoPixels. Just be sure to leave an opening at the top to put the breadboad, arduino and microphone in the lantern.

Step 3: Add Fluff

Picture of Add Fluff

Using spray adhesive, stick the pillow stuffing (or polyester fiberfill) onto the paper lanterns. Just be sure you can access the beginning end (the Din side) of the NeoPixels so you can connect it to the other components. I suggest spraying the structure in sections, as opposed to spraying the whole thing at once and scrambling to put the fiberfill on before it dries. and don't be too worried about evenly applying your fluff; the more unevenly the fiberfill is applied, the more realistic the cloud will look and light up.

Step 4: Wiring

Picture of Wiring

This is where things can become a bit complicated. Let's start with the wiring. Do NOT have the Arduino connected to power while doing any of the wiring, EVER. There is a possibility of frying the LEDs if you mess around with the wiring and it's connected to power, so just to be on the safe side always disconnect from the power source when fiddling with the wires. With that said, I will now explain the diagram I have included.

The green and red wires have to do with transferring power and the black wires have to do with transferring information. The red wires are specifically related to the positive part of wiring, so any time there is a Vin, 5V, or +, it will need to be connected to the (+) column on the breadboard. Green wires are associated with negative or ground, so any time there is a GND port or wire used it gets connected to the (-) column of the breadboard.

On my project, I connected the Din part of the NeoPixels to the 7 on the Arduino. You can choose any numbered port on the side of the Arduino labeled "digital'', just make sure to change it in the code if you end up using the code I've provided for you.

Step 5: Coding

Here is the original code that I borrowed and adapted, if you want to modify it yourself:

However, if don't really understand coding all that well (like me) and have used exactly the same resources as me (including the use of 120 LEDs) and done exactly the same wiring as me, then this code should work without having to do any adjustments:

Step 6: Adjusting Sound Senor Sensitivity

Picture of Adjusting Sound Senor Sensitivity

Connect the cloud to your power source and adjust the sensitivity of the sound sensor. See the note on the image of the sound sensor. This step is easiest to do while playing a recording of a thunderstorm at the desired volume and having the cloud at the desired distance from the speaker. I suggest that when you find the perfect sensitivity for when the sound sensor is outside of the cloud, you should make it just a tad more sensitive as it will be surrounded by fiberfill which can muffle and dull the intensity of the sound reaching the microphone.

Step 7: Final Steps

Picture of Final Steps

Connect the Arduino to power and place it and the breadboard inside the lantern. Then attach fishing line to the the metal bar of the paper lantern so you can hang it. ( I recommend tying the fishing line to all of the lanterns, instead of just the center, so as to reduce the possibility of the lanterns separating while hanging; in other words, to evenly distribute the weight of the cloud to all parts of it.)

There you have it! Your very own sound reactive lightning cloud lamp! Enjoy falling to sleep with your own simulated storm :)


sdcharle (author)2017-10-14

Cool project. Seen a few of these but this is one of the better ones.

duherrm (author)2017-07-26

Question about the wiring section. You have an image of the breadboard, the Arduino and the microphone with what looks like small speakers also wired to the breadboard. Are those in fact speakers? Are they needed for the project? I ordered all the materials on your list and just saw that in the image and was wondering if that is also necessary to complete the cloud.

AlisonM75 (author)duherrm2017-07-28

A speaker is not needed. The program I used to make the diagram didn't have a microphone so I had to use a distance sensor (which looks like a speaker) as a representative. The only things you need are the ones listed in the materials section. Good luck!

gormly (author)2017-04-06

I am a total novice with the Arduino but the power to both the sound sensor and the pixels seems to be the VIN. I though that was input voltage?

RichardM200 (author)gormly2017-04-06

You are right. It should be connected to "5V", and not Vin!

GavinM13 (author)RichardM2002017-04-10

Not necessarily. Both pins 5V and Vin can be used for output voltages. The main differences are that the Vin will output slightly less than 5V (due to diode), but potentially can output more current. Vin can probably output 1A whereas the 5V is limited to about half that.
Either way the neopixel strip is way under powered. You're probably looking at 5A at full brightness (for 2m). I always connect Neopixels to an external power supply to guarantee the colours work - After a few metres, I find the blue pixels tend to lose power and appear dim.
Nice project though :)

RichardM200 (author)GavinM132017-04-11

Just NO! That's an absolutely no-go to connect the LEDs to Vin.

As it says "Voltage INPUT", not output.

Vin is for 6-20V. So, if someone builds that and connects the Arduino to e.g. 12V (as common and described in the specs) this will fry all other electronics connected to this Vin which have a max of 5V.

Just don't do such things.

GaryB174 (author)RichardM2002017-04-27

Do you have a reccomendation on how it should be done then? I want to do this project but I want to make sure I do it right.

GavinM13 (author)GaryB1742017-04-30

As mentioned above, you can connect to Vin, but you shouldn't (in most circumstances). 5V can be used if you are running a few LEDs - maybe up to 10. If you are using any more than this, you need an external 5V power supply - I use a 120W supply per 5 m of strip (or 300 LEDs).

If you don't have enough current (or the voltage drops at one end) then the colours start to go funny. I've noticed that blue starts to fade first.

AlisonM77 (author)RichardM2002017-04-11

I don't know who's right lol but my cloud is still working

AlisonM75 (author)AlisonM772017-04-11

AlisonM77 is me btw

AlisonM77 (author)GavinM132017-04-11

Yeah. I need more amps for sure. I was just on a limited budget and tried to use as many products that I already had laying around the house. The cloud doesn't always flash the same colors but I just say it looks more realistic haha

AlisonM75 (author)gormly2017-04-06

I'm a novice too, so I could have wired it incorrectly but hey, it gets the job done lol

gormly (author)AlisonM752017-04-06

Hmm, no offense meant, but if you are truly wiring into a voltage IN pin I do not see how the voltage from the wall plug could travel to the sound and lights. VIN is for voltage IN (as far as I know) and that pin is for supplemental or other sources of power and hooking it up this way would produce no voltage for the sound/lights. So are you absolutely certain it is hooked up this way?

AlisonM75 (author)gormly2017-04-06

I'm 100% sure that is how it's wired. Before I started my project, I did a little crash course on programming neopixels with my creative technologies professor and when we had the Neopixels connected to the Arduino using the 5V, the first led would stay on as green. So my professor switched it from 5V to Vin and the constant little green light turned off and the strand still lit up according to the code. I know it doesn't make any sense, but I promise that this is how I did it.

gormly (author)AlisonM752017-04-07

I do not doubt you at all Alison thank you for responding :)

However, it's still not "right", something is off. Either my understanding of VIN (and Arduino's definition and explanation) or we are just missing something. My only worry now is if that is "safe". It may be working for you, but it might not be "safe".

If It were me, I would go to the arduino reddit page and post this and see what those experts say, just to be on the safe side. I only suggest this because you self admitted you are also a novice.

AlisonM77 (author)gormly2017-04-11

That's a really good idea. I'm gonna go do that

AlisonM75 (author)AlisonM752017-04-06
You can actually see in this photo that the 5V port on the arduino doesn't have anything in it but the Vin port does. You can also see that the light on the sound sensor is lit up which means it's getting power. I don't know how but it is lol

gormly (author)AlisonM752017-04-07

Maybe this is why I cannot get a few projects to work (lol) I should give the VIN pin a try :)

GaryB174 (author)2017-04-27

Cool build. Why do you suggest the black NeoPixels?

JessicaP135 (author)2017-04-27

I purchased a new sound sensor thinking that my old one just didn't work. It is just not that sensitive. The sensor suggested at the lowest setting will go off at 92 decibels. Which is quite a bit louder than I want. Anyone have any suggestions on alternate sound sensors that are more sensitive.

JessicaP135 (author)2017-04-19

I have everything working, however it only will "lightning" when you scream directly into the sound sensor. I have adjusted the sensor to max. sensitivity. Do I have a bad sound sensor?

AlisonM75 (author)JessicaP1352017-04-20

I honestly can't say for 100% but it's a possibility. I would try working on it in a quiet area

duherrm (author)AlisonM752017-04-22

What is the cell phone charger block and where did you use it in the construction process?

UweB5 (author)duherrm2017-04-26

It's just a regular cell phone charger. The power supply of a cell phone is used to power the arduino. I believe it uses a micro usb connector.

Jaden Massey (author)2017-04-22

I have no clue how to do this (I don't even know what Arduino is) but it looks amazing!

AlisonM75 (author)Jaden Massey2017-04-23

I had no idea arduino even existed before I did this project haha

duherrm (author)2017-04-22

I'm a little unsure as to what a "cell phone charger block" is and where it was used in the construction of this cloud. Any help would be great!

Jaden Massey (author)duherrm2017-04-22

A cell phone charger block is the block at the end of your phone charger that goes into the wall.

jrbums (author)2017-04-14

Nice build!

JessicaP135 (author)2017-04-12

I am having trouble with the code that does not need any adjustments to it. When I copy and paste it to the arduino I get the following message. Total newbie. Just trying to get this cloud to work.

Arduino: 1.8.2 (Windows 10), Board: "Arduino/Genuino Uno"

C:\Users\jpayne\Documents\Arduino\sketch_apr12d\sketch_apr12d.ino:17:21: fatal error: FastLED.h: No such file or directory

#include "FastLED.h"


compilation terminated.

exit status 1

Error compiling for board Arduino/Genuino Uno.

This report would have more information with

"Show verbose output during compilation"

option enabled in File -> Preferences.

Any help would be greatly appreciated.

JoelM77 (author)JessicaP1352017-04-12

My guess would be that you forgot to download the Fast led library. After downloading it from github, you need to place the files in the libraries folder in the arduino file folder and then restart the Arduino IDE. Hope it helps!

JessicaP135 (author)JoelM772017-04-12

Thank you so much. It worked!

JoelM77 (author)JessicaP1352017-04-12

So glad I could help!

jeasterl (author)2017-04-10

Nice start (learning is what arduino is all about) i see some things i will do differently when i make one after i finish my neopixel ring flash for my camera

AlisonM77 (author)jeasterl2017-04-11

I'd love to see how you improve it so keep me updated :)

flashkill (author)2017-04-08

I would really like to make this for my halloween party this year, but I would like to make many of these. I have never worked with arduino before. Would I need to use an arduino for each one I make? Is there a way to use the arduino to program something else to run the code so I could make many with only one arduino board?

AlisonM77 (author)flashkill2017-04-11

I am currently unsure of what the answer to your question is but I will ask my professor about it and tell you what he says

jeasterl (author)flashkill2017-04-10

as long as you can wire the strands together and power the neopixels (they can use an astonishing amount of power i would limit to about 100 neopixels and use about 20 per cloud you can use an arduino uno also do not power long strands from the 5V pin on the arduino you can easily overload the voltage regulator use a separate tap from your power supply

Airman33860 (author)2017-04-10

Very Nice project

AlisonM77 (author)Airman338602017-04-11


RezaA71 (author)2017-04-07

in the code i noticed using of IR receiver and moods that could be changed by IR remote control. where is that? you didn't use remote control?

AlisonM77 (author)RezaA712017-04-11

I actually ended up frying my IR receiver because the pins on it weren't labeled and I accidentally hooked it up incorrectly. So I ended up not having mine remote controlled

LSuperiorSoaps (author)2017-04-06

Is the video of the one that you made? I'm wondering if it flashes random parts of the cloud like in the video or does the entire strip light up all at once?

AlisonM75 (author)LSuperiorSoaps2017-04-06

The video is indeed of the cloud I made with my two hands.

Baybren (author)2017-04-05

Awesome! I have been wanting to make something like this for awhile but wasn't sure how - this is perfect!

AlisonM75 (author)Baybren2017-04-05

You should definitely try it and let me know how it goes! I'll answer any questions I can :)

AlisonM75 (author)2017-04-05

If you think my project is cool you should vote for it in the Lighting contest :)

seamster (author)2017-04-05

This is so cool. I loved the video of it in action. Very soothing! :)

AlisonM75 (author)seamster2017-04-05

Thanks! And it's not supper difficult to make! Only took me 4 hours and I barely knew what I was doing lol

About This Instructable



More by AlisonM75:Sound Reactive Lightning Cloud
Add instructable to: