LM2678 TO-220-7 Voltage Regulator

First time, edited a part originally labelled "7-Lead TO-220 for OPA548, changed the text & schematic.

Just a 7-Lead TO-220 Voltage regulator.

LM2678.fzpz (11.8 KB)

I ran the contents of that part file through FritzingCheckPart. Here is a summary of what it reported, and what I noticed doing a manual inspection and smoke test in Fritzing.

The connectors in the part have been configured with the type set to “female”. Except for parts that act like breadboard, and some ‘shield’ or ‘hat’ parts, that is normally better as “male”. The connectors need to be “male” to allow the part to be dragged onto a breadboard, and automatically connect. With “female”, other (male) parts will automatically connect to this part when the connectors line up. Without using any wires.

The main breadboard drawing units are set to ‘px’. That should be ‘in’ or ‘mm’. With ‘px’, Fritzing has to guess what the relationship is between the drawing and real world units. It currently seems to be getting it right for this case (the pins of the part line up with breadboard connectors), but specifying ‘real’ units is a lot safer.

Same for the schematic and pcb drawings. For schematic, ‘in’ is probably best, since the pins are supposed to be 0.1 inch apart.

This should work as is, but the convention is to have the copper0 layer inside the copper1 layer. Not the other way around.

The fzp file includes a bus entry containing connector0, connector1, connector2, none of which exist in the part definition. I suspect that the there should not be any bus for this part.


The connector id values for the part should start at “connector0”, and increment from there. This is starting at “connector3”. The svgId, terminalId, and matching svg element id attribute values should be adjusted to match.

The “schematic” layerId specified in the fzp part definition does not exist in the matching svg image. This will “appear” to work in Fritzing, but exporting a sketch to an svg image will not include the part. The “schematic” id should be added to the first/outer wrapper group element.

The part definition shows terminalId attributes for connectors in the schematic view, which do not actually exist in schematic svg. These should exist in the svg. They are used to give Fritzing a reference point, to “snap” wires to. Without this, wires attached to the connectors will be drawn to the middle of the connector pin line, instead of to the end.

To be consistent with most of the parts (and the current convention), the connector pin lines in the schematic svg should be 0.1 inches long, and 0.1 inch apart, with the rest of the graphics and text scaled to make that look reasonable. The convention, Fritzing’s graphic standards is to put any pin labels inside the body of the graphic. Only pin numbers (if used) go outside, on the pins.

Are there other 7 pin voltage regulators? If so, the schematic should not include “LM2678” in the body of the graphic. The part label can (does by default) include it anyway, since that is included in the part number. Leaving the embedded text out would allow the graphic to be (better) reused for other parts. Or the whole part can be reused for any other t0-220-7 voltage regulator (with the same pinout). By simply setting the correct part number in the Inspector window.

In addition to @microMerlin 's comments, be lazy (and don’t duplicate effort!) :slight_smile: . The first step when looking for a part is do a google search of the form “fritzing part lm2678” which will turn up this previous forum post:

where I made a lm2678 part for someone (which passes FritzingCheckPart.py already.)


1 Like

Per Peter’s comment in the other thread about the datasheet footprint being unclear, I see a difference between the 2 parts. Peter’s part has the 2 rows of pads on the pcb spaced 0.2 inches apart. This one has them spaced about 0.15 inches apart. I have no part, and no information about what the spacing should be.

The pitch is clear in the data sheet, .2in (5.04mm), the unclear (to me) part was where pin 1 started. I think from the picture in the data sheet, it is the outside row and that is what my part is set to. I don’t know if the person that requested the part ever verified the footprint, but it would be wise to do before ordering boards because I also don’t have physical part, only the data sheet.


I don’t even know where to start. Total newbie at this, half of what you said is greek, I apologize. As Peter has already made a part I’ll stick to that one - thanks Peter! The legs in mine are to the correct pins if you want to use that for yours.

Peter: I thought I had searched the Parts thread, turns out Google is much better.