Portable Studio Light




Greetings everyone and welcome back. Here's something super bright.
The Portable Studio Light is an ultra-compact RGB lighting solution intended to improve video production and visual aesthetics. With a sleek 3D-printed housing and a custom-engineered lens, it diffuses brilliant light from just four WS2812B LEDs.
The Studio light, powered by an ESP8266 microcontroller, links smoothly to a browser-based web app, allowing for exact color choices and dynamic control directly from your phone or laptop.
The Portable Studio Light was created to address an actual problem: I just relocated and found myself frequently hopping between two workplaces. I needed a lighting setup that was portable, easy to mount anyplace, and strong enough to enhance my video output.
Our Setup is powered by an ESP8266, with a custom 3D-printed lens and enclosure to make the most of only four WS2812B LEDs. The web app is where the magic happens: it's simple, responsive, and works on any device. I've used my phone, laptop, and ROG Ally to control it. Simply select a hue and it refreshes instantaneously, allowing us complete creative freedom no matter where I am working.
This whole Instructables is about the build process of this project and how you can make it in a few easy steps, so let's get started with the build.
Supplies
These are the components required in this build:
- Custom PCBs (Provided by HQ NEXTPCB)
- RGB WS2812B LEDs
- ESP12F Module
- 10K Resistor 0805 Package
- SMD Push Button
- Type C Port
- Right Angle Push Button
- 100 nF Capacitor 0603 Package
- AMS1117
- 10 uF Capacitor 1206
- 1uF Capacitor 1296
- M7 Diode
- 3D-printed parts
- LiPo Cell 3.7V 2000mAh
Previous Build

Previously, I created a similar Studio light that was far bigger and more powerful in terms of both light and battery capacity. In the initial version, I used two PCBs connected by a 3D printed bracket and a long PCB standoff. The two PCBs consisted of an LED board and a control board. The LED board contains all of the non-addressable SMD RGB 5050 LEDs, including Warm White and Cool White LEDs.
The Control board included a PICO 2 with a display, a few buttons, an integrated power source, and two 8205S Mosfets as a switch setup that we linked to the LED board to turn on and off the Warm and Cool white LEDs.
One major issue with the project was its size, and I chose to use the WS2811 chip instead of an RGB addressable LED. I connected more than ten LEDs in parallel with the WS2811 IC, but the maximum current the WS2811 can sustain is roughly 20 mA per channel, causing all LEDs to flash very dimly in all R G and B modes.
The new portable version resolved the current issue by replacing the WS2811 IC with higher-quality WS2812B LEDs.
You can check out the previous project from here—
3D DESIGN



















The 3D design of this project began with creating a proper-sized model of the lens that will be used in this build. The idea here was to place a PCB on the backside of the lens and then create an enclosure around it to house the batteries and electronics. The entire device will have a Stand Holder component that will be used to attach the device to any tripod or pipe.
The enclosure was designed in two halves: the front body and the lid section.
The front body has a huge opening in its center where the lens will be secured. The circuit was then modeled and connected to the lens, which is kept in place by a hole in the middle into which we will insert an M2.5 nut and bolt.
The lid is attached to the front body from the back and held in place with four M2 screws. The Lid Part also houses the Stand Holder Part.
We have created a 20mm DIA hole on the Stand Holder for attaching a tripod with this arrangement. We also constructed a slit and provided a hole and slot for installing an M6 nut and bolt; by tightening these nuts and bolts, the 20mm dia. hole size drops to 19.5 or less, allowing our device to be fastened securely with a tripod.
After preparing the 3D model, we exported the mesh files for all of the parts and 3D printed them on our K10 Max 3D printer with white Hyper PLA.
PCB Design



