People's Choice X-mas Lights Theme

by Ralroi in Circuits > LEDs

141 Views, 1 Favorites, 0 Comments

People's Choice X-mas Lights Theme

Scherm­afbeelding 2022-12-18 om 20.30.27.png
IMG_6997.jpeg
IMG_6998.jpeg
IMG_6996.jpeg

Many Christmas lights adorn the surroundings, but imagine allowing passersby to choose how these lights should shine. While some decorations are basic, others boast dazzling light displays. This concept is a straightforward way to enhance a basic setup and introduce interactivity.

Each addressable LED is equipped with a small ESP module, creating a Wi-Fi network. Additionally, a Raspberry Pi and a cluster of buttons are available. Each button corresponds to a different theme, enabling you to transform the ambiance in your garden with a simple press.

People passing by can make their choice regarding the theme in your yard/garden.

<iframe width="560" height="315" src="https://www.youtube.com/embed/wcmnT1heikY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

Supplies

IMG_6232.jpeg
IMG_6233.jpeg
IMG_6234.jpeg
IMG_6235.jpeg
IMG_6237.jpeg
IMG_6240.jpeg

This is my first project. I've bought local where possible, to support local dealers/shops. I've looked up the names of these items on Amazon so you have the naming correct and know where I looked for.

It is possible that you have some of these things at home, see if you can re-use these. I try to build in a way that I can re-use/upcycle things for future projects.


The network

A router to provide Wifi. (Do not use your home wifi network, as this is always more save and not overloading your own network. For trouble shooting is this also easy)

I've used an old router that could do the job. I advise to keep the lights separated from your home Wifi.


Network

  • Wifi capable router (can be an old not used one)
  • Lan/UTP Cable (5 or more meters) depending on the distance between the box and the Raspberry pi

The led string(s)

  • ESP- module:
  • ESP 32 -module (easy)
  • Wemos D (soldering required)
  • ...
  • USB wire from your computer to a Micro USB port (for the ESP or Wemos D)
  • Led lights, addressable ones, 5V:
  • 5V 50pcs WS2811 Pixels Individually Addressable IP68 Waterproof or WS2812b ones
  • 5V WS2811/WS2812b led strip(s) (also to be used when making chapes)
  • ... ( if addressable leds)
  • 40MM Ping Pong Balls (if you want diffused light and more visible)
  • Pack 5M 16.4ft 3 Pin JST SM Male Female Plug LED Connector Cable for WS2812B WS2811 SK6812 Symphony LED Lights with connectors (depending on your plan of installation)
  • 5V power supply per led strip (can be a phone charger, battery pack, official micro usb charger of 5V, ..)
  • Breadboard cables male to female when using esp boards
  • Extra power cables in case you use long

The box with push buttons

  • Plastic box, container, ... that can be closed without letting water go through.
  • Waterproof push buttons (6 will be sufficient)
  • RJ45 Screw Terminal, RJ45 to 8Pin Screw Terminal Adaptor Connector, Ethernet Extender RJ45 8P8C Female to 8 Pin Screw Terminal Breakout Board Cable !! use the one without an extra cable, as you need to secure inside a box and make it waterproof.
  • Breadboard cables different colors (preferably one red and one black for sure)
  • Colored thin wires ( you can use the cables from inside the UTP cable if you have some spare)
  • Stand where you want to secure your box

The Mind

  • Raspberry Pi 3, 4
  • SD card for your raspberry pi (type 2)
  • (optional: monitor, keyboard, mouse => to setup you raspberry)
  • RJ45 Screw Terminal, RJ45 to 8Pin Screw Terminal Adaptor Connector, Ethernet Extender RJ45 8P8C Female to 8 Pin Screw Terminal Breakout Board Cable (you an use one with a cable extention)

Material to make it all possible

  • Screwdriver
  • Wood drill (size of the underside of the buttons)
  • Soldering set
  • Marker
  • Paper + pen
  • Cable Stripper

Setup Your Network

Schermafbeelding 2022-12-22 om 13.15.19.png

As mentioned, I opted for a separate Wi-Fi network to prevent overloading my home network and to deter unwanted visitors.

