Introduction: Arduino Based Stranger Things Lights
We are hosting a Halloween party and since Stranger Things is on everyone's minds this year, I thought I could make a cool, creepy decoration using an arduino and some programmable LEDs
Step 1: Materials List
Good news. No tools are required to build this instructable. You don't need to know how to solder or anything fancy.
All parts can be found on Amazon, or if you want things cheaper, you can do a little research on other sites. The parts list is:
Mokungit 100pcs WS2811 12mm LEDs
DC Power Jack Adapters:
5V/10A DC Power Supply
9V/1A DC Power Supply
Step 2: Simple Wiring
Everything is plug and play here. The only concern is what color your actual wires are. The wires I got were different colors than on the supplier's website. Once you piece together what is power, ground, and data, you're off and running.
Step 3: Get Your Creepy Font
I used Something Strange from Dafont: http://www.dafont.com/something-strange.font
You will want to print these out and attach them to the wall along with your LEDs to determine which LEDs match which letters. If you want to go smaller, you can assume one LED per letter and it makes your life a whole lot easier.
When writing down which LEDs match which letters on your wall, you will want to remember that the code treats the first LED as #0, so start counting at 0 instead of 1.
Step 4: Start Programming
I am new to programming, so I apologize upfront for my poor coding skills. Take what you can from what I've done and improve upon it!
The first step was to download FastLED: http://fastled.io/
FastLED is the library that helps run some of the features in the code.
Second, download my StrangerThings program and open it up and start reading through my comments.
My main concept was that I wanted my program to be random. I didn't want the program to cycle through a word every x minutes and have it lose the eerie effect. This is done through the randomseed and random function paired with a switch/case scenario. Then all you have to do is set up subroutines to run within each case.
Feel free to post questions and I'll do my best to answer. Since I'm not a programmer I'm not exactly sure what to share with everyone.
Step 5: Test and Add Features
The best way I found to test was to just run the subroutines one after another without the random variable and the cases to see if you like how each one looks. When you are happy with the rates of changes and the speed of letters showing up and disappearing, turn the random variable and cases back on and you're off to the races!