Let's have a look at the schematic for this project, which is divided into four primary parts, one of which is the microcontroller section, which in our case is the ESP12F setup. Here, we've connected the ESP12F module to a few 10K resistors in the minimal configuration required for the ESP12F to work. We also included a CON6 Header pin connector that connects to the TX, RX, GPIO 0, RESET, VCC, and GND pins of the ESP12F Module; this connector will be used to flash the ESP chip using a UART adapter.
Next, we have the Power source section, which is the IP5306 Power management IC Setup, which we have previously used in many of our battery-related projects. This SOIC8 Package IC can provide a stable 5V 2.4A from a 3.7V Lithium Ion or LIPO Cell and also includes many important functions such as overcharging protection, overdischarge, battery fuel level, and charging status.
Below is its datasheet if you want more info on this IC.
https://www.skytech.ir/DownLoad/File/2566_IP5306.pdf
Our ESP12F is a 3.3V device; however, the IP5306 provides 5V, which will easily destroy our ESP12F setup. To avoid this issue, we used an AMS1117 3.3V Voltage Regulator, which takes the 5V from the IP5306 IC and lowers it to 3.3V so that our ESP12F setup can function properly.
Finally, we have the RGB LED Array, which consists of four WS2812B LEDs linked together to make a four-chain addressable LED. We have also included four 100 nF decoupling capacitors, which will be placed near the VCC and GND pins of each SMD LED.
After finalizing the schematic, we prepared the PCB Design, which was really simple. We began by creating the board outline using a DWG file exported from our Fusion360 model, which we then used to construct the PCB outline in our PCB cad software. We placed all of the SMD components on the top side of the PCB except for the ESP12F module due to space constraints; all SMD components were extremely small and could easily be placed on the top side, but our ESP12F module occupied a larger area, so we had to move it to the bottom layer.
All of the through-hole components, including the Type C Port and Right angle Push button, were installed to the bottom side according to the mounting dimensions provided in the design. The mounting hole in the middle was also added by following the dimensions from the 3D model, as was the placement of RGB LEDs.
NextPCB PCB Service



After completing the PCB Design, Gerber Data was sent to HQ NextPCB, and two orders were placed in a white solder mask with black silkscreen.
After placing the order, the PCBs were received within a week, and the PCB quality was pretty great.
In addition, I have to bring in HQDFM to you, which helped me a lot through many projects. Huaqiu’s in-house engineers developed the free Design for Manufacturing software, HQDFM, revolutionizing how PCB designers visualize and verify their designs.
Take advantage of NextPCB's Accelerator campaign and get 2 free assembled RP2040-based PCBs for your innovative projects.
https://www.nextpcb.com/blog/rp2040-free-pcba-prototypes-nextpcb-accelerator
This offer covers all costs, including logistics, making it easier and more affordable to bring your ideas to life. SMT services can be expensive, but NextPCB is here to help you overcome that hurdle. Simply share your relevant project, and they'll take care of the rest. Don't miss out on this amazing opportunity to advance your tech creations!
HQDFM: Free Online Gerber Viewer and DFM Analysis Tool

Also, NextPCB has its own Gerber Viewer and DFM analysis software.
Your designs are improved by their HQDFM software (DFM) services. Since I find it annoying to have to wait around for DFM reports from manufacturers, HQDFM is the most efficient method for performing a pre-event self-check.
This is what I see in the online Gerber Viewer. It's decent for a quick look, but not entirely clear. For full functionality—like detailed DFM analysis for PCBA—you’ll need to download the desktop software. The web version only offers a basic DFM report.
With comprehensive Design for Manufacture (DFM) analysis features, HQDFM is a free, sophisticated online PCB Gerber file viewer.
With over 15 years of industry experience, it offers valuable insights into advanced manufacturing processes. If you’re looking for reliable PCB services at a budget-friendly price, HQ NextPCB is definitely worth checking out.
PCB ASSEMBLY









- The PCB assembly process begins by applying solder paste to each SMD component pad one at a time with a solder paste dispensing needle; we are using 63/37 Sn/Pb solder paste here.
- Next, we use an ESD tweezer to choose and arrange all SMD components on the top side of the board.
- We pick the circuit and place it on the Reflow hotplate, which heats the PCB to the solder paste melting temperature, causing all SMD components to permanently solder to their pads.
- Next, we begin assembly on the bottom side of the board, beginning with the placement of the ESP12F Module.
- Because we are soldering on the other side of the board, we must use a soldering iron. We begin by soldering the first pad of the ESP model, which secures it in place and allows us to begin soldering the pins.
- Now come the through-hole components; we begin by installing the Push Switch, followed by the type C Port.
Flashing the ESP12F & MAIN CODE