Begin by resetting your router to its default settings or restoring it to factory settings.

Access the router's login page and change the default "admin" password to a unique one. Be sure to record this new password, as you will need it later.

Once that's complete, set up a new network and make note of the SSID (network name) and Wi-Fi password.

Check if your router allows you to assign fixed IP addresses. If it does, this will come in handy later in the process, simplifying things.

Remember, there's no need to connect this router to the internet.


TIP

It can be wise do connect one a the year, the router to the internet to update the version of WLed. There is an option to upgrade them to the latest version, without having them reconfigured completely.

Setup Your Led Strip

IMG_6236.jpeg
IMG_6238.jpeg

To keep it simple, I've installed WLED on the ESP boards. There are many YouTube tutorials that explain you what WLED offers a wide range of possibilities, here are the steps I followed. You can also refer to YouTube tutorials for assistance.

You can find one of the many YouTube tutorials here: YouTube Tutorial Link.

Alternatively, you can follow these steps:

  1. Begin by unpacking your ESP board.
  2. Download the ESP flasher tool from this link: ESP Flasher Download Link. Install the tool on your computer.
  3. Next, download the latest WLED program to install on your ESP board. Visit WLED GitHub, go to the "Releases" section, and download the latest version from this link. Make sure to remember where you save the .bin file.
  4. Install the .bin file onto the ESP board using ESP flasher or Wemos D.
  5. Access the ESP device by connecting to the "WLED-AP" Wi-Fi network with the password "wled1234." Configure the device to connect to your Wi-Fi network on the configured router. For more details, refer to this link.
  6. Once the setup is complete, you can start using your LED lights and experiment with them. There is even a mobile app available. Connect to the Wi-Fi network using the SSID and Wi-Fi password.
  7. Connect your LEDs to the ESP board using breadboard wires (refer to the provided picture). On the Wemos D, you will need to solder them onto the board.
  8. If you plan to use the WLED app/website for the configured device, it's a good idea to document the settings you prefer.
  9. If you are working with multiple ESP boards, consider giving them distinct names. For example, I renamed all ESPs with a name like "lamp00x" in the Wi-Fi settings. I also assigned them fixed IP addresses, with the number "x" matching the name. This approach made it easier to identify them in case of any issues.
  10. On the router, you can also see the names, making it simpler to assign fixed IP addresses there.

For example, you might have "lamp002" with the IP address 192.168.15.102. The router could have the IP address 192.168.15.1, the Raspberry Pi at 192.168.15.2, and your computer claiming another one. By starting with numbers above 100, I avoided any conflicts in IP addresses.

Structure All, So You Know It for Next Time You Use

With this start you have made you're on the right track. Now to keep everything clear and to make sure that what you have prepared is also reproducible afterwards outside (I prepared everything indoor)

Write down a number on the ESP, so you know what it was created for.

The leds

So best to make a table:

Name LED Number of leds ip-address location board

Lamp002 50 192.168.15.102 front left ESP

Strip003 183 192.168.15.103 figure present Wemos

....

The ports on the raspberry + cabling (later on)

The same I advise to do for the colors of the cables

Port on PI Color leaving Color arriving Color button Effect

GND Black Black none none

29 White White White X-mas1

30 Green Purple Green Colorful

...


Once you start with Node-red, you can add labels and comments to keep sure that you know what you is linked to what. As you can copy one and apply the colors/setting/effects to the next board, there is less need to map this separately.

Build the Box With Buttons

IMG_6239.jpeg
IMG_6241.jpeg
IMG_6231.jpeg

I used an old plastic box that originally contained cookies, and I made sure it was thoroughly cleaned. To match the number of buttons I intended to install, I created corresponding holes in the box lid.

Since I didn't want to expose my Raspberry Pi to outdoor conditions, I opted to use a UTP cable to connect the box to the Pi.

