I like tinkering on tech projects, but I don't know much about electronics and hardware. I know enough to assemble a computer and debug simple hardware problems - but I am incapable of doing custom electronics. I want a new fun project that I could use to broaden my knowledge of electronics. While I still don't know what that project is going to be, I decided to start by playing with some LED lights because they're fun and visual.
I stocked up on various components that work with my Raspberry Pi 3. For those who are uninitiated, the Raspberry Pi 3 is a $35 computer that's about the size of a deck of cards. It's designed to be very extendable, so capable tinkerers can use it for things like robotics, smart home accessories, etc. I used the Raspberry Pi for the machine-learning traffic camera project about a year ago. For starters, my goal was to get a single matrix of LED lights working. To do this, I needed the following components:
I felt like I was in over my head when I discovered that everything wasn't pre-soldered for me. I've never soldered before, despite actually owning my own soldering iron. The first few minutes of soldering went very poorly, but I eventually got the hang of it. I made a few newbie mistakes with the soldering; for example, I soldered one of the connectors backward - so I needed to use a razor to shave a part of the plug down so it could fit into the backward connector.
After taking care of all the hardware, I booted up the Raspberry Pi and installed some software to drive the LEDs. I used an open-source software library that appears to be the go-to standard for these types of LED projects. This software should enable me to show any arbitrary image/animation on the LEDs. Plus, it comes with a few built-in examples that are good for testing the hardware; one of which is a spinning multi-colored square.
Initially, I was thrilled because the LED display sprang to life on my first attempt to run the example. But, then I realized that the screen was really only showing the color red - no blue and only a tiny bit of green. I was stuck debugging this problem for a few frustrating nights. I fiddled a bunch with the software, I tried every capable power cord in our apartment, I resoldered every connection, I even soldered a custom jumper wire between two pins (I read online that this customization improves LED performance) - but none of these things fixed the problem. I spent some time poking at the board using a multimeter when I finally realized that the wires leading to the LED matrix were carrying a lot less power than they should have been. I used the multimeter to connect the 5V input directly to the LED display, and to my amazement, the lights started glowing with the full spectrum of color. There must have been a defect with the RGB Matrix HAT (or more likely, I must have broken the HAT while soldering). To fix it, I soldered a jumper between the 5V input and the connector that leads to the LED matrix. I have a feeling a skilled electrical engineer would have found a more elegant fix to this problem - but I was pretty proud that I found any fix to the problem.
This was a super rewarding starter project for someone looking to learn a bit about electronics. I'm especially excited about this because there's a lot that can be done from here. These LED panels can be daisy-chained together to make a bigger display, plus I can program the panels to display just about anything. I already have a few ideas for the next steps - but I will keep those to myself for now.