Everyone loves staying connected over the holidays. Why not do it with an internet connected Christmas ornament? These Christmas ornaments all check the same server to see if someone has sent more Christmas Cheer. If they have, then they will all play a song! Watch the video for more info.
Step 1: Watch the Video!
Step 2: Get the Parts and Tools
- PCB - Files can be found on GitHub: https://github.com/IdleHandsProject/esp_ornaments
- ESP8266 - https://www.adafruit.com/products/2491
- 3.3V Booster/Buck Regulator - https://www.pololu.com/product/2563
- WS2812 or Similar - https://www.adafruit.com/products/1655
- Digikey Parts - http://www.digikey.ca/short/350r2m
- 3.3V FTDI - https://www.sparkfun.com/products/9873
- JST Breakout - https://www.sparkfun.com/products/11818
- JST Jumper - https://www.sparkfun.com/products/9123
- Soldering Iron
- Toaster Over(for reflow)
- Solder Paste
- Low Temp Solder(If reflowing both sides)
Step 3: Solder Components
1)Add the regular temp solder paste to the ESP8266 side. You can also solder by hand using normal solder. The small components can be tricky, but you won't easily hurt anything here. Good practice.
2) Place/solder components.
Don't populate C3 or D2. Not Needed.
If you're using the toaster oven method, reflow the side with the ESP8266.
3)Wait for it to cool.
Step 4: Turn Over, Solder LEDs
Turn the board over and solder the WS2812 LEDs. I used a Bismuth low temp solder paste to reflow them. I was really careful not to burn the LEDs in the oven. They can be easily hand soldered as well.
Step 5: Program Board
This board can be programmed like any Arduino! You don't have to run my code. But if you want to be a part of the Christmas cheer! Contact me and I will give you the private key. I may just supply this in the future. You can also start your own server on data.sparkfun.com - It could be only with your own family. The code is kind of straight forward... Kind of.
The firmware is located on the github! - https://github.com/IdleHandsProject/esp_ornaments
To connect the board, connect the JST Breakout board to the FTDI with Pin 6 on the GND side of the FTDI. Bend the DTR pin so it does not connect(Only if you soldered on C3 or D2). Connect to the ornament and install battery. Now connect FTDI to computer. There are many tutorials on programming the ESP8266 with arduino.
To put the board in "Program" mode - you need to hold down the button on the left(near connector) while hitting reset(Near capacitors) - see GIF.
Once that is done you can hit program in the Arduino IDE!
Step 6: Connect It to Wifi!
Now that your board is programmed. Open your smartphone and connect to "Tree Ornament" a setup window should automatically open. If not, go to a browser and navigate to 192.168.4.1 - The process to connect to your own wifi is very simple. Once this is done once it will be set in the ESP until you change it. Its now able to access the internet!
Step 7: Hang on Your Tree!
Your first(maybe?!) internet connected ornament!
Step 8: Spread Christmas Cheer!
To spread christmas cheer to all of the other ornaments, hold down the button on the front, and press reset. Wait for the two tones and it should be sent!
Step 9: Share!
Share the project. Lets get more people adding to the Christmas cheer! Tweet about it, share the video, put it on facebook!
If you really want to help me out and support these projects, consider becoming a Patron on Pratreon!