Next is the Flashing process of the main circuit's ESP12F Module.
The usual FTDI board method, which requires connecting a flashing button between GPIO 0 and the GND Port, is being used to program the ESP12F Module. During uploading, the ESP12F enters programming mode by long pressing the Flash button first, followed by the reset button.
Here's an article about programming ESP12F with FTDI Board for more details:
https://www.instructables.com/Program-ESP8266-With-NodeMCU/
Here's the code that was used in this project and it's a simple one.
Let's have a closer look at the code for this project.
Library
These libraries are the backbone: NeoPixel handles the RGB LEDs, ESP8266WiFi brings it online, WebServer lets it serve pages and handle user input, and mDNS adds that nice touch of accessing the ESP via a human-readable name instead of an IP address.
Neopixel and Web Server Configuration
This section sets up the LED strip with the correct pin, pixel order (GRB), and signal frequency. The strip object lets us talk to all four LEDs with just a few commands. The led pin is a handy debug indicator that shows when something’s happening—useful for visual feedback without the Serial Monitor.
Setup Function
This section gets everything live: Serial monitor for debugging, LED setup, WiFi connection, MDNS (so users can type esp8266.local instead of IP), and defines web routes so visitors know where to land and what to expect.
Loop Function
This maintains the ESP responsive to web traffic. It is a non-blocking function that allows the ESP to process user input without freezing or requiring reboots.
handleRoot
This part block responds to users when they visit the ESP in a browser. It serves a functional color picker UI, calculates and displays uptime, and applies any color sent via the form. Simple, clean, and interactive.
handleNotFound
This Section keeps the server polished even when users mistype URLs. Instead of crashing or freezing, it gives useful debug info about what went wrong.
setNeoColor
This function is the heart of our system's response. It decodes the hex string (like #34D2FF) into individual RGB components, converts them for our hardware's GRB needs, and applies them across the LED strip. That’s what makes the lights react instantly when someone clicks a color.
Power Source


This project's power source is a 3.7V 2000mAh LiPo cell. We begin the power source assembly process by connecting the Lipo cell's positive and negative terminals to the Battery CON2 port of the IP5306 IC.
We plug a type C charger into our circuit, and the blue lights begin to flash, indicating that this setup is functional. When the blinking becomes stable, the battery has been fully charged.
Lens Assembly Process



Here's the lens we're using in this project; it's a special one that I got on Amazon. These lenses are actually used in commercial streetlights and have a light spread of 50 to 90 degrees, making them more suitable for applications that require floodlighting.
For the assembly of the lens with our completed circuit, we just added the circuit to the back of the lens; our circuit was developed based on the lense cad model, thus we included a mounting hole for the lens in the center.
We used an M2.5 nut and bolt to secure the lens and circuit together.
Enclosure Assembly Process










- The Circuit-Lens Assembly is now inserted into the Front Enclosure and pressure fitted in place.
- We attached double-sided thermal tape to the rear side of the circuit, which has an exposed ESP12F module, to isolate it from the battery, as the battery is located on the back side of the circuit.
- We now take the Stand Holder portion and attach an M6 nut to the backside of the Holder, where we have modeled a cavity for the nut. From the other side, we install the M6 Bolt, which is then Tightened with the M5 Nut. When fitted on any cylindrical pipe, this part effectively tightens the Stand Holder.
- The Stand Holder is then installed on the backside of the Lid and tightened with four M2 screws.
- We then mount the antenna to the battery.
- The lid is then fitted on the backside of the front enclosure and tightened with four M2 screws.
The assembly process has now been completed.
RESULT





Here's the end result of this build, the Portable Studio Light, a fully functional, travel-friendly RGB lighting solution designed for creatives who move between workspaces. Built from the ground up with an ESP8266 microprocessor, four WS2812B LEDs, a custom-designed 3D-printed body, and a unique lens.
To turn on this device, hit the Right Angle Push button once; multiple tapping turns it off.
After turning on the ESP12F, it connects to our network, and we can browse the webapp using the IP address we obtained in the Serial Monitor during the code uploading and testing process.
The web app provides a built-in color palette that allows us to quickly select and apply any color we desire. It's a simple and easy approach to managing lighting in real time.
I tested the Studio Light Mini by illuminating objects in my workspace. I first used it to highlight my ROG Ally, then as a facial light source. It performed great in both circumstances, providing smooth and vivid illumination.
CONCLUSION



The Studio Light Mini demonstrates that portability does not have to compromise performance. Through smart engineering, thoughtful design, and real-world testing, this compact RGB light delivers powerful results in any setting—from workspace demos to personal filming setups.
The Studio Light Mini's tiny form allows it to be readily mounted or positioned anywhere, whether overhead or on a tripod. During testing, we used a tripod and the web app to experiment with different colors. Each adjustment was quickly updated, resulting in studio-quality lighting without the need for bulky equipment.
This project began as a practical answer to a personal problem and has grown into something truly useful, enjoyable, and portable. It serves as a reminder that even tiny ideas, when executed with care and purpose, can have a significant impact. If you enjoy small electronics, creative interfaces, or simply want studio-grade lighting that fits in your pocket, this is an interesting pick.
Overall, this project is completed and requires no revisions.
Special thanks to HQ NextPCB for providing components that I've used in this project; check them out for getting all sorts of PCB or PCBA-related services for less cost.
Thanks for reaching this far, and I will be back with a new project soon