Spark Powered Supply

Spark Powered Supply

It’s a 6 channel 150W variable DC power supply that can go from 0.8V to 30V and deliver nearly 10A on the main channel and do 1.23V to 30V at 3A on the other 5. Each channel is independently controllable (through a web interface or the front panel). There’s voltage and current monitoring on all channels, plus the ability to program custom voltage patterns (and even use basic logic, E.g., if channel 2 VIN < 3.5V enable channel 2 CC; set channel 2 CC 1A) via the web for testing or implementing battery charging algorithms and so on.

The thing is powered by an off the shelf 12V@10A power brick (or 4C (14.4V) Li-Po battery packs if you want a portable supply) and uses inexpensive, off the shelf switching regulator boards you can buy for under $15 on Amazon or eBay. Some of the boards require small modifications (beefing up the capacitors or protection diode), but for the price it’s an amazing system. I’ve got under $100 invented in this so far and I’ll be able to post performance graphs by the weekend!

@timb, SHIP ME THE POWER SUPPLY, NOW! :smiley:

Wow I’m so lucky…

1: Open source Iron (I have asked Avidan for more info)

  1. Open source Power supply (timb)

  2. I’m short of a logic analyser

  3. Also a monitoring/measurement tool (@peekay123 gave me one to start off)


sounds like I’m on the right track for a good toolbox. Wooohooooo :slight_smile:

Here’s a sneak peak! I’m really interested to get the power boards in tomorrow and start testing. Most of these boost, buck and buck-boost boards you see on eBay for cheap actually aren’t all that bad. They generally follow the reference design fairly closely and mistakes or problems are easy to correct. For instance, the LM2596 boards I plan on using only have 35V electrolytic caps on them, which means the 32VDC max input rating on the boards are clearly not true (it would be true of the LM2596 itself, but you should generally double your max input voltage when picking caps, transients, surges and the like). Depending on the seller, the boards may have underrated input protection diodes (generally 1A max whereas these boards can do 1.5 or better with no additional heat dissipation and 3A with a small copper heatsink).

So anyway, here’s the larger of the two cases I’m contemplating. I’ve got a smaller one but it doesn’t have vents, so I’d have to manually cut holes. The board in the foreground will be the controller board (mounted on the underside of the cover most likely). The large chip at the top is a TLC5640 16 channel LED controller, that will be used to drive the RGB LEDs (seen in the background) which will be mounted over top of the six banana jacks (five of which will also have a 5.5x2.1mm [Type M] jack mounted underneath as well so you can easily use Type M to USB Micro / USB A Female adapters or extension cables.

The mid-sized chip is a TLC5616 8-channel LED controller, which we’ll be using as a generic PWM driver by hooking each channel to a PNP transistor and running the output through a simple low-pass filter; we’ll use them to vary the voltage on these switching regulator boards (by removing the potentiometer that comes with them). That’s the real secret to the whole operation.

The smallest chip is a simple 128 step digital potentiometer we’ll be using to trim the output voltage of the 150W step-up board which feeds the 5 LM2596 step-down modules when the desired output voltage is above VIN (nominally 12V). Each LM2596 module’s input comes through a relay; in the NC position it gets VIN, if we activate the relay it’s fed from the 150W step-up board (which will max out at 32V so the buck modules can provide a max of 30V). The idea is that the step-up board will be trimmed to 2V above whichever buck module is set the highest, this will give us the greatest efficiency and the least amount of heat. Obviously this isn’t the most nominal setup, but it’s an easy and inexpensive way to get a wide range of voltage on a lot of channels.

The “main” (sixth) channel will have two separate boards: A 150W buck converter module and a 150W boost converter module. Luckily they use compatible switching controllers, so I can wire the outputs together and use a dual op-amp and two filtered PWM signals to—in essence—create a buck/boost converter.

Lastly there’s a secondary microcontroller—go on, guess which one—that handles the LED control, monitors the voltage on VIN, the voltage coming from an additional LM2596 module [which supplies power for the Core, relays, MSP430, LEDs, etc.], the primary fuse, acts as a Watchdog for the Core and has the ability to kick it over and a few other small tasks.

Not shown is a serial to parallel shift register to control the 8 relays and a parallel to serial shift register to monitor the status of the 5 Type M jacks (with the 3 leftover inputs to scan up, down and enter buttons on the front panel).

As far as the display goes, I might just use a 16x2 LCD (serial backpack) as the main interface will be web based. Though I might use a 0.96" Color OLED to spice it up.

I still need to get the current monitoring figured out, but it won’t be too bad.

Some of the particulars are subject to change, but I think you get the idea. Damn, this ended up a lot longer than I intended it to be!

It’s funny, this all stemmed from me needing a beefy power supply to run multiple USB devices at once. Originally I was going to use an ATX power supply, but this will be a lot cleaner and more versatile. I know I could have just gotten one 150W step-down board, set it to 5V and hooked 10 outputs to it, but I figured for a bit more money I’d have something really useful! I already had a ton of the parts, so all I really needed were the switching modules, a relay card and some connectors. Building a similar unit from scratch would cost around $100 I estimate, but it should be great quality supply that’ll last you a long time once you’re finished.


Your bristlebot is showing! He’s eyeing that power supply prototype in jealousy and wonder.

1 Like

So here’s all the power modules in the smaller case. If I attach the electronics to the top of the case I can make it work, I think. The issue is going to be the heat. :fire:

I’d need to drill vent holes and then add a fan. So for this I think I might use the bigger case (pictured earlier) which has vents in it already and a spot on the bottom where I can mount a fan!

The two boards on the right are the 150W boost and buck boards what will feed the primary high power output. The five smaller boards will feed the five 5.5x2.1mm jacks. The red board on the left will feed any of the smaller boards when they need an output voltage that’s above the input voltage (it’s a 100W boost board). At the top is the 8 channel relay module used to select between VIN and VBOOST as described above, plus control some other stuff.

Pretty cool stuff, I’m pleased with the quality of those 5 small boards. They’ve got 50V caps and correctly sized diodes! The soldering is iffy on a couple, but I can easily fix that. They were $2 each!

1 Like

So, I’ve gotten a chance to do some testing on these power modules! I’m very pleased with the 150W Buck Converter; going from 12V to 5V I was able to get well over an 8A output before my tiny little DC load overheated and shut itself down. It also does an admirable job of cleaning up the noise this big 12V@10A power brick throws at it, while not being very noisy itself. I plan on beefing up the input and output caps (both in voltage and uF), but other than that I think it’s a winner.

The same, sadly, can’t be said of the matching Boost Converter. It’s got very poor efficiency it seems (going from 12V to 14V is giving me an efficiency of something like 80%). I’ve got that other boost module (red PCB) that I got for the other part of the system I still need to try, hopefully that one will fare a little better.

Anyway, here’s some photos and scope captures!

150W Buck Converter Setup for Testing

Top Meter: Output Current
Bottom Meter: Input Current

Closeup View of Switching Transients (Blue = Input (12VDC); Yellow = Output (5VDC)

The lighter yellow and blue areas represent noise between 1.40 and 200MHz. Perhaps I should pass the main input (blue) through an inductor and liberally add chokes?

150W Boost Converter Setup for Testing

Keithley 197A: Output Current
Tektronix DMM4020: Input Current
Fluke 87-5: Output Voltage
Keithley 195A: Input Voltage

You need my address @timb? :slight_smile:

Don’t worry buddy, once I get the first prototype version of this going, I was thinking of whipping up a quick PCB with all the mounting holes, footprints for screw terminal blocks and all the necessary ICs including the Core. When I do that I’ll build you one and send it your way. :smiley:

Alright, so I tested the other large boost board and it seemed a bit more stable in terms of switching, but was a lot noisier (it’s only got two caps on it). After looking at the first board again, I feel I can make some simple modifications and it’ll work just fine.

I also briefly did some testing on the LM2596 boards. For $2 each (shipped via Amazon Prime, even) you literally can’t go wrong with these…

That’s 12V down to 5V. (I’m still on the fence with this 12V/10A power brick I got from Amazon for $25; 750mV ripple at 800mA seems awfully high to me.)

So, the highest I can reliably get out of these LM2596 modules (before I can literally hear the inductor whining)—with a 1x1" copper heatsink affixed and ambient cooling—is around 3A, which is above the advertised specs so I’m happy!

Tonight I should have a small writeup on controlling one (or more) of these directly from a Core (with current and voltage feedback). In the end I’ll most likely use an octo-channel DAC to control everything, but for people following along who want to implement this concept on a smaller scale, I figure it’ll be a useful. :smiley:

(And yes, I know, I need more multimeters!)


I love the speed you are moving at :slight_smile:

1 Like

So I’ve decided to go in a bit of a different direction than originally planned. I’m going to make several different instruments and create something of a “Spark Powered Open Lab Kit” if you will.

So first up, I’m going to take four of these little 1.2 to 30V buck-converter boards, stick them in a small metal box, add a Spark Core and create a quad-output power supply. (I’ll still use the boost board to bring the input over VIN if needed, but for now those two large buck and boost boards won’t be included. I’ll most likely put them in their own little box later on and make a single output 150W supply.)

So, back to the quad-supply. After some testing, I found the heat dissipation on these boards seriously lacking. The copper just isn’t thick enough and there’s not enough area to sustain anything over 1.5A. After doing some research, I found a seller on eBay who had heatsinks that perfectly fit these boards (50mmx25mm). There was an issue in that it blocked the mounting holes. Fortunately for us, the majority of the heat comes from a 25mm^2 area in the center of the board (under the IC and inductor). I was able to pick up a 25mmx25mm heatsink on Amazon (with Prime shipping, too) that perfectly fits in between the mounting holes of the board.

So, I picked two sets up, plus some Arctic Alumina Thermal Epoxy; after a little mixing magic and a five minute wait, we get this:

I’ve also got some small copper heatsinks to pop onto the chip itself. At any rate, this should let us get up to the rated 3A, no issues. :smiley:


I know this post is old - but just noticed the wire dispenser box and labeled pill jars in the back! LOL. Thought only I was that anal!! LOL!.. But…but… you don’t label the lids!!! :wink:
PS - great looking project!