Chargers for rechargeable batteries aren’t known for being aesthetically pleasing. They’re usually pretty boring to look at, and you have to plug in each of your precious NiMH cells tediously. However, that doesn’t have to be the case, as one industrious RPi maker has proven. Let me introduce you to SPINC, an attractive Raspberry Pi Pico-driven retro style desk clock that is also an automatically-fed NiH battery charger.
5 ways to program your Raspberry Pi Pico
There are several ways to program a Raspberry Pi Pico, from basic command-line programming to using a complete IDE.
All about SPINC, the most attractive battery charger you’ve ever seen
Maximilian Kern, or Max.K as he’s known online, develops electronic products both professionally and as a hobby. He came up with the idea for an open-source self-loading battery charger that looks so great you won’t want to hide it away in a desk drawer between uses.
He developed the charger to be enclosed within an attractive desk clock, which displays the date and time on a monochrome LCD. To use it, you drop your NiMH AA battery into the top, and SPINC does the rest. You don’t even have to worry about inserting the battery in the wrong orientation, as it includes automatic polarity correction.
Once the battery is fully charged, the mechanism ejects it and loads the next one to continue charging. A handy output tray holds the batteries until you remove them. The charger can hold up to seven AA batteries for easy access.
SPINC doesn’t just mindlessly charge your batteries. When you insert a battery, it tests it to ensure it’s a NiMH AA battery and checks for the proper polarity. If you insert a regular alkaline battery, which can’t be recharged, SPINC picks up on that and ejects the cell into the output tray.
The desk clock display does more than show you the date and time. SPINC monitors the voltage, temperature, and charge time for your batteries. It displays this information on the same monochrome LCD used for the time and date.
Building your own desk clock battery charger
Max.K provides all the information and design files needed to build your own desk clock battery charger. On the project’s GitHub page, you’ll find the PCB layout files, 3D print STL files, and necessary code for the Raspberry Pi Pico RP2040 microcontroller.
One fantastic benefit of 3D printing the enclosure is that you aren’t locked into the colors Max.K uses in his own SPINC. You can use the color filament you prefer, even using multiple colors. Using the included STL files, you can quickly create your own color scheme for the pieces.
Other than the files included in the GitHub download, here’s a list of what you’ll need to build your own fancy desk clock that can also recharge your NiMH batteries.
|
Component |
Quantity |
|---|---|
|
Custom PCB |
1 |
|
Raspberry Pi RP2040 microcontroller |
1 |
|
DS2712 charging controller |
1 |
|
DMHC3025LSD H-bridge IC |
1 |
|
EMAX ES08A micro servo |
1 |
|
Sharp LS027B7DH01A |
1 |
|
M3x5 screws |
2 |
|
3D-printed parts |
1 |
You can often order the PCB fully assembled from a source like PCBWay, including the RP2040, DS2712, H-bridge IC, and all other electronic components. That way, you don’t need to solder the components and can get to the final assembly. If you don’t have access to a 3D printer, places like PCBWay also offer 3D printing services.
You can download all the design files you need by going to the GitHub repository for the SPINC clock/charger.
5 Raspberry Pi projects you can wear
Take your Raspberry Pi everywhere you go - literally.
How the components work together
In this project, the DS2712 controls the charging and monitors the batteries to ensure they don’t overheat or get overcharged. Max.K’s design uses the H-bridge to switch the polarity when needed. He pointed out that the task could be done using relays as switches operated by a microcontroller. However, that solution was impractical when trying to keep the board as small as possible.
When you drop a battery into the top of it, an optical proximity sensor on the PCB triggers the micro servo to pivot up, accept the AA battery, and rotate to place it in the charging mechanism properly. Once charged, the microcontroller instructs the micro servo to rotate downwards, dropping the battery into the output tray.
The display clock is driven by LVGL for the user interface. Max.K provides the code, but you may want to edit the code to use your preferred language. Max.K is German, after all, and has coded the display to use German.
It’s a really fun project, and if I used NiMH rechargeable batteries, I’d totally jump at the chance to build it. Get started on yours today, either for yourself or as an incredibly unique gift for a friend or loved one.
