The BAPPR Keeps Your Addressable LED System Cool
![](../themes/icons/grey.gif)
We all love a nice strip or grid of addressable LEDs. It can add flair or an artistic touch to many projects, and it can make gaming computers look extra 1337. However, providing enough current to a long strip of addressable LEDs can sometimes be difficult. Often a separate voltage rail is needed to supply enough juice. At the same time, continually sending out data to animate them can often use 100% of the microcontroller’s CPU power, especially if the serial bus is being bit-banged. A crash or badly timed interrupt can leave the system in a weird state and sometimes with the LEDs not displaying the correct colours. Or you might just want to enter a power-saving mode from time to time on your main MCU? Well, the BAPPR is designed to address all of these problems.
[TheMariday] created the BAPPR and made it fully open-source. It’s a switch-mode power supply that can accept anywhere from 7 V to 17 V and converts it into a strong 5 V rail for typical addressable LEDs. It also has a “smart” mode where it monitors the data line going to the LEDs to see if there is activity. If for some reason the system stops sending data, the BAPPR can intervene and shut off the power to the LEDs, which can help prevent strange colour combinations from being displayed while the system recovers. Once data starts flowing again, power is restored and the light party can resume.
![An efficiency graph for the BAPPR. It shows that the most efficient voltage is 7V when outputting 1A, but this quickly drops off as current increases. To maintain higher efficiency when outputting more than 4A, 14V is the best input voltage to use. 10V and 17V are similar through 6A, but not as efficient as 14V.](../themes/icons/grey.gif)
This is accomplished by directly rectifying and filtering the actual data line itself. As long as it remains active, enough charge will remain on C4 to keep the output alive. While this is a very simple and effective solution, it’s possible that a system might get stuck outputting VOH and this would keep the system enabled. Adding a series coupling capacitor could be a way to change the behaviour if desired — that’s the beauty of open hardware! At the same time, it’s very simple to disable the LED system simply by outputting a low level on the data line, which allows quick and efficient power saving.
It’s easy to adjust the parameters of the “smart” mode by simply picking different values for the input resistor, storage capacitor, and draining resistor. This can either have it activate more quickly upon resumption of data, or you can increase the amount of time it waits before shutting the output off when the data line goes to zero. If you’ve got a project with lots of addressable LED strips, having local power supplies like the BAPPR allows you to increase the efficiency of the entire system by sending a higher voltage, perhaps 12 V – 18 V, to each module, reducing losses over potentially long cable runs.