Given the way the forum software works, I've started a new discussion on this topic so that it might get some visibility; unfortunately, responding to the original wouldn't pop it to the front as recent content and it appears I can't change the publish date of a forum posting which makes sense. Anyway, I made the first post on the subject a while ago here and if you haven't read it yet, the following may make no sense as it is a carry on.
I was fortunate that ScottieBabe spotted the 0.5mm thermal relief on the current sensor connector because I'd missed it. This was of course deliberate to see if anyone was paying attention. Not. I thought I could patch that up but looking closely I’d made a big error on the connector footprints: one of the pins had no direct connection to the fill zone (electrically, not a problem because the two pins are connected) and the second pin only had 0.5mm thermal reliefs. This wasn’t obvious to me because of the zone fills but extra eyes spotted it, now it's blatantly obvious and I can’t realistically patch them all so I’m making a new board.
The issue arose because of how Kicad handles footprints and how I’d found out how to create footprints that overlapped - custom shapes. With a custom shape there are two options for connecting: NONE and SOLID; this is different to ‘normal’ footprints which have the additional options of PARENT FOOTPRINT and THERMAL RELIEF. This makes sense as how would Kicad know how to create thermal reliefs for a custom shape? As I hadn’t realised, one pad (the custom one) was set to NONE and the other to PARENT - that parent was the fill zone which had a thermal relief setting of 0.5mm. Turns out I didn’t need to create the overlapping pad as a custom shape, but could set it to be rectangular, 1mm larger than it needed to be and offset in the X-axis by 1mm. This allowed it to overlap but still be within the dimension of the pad at the bottom of the connector. Lesson learned (and a top tip for Kicad there. You’re welcome.)
Updated Board
Front Side, Bcu hidden:
Back side, Fcu hidden:
What I have done
I took the opportunity to make some more changes as well, based on feedback:
- Moved the DRAIN fill zone to the bottom of the board and made it much larger.
- Increased the size of the SOURCE zones and ensured they are the same size across all MOSFETs.
- Increased the size of the high current path to the sense resistor.
- Changed the connector footprints to use 3mm thermal reliefs with 0.5 mm thermal relief gap. According to Kicad’s calculator, a 2.8mm wide, 0.5mm long track would drop 450uV for a 10C rise at 5A.
This keeps the parts the same which I hope to salvage from the old board. I can also reuse the stencil I had created.
What I could do
Jon mentioned using Thick Film resistors instead of the wire wounds I have because they have lower inductance - in fact, looking at data sheets, it would seem to be negligible inductance. This doesn’t seem to be a parameter reported on wire wound resistors so I can’t compare. I could use this 1Ohm Thick Film resistor , which has a much better temperature de-rating and coefficient, instead of the 1 Ohm wire wound resistor. With some adjustment to the run of the -5V trace, I could get this to straddle the trace linking R20, R17, R14 and R10. Worth it for an extra £18.50?
I did a quick check with LTSpice to double-check the power requirements of the resistors as well: approx 2W. I’m rubbish at LTSpice though, so it could be wrong…
This is showing just over 1.5W at 5A.
What I struggled with
Thinking about the loop and potential induction. I have, in total, 7 TO-220 devices to connect to the heatsink and 6 of them are directly involved in moving the load from J11 to J12 (the other is a temperature monitor.) I really wanted to use connectors for these devices to make it easier to replace them if damaged, or remove the board from the enclosure without having to disturb them. The alternative is to line them along the edge of the board so they can still be attached to a heatsink but that would still take 105mm vs the 174mm currently (a 70mm shorter path.) With judicious positioning I might be able to make that difference 80-90mm, perhaps 100mm. An extra 100mm of wire (if I didn’t do it) would introduce approximately 100nH but I don’t know if that’s a lot or not, or the impact. That all has to be considered against the convenience of using the connectors.
What I could do - and I don’t know if this would help or not - is to replace the J11 and J12 connectors with single M3 holes into which I could screw the Load leads. The replacement J12 hole, I could move next to the J11 hole and run the +5Vgnd (sorry ScottieBabe!) across the back of the board on a, say, 10 mm track from the sense resistor (for the purpose of inductance, I don’t think width matters actually.) This would entail making the board a bit wider but apart from a small-ish cost, isn’t an issue for the enclosure However, really, the overall loop is still the same whether completed by a wire or a trace so I don’t know if that would be of great benefit?
Ultimately, I couldn’t work out an alternative placement option for the MOSFETs that kept them on the heatsink AND reduced the inductance loop significantly. Also, that kept the mounting at least reasonably convenient.
As I'm having the board remade, now is the opportunity to make any further adjustments that may be worth it.