Intro: Neo Pixel LED Picture Frame
Hello again! I have done this project specifically for the "colours of the rainbow" competition. If you like it please vote for me in the contest.
So I decided to make a really quick and easy project for the competition. It is a neo-pixel LED photo frame, with a funky picture. I got the idea when I picked up the picture from the greetings cards section of the supermarket (I'm a fan of star wars and geometric abstraction so this ticked two boxes). What better way to display this lovely card than some colour changing LED's and a posh picture frame?
The whole thing took me about 1 day, so very easy weekend project for you to try.
Step 1: Materials & Tools
I have alot of these things laying around already because when I finish a project I end up with spares which collect over time. I appreciate not everyone is like me and you might have to buy some bits.
- Hot-glue sticks (ebay £1.30 for ten)
- 5mm ridgid PVC (a.k.a foamboard £1.49 for a single A4 piece)
- Photo frame accepts a 5x7 inch photo (£2 from a car boot sale [flee market for international readers])
- Neo pixel LEDS WS2811 modules (I bought 300 of these for £20 but I only used about ten, you can buy these in strips of 30 for £5.50 from ebay)
- Dupont cables (£1 for a job lot off ebay)
- Arduino Nano / Pro-Mini (£2 from our colleagues in Shenzhen, make sure it's a 16MHz variant)
- Solder, 10g, 0.8mm (£0.99 from China)
- Clear adhesive tape (a.k.a. sellotape £0.99 for a 66m roll)
- Funky greeting card (£2.50)
- Micro USB breakout PCB (£1.49 for 10 from China)
- Small black enclosure (ebay £1.97)
- Heat shrink
- Small solderless breadboard with self adhesive backing (ebay £0.99 from Hong Kong)
For the pixel LED's to work correctly, you can use any small micro controller as long as its a 16MHz version. I initially wanted to use the ATTiny85 but I struggled, so I fell back to something I knew worked well.
- Soldering Iron (If your soldering to very small solder pads like I am here, you will benefit greatly from a temperature controlled iron)
- Craft knife (a.k.a. stanley knife)
- Hot glue gun
- Hot air gun
Step 2: Solder Modules
You can buy these modules already joined together in reels which can be cut to length. I'd recommend you buy those otherwise you will need to follow this step. I bought these modules years ago for another project which I abandoned. So I used these because I had them already.
The WS2811 and WS2812 are addressable modules which can be daisy chained together in a string. Each individual module can be turned on and off or made to display a certain colour. These modules have an arrow indicating input and output, and it is important to take notice of this. Essentially all the arrows need to all point in the same direction in the string after they are soldered together. I have attached a brief diagram (courtesy of Adafruit, they have an excellent "uberguide" that covers how to use these modules and similar ones too, so make sure you check it out to understand the differences).
I used dupont cables as these were the correct size to solder nicely to the solder pads. I cut these into 3cm lengths to seperate the modules. Once you have soldered enough together in a string to line the whole of the photo frame, we can then think about mounting them inside the photo frame.
Step 3: Connect to Arduino
The following step is very simple. I downloaded the Adafruit Neo Pixel LED library through the Arduino IDE. To do this go to:
Sketch -> include Library -> Manage Libraries
then from the menu select "Adafruit Neo Pixel by Adafruit" and click install
Upload the example sketch "strandtest", by clicking:
File -> Examples -> Adafruit Neopixel -> Strandtest
Then upload the code to your Arduino
Depending on how many pixels are in your string you may have to change your code where it says "NUMOFPIXELS = 60" to the number of pixels in your string, in my case this was 13. That's it! If you want something different you can always change the code but I enjoy the effects in the example.
The string of pixels have three connections to the Arduino "5V, GND, and DATA". Connect the 5V line to 5V on the Arduino, GND to GND on the Arduino and DATA to Digital Pin 6 on the Arduino. After attaching each conceutive module I would power the string up briefly to make sure they were working correctly before soldering another. Due to the seperation distances between the pads its very easy to make a short circuit or short two data lines together.
Once you have connected the string, uploaded the code, and confirmed the string is working as expected proceed to the next step.
Step 4: Glue LED's Into Frame
Use hot glue on the underside of the LED module and glue it into the frame. Keep the wires as flat as possible to the inside. Then I cut 3 cm x 1.5 cm strips of 5 mm foamboard with a kraft knife to cover the wires which I glued over the wires with hot glue to hide them.
Step 5: Finishing Off
I cut a inner frame for the card out of 5 mm foamboard and secured the card into the frame with sellotape. I cut a corner off the backing for the wires to poke out of the back of the frame. The back board was placed into the rear of the frame to enclose the picture.
To house the Arduino I placed all the connections on a solderless breadboard with an adhesive backing, and stuck it into a small enclosure. I drilled a 6 mm hole in the side as an entry for the wires to the LED's and for power. I then simply screwed the lid back onto the box and glued it to the backing with hot glue. Finally I soldered the power end of the Arduino using a micro-USB breakout PCB and finished the termination with heat shrink.
Step 6: Enjoy
I hope you enjoyed this short instructable, if you liked it please vote for it in the colours of the rainbow competition. Please also have a look at my other instructables above.