Battery-Powered Lamp
Overview
This project was a birthday gift for my partner Liz. It is a cube-shaped lamp that features 216 individually addressable RGB LEDs. It features 5 different light patterns, with control over saturation and color themes. The light is battery powered and USB-C rechargeable so it can be used anywhere, such as camping trips.
Challenges & Solutions
The original design featured solid wood rings to divide the rows of LEDs. This proved to be the wrong approach since the expansion and contraction of the wood across the grain as the seasons change could cause cracking in the wood. Furthermore, the aesthetic of alternating end and edge grain faces of the wood was not as visually appealing as continuous face grain. The design was then changed to have 3D printed rings with stained oak veneer adhered to the visible surface. A piece of plywood was used for the top for its dimensional stability.
To keep the user interface simple, a four-button capacitive-touch design was used to minimize moving parts and increase reliability. The four buttons are: power, minus, plus, and mode. The minus and plus buttons control the brightness of the lamp and the mode button changes the light pattern. As an added bonus feature, the saturation of the colors can be adjusted by holding the mode button and tapping the minus button. The color theme of the lamp can also be changed by holding the mode button and tapping the plus button. This cycles the patterns through the color wheel to set the desired mood.
The light diffuser rings are 3D printed from translucent plastic to provide even light distribution.
Technical Details
The following are a list of the components used in this project:
- ESP32 with over the air updates
- 216 WS2812B RGB LEDs from a strip controlled with the FastLED library
- 4x 18650 battery cells with an off-the-shelf BMS for charging
- USB-C charging port
- 4 silver off-the-shelf hole plugs for the capacitive touch buttons
Results & Outcomes
She loves it! It's great for setting the vibe at parties, and as ambient light while camping!
What I would do differently
The BMS I sourced was the only one available locally within my budget, and the quality was a bit lacking. After some testing, I found that it would charge the cells above their recommended voltage. To avoid any possible overcharging issues, I had to design a circuit to cut power to the BMS and stop charging when the cells hit 4.2 V. This added a lot of complexity to the design and programming. Next time, I would do more research to find a higher-quality BMS or design a custom charging circuit.