Find the IN end of your LED strip. These are directional and won't work if you solder to the wrong end. Look for the arrow to indicate the direction of data flow.
On a brand new roll of lights, you'll find some wires and a female connector at the end. Cut off the connector and extend the wires a bit and then reattach it. This will keep the connector near the top of the hat instead of pressing into your forehead.
Extend the red and black wires as well and add a male connector. Using a male here instead of another female will keep you from accidentally plugging them in wrong.
Grab the male side of your connector. Solder the white wire (NeoPixel data) to a GPIO pin on the QT Py. I used A1. Solder the black wire (NeoPixel G) to the G pin.
Next, solder a female connector to your USB breakout using around 6-8" of lead wire. Red (NeoPixel V+) goes to VBUS and black (NeoPixel G) goes to G.
Plug your PDM Microphone breakout into the QT Py using the Stemma cable.
Add 8" wires to to the legs of your momentary switch. I used a black and yellow wire, but would recommend using two black wires here instead, since the button goes on the outside of the hat and the wires might show.
Solder one wire to a GPIO pin (I used A3) and the other to the G pad on the back of the QT Py's USB port.
Plug the power switch tail into the USB battery, then use the adapter to plug it into the splitter on the "charge" side. Mine is marked with a lightning bolt.
Plug the USB breakout into the other side of the USB splitter -- mine is marked with a headphones icon.
Plug the male end of the splitter into the QT Py. Flip your switch, and your lights should power up. If they did, success! Do a happy little dance. If not, check the troubleshooting section below.
One 4m reel of 60/m pixels covered about half my hat. My total length ended up being close to 7.5m long, so I needed to extend my LED strip. This is definitely possible but not that easy to do, especially since it's important to keep the LED spacing consistent for this project so the LEDs line up as well as possible in the matrix layout.
I cut the last pixel off the strip so I had a clean copper pad to work with, then slipped clear heat shrink over the pixels. I carefully made three solder bridges by tinning the pads and then heating each one until it flowed together with the other strip. I was careful to check for any shorts, then tested.
When it worked, (which wasn't the first try), I slid the heat shrink over the section and filled it up with hot glue to keep it all in place.
Power Injection
My hat has over 350 LEDs on it. I was concerned that the voltage drop across that many lights would make the ones at the top noticeably dimmer than the ones at the bottom.
However, it turns out this wasn't a problem for me. I am a pretty respectful person, by nature, so I'm keeping the brightness turned way, way down on this hat so as not to blind anyone who looks at it. With the brightness at 20% or lower, I do not see a noticeable voltage drop.
If your LEDs seem to be dimming toward the end of the strand, you can add an additional power and ground connection to the pads at the very end of the strip, and splice those wires back to the power wires coming from the USB breakout. This will solve your dimming problem. But please.. be kind, don't make me blind.
Troubleshooting
If they didn't power up, here are a few things to try:
- Plug your QT Py in directly to power with a USB cable into its port. The LEDs won't come on (they're not getting power) but you should be able to connect to the QT Py's WLED interface. If you can't connect, the trouble is with the software - try reinstalling. If you can connect, and WLED appears to be working fine, the trouble is with the wiring.
- 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
- 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 pinout diagram in the QT PY guide). I soldered to A1, so I entered 25 here.
- Try switching the two ends of the USB splitter. Mine only works in one configuration.
- Try plugging in a USB cable instead of your battery, just for testing purposes. I found that some USB batteries won't power this project at all, it just.. doesn't turn on. The one I'm using works great: USB Battery Pack
- If your lights blink or red-out, try turning down the brightness in WLED.
Text editor powered by tinymce.