PREPARATION:

  1. Create holes in either the box or the lid (I chose the lid) to accommodate the buttons.
  2. Securely place the buttons in the holes.
  3. Obtain eight different colored breadboard female cables.
  4. Cut the double female breadboard wires in half.
  5. Strip the other end of these breadboard wires.
  6. Select the thin cables, preferably in different colors, and cut them to a length of about 10cm (adjust based on the box's size and the spacing between buttons).
  7. Strip both ends of the thin cables, leaving about 8mm exposed.

CONNECTING:

Inside the Box:

  1. Connect the thin wires to the push buttons, trying to match the colors you used for the breadboard wires.
  2. The black wire serves as the ground and should be connected to all buttons on one side.
  3. You'll need one black cable later to connect to the Pi's ground.
  4. Use a different colored wire for the other side of the buttons.
  5. Prepare the connections.
  6. Link the breadboard wires with the RJ45 Screw Terminal.
  7. Repeat the same process for the other terminal.
  8. Connect the thin wires to the female breadboard wires.
  9. Secure the connections with tape (if using single-wire cables, you can bend them in waves to make securing them easier).

Lastly, decide how you want to hang and secure your box, and make sure you have all the necessary components ready.

Setup the Raspberry Pi

Schermafbeelding 2022-12-22 om 13.25.33.png
Schermafbeelding 2022-12-22 om 13.26.51.png
Schermafbeelding 2022-12-22 om 13.28.28.png
IMG_6230.jpeg

Here I'm doing nothing special. There are tutorials on how to install a Raspberry Pi, you can follow one of these and how to install Node-red.

Here are 2 tutorials:

Installing Raspberry PI: https://youtu.be/jRKgEXiMtns (or other ones)

Installing Node-red: https://youtu.be/BNtVN0jm1WI

I you follow these instructions, you need to do the following:

  1. Make sure you install Wled item in Node-red
  2. Make sure that you activate Node-red when starting-up the Raspberry-pi
  3. It is accessible via a web interface, so you can adapt it in the future.


And follow now these following steps:

  1. Power on the router (wait still fully started)
  2. Power on the Raspberry Pi (wait still fully started)
  3. Power-up one of the ESP's with WLED installed
  4. Check the IP-addresses on your router, to see which device has what ip-address.
  5. Surf to the url: 192.168.xxx.xxx:1880, this will open Node-red (xxx to be replaced with the numbers of the ip-address of the raspberry pi.
  6. You can modify, copy/paste a setting link it to the port, change the IP-address and name to fit another ESP.
  7. Check the setting of the WLed to fit what you want.


TIP

The ip-address of each board can be used to enter the WLED app and play around with the settings. Once the PI takes over again, the board will follow the pi again. For identifying a string it can be useful. Use your table that you have created, so to easily see what you need.

Connect Everything

The big moment is starting up and test all the sets you plan to use.

  1. Power on the router
  2. Power on the Raspberry Pi
  3. Power-up one of the ESP's with WLED installed
  4. Press the buttons and enjoy the effect.


You're done


TIP

Use the diagram (see step 2) and start expanding and make sure it covers:

  1. Name WLED, IP, number of leds
  2. Color of the push button, color cable and color of the port on the pi used
  3. Add the info in the comment beside the diagram in Node-red

If you do it with pen and paper you can store it with your lights when you store your lights over the summer.

Make a Plan to Add More Lights

Scherm&shy;afbeelding 2022-12-18 om 20.31.16.png
IMG_6999.jpeg
IMG_7002.jpeg

If you have reached this part, start thinking where and how you like to light your yard, garden, event, ...

If you want to add more led pixels or strips, use the steps that are mentioned before.

Pay attention you make it waterproof when having outside in the rain.


And than let you imagination do the rest.

Room for Improvement

IMG_7001.jpeg

This is my first post on this site, and I welcome feedback, corrections, and advice from the community. There's always room for improvement. I have no technical background; I'm pursuing this as a hobby.

When you place your buttons outside, it's essential to guide people to them, ensuring they understand they can press the buttons.

I've chosen to keep my ESP devices indoors and extend their reach with cables. In the next phase, I plan to create sealed boxes to protect against water damage. If you decide to do the same, consider using salt bags (or those received with electronics or moisture-sensitive materials) to maintain low humidity levels and prevent electrical shorts.

When you connect more than 100 LEDs to an ESP, it becomes crucial to power them externally. Keep an eye on the amperage information displayed in the WLED app; it will provide guidance and inspiration for your setup.