The KiCad files are available on Github.
Custom footprints and custom symbols can be downloaded from Github. You’ll need to add a link to these in KiCad’s preferences so that the projects don’t error when opening. I’m assuming that if you have KiCad you know how to do that, but please ask below.
There are two projects, one for the Power Stage and one for the Control Stage (actually called Power Supply.)
I have produced precisely zero PCB designs before - I don’t count the trial one I did of my first power supply I mentioned in Part One which was faintly praised with ‘It should work electrically” This is somewhat more complicated and I've added images below.
I set my own constraints when doing this:
- follow layout guidance given in data sheets
- use SMD parts, mostly, to keep the size down. The exceptions were for parts that I don't own the proper tools to solder.
- fit within 100mm x 100mm dimensions AND 2 layers to keep production costs down. JLCPCB will create these at around £1.50 for 5 but the price jumps to £22 for a 4-layer board.
- allow for 2mm between parts to let me to get a soldering iron in and (hopefully not) a hot-air nozzle if I have to rework it. I really don’t want to buy one of those yet.
- not split a ground plane by minimising bottom layer routing
- take account of current capacity with track widths.
A note on the last point re track widths. The ‘high current’ path is set at 1.5mm - this is greater than the minimum width calculated according to IPC-2221 for a 10 degree C temperature rise and well over the width required for a 20 C rise which I believe it could easily cope with. It’s less than the minimum width calculated according to IPC-2152 for a 10 C rise but well over the width for a 20 C rise. In either case, I couldn’t derive a width by specifying a voltage drop: the calculators didn’t allow it and I’m not sure what an acceptable drop would be as output isn't fixed. It’s obviously not in line with a rule-of-thumb 1mm per Amp. Ultimately, I traded off space and size against the real likelihood of extended running at 3A which is unlikely for me: for most operation it will be fine and I expect it will be ok at 3A as well. Even at a 3A output, there isn't 3A flowing through all the high-current circuit (the LT3081s max at 1.5A for example.) All other signal paths are well over-sized at 0.5mm or 0.35mm for what is small number of milliamps.
I’m also aware that I could have positioned the 5V supply better as its output is daisy-chained (mostly) to the parts that need it. I didn’t bother to change it (I’d have to re-do the whole board) as the thermistors are single point routed so should get even voltage; the INA260 can operate from 2.7 to 5.5V so will be sufficiently supplied. Additionally, I could have laid out the resistors and capacitors aligned in one direction but again I traded off routing as little as possible on the bottom layer.
I had to create custom footprints and symbols but KiCad makes this reasonably easy to do. It took a long time for me to complete this part, as I was taking my time, and I think that now I have a ‘worked example’, so to speak, I could probably do a bit better. But actually, I don’t think it’s likely to suffer that much: more likely are other problems that require rework and which may require a new PCB - at that time, I’ll make some changes.
Power Stage PCB
Here's the component positioning and trace routing:
Front and Back planes for ground:
And a 3D view of front. KiCad doesn't have 3D views for all parts so the terminal blocks aren't showing. Also, note the bug in positioning of the rectifier:
Control Stage PCB
Component positioning and trace routing:
Front and Back ground planes - joined with a net tie:
And a 3D view of the front. Again, not all parts have a 3D view: