# Floor Lamp with NeoPixels and WLED Custom Animations

## Overview

https://www.youtube.com/watch?v=Wmjf8qvRKoo

The lighting in your home can really change the energy and the mood. This modern floor lamp uses addressable NeoPixel LEDs, a QT Py Pico ESP32 with WiFi, and the free, open-source WLED software: a wonderful and easy way to create animations, schedule programs, and take control of the lighting in your house.

This lamp also uses the capacitive touch sensor pads on the QT Py. A copper foil decoration on the base allows me to turn the lamp on and off and change modes just by tapping it with my toe.

This guide uses version 14.4 of WLED.

![](https://cdn-learn.adafruit.com/assets/assets/000/131/633/medium800/led_strips_finished.jpeg?1722285260)

## Materials

Adafruit sells two different controllers that will run WLED: the [Feather Huzzah](https://www.adafruit.com/product/2821) and the [QT Py Pico](https://www.adafruit.com/product/5395). The QT Py is a little smaller and a little less expensive, so that's the one I chose for this project.

### Adafruit QT Py ESP32 Pico - WiFi Dev Board with STEMMA QT

[Adafruit QT Py ESP32 Pico - WiFi Dev Board with STEMMA QT](https://www.adafruit.com/product/5395)
This dev board is like when you're watching a super-hero movie and the protagonist shows up in a totally amazing costume in the third act and you're like 'OMG! That's the hero and they're here to kick some serious butt!" but in this case its a...

In Stock
[Buy Now](https://www.adafruit.com/product/5395)
[Related Guides to the Product](https://learn.adafruit.com/products/5395/guides)
![Angled shot of purple square-shaped microcontroller.](https://cdn-shop.adafruit.com/640x480/5395-00.jpg)

NeoPixel lights come in many different shapes, sizes, and densities. For this lamp I chose 60/m NeoPixels, but WLED will work with any of the types that Adafruit sells. The higher density 144/m pixels would also look great with this project. There are also side-light, dual sided, seed pixels and more -- take a look around the shop to find the lights you like best.

### Adafruit NeoPixel Digital RGB LED Strip - White 60 LED

[Adafruit NeoPixel Digital RGB LED Strip - White 60 LED](https://www.adafruit.com/product/1138)
You thought it couldn't get better than [our world-famous 32-LED-per-meter Digital LED strip](http://adafruit.com/products/306) but we will prove you wrong! You wanted **twice the LEDs**? We got it (well, its 1.875 times as many but that's within a margin of...

Out of Stock
[Buy Now](https://www.adafruit.com/product/1138)
[Related Guides to the Product](https://learn.adafruit.com/products/1138/guides)
![Adafruit NeoPixel Digital RGB LED Strip reel wired to a microcontroller, with all the LEDs in a rainbow](https://cdn-shop.adafruit.com/640x480/1138-00.jpg)

I'm using copper foil tape for the capacitive touch switch. This can be cut into shape by hand or with a Cricut vinyl cutter and will function as a decorative toe switch for turning the lamp on and off, and changing modes.

### Copper Foil Sheet with Conductive Adhesive - 12" x12" Sheet

[Copper Foil Sheet with Conductive Adhesive - 12" x12" Sheet](https://www.adafruit.com/product/4607)
Copper sheet can be an interesting addition to your toolbox. The sheet itself is made of thin pure copper so its extremely flexible and can take on nearly any shape. You can easily solder to it, and the material itself can carry current just like a wire. On the back is an electrically...

In Stock
[Buy Now](https://www.adafruit.com/product/4607)
[Related Guides to the Product](https://learn.adafruit.com/products/4607/guides)
![Thin Copper Foil Sheet with Conductive Adhesive](https://cdn-shop.adafruit.com/640x480/4607-00.jpg)

### 5V 2A (2000mA) switching power supply - UL Listed

[5V 2A (2000mA) switching power supply - UL Listed](https://www.adafruit.com/product/276)
This is an FCC/CE certified and UL listed power supply. Need a lot of 5V power? This switching supply gives a clean regulated 5V output at up to 2000mA. 110 or 240 input, so it works in any country. The plugs are "US 2-prong" style so you may need a plug adapter, but you can pick one...

In Stock
[Buy Now](https://www.adafruit.com/product/276)
[Related Guides to the Product](https://learn.adafruit.com/products/276/guides)
![Angled shot of power supply.](https://cdn-shop.adafruit.com/640x480/276-06.jpg)

You'll also need some silicone wire in 3 different colors, and it's helpful to have some clear heat shrink to seal the ends of the LED strip.&nbsp;

A Screw Terminal is useful to connect the bare wires to the power supply without needing more solder joints. It's also perfectly OK to cut the cable and solder the wires directly to your lamp.

### Part: Screw Terminal
quantity: 1
Female DC Power adapter - 2.1mm jack to screw terminal block
[Screw Terminal](https://www.adafruit.com/product/368)

### Part: Silicone Stranded Wire
quantity: 3
Silicone Stranded Wire in Various Colors
[Silicone Stranded Wire](https://www.adafruit.com/product/2003)

### Part: Clear Heat Shrink
quantity: 1
3/4" Clear Heat Shrink
[Clear Heat Shrink](https://www.adafruit.com/product/1020)

## Additional Materials
I used a hot wheels track from Amazon to make the spiral support for my LEDs.&nbsp;

- [Hot Wheels Track](https://a.co/d/c0vXwXn)
- [Plastic Primer](https://a.co/d/8MsxLrX)
- [Metallic Top Coat](https://a.co/d/gR1oau7)

![led_strips_hotwheels.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/536/medium640/led_strips_hotwheels.jpg?1722016538)

You'll also need a piece of wood or other heavy thing for the base of the lamp, and a pole for the arm. I used a hollow steel tube I found in my garage, but a wooden dowel or PVC pipe would work just as well.

## Tools

- Soldering iron & accessories
- Hot glue gun
- Screws & screwdriver
- Drill with small drill bits and large spade bit
- Silicone caulk & caulking gun

# Floor Lamp with NeoPixels and WLED Custom Animations

## Wiring Diagram

![](https://cdn-learn.adafruit.com/assets/assets/000/134/258/medium800/led_strips_floorlamp_wiring2_bb.jpg?1734731194)

- QT Py A0 --\> NeoPixel IN
- QT Py 5v --\> NeoPixel 5v & Screw terminal +
- QT Py G --\> NeoPixel G & Screw terminal G
- QT Py A2 --\> wire for capacitive touch

# Floor Lamp with NeoPixels and WLED Custom Animations

## WLED Software

## Board Choices

WLED runs on several different boards in Adafruit's collection. There are different benefits to each, but the installation process is largely the same. This page contains instructions for multiple boards -- be sure to use the pinouts and installation instructions for the one you're using,

**Sparkle Motion**

This is our flagship ESP32 board, designed with WLED and Xlights in mind. It has 4 outputs and is set up to drive either 5v, 12v or 24v pixels. It's a workhorse of a board and for larger projects it's the clear winner. It has an onboard microphone for instant sound-reactive support, and an IR sensor built in, to make it easy to control your project with an infrared remote. It also has a couple stemma ports so you can add your own sensors or peripherals.

**Sparkle Motion Mini**

The Sparkle Motion Mini is a smaller version of the Sparkle Motion board. It has two LED outputs, a microphone, and two stemma ports that make it easy to add an IR sensor or other peripherals. It's got an onboard NeoPixel and a small footprint, making it perfect for wearables or smaller projects. It will power a whole lot of pixels through the onboard USB port: it's safe to draw up to 4A through this port, giving you plenty of power for most wearable projects.

Info: For Sparkle Motion Mini use at least the 0.15.1 release of WLED.

 **QT Py Pico ESP32**

The [QT Py Pico](https://www.adafruit.com/product/5395) is small and affordable, so usually my go-to for smaller costumes or wearables. It also has a range of BFF add-on boards that add functionality.&nbsp;[Here's a guide with more QT Py info](https://learn.adafruit.com/adafruit-qt-py-esp32-pico/overview). The QT Py will drive up to around 30 pixels through the onboard USB port, so if you have more LEDs than that you may want to consider the Sparkle Motion Mini instead, or you can power the board through the +5v pin.

Note: WLED works on the QT Py Pico but NOT on the S2 or S3 versions, at the time of writing.

**Feather Huzzah ESP32&nbsp;**

The [Feather Huzzah ESP32](https://www.adafruit.com/product/3405) the top of the line. It's a great choice for projects where you want to add sensors, interaction, or drive a whole lot of LEDs. It's the most reliable as well -- I've run these for two months straight with no power cycling and they just keep on truckin. Adafruit has a very wide selection of Feather Wing boards that connect to the Feather microcontroller line. The sky is the limit with these boards.

It also comes in a version with a high-powered WiFi range extender! If you're trying to sync multiple instances across distance, check this one out. [Feather Huzzah ESP32 V2 w.FL Antenna](https://www.adafruit.com/product/5438)

**Feather Huzzah ESP8266**

The [Feather Huzzah ESP8266](https://www.adafruit.com/product/2821) will run WLED as well, but won't drive as many pixels: the ESP32 limit on WLED is around 1000 pixels per input, but the ESP8266 tops out at around 500. It's about $5 cheaper though, so for smaller projects it's a great way to save a little money and still have access to all the Featherwing options in the Adafruit store.

## Driver Update

Some versions of our controllers have a new serial chip which needs a driver installed before we can install WLED. Head over to our&nbsp;[How to Install Drivers for WCH USB to Serial Chips](https://learn.adafruit.com/how-to-install-drivers-for-wch-usb-to-serial-chips) tutorial, and download and install the new driver.

If you have an older QT Py with CP2102 USB-to-Serial bridge, [use SiLabs’ driver instead](https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers?tab=downloads).

&nbsp;

## Install WLED

These next steps require a **_Web Serial_-compatible browser**. As of this writing, that means **Google&nbsp;Chrome** , **Microsoft&nbsp;Edge** or **Opera** ,or **Firefox** “desktop” browsers. Other browsers (Safari, Explorer and&nbsp;_anything_ mobile) won’t work.

Visit [https://install.wled.me/](https://install.wled.me/)

Plug your microcontroller into your computer with a known good USB cable. Click "Install" and select the port for your board.

Depending on the USB-to-serial bridge chip on the board, you might see one _or two_ serial ports. On Mac, for instance, there might be both “/dev/cu.usbmodem[number]” _and_ “/dev/cu.wchusbserial[number]”. Use the “ **wchusbserial** ” one.

![adafruit_products_Install_WLED.jpg](https://cdn-learn.adafruit.com/assets/assets/000/115/287/medium640/adafruit_products_Install_WLED.jpg?1663802069)

After successful installation, enter your WiFi network name and password when prompted. This must be a **2.4 GHz** WiFi network; ESP32 does not support 5 GHz networks. If it can’t connect, then as a fallback WLED will create its own 2.4 GHz WiFi access point.

![led_strips_Install_WLED.jpg](https://cdn-learn.adafruit.com/assets/assets/000/134/601/medium640/led_strips_Install_WLED.jpg?1737574345)

Danger: Sometimes the "Connect to Wi-Fi" prompt doesn't show up. Don't panic, just see the step below on connecting your computer or mobile device to the WLED-AP access point created on the microcontroller itself!

If you don't see the "Connect to Wi-Fi" prompt, you'll need to set up your WiFi network using AP (access point) mode.&nbsp;Open up your WiFi settings and look for a WiFi network called&nbsp;`WLED-AP`. (Note, this access point can take up to 30 seconds to appear sometimes.) Connect to this network&nbsp;using the default password&nbsp;`wled1234`. The WLED interface will pop up in its own captive browser window.

From here, go into **Config/Wifi Settings** and enter your WiFi credentials for the access point you normally use near the top.

Give your project a name in the mDNS field a little further down the page. Now you can type in "projectname.local" (where "projectname" is your mDNS name) into any web browser on the same wifi network to access your microcontroller.

You can also scan the QR code below to open access point mode.&nbsp;

For more help and troubleshooting tips visit the [Getting Started page on the WLED knowledge base.](https://kno.wled.ge/basics/getting-started/)

![led_strips_install_no_wifi.jpg](https://cdn-learn.adafruit.com/assets/assets/000/134/597/medium640/led_strips_install_no_wifi.jpg?1737574050)

![](https://cdn-learn.adafruit.com/assets/assets/000/136/104/medium640/led_strips_Screenshot_2025-03-31_at_9.39.02%E2%80%AFAM.jpg?1743439611)

![led_strips_WLED_wifi_settings.jpg](https://cdn-learn.adafruit.com/assets/assets/000/134/598/medium640/led_strips_WLED_wifi_settings.jpg?1737574103)

![](https://cdn-learn.adafruit.com/assets/assets/000/134/599/medium800/led_strips_WLED-QR-Connect-WB.png?1737574151)

## Setup & Preferences
### WiFi&nbsp;Setup

Head to the **WiFi Setup** screen under Config and create a good URL so you can control your project from any web-enabled device. Call it something you'll remember, that's easy to type into any web browser on your WiFi network in order to connect to your project.

In Safari or Chrome on your phone or computer, type in this web address to access the WLED interface: [http://projectname.local](http://projectname.local)&nbsp; (where "projectname" is whatever you put into this field).

Check out the Additional Settings page for more info on accessing your project. WLED has an "access point mode" that doesn't require a WiFi network for when you're out on the go. It's also helpful to download one of the WLED apps to help manage and organize your projects.

![adafruit_products_wled_config.jpg](https://cdn-learn.adafruit.com/assets/assets/000/115/288/medium640/adafruit_products_wled_config.jpg?1663802411)

![led_strips_adafruit_products_WiFi_Settings_generic.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/679/medium640/led_strips_adafruit_products_WiFi_Settings_generic.jpg?1722624553)

### LED Preferences

Next, head to the **LED Preferences** tab under the Config menu.

Scroll down to&nbsp; **Hardware Setup**. Put your total number of LEDs into the "Length" field, and change GPIO to the pin number associated with the pin you soldered to. Check the pinout diagram for the board you're using (it's the number in yellow).

- [Sparkle Motion Pinout](https://learn.adafruit.com/adafruit-sparkle-motion)
- [Sparkle Motion Mini Pinout](https://learn.adafruit.com/adafruit-sparkle-motion-mini/overview)
- [QT Py Pico Pinout](https://learn.adafruit.com/assets/112309)&nbsp;
- [Feather Huzzah ESP8266 Pinout](https://learn.adafruit.com/assets/46249)&nbsp;
- [Feather Huzzah ESP32 Pinout](https://learn.adafruit.com/adafruit-huzzah32-esp32-feather/pinouts)

![led_strips_led_settings.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/680/medium640/led_strips_led_settings.jpg?1722624626)

## Use It
![adafruit_products_WLED_interface.jpg](https://cdn-learn.adafruit.com/assets/assets/000/115/394/medium800/adafruit_products_WLED_interface.jpg?1667150591)

Now you can use any computer or handheld device to control your LEDs.&nbsp;

Make sure your device is on the same WiFi network as your board. Navigate to your custom URL (projectname.local/ ) in a web browser. You'll see a color picker above a whole bunch of color palette choices.

Choose a color, choose an effect, and watch your lights animate and glow!

Save your favorite combinations as presets, create playlists, control the speed and intensity of the animations, and lots more. This web app is incredibly intuitive and easy to use.

Head over to the WLED wiki at [https://kno.wled.ge/](https://kno.wled.ge/) to delve into all the particulars.

# Floor Lamp with NeoPixels and WLED Custom Animations

## Electronics Assembly

Cut a red and black wire and strip off a little shielding. Screw the red wire into the + terminal and the black wire into the - terminal.

I like to cover these terminals with heat shrink filled with hot glue to hold the wires in place (once I'm sure everything is working.)

![led_strips_04_screwterminal.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/134/259/medium640/led_strips_04_screwterminal.jpeg?1734731588)

![led_strips_08_screwterminal_covered.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/134/260/medium640/led_strips_08_screwterminal_covered.jpeg?1734731651)

Solder four wires to the QT Py:

- Red to **+5v**
- Black to **G**
- White to **A0**
- Yellow to **A2**

The red, black, and white wires will connect to the NeoPixels:

- Red to **+5v**
- Black to **G**
- White to **DI** (data IN)

![led_strips_06_assembled.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/134/261/medium640/led_strips_06_assembled.jpeg?1734731801)

Info: One end of the NeoPixel Strip is Data Out, the other Data In. Be sure to connect to Data In which might be labeled DI or have a triangle pointing into the strip. The Data Out Pin (DO or triangle pointed out the end) will not work.

Strip a little shielding off the end of the yellow wire but don't connect it to anything yet. This will become our capacitive touch switch.

Once you've got the software installed, plug in the QT Py to power via the onboard USB-C port. Your lights should come on in a soft yellow color.

## Troubleshooting

If the lights don't come on, here are a couple things to try:

1. Be sure you soldered to the correct end of the LED strip. These strips are directional, and won't work if you connect the data wire to the wrong end. [More about how to solder NeoPixels here](https://learn.adafruit.com/make-it-glow-how-to-solder-neopixels-a-beginners-guide)
2. Open the WLED software and go to the LED Settings page. Make sure you have the correct pin (GPIO) entered here. Find this out in the&nbsp;[pinout diagram in the QT PY guide](https://learn.adafruit.com/assets/112309)).
3. If it's still not working, head over to the [NeoPixel Uberguide](https://learn.adafruit.com/adafruit-neopixel-uberguide) and try uploading some basic code, just to see whether the problem is with your wiring or with the software. If you can get the lights to come on using Arduino or CircuitPython, the trouble is with the software -- try reinstalling.

Once your lights are working, seal the end up with a piece of clear heat shrink. I like to squirt a little hot glue in before I shrink it down, so the solder joints are fully encased in plastic and won't pull out.

![led_strips_08_sealed.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/134/262/medium640/led_strips_08_sealed.jpeg?1734731868)

# Floor Lamp with NeoPixels and WLED Custom Animations

## Create Presets

### Animation Presets

Once your lights are working, it's time for the fun part: creating light animations using WLED presets. This is easy and intuitive in WLED. Choose a color palette and an effect, then play with the sliders at the bottom of the Effect Mode column to customize the effect.

When you find something you like, click the +Preset button in the Presets tab and give your preset a name, then save it. You can reorder them using the "Save to ID" field.&nbsp;

You can create hundreds of presets using the preprogrammed effects, so take some time to play around and see what looks good on your LED strip.

![](https://cdn-learn.adafruit.com/assets/assets/000/131/540/medium800/led_strips_setup_presets.jpg?1722023074)

Create at least 3 presets, and be sure they are saved to ID numbers 1-3. Our next step will be to set up the capacitive touch switch to toggle between these presets.&nbsp;

## Control Presets

The WLED preset interface can also be used to send control commands to the LED strip. The capacitive touch switch can be used for a wide variety of functions: change modes, change brightness, toggle the lights on and off, or a whole host of other features.&nbsp;

Each button in WLED has 3 options: a short press, a long press, or a double press. I want my lamp to cycle through presets with a short touch, and to turn on or off with a long touch. Here's how I set up a control preset for each of these features.

### Cycle through Presets
Click +Preset and then uncheck the "Use current state" checkbox. This will open up an API command window within the preset module.

Call the effect "Next\_FX" and type {"ps":"1~3~"} into the API command box. This tells WLED to cycle through presets 1-3. If you'd like to cycle through more presets, change the 3 to the number of presets you have.&nbsp;

Be sure your preset IDs include all the numbers -- skipping a number will break this command.

Give your preset an ID number that's above the range of your preset numbers -- I called mine 9.&nbsp;

![led_strips_presets_next_fx.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/545/medium640/led_strips_presets_next_fx.jpg?1722024741)

### Toggle On/Off
Create another preset and call it "Toggle". Uncheck the "use current state" checkbox and enter **T=2** into the API command box. This will tell the LEDs to toggle between on and off. Save this one to ID 10.

![led_strips_presets_toggle.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/546/medium640/led_strips_presets_toggle.jpg?1722024787)

On the next page we'll connect these control presets to our capacitive touch button.

Find out more about creating these control presets here:&nbsp;

[https://kno.wled.ge/features/presets/](https://kno.wled.ge/features/presets/)

You can enter either JSON commands or HTTP commands into this command box, giving you a lot of control over your WLED project.&nbsp;

[https://kno.wled.ge/interfaces/json-api/](https://kno.wled.ge/interfaces/json-api/)

# Floor Lamp with NeoPixels and WLED Custom Animations

## Capacitive Touch Button

I soldered my capacitive touch wire to pin **A2** , which is also known as **GPIO 27** (see the [QT Py Pico pinout diagram](https://learn.adafruit.com/assets/112309), it's the number in yellow).

In the LED Settings screen, scroll to the button setup section and set button 0 to use pin 27, with the type set as "touch".

![led_strips_button_setup1.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/541/medium640/led_strips_button_setup1.jpg?1722023244)

Next, head to the Time & Macros config screen. Scroll down to the Button actions area.&nbsp;

For button 0, enter the number assigned to the two control presets you made on the last page. My Next\_FX preset is number 9, so I entered 9 under "short press", and my Toggle preset is number 10, so I've got that set up as a "long press".&nbsp;

![led_strips_macros.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/542/medium640/led_strips_macros.jpg?1722023424)

![led_strips_button_actions.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/543/medium640/led_strips_button_actions.jpg?1722023557)

Test your setup by stripping a bit of shielding off the end of your capacitive touch wire and touching the bare wire. You should see your LED strip scrolling through presets with a short touch, and the strip turning on and off with a longer touch.

If your strip is not reacting the way you expect, here are a few things to try:

1. Try touching the copper pad on the board instead of the wire. If it works when you do that, change the Touch Threshold number on the LED settings page until the sensitivity is right. With a 5" wire I found that a threshold of 52 seems to work well.
2. Double check both the LED preferences page and the Time & Macros page to be sure your settings are correct, and have saved.
3. Be sure your presets are correctly numbered. WLED gets confused if the presets have non-sequential IDs (so make sure they're numbered 1, 2, 3 rather than 2, 5, 7).
4. Try soldering to a different GPIO pin, and make sure to update the pin number in LED Preferences. I originally soldered to A1, but there was a short or some interference from A0 so giving a little space between the soldered wires on the board seemed to help.

# Floor Lamp with NeoPixels and WLED Custom Animations

## Build the Lamp

I used a scrap piece of wood that is around 10" square and 7/8" thick for my lamp. I used a spade bit to drill a hole in the center. My lamp arm is made of steel and has a screw mount inside one end, so all I need is a way to secure it to the base and I can screw it together from underneath.

I added some EVA foam rubber feet to the bottom of the base, so there's room for the cord underneath.&nbsp;

I ended up drilling a second hole (not shown) next to the center hole for the USB cord to come through. I did it after the lamp was built, but this would have been a better moment.

![led_strips_base_countersink.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/548/medium640/led_strips_base_countersink.jpeg?1722035262)

![led_strips_base_feet.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/550/medium640/led_strips_base_feet.jpeg?1722035433)

I drilled three holes in my steel lamp arm: one at the top, middle, and bottom to attach the track to the arm with screws.

![led_strips_base_drill.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/551/medium640/led_strips_base_drill.jpeg?1722035450)

Sand the track lightly to help with paint adhesion. Paint really doesn't want to stick to this stuff! I had the most success when I started with a plastic primer spray paint and then did a few top coats of metallic black.

![led_strips_sand.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/632/medium640/led_strips_sand.jpg?1722280647)

I screwed my lamp arm to the base, and did a test-fit with the track to be sure my screw holes were in the right places. This took a little trial and error but I'm happy with the result.

I took the track back off again to mount the LEDs and diffusion gems.

![led_strips_base_tracked.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/552/medium640/led_strips_base_tracked.jpeg?1722035691)

For diffusion, I'm using these [plastic crystals from Amazon](https://a.co/d/2aIy971). They are fairly lightweight and have an interesting texture. I'd considered using glass pebbles but they'd likely be too heavy and pull the track out of shape. These crystals are perfect. I ordered the 16x22mm size. One bag was the perfect amount for my 5' track.

![led_strips_crystals.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/553/medium640/led_strips_crystals.jpg?1722035872)

I used clear silicone caulk to fix the LED strip and gems to the track. It will stick to the silicone casing around the LED strip, and also give me a firm setting for the gems. It dries clear, so won't block the light.

This brand takes 5-7 days to fully dry, but I had a decent hold after 24 hours and was able to assemble the lamp by moving carefully.

![led_strips_glue.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/622/medium640/led_strips_glue.jpg?1722275527)

I pressed the LED strip into the caulk, then added more on the top and pressed the gems firmly on top, making sure they were all stuck down. Be generous -- really goop it on there.

These gems make a truly wonderful diffusion material. I can't spot individual lights at all.

![led_strips_gems_on.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/623/medium640/led_strips_gems_on.jpeg?1722275828)

Once the caulk was dry (enough), I screwed the track back onto the rod at the top, bottom, and middle. I had to do a little adjusting because a fully loaded track weighs quite a bit more than the empty track weighed, but it worked out well in the end.

![led_strips_screwed.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/624/medium640/led_strips_screwed.jpeg?1722276020)

I put a large piece of black heat shrink over the QT Py to keep it from shorting, and also to hide it from view. I hot glued it to the back of the track near the lamp base, with the capacitive touch wire and USB port facing down.&nbsp;

![led_strips_heatshrink.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/629/medium640/led_strips_heatshrink.jpeg?1722276697)

For the capacitive touch sensor I decided to use copper tape. I cut some pretty shapes out of a copper tape sheet using my Cricut vinyl cutter. I chose the Adhesive Foil setting and cut one large starflower to use as the main button, and a few more smaller ones just for decoration.

![led_strips_cricut_mat.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/625/medium640/led_strips_cricut_mat.jpeg?1722276263)

![led_strips_cricut_foil.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/626/medium640/led_strips_cricut_foil.jpg?1722276291)

I stuck the big star to the lamp base with the capacitive touch wire underneath, pressing down firmly and smoothing with a straight edge to get a good electrical connection.&nbsp;

I tested touching it with my toe and it works to control the lamp, even through my socks!

![led_strips_starflower.jpg](https://cdn-learn.adafruit.com/assets/assets/000/131/627/medium640/led_strips_starflower.jpg?1722276487)

![led_strips_captouch.jpeg](https://cdn-learn.adafruit.com/assets/assets/000/131/628/medium640/led_strips_captouch.jpeg?1722276576)

Info: Capacitive Touch Trigger Warning

My original idea had been to hook the capacitive touch wire up to the metal pole so I could touch the lamp anywhere on the stem and control it. However, the amount of metal in the pole was just too much for my microcontroller. The current fried the QT Py (not once, but twice!). This may be fixable with a resistor, but the copper foil method works just as well and after being burned twice, I didn't want to keep experimenting.

![](https://cdn-learn.adafruit.com/assets/assets/000/131/631/medium800/led_strips_finished.jpeg?1722277111)


## Featured Products

### Adafruit QT Py ESP32 Pico - WiFi Dev Board with STEMMA QT

[Adafruit QT Py ESP32 Pico - WiFi Dev Board with STEMMA QT](https://www.adafruit.com/product/5395)
This dev board is like when you're watching a super-hero movie and the protagonist shows up in a totally amazing costume in the third act and you're like 'OMG! That's the hero and they're here to kick some serious butt!" but in this case its a...

In Stock
[Buy Now](https://www.adafruit.com/product/5395)
[Related Guides to the Product](https://learn.adafruit.com/products/5395/guides)
### Adafruit NeoPixel Digital RGB LED Strip - White 60 LED

[Adafruit NeoPixel Digital RGB LED Strip - White 60 LED](https://www.adafruit.com/product/1138)
You thought it couldn't get better than [our world-famous 32-LED-per-meter Digital LED strip](http://adafruit.com/products/306) but we will prove you wrong! You wanted **twice the LEDs**? We got it (well, its 1.875 times as many but that's within a margin of...

Out of Stock
[Buy Now](https://www.adafruit.com/product/1138)
[Related Guides to the Product](https://learn.adafruit.com/products/1138/guides)
### Vertical Wall Power Supply with USB C - 5V 3A Output and Switch

[Vertical Wall Power Supply with USB C - 5V 3A Output and Switch](https://www.adafruit.com/product/5801)
We love the Raspberry Pi 4 and 5, with their fancy new USB Type C power connectors. Now we have an even&nbsp;_better_&nbsp;power supply that can be used with either Pi 4 or even a Pi 5 with 5V output, 3A of current to handle builds with accessories and displays. The vertical-style plug...

In Stock
[Buy Now](https://www.adafruit.com/product/5801)
[Related Guides to the Product](https://learn.adafruit.com/products/5801/guides)
### Silicone Cover Stranded-Core Wire - 2m 30AWG Black

[Silicone Cover Stranded-Core Wire - 2m 30AWG Black](https://www.adafruit.com/product/2003)
Silicone-sheathing wire is super-flexible and soft, and its also strong! Able to handle up to 200°C and up to 600V, it will do when PVC covered wire wimps out. We like this wire for being extremely supple and flexible, so it is great for wearables or projects where the wire-harness has to...

In Stock
[Buy Now](https://www.adafruit.com/product/2003)
[Related Guides to the Product](https://learn.adafruit.com/products/2003/guides)
### Food-Grade Heat Shrink - 3/8" diameter 12" long

[Food-Grade Heat Shrink - 3/8" diameter 12" long](https://www.adafruit.com/product/1020)
We decided to stock this food-safe heat shrink specifically for people who were building beer-brewing or sous-vide projects using our [waterproof DS18B20+ digital temperature sensors](http://www.adafruit.com/products/381). This heat shrink is FDA Compliant for contact with food. The...

In Stock
[Buy Now](https://www.adafruit.com/product/1020)
[Related Guides to the Product](https://learn.adafruit.com/products/1020/guides)
### Copper Foil Sheet with Conductive Adhesive - 12" x12" Sheet

[Copper Foil Sheet with Conductive Adhesive - 12" x12" Sheet](https://www.adafruit.com/product/4607)
Copper sheet can be an interesting addition to your toolbox. The sheet itself is made of thin pure copper so its extremely flexible and can take on nearly any shape. You can easily solder to it, and the material itself can carry current just like a wire. On the back is an electrically...

In Stock
[Buy Now](https://www.adafruit.com/product/4607)
[Related Guides to the Product](https://learn.adafruit.com/products/4607/guides)

## Related Guides

- [Adafruit QT Py ESP32 Pico](https://learn.adafruit.com/adafruit-qt-py-esp32-pico.md)
- [No-Code IoT CO2 "Canary In a Coalmine"](https://learn.adafruit.com/iot-canary.md)
- [Icicle Crown with Pebble Pixels & WLED](https://learn.adafruit.com/icicle-crown-with-pebble-pixels-wled.md)
- [CircuitPython on ESP32 Quick Start](https://learn.adafruit.com/circuitpython-with-esp32-quick-start.md)
- [How To Install Drivers for WCH CH34X / CH340 / CH341 / CH342 / CH343 / CH344 / CH346 / CH347 / CH9101 / CH9102 / CH9103 / CH9104 / CH9111 / CH9114 / CH9143 USB to Serial Chips](https://learn.adafruit.com/how-to-install-drivers-for-wch-usb-to-serial-chips-ch9102f-ch9102.md)
- [WiFi Jellyfish Lantern with WLED](https://learn.adafruit.com/wifi-jellyfish-lantern-with-wled.md)
- [Sound Reactive LED Top Hat](https://learn.adafruit.com/sound-reactive-led-top-hat.md)
- [Wireless Control Button for WLED Projects](https://learn.adafruit.com/wireless-control-button-for-wled-projects.md)
- [EPCOT Spaceship Earth with WLED](https://learn.adafruit.com/epcot-spaceship-earth-with-wled.md)
- [Light-Up Costumes in Harsh Environments](https://learn.adafruit.com/light-up-costumes-in-harsh-environments.md)
- [Video Nub Shank: ESP32 QT Py Composite Video Injector](https://learn.adafruit.com/video-nub-shank-esp32-qt-py-composite-video-injector.md)
- [Fog Machine with Motion Sensor and Adafruit IO](https://learn.adafruit.com/fog-machine-remote-trigger.md)
- [NeoPixel Remote: IR Control with WLED](https://learn.adafruit.com/neopixel-remote-ir-control-with-wled.md)
- [Jellyfish Umbrella with easy WLED WiFi Control](https://learn.adafruit.com/jellyfish-umbrella-with-easy-wled-wifi-control.md)
- [NeoPixel Star Crown with WLED](https://learn.adafruit.com/neopixel-star-crown-with-wled.md)
