Rainbow Lamps - Wireless Synchronized Lamps

by Mukesh_Sankhla in Circuits > Remote Control

5267 Views, 95 Favorites, 0 Comments

Rainbow Lamps - Wireless Synchronized Lamps

DSC00183 - Copy.JPG
Untitled design.png
Rainbow Lamps(Wireless Synchronized Lamps) #esp32 #3dprinting #rgbucketlist
DSC00204 - Copy.JPG

Rainbow Lights are ESP32-C3 based RGB lamps which are synchronised using ESP-Now Communication Protocol. The Lamps are designed in #fusion360 and 3D printed in #ender3. #Adafruits 16LED Neopixels rings are used in these lamps.

The basic functionality of these lamps is to be in wireless sync and change the colours according to the program. So currently I have programed them in two modes:

Mode 1: When we touch any one coloured lamp, all the lamps glow in that colour, stay for 2 seconds and go back to their original colour.

Mode 2: In second mode the colour we touched stays as long as power shutdown or unless we touch any other lamp.

We can use this lamps as Childrens Play Lamps, Mood Lamps, Photo/Videography, Background fill lights and more.....


Thank You NextPCB:

This project is successfully completed because of the help and support from NextPCB. NextPCB is one of the most experienced PCB manufacturers in Global, has specialized in the PCB and assembly industry for over 15 years. Not only could NextPCB provide the most innovative printed circuit boards and assembly technologies in the highest quality standards, the fastest delivery turnaround as fast as 24 hours.

Guys if you have a PCB project, please visit their website and get exciting discounts and coupons.

Only 0$ for 5-10pcs PCB Prototypes:Nextpcb.com/pcbprototype

Register and get $100 from NextPCB: Nextpcb.com/coupon

Supplies

IMG_20220810_172444.jpg
IMG_20220722_165449.jpg
IMG_20220810_173327.jpg
IMG_20220810_173431.jpg
IMG_20220810_173612.jpg
IMG_20220810_173711.jpg
IMG_20220810_173527.jpg
IMG_20220810_173950.jpg

To get high-quality electronic components at an extremely low cost, hqonline.com is the perfect site. They have labels from all the international brands, so you can find the best components for your device without spending a lot of money. This offers you the best value for your money.

3D Design

3dmodel.gif

3D Printing

3dParts.gif
IMG_20220810_173001.jpg
IMG_20220810_173058.jpg
IMG_20220810_173244.jpg
IMG_20220810_173200.jpg
  • 3D Print the above .stl files:
  • 5x Housing in any color you want
  • 5x Cover in white color filament
  • 5x ESP32-C3-Mount in any color
  • 5x Neopixel-Plate in any color
  • I used Ultimaker Cura for slicing.
  • Settings:
  • Layer height: 2mm
  • Print speed: 100
  • No Support
  • Printed on Ender3

Soldering

soldering.gif
esp32C33.png
IMG_20220810_173327.jpg
  • Solder the ESP32-C3 Module and Expansion board together using header thats provided in the same pack.
  • Take reference of the image provided above or align the pins naming properly.

Connections

Rainbow Lamps Circuit Connections.png
  • Connect all the electronic components as shown in the circuit diagram.
  • Make sure everything is connected as per diagram before you power it on.

Assembly

assembly.gif
  • Place the battery in its holder.
  • Push the Push Switch in its slot use glue if necessary.
  • Place the ESP32C3 Module in its mount and screw them.
  • Put the Neopixel ring in the base plate and use some glue.
  • Stick the Touch sensor on to the Cover.

Snap Fit

Assembly2.gif
DSC00208 - Copy.JPG
DSC00206 - Copy.JPG
  • The lamp parts are designed in such a way that they can snap fit together.
  • Align the teeths of the parts correctly and snap them together.
  • The Neopixel Plate can snap fit in the Cover and then the Cover can be snaped on to the Housing.

Arduino IDE Setup

Screenshot 2023-01-03 204400.png
Screenshot 2023-01-03 203959.png
Screenshot 2023-01-03 204227.png
  • First go to File->Preferences->Additional Boards Manager URL and paste the following URL
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
  • Then go to Tools->Board->Board Manager and Search for ESP32 and install it.
  • Go to Sketch->Include Library->Manage Libraries and search for Adafruit NeoPixel and insatll it.

Programming

Screenshot 2023-01-01 223733.png
Screenshot (4).png
Screenshot (5).png
Screenshot (6).png
  • Click To Download The Code
  • Open the .ino file in Arduino IDE.
  • You have to change the deviceNo = 1/2/3/4/5 as per your device number.
  • You can change the ClearColor = False, to make the changed colour in stay mode.
//Change This Values
int deviceNo = 1;         //Device Number
bool ClearColor = true;      //Do you want to clear the broadcast color?
  • Now You have to board type from Tools->Board->ESP32 Arduino->ESP32C3 Dev Module.
  • Selsct the com port number from Tools->Port
  • You can Enable or Disable the Tools->USB CDC On Boot to enable or disable the Serial Monitor. (I prefer disable it unless you are making changes in the code).
  • Click on upload the lamp will glow with a particular color that you have specified as deviceNo.

Color Change

Screenshot_20230103_072807.png
Screenshot_20230103_081954.png
  • You can change the colors in the code, I used this simple color picker and copied the RGB color values into the code.
colorWipe(strip.Color(255, 0, 0), 10);  // Red (Device 1)
colorWipe(strip.Color(255, 255, 0), 10);  // Yellow (Device 2)
colorWipe(strip.Color(0, 255, 0), 10);  // Green (Device 3)
colorWipe(strip.Color(255, 0, 255), 10);  // Pink (Device 4)
colorWipe(strip.Color(0, 0, 255), 10);  // Blue (Device 5)

Charging

  • You can directly charge the battery though ESP32-C3 Modules Type C, since this module have on board charging and overcarge protection feture.

Showcase

DSC00172 - Copy.JPG
DSC00192 - Copy.JPG
DSC00185 - Copy.JPG
DSC00165 - Copy.JPG
DSC00094 - Copy.JPG
DSC00199 - Copy.JPG
DSC00202 - Copy.JPG
DSC00211 - Copy.JPG
DSC00213 - Copy.JPG

I hope you have fun making this project.

Thank You!