48V to 3.3V Regulator Design Project
Recently, I have been working on a 300W LED panel project. I’ve already written an article about building a 65W LED driver, and another about simulating it on PDN analyzer. However, there are some features I still want to implement, one of which is wireless dimming capability on the panels. Wireless dimming is important because getting the perfect balance of light is difficult when you have to keep pulling a light down from the top of a tall pole to tweak a dimming knob just a little. I don’t expect to have the lights at the top of a pole often, but when they are in an inaccessible location, wireless adjustment will be invaluable! I’m thinking of using an ESP32 running the .NET NanoFramework to allow me to wirelessly control the brightness of the panels without much programming effort. The pre-certified modules are cheap, making it hard to justify another solution!
I’m planning to run the light panels on 48V power supplies, which leaves me with a big drop to get down to the 3.3V I need to supply to the microcontroller. I need a buck regulator with a wide input voltage range that can be run at very low duty cycles. I require low duty cycles because the current draw is going to be quite light. That being said, some regulators don’t like this much, or just won’t allow such a large gap in input to output voltage. Before looking for a regulator, I need to figure out what the power draw of an ESP32 is. I found an article on Geek Tips which had tables of current consumption for various states, which gives me a good baseline to work from. The tables there suggest around 20-50mA normal running current, and up to 250mA when transmitting data at full speed.
Due to the large voltage drop and low current draw in an idle state, I’m not sure how stable the power output will be, so I’m going to regulate the supply to 4.0V rather than going directly to 3.3V. This higher voltage will allow me to use a low-dropout linear voltage regulator (LDO) to get my final 3.3V. By using a linear voltage regulator after the switched-mode supply, I can get very stable low noise output which will keep the radio in the ESP32 happy, and keep everything running smoothly.
Having made the decision to use an LDO and knowing I need to supply about 250mA, I’m looking for a monolithic (fully integrated) voltage regulator IC that can give me 4.0V from 43-53V input at 30-250mA. I decided to go with the Analog Devices LT8619 in the 3x3mm DFN package. I was attracted by the very wide input range of 3-60V and particularly by the ‘fast minimum switch-on time’ of 30ns. It’s also a considerably low noise LDO, which is advantageous for anything dealing with RF or audio applications.
As with all my projects, you can find the complete project available for free, and released as open source on my GitHub, including the schematic and PCB files. You’ll find the components used for the design in my Celestial Altium Library, which is also free and open source. This should provide you with everything you need if you want to build a similar power supply, or use the design in this article as the basis for your own design satisfying your unique requirements.
Power Supply Design
Power supply design is an iterative process. If you change one component value or operating condition, you need to recalculate all your other values and conditions to ensure the choices you have made are still valid. For me, this is the aspect of selecting a regulator, and then designing the schematic that takes the most time. As you’ll see, it’s very important to double check all of these calculations and re-read all of the notes in the datasheet before finalizing your design.
Switching Frequency
Despite the regulator IC being a high efficiency part, I’m just not expecting much in the way of efficiency at the low current draw I’ll be utilizing. This makes it particularly important to choose a good switching frequency. Higher frequencies tend to give you smaller components, however, I need to be aware of the minimum on time with the duty cycle I have. A lower frequency will offer higher efficiency and a larger input voltage range at the cost of larger value components. After doing more than a few calculations, I’m going to run the regulator at its lowest frequency of 300kHz.
I had originally calculated a design around 1250kHz, but right after finishing the layout and going back through all the equations, I realized that the regulator would never enter forced continuous mode at that frequency. Even at 300kHz, it still may not, but it at least has a chance of getting into a more efficient running mode at its minimum frequency.
At 300kHz I should have an 8.35% duty cycle with a 257nS minimum on time. At the full load of 250mA, efficiency is going to be as high as 85%, but at a 50mA load, this sinks down to 56%, which is rather dismal. In absolute terms, the loss is actually fairly small at just 160mW, but with such small amounts of power involved, it adds up to a large percentage. Unlike the previous project for the monolithic LED driver IC, the temperature is not a concern for me on this project, as even with such low efficiency, I expect I’d see only a 6.5°C temperature rise with the DFN package (43°C/W θja.)
Inductor Selection
Now that the switching frequency has been determined, it becomes possible to select an inductor for the supply. I calculate that at our switching frequency of 300kHz, the optimal inductance is about 25.52uH, with the closest options in low cost packages for me being 22uH and 27uH.
Initially, I was worried about changing the low DCR inductor that was perfect for my initially planned 1258kHz frequency to one with a similar footprint, but a much higher resistance. I felt as though the 130 milliohm resistance should be OK, as I’m not pushing much current through it; the datasheet confirms this. While the suggested resistance is around 40 milliohms, the datasheet states that 100 milliohms is a good tradeoff for size at the expense of efficiency. Despite this probably being fine, I wasn’t happy with committing to the engineering tradeoff just to save some time on a redesign. If the smaller inductor was significantly cheaper or perhaps had some other advantages, I might have stuck with it, but the only noteworthy advantage I had was saving some effort. Therefore, we’ll be taking a look at both designs later in this article.
Feedback Capacitor
The regulator uses a voltage divider for feedback as any other regulator would. However, given the rather large voltage difference and small load, I thought it would be a good idea to simulate the feedback loop. With no capacitor across the top leg of the voltage divider, the phase margin is lower than the absolute minimum rating of 30 degrees. By adding a 3300pF capacitor across the top resistor in the voltage divider, I was able to bring the phase margin up to about 52 degrees, which is above the recommended 45 degree minimum. This greatly improves the load transient curve.
Caption: Left: Load Transient without C7. Right: Load Transient with C7.
Input Filter
I’ve mentioned in some of my other projects the importance of filtering the input of a switched-mode power supply. Often we put a lot of effort into filtering the output to ensure that we have very little EMI and ripple from the power supply downstream, so as to reduce problems with our circuitry. This focus on downstream filtering and negligence of input filtering can come back to bite you when you go for compliance testing.
Above is a simulation of conducted EMI on the input of the switched-mode power supply. The red lines are the CISPR25 limits, which you would need to conform to if this was going to be certified for automotive use. This design isn’t intended for automotive use, but it’s an easy example to use. The gray mess is the conducted EMI with no filter; it’s clearly heavily exceeding the limits. The blue trace, which you might just be able to make out down at the bottom left and right corners is the conducted EMI with a basic PI filter in place.
Caption: A simple PI filter between VIN and VILT
This simple, low cost filter provides over 50dBμV of margin at 106.16MHz, instead of failing by more than 20dBμV. C3 and C4 in the schematic above are the existing input capacitance for the regulator, only C1/C2 and L1 have been added to the design.
Electromagnetic compliance isn’t an optional part of a product, it’s a mandatory requirement and therefore needs to be at the forefront of your mind when you design anything. The more current you switch, the more attention you need to pay to potential sources of conducted and radiated emissions.
Linear Regulator
As I mentioned at the start of the article, I want to use a linear regulator for the final output stage of the switched-mode power supply. This is due to the fact that the radio in the ESP32 needs to have clean power for optimal performance, and that the best way to provide clean power is through a linear regulator. The linear regulator will provide the final cleanup of power from the switched-mode regulator, and with just a 4V to 3.3V drop, will produce very little heat.
Caption: A low dropout linear voltage regulator using the Diodes Inc AP2112K
I chose a relatively common Diodes Inc AP2112K regulator for this design, the SOT-23-5 package is compact, yet large enough to handle the current/heat for this project. The primary specification I was looking for in a regulator was the dropout voltage. Having a maximum acceptable dropout voltage of 0.7V between the input and the output rules out a lot of options. The AP211K has 0.4V of dropout voltage, which suits my requirements. Furthermore, it's incredibly cheap, which is always nice.
The linear regulator needs very little in the way of supporting components. The output will be stable with 1μF of capacitance. I have 1μF of capacitance on the input as well, primarily to have a decoupling capacitor close to the regulator. The large amount of output capacitance on the switched-mode power supply will more than cover any input capacitance requirements.
In my implementation—which will use this regulator—the ESP32 will have it’s own bulk capacitance and decoupling capacitors located next to the module, so while more bulk capacitance may be advantageous for the design, it’s beyond the scope of this portion of the project. Having enough capacitance to ensure a stable output of the regulator is sufficient for this design.
Finished Schematic
The rest of the schematic is relatively simple. We have decoupling capacitors on the output to ensure there is little ripple downstream, an undervoltage lockout divider, and an LED for visual feedback that the regulator is operating. The LED is also a little bit of a bonus load on the switched-mode regulator, which will slightly improve its operating efficiency.
The finished schematic
As mentioned above, this design is on GitHub, so you can download the schematic and play with it yourself, if you wish.
Initial Board Design
As I mentioned above, I had originally designed this board with a small 6mm square inductor that was perfect for a higher switching frequency.
The initially designed board with a 6mm square inductor
With the area of board I wanted to allot for this design, everything fit perfectly and the layout had a short current loop for the regulator.
The PCB in the image above after it has been routed
I was very pleased with this design, and ready to call it ‘job done’. It’s always a fantastic idea to go back through your notes, run through the datasheet and redo all your calculations before you call a design finished, however. Power supply design is an iterative process, and it wouldn’t be strange if I missed something during the iterations by getting too focused on one aspect of the design and calculations.
If the input voltage was lower, or the output load higher to allow the operating frequency I had originally settled on, I would have been happy to include the power supply originally designed in my final project. The design would have worked, however, it never would have had a chance to reach the highest efficiency state of the regulator with the input and output conditions.
Board Redesign
The appropriate inductor for the design ended up being four times the surface area. When executing the engineering change order to update the PCB, we get a pretty funny demonstration of Altium’s 3D body clearance checking.
Collision! Collision! Collision!
Clearly, this layout needs to change dramatically.
Trying to change the layout as little as possible leads to undesirable results with current loops
I kept persisting with trying to change the layout as little as possible, because I’m lazy. This approach did not work out well for me though, as I can get a little bit obsessive about layouts. The current loop between the decoupling capacitors here was too long, especially from the larger aluminium polymer (purple) capacitor.
I realized at this point I was going to have to go for a much more drastic re-arranging of components to achieve a more optimal layout, and it was time to stop being attached to the old layout.
The layout after it has been revised. The connectors are shifted off the board by around 1.5mm
With the large inductor, the current loops are forced to be longer, but I’m much happier with this layout. The two input filter capacitors ended up getting moved down near the VIN connector, rather than next to the input inductor, which is acceptable because the filtering of the input is less critical than a properly functioning power supply. We have a lot of margin for the input filter to meet regulations, however a poorly functioning power supply, or one which radiates a lot of EMI, is not going to work for us at all.
The 3D view of the final PCB
The connectors also had to be shifted off the board by about 1.5mm, and the board lengthened by around 1mm, giving me around 4mm more width to work with.
Finally
This layout and design is now something that I’ll be able to use in the next step of my high power lighting project. I could have simply shown the design process and skipped over my mistakes, but as Alexander Pope wrote, “To err is human; to forgive, divine.” I am only human, and hopefully, you can forgive me for my mistake. Even experienced engineers need to double check their numbers and re-read the datasheet before calling a design finished. Otherwise, it’s too easy to end up with a problem in your prototype board. If the problem is minor, it might make it all the way to mass production before it causes issues that could be incredibly expensive to rectify.
As always, you can find this project on GitHub and you are free to use it as you wish.