In this video I build a power distribution system for my workbench:
I’ve started to accumulate many devices and tools that use 5V power sources, typically a USB-style cable with either a micro-usb plug or a barrel plug at the other end. In addition to my typical chargeable handheld devices like my iphone and ipad and my kindle and my fitbit, there’s my Eakins inspection camera / microscope and various raspberry pi projects. Rather than get out a separate wall-wart or use my benchtop variable supply, for many projects it is handy to just plug in to a USB bus.
My goals include:
1. The ability to switch each device on/off with a rocker or toggle switch
2. Current limiting capability via a fuse or similar device
3. Overvoltage protection
4. Visual indicator (LED) of operational status
5. Multiple independent outlet
Goal #5 is the one that’s difficult to find a commercial product. I was easily able to find several consumer grade strip-like USB3 hubs that had individual switches and LEDs. However, they all shared a common power bus. One device that generated noise could affect the other devices. In the worst case, a grossly misbehaving device, like a rogue nixie tube project, could malfunction and introduce harmful power to the rest of the bus. In a benchtop situation where expensive equipment is used together with delicate prototypes, isolation seems critical.
Unable to find a solution, I built my own.
I made the decision to go with a two-stage solution. The first stage would be a commercial AC/DC converter that output a useful voltage well above my desired 5V regulated output. I settled on 12V for this stage. Meanwell makes excellent AC/DC switching supplies, so I chose a 5A 12V Meanwell. using a commercial device for the first stage eliminates the responsibility of myself having to interface with dangerous line currents, and the need to design a safe and efficient AC/DC converter.
The second state would then be a series of independent 12V -> 5V regulators, one of each USB outlet that I wanted to support. My initial prototype used a LM2576 switching regulator, an IC that I’ve used in many other power supply projects. The LM2576 is through hole and very straightforward and easy to implement. Here’s a picture of my prototype:
The problem with the LM2576 is that it is a relatively old and somewhat inefficient design. The relatively low switching frequency means high value inductors are required, which eat up significant board space. More modern regulators use higher frequencies which lead to smaller component requirements. They also implement addition features like overvoltage and overcurrent protection, compensation for voltage drop over cables, etc. After doing some research into what regulators various commercial projects are using, I settled on the ACT4533A. This regulator features a 125Khz switching design. It has overvoltage and overcurrent features built in. It will raise the voltage slightly with amperage to compensate for voltage drop over cabling. It’s a modern IC used by such devices as an Apple car charger.
Overcurrent protection basically means “fuse”. I explored several options for overcurrent protection:
1. A traditional glass (or ceramic) fuse. These have a tiny wire that melts when a target current is reached. The problem with fuses is twofold: a) they’re a one-time use device, and b) the only way to adjust them is to replace with a different fuse.
2. A PTC / polyfuse. These devices are resettable, so they eliminate one of the disadvantages of the glass fuse. They don’t solve the adjustability problem though; you have to pick the specific PTC value that you’re interested in. However, it’s one step forward and two steps back as the PTC introduces several new problems. First, the PTC has a huge window of uncertainty. PTCs are typically specified with a hold current where the fuse will not trip and a trip current where the fuse will trip. The trip current is often 2X the hold current. So if you buy a 1.35A PTC, then it’s typically guaranteed to trip at 2.7A. The range between 1.35A and 2.7A is undefined, it might trip or it might not trip. There’s also uncertainty in the time-to-trip. If you’re drawing exactly 2.7A then it might take several seconds, or even tens of seconds, for the PTR to trip.
3. A solid-state electronic fuse. These are ICs that monitor a current draw and then trip when a threshold is reached. They’re adjustable. They’re resettable. They’re precise.
Although my first prototype used a PTC, I ultimately went with the e-fuse. In particular, I chose to go with the TPS2421 “hot swap controller”.
If we already have regulation, you might ask, “why do we need overvoltage protection?” The answer is to cover the case where something has gone horribly wrong, such as a failure of the regulator IC, and voltage is rising uncontrollably from the regulator circuit. The overvoltage protection is a feature of last resort, when the other protections have failed and the circuit is behaving abnormally. I ended up going with something called the “crowbar circuit”:
The Crowbar circuit is named after the procedure of dropping a crowbar across a malfunctioning high-voltage rail, in order to shut down the circuit by introducing a catastrophe that blows the fuse. The crowbar is relatively easy to implement using a Zener diode and a silicon-controlled rectifier (SCR). The voltage on the gate of the SCR is initially zero, until the voltage exceeds the value of the Zener diode. Once this happens, a positive voltage starts to develop on the gate, and once a certain threshold is crossed (usually a few hundred millivolts, depending on the SCR), the SCR will trigger and start conducting between the anode and cathode. It will continue conducting even if the gate voltage is removed. The only thing that stops the SCR from conducting is when the current through the SCR drops below the minimum holding current. The SCR can sink a huge amount of current for a short time. It will blow any reasonably-sized fuse that is attached.
We still have one thing to worry about, and that is transients. Transients can occur in particular when large inductive loads are switched on and off. For example, I originally tested the power supply using low-value high wattage power resistors, 1 ohm, 2.7 ohm, etc. If I apply power to one of these and then quickly remove it, I could see a transient spike on my scope in the range of tens of volts. In particular the TPS2421 e-fuse recommends caution over transient spikes as one can be induced when the e-fuse trips.
Transient protection can be achieved using something called a “transient voltage suppression” diode, or TVS. Think of these as sort of a big zener diode.
Below is a schematic of one of the independent 12->5V converters that comprise the project:
As you can see each of the above circuits are present: The ACT4533A regulator, the TPS2421 e-fuse, the crowbar circuit, and a TVS on both the input rail and the regulated output.
There’s a few other things worth mentioning. The first is the resistors on the data lines at the USB-A connector. Various manufacturers have adopted various hacks for a charger to tell a device how much current it can draw. This set of resistors forms a couple voltage dividers that Apple devices will interpret as indicating a 5 watt charger. Further standards have been developer that use a more sophisticated technique, but this low complexity solution is sufficient for the Apple device that I own.
Below is a picture of one of the power supply circuit boards:
The boards are designed to be ganged together. Below you can see two 5V sections on the right, along with two 12V outputs (they identical to the 5V boards, but lack the votlage regulator) on the left. I used an acrylic laser-cut case for this particular four-board module:
I also custom-printed a 3D case. Here it is behind my 3D printer, supplying power to an OctoPi:
Because it’s interesting to see how many watts the overall system pulls as various devices are added, I 3D Printed a case for a cheap wattmeter I found on eBay: