What is the recommended approach for transistor/heatsink courtyard overlaps?

When placing a transistor that is attached to a heatsink, DRC reports courtyard overlap.
Is there any approach to resolving or approving the exception, other than just ignoring the error?

image

From your screenshot it looks like you have a physical interference between your TO220 package and the heatsink ???

How do you intend to manufacture this PCB?
Courtyards are meant to have enough clearance for Pick 'n Place machines to put the parts on the board.
in Assemblies like your screenshot it is common to first mount the transistor to the heatsink (sometimes with extra isolation pad), and then place the sub assembly manually on the PCB. In this case it is not very useful to have a courtyard defined for these components.

The simplest solution would be to remove the courtyard completely from either the heatsink or the TO220 transistor.

Another solution is to combine the footprints for the TO220 and the heatsink into a single footprint.

But you can also use the courtyard as a guide for the manual assembly. In that case you would modify both footprints and draw the edge of the courtyard on the edge of the mounting area of both footprints, and maybe even compensate for a the thickness of an isolating pad between these components.

There are also very few heatsinks in KiCad’s libraries, and this one does not seem to be among them.

Or another solution takes in to account that courtyards don’t need to be simple rectangles. Have a cut out in the courtyard of the heatsink that the courtyard for the TO220 fits into perfectly. Then if there is a courtyard overlap then you know that there is a placement in at least one of 3 directions. Unfortunately, that leaves 1 direction (TO220 away from heatsink) that won’t be automatically checked, you as the designer will actually have to do some work to check that direction. :wink:

2 Likes

Then, the heatsink or the transistor can overlap a third footprint. So when I use the same heatsink for 2 or more transistors I fill the heatsink’s footprint with a polygon on the Eco2.User layer and apply visual inspection.

This is my solution for single transistor-heatsink pairs.

To access settings panel: Open a PCB

Then, File>Board_Setup>DesignRules

Uncheck “Prohibit Overlapping Courtyards”

@pedro, that’s a good idea. Rather than entirely remove the courtyard, I just edited it.(as suggested by @SembazuruCDE) , so I just shaped the courtyard to exclude where the TO-220 package fit.

I also re-adjusted the spacing:

image

Small observation:
The hole in that type of heatsink is usually made for some self tapping screw.
This means that the hole in the PCB should be bigger then the diameter of the hole in the heatsink to have enough room for the thread.

That depends. I’ve seen some where there is a press-fit pin from the manufacturer that is really only solderable in a wave-solder application (or with a normally over-powered for electronics soldering iron). Granted, unless the press-fit pin is stepped down, or the silkscreen outline is more of an approximation than reality, the hole would still need to be larger…

@SembazuruCDE, Yes, this heatsink](http://www.assmann-wsw.com/fileadmin/datasheets/ASS_0500_HS.pdf) has a solderable post press-fit into it. The pin is spec’d as 1.4mm, I made the hole 1.5mm.

image

@paulvdh — “There are also very few heatsinks in KiCad’s libraries” That is very true!. I’m happy to share mine but I’m new to Kicad and have not explored how to share new footprints back to the community. Is there a tutorial on that?

KiCad libraries are “well guarded” to maintain high quality.
A big part of maintaining that quality is the KLC, which stands for KiCad Library Convention. https://kicad.org/libraries/klc/

If you want to help with KiCad libraries, then start here:

In other words, your silkscreen is only an approximation. In reality, that’s all that is necessary for silkscreen. But that is an opinion and we all know how good opinions are. You’d have to double check KLC to see if your silkscreen would be ok or not for submission to the libraries.

I see that you use the class letter HS for the heatsink. IEEE 315 Clause 22.4 indicates that you should use MP (for mechanical part). To set this up as a subassembly the parts list would be as follows:
A1 TO-220 XSTR w/Heatsink.
A1H1 Screw
A1H2 Plastic shoulder washer
A1H3 Nut
A1MP1 Heatsink
A1Q1 TO-220 XSTR
If you have three of these subassemblies you would have A2 and A3 ref des prefixes. As far as footprints you could have individual footprints for the XSTR and the heatsink, for which you would have to place them individually, or you could have a single footprint listed with the ref des prefix.
–Larry

You forgot the mica insulator. :stuck_out_tongue_winking_eye: I’m guessing that would (could) be A1H4?

Yes, but of course. “H” is the class letter for hardware and the hardware that attaches the XSTR to the heatsink would not have a footprint of course.

–Larry

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.