Build a 3D Printed Smart Lamp (For Beginners)
- Brian

- Sep 14
- 9 min read
Updated: Nov 7
I got tired of just printing 3D models I could find online. This was mostly because I started seeing things around the house that could be fixed or improved if only I knew how to design for 3D printers or even add hardware and circuits to the mix.
Have you ever had an idea that you wanted to turn into reality, but you didn't know where to start? If the answer is yes, you've come to the right place. I understand the feeling all too well, but now I'm here to guide you through the processes and the tools you'll need to transform that idea into reality. Join me as we dive into 3D modeling, printing, circuits and programming as we build a smart lamp.
Finding Inspiration and Motivation
In preparing for this series, I aimed to come up with a poetically nerdy way to stay motivated. I pondered until an idea struck me. Sitting amidst a pile of parts from an old 3D printer, I wondered, "What if I could turn these parts into a lamp?" But not just any lamp, a lamp designed to resemble the X, Y, Z coordinate system utilized in design. Then the printer could shine on!

In this article we step through the assembly process to get our feet wet on what we will be designing. Future articles will dive deeper into the steps on how this lamp was designed.

Skills Exercised
Circuits - Assembly and Soldering
Programming - Loading a program to hardware
Assembly Techniques
Tools You'll Need
Saw (handsaw, dremel tool or miter saw)
Phillips head screwdriver
M2.5 hex bit or Allen key
Soldering iron (Check out How to Solder - A Practical Quickstart Guide to Through Hole Soldering)
Wire cutter and strippers
Electrical tape
Safety
This project is meant to be fun and hands-on, but it does involve tools, soldering, and working with electricity. Please take your time, wear eye protection, and use the right gear for the job. Double-check your wiring before plugging anything in, and if you’re ever unsure, ask for help from someone experienced. Use the comments section is a great idea too. A little caution goes a long way toward keeping your project safe and enjoyable!
The Parts
Let's walk through what parts we will be using in this build. There's a lot of flexibility here so feel free to experiment around if you have something laying around the house that might work. We'll elaborate just a bit on each of the parts because they are staples for many makers.
Part List*
2020 Aluminum Extrusion - https://amzn.to/46t07LY
Power Supply - https://amzn.to/3K0RWyK
Widget KC Lamp Kit - Smart Lamp Parts Kit | Widget KC
3D Prints (The sites have the same models. You can pick one that you are comfortable with.)
Thingiverse - https://www.thingiverse.com/thing:7145776
Maker World - 3D Printed Smart Lamp by Widget KC MakerWorld: Download Free 3D Models
Alternate Parts*
If things sell out above, you can find alternates here (albeit some are in bulk):
Bolts https://amzn.to/3JZTeKo
ESP8266 https://amzn.to/3K0kd8I
Circuit Board Multi-Purpose Output and Input Board (5v) | Widget KC
Not included in the parts list is 3D printing filament of your choice. We went with TPU and PLA.
2020 Extruded Aluminum

Used for the legs and the vertical post of the lamp
You need
2 10in segments for the legs (+/- a couple inches)
1 19in segment for the lamp post (+/- a couple inches)
A little bit about 2020 Aluminum Extrusions
2020 means the dimensions are 20mm x 20mm
Grooves allow methods to easily connect pieces and other items to the extrusion making it a very versatile material. Places I've used it include 3D Printers, Shelves, test rigs and enclosures.
Can be cut with a miter saw, hand saw, dremel tool or just about anything that can be cut with wood
If you pick up more than you need, no worries. I bet you will find a use for the left over. Maybe you even want to make a pair of these lamps for bedside tables.
Key property we need to be aware of today? Without the black coating, aluminum is electrically conductive so we don't want to have any bare wires touching it.
LEDs

You can think of them as small but powerful light bulbs
These strips have 60 LEDs per meter. We will be using about 30 LEDs for our lamp.
I recommend the IP65 rated LEDs because it provides a coating of protection against short circuits
Inside each white square of the strip is a red, green, blue and white light emitter. You can mix and match these to get millions of different colors.
I like that these have the white channel and opted for the warm white to replicate the look of an incandescent lamp
Power Supply

You will need a 2V, 2.0A power supply
Volts are like the pressure in your water pipes, too much and the faucets would blast off of your walls. Too little pressure and you may not get any water. We need a power supply with an output of 5v. No more, no less.
Amps are like the size of a pipe. The one going into your house it pretty large but each individual faucet is much smaller and only needs the size it needs. We need a power supply with at least 2amps (house line) but if it has more, that's ok. Our LEDs will only use as much as they need. If you do less than 2 amps though, you may get unexpected behavior from your lamp or even burn out your power supply.
5v and 2a power supplies are commonly used for phone chargers. You may have one laying around the house you could use.
Wire

22 Gauge wire is used to hook everything up
3 wires at 12in long each
If you want to be resourceful, you can use some of your power-supply wire for this
Nuts and Bolts

5 M4x12 bolts for fixing the legs and post to the lamp
5 T-slot nuts which are clever little guys that turn 90 degrees when tightened to fix things to 2020 aluminum
If you want to be resourceful, you can think about other ways to attach the legs and post instead of buying the nuts and bolts specified. Feel free to flex your critical thinking skills. In later article I'll show some options.
ESP8266 Microcontroller (ESP Chip)

It's the brains of the lamp. It holds the power to show us the web interface to let us tell it what to do and then it tells the LEDs how to behave.
You need one of these ESP8266 Microcontrollers
I sell a kit that makes the install really clean though you can technically accomplish this project without it


Let's Start Building
Prepare the Aluminum by cutting two 10in and one 19in lengths. There's room to be sloppy here because we will cover one side of each piece with a cap. Try to keep one edge nice and clean for each of the 3 pieces though.
Solder wires onto your LED strip
Red wire for positive, green for signal, and white for negative. If using different color wires, be careful to keep track of which one is which.
Solder the wires on the flat side of the triangle printed on the LED strip. This triangle indicates the direction of data. If you solder wires on the pointy end of the triangle, your lamp will not work.

Wrap electrical tape around connections. We will be fishing this through the aluminum post. Although the black coating on the aluminum is not conductive, we still want to be careful not to cause a short circuit.

Assemble the Base
Install M4x12 bolts in the base and use these to attach the 10in aluminum legs.

Use a grommet to protect wires from the aluminum lamp post. Place it in the base before placing the vertical lamp post into the base.

Slide the LEDs into one of the channels in the 19in lamp post and center them between both ends. You can cut off LEDs if needed by using a scissors and cutting across the solder contact lines between any two LEDs.

Install the lamp post by threading the wires through the channels in the base. Protect the aluminum wires by installing the grommet between the lamp post and the base. Then feed the lamp post onto the base.

Add TPU end caps to stabilize the lamp.

Finish the Wiring by feeding the power wire through the hole in the base. Make a knot to prevent the wire from being pulled out. Connect all wires to the ESP Microcontroller giving them a good tug to make sure they are not going to come loose.

Getting Smart
Option 1 for uploading software to your lamp (easiest and least technical)
Download our free Widget KC Upload Utility and select the 3D Printed Smart Lamp Option

Option 2 for uploading software to your lamp (flex your technical muscles)
Install Necessary Software
Ensure Python is installed on your computer. You can install this by downloading from python.org or Windows Store, if you type in python in the windows command line tool and press enter, windows will let you know if it's installed by providing a version number. Be sure to type in exit() and press enter to get back to the windows command prompts otherwise the esptool installation in the next step will fail.


Power user tip: you can open the command line tool by typing cmd into the search bar at the top of file explorer in windows.
Install esptool
In the command line, type in the following to install esptool which lets us talk to the ESP microcontroller.
pip install esptool
Download the Sample Program
Download the sample esp_lamp.bin here:
Unzip the file. You will transfer esp_lamp.bin to the ESP chip next.
Send the sample esp_lamp.bin program to your ESP chip
Open Device Manager to the Ports section. Remove your ESP chip from the lamp and connect the chip to your computer. Monitor Device Manager to see which COM port your ESP chip is connected to. You can look for a CH340 device in the Ports section. Look for something like COM1 or COM2 or similar.

Next, ensure you opened the command line from the directory where esp_lamp.bin is located. Load the program to the ESP chip by typing the following command and pressing enter making sure you specify the correct COM port number.
python -m esptool --port COM4 --baud 115200 write-flash --flash-size detect 0x0 esp_lamp.binAfter loading the program, your ESP chip will reset and then broadcast a WiFi network of its own. The network will be led_lamp and a series of numbers. Connect to this network using your computer and you should see the configuration page appear. If the configuration page does not appear, you can manually access it by typing in http://192.168.4.1 in your browser.

Select the network you want the lamp to be on and type in the password for that network.
Next, name your lamp by typing into the Device Name field. Don't use spaces. Write this down or remember it because it is how you will access the lamp to control it. Select Save when done and the ESP chip will reboot and connect to your network.

We can verify the lamp is on the network by accessing the ESP chip from any browser connected to the same network. Enter http:// and then whatever you named the lamp. In my case, I named it bedsidelamp1 so I type in http://bedsidelamp1 to access the control page. If the control page shows up, unplug you ESP chip from the computer and reinstall it in your lamp (be careful to align it correctly on the circuit board). Plug in your lamp's power and try it out!

Congratulations on your achievement! This project not only lights up your room but also enhances your tech skills.


Stay tuned for our next post where we'll dive deeper into the design aspects of the lamp.
Thanks for joining us and may your future be bright!
Next Steps?
My wife thought it would be a good idea to have a button on the lamp to control the brightness. Check out how we did that in the post here: Upgrade Your Smart Lamp to Work Without WiFi in Minutes Using AI
Disclaimer
*Some links above are affiliate links. They don't alter your price or checkout flow at all but they do help support the projects on this site. Thank you for using them!
This project involves the use of tools, soldering equipment, electricity, and other materials that can pose risks if not handled properly. By following the instructions provided here, you agree to take full responsibility for your own safety and the outcome of your project. The information is provided “as is” without any warranties, express or implied. I make no guarantees regarding the performance, safety, or suitability of this project. Always use proper safety precautions and consult a qualified professional if you are unsure. I assume no liability for any injury, loss, or damage resulting from the use or misuse of this information.



Comments