A suggested reorginization of the core diode part


#1

I’ve circled around back to where I started, needing a small signal diode. However in the intervening months I’ve learned a bit about both Fritzing and part creation. To that end I’d like to start a discussion about improving the diode core part. There is interest from other folks as well as me for a small signal diode such as the 1n4148 / 1n4448 etc with an associated footprint with a smaller hole than that for the 1n4001 diode (which being a 1 A diode has a larger lead wire). That same post in here (apparently a hold over from the wish list in the old forum) asked about different foot print sizes (.2, .3 .4 and .5 were suggested) to allow using the diode as a jumper as well as the diode. In some variants of the diode there is a stand up foot print (although it is currently very wide) where the diode is vertical to the board rather than horizontal. Breadboard view of the variant doesn’t match the PCB view which should be fixed, but I think it is desirable to have that option for all the diode variations (as well as resistors, but thats a later discussion :slight_smile: ). There is also the recent thread in parts help where someone was looking for a surface mount 1n4001 part (I can’t easily find any 1n4001 in SM packages at either Digikey or Mouser which I find very suprising, but there obviously is one somewhere) that wanted a 1n4001 in an 804 SMD package. That (at least to me) indicates we should be adding some common (assuming there are common, of course) smd footprints to the diode part. There are some for the 10A diode but they are larger than what the poster wanted. Finally I think we need to make a change to the diode part as it stands in the bin. At present it presents its self as a “rectifier diode” which isn’t quite accurate as it is really all the various diode types (rectifier, zener, schottky and when it gets added, small signal).
It isn’t til you drag it in to the sketch that you can select which of those you want. I think we would be best to change the description to something like “Generic diodes: (rectifier, zener, schottky and small signal, through hole and SMD packages). Drag in to your sketch to select the type and package with Inspector” because as a new user I wouldn’t (and didn’t) know that I could or should do that. To that end (and to discover how the diode part is actually making all the variants it has) I grepped through the core fpz files looking for diode which turns up all of these in family “diode”
(so far :slight_smile: ):

diode_1N4001_300mil.fzp
diode_schottky_1N5817_300mil.fzp
diode_zener_0_5w_3_6v_300mil.fzp
Rectifier Diode 10A_standup_on_PCB.fzp
SMD_Diode_REC_DO.fzp
SMD_Diode_REC_DOAA.fzp
SMD_Diode_STK_DO.fzp
SMD_Diode_ZEN_3-6.fzp

This looks to be the 4 main diode types and their SMD equivalents. The properties associated with each fzp appear to create the following selectors in Inspector: In all cases the top name is the name of a property:

variant:

PCB Laydown (standard through hole parallel to the board with a large diode body .3 wide)

PCB Standup (Vertical .5 spacingshould be .1 or .2 probably to be useful)

variant 12 (?) which is the standard body size (about .1 wide)

Type

rectifier 1n4001
rectifier P1000K (apparantly the fat (8mm diameter) 10 amp version)
Schottky 1n5817 (no varients here, they should be added!)
Zener 1n4732A (no varients here, they should be added!
breakdown voltage is setable on this one via inspector)

package

300 mil (THT)
Melf Do-213 AB [SMD]
Melf Do-213 AA [SMD]

It seems to me it would be wise to rename variant 12 to something better descriptive
such as PCB Laydown .1 wide .3 spacing and the current PCB Laydown changed to
PCB Laydown .3 wide .4 spacing

Add more SMD footprints. preferably with better descriptions to help pick the one you want. The part that I’m not sure of is if we would have to generate new parts for each variation or if Fritzing can somehow substitute the PCB foot print from one of the other parts (I think that is what is happening because an error message often flashes by on the bottom of the sketch screen something to the effect of “exact match not found substituting closest match” when placing the diodes in the sketch). The other thing that would be desirable is input from the developers as to whether they like and would accept this idea if we were to implement it. Comments? Further suggestions? This won’t work because of …?
Back to creating a small signal diode and seeing if it will join the family (which may answer some of those questions for me :slight_smile: ).

Peter Van Epp


#2

It not just diodes, it’s everything. A couple of months ago I was thinking the same thing about all the parts, after fixing another incorrectly dimensioned PCB view of a part in the std bins, but it would be so much work to standardise and order everything it would be a mammoth task. SMD is sorely lacking in FZ and just doesn’t work in BB view, so I don’t know what you do there. Even if a diode is made to specific part#, ie 1N4001, you can just type over the part# for what ever you want any way, so generic isn’t essential. Plus you can make generic parts just by removing the specifics in META. There is so many footprints with specific names I had trouble finding the one I wanted. Basically I dragged parts on the PCB and used the x,y dimension on the bottom red bar to work out which was right - did you know if you click on it it changes to mm -. You kind-of need a master footprint guide to find stuff. The thing about user contributions is that parts aren’t standardised, so you kind-of need one person to proof everything. It would make FZ much more efficient if it was. I’m learning new stuff all the time, like I learnt what family, etc does last week, and now I want to go back an re-edit everything I’ve done to a higher standard, but that’s just too much work.

I made the greater spaced diodes.

And I made the 0805 SMD diode.


#3

It may be worth trying to come up with a standard and work slowly towards adopting it. I agree this will be a lot of work and there may or may not be interest in doing it going forward. Because I need a small signal diode I’ve done most of the changes suggested above and will post them in a minute. SMD doesn’t work in breadboard with the breadboards, but it does (or at least so I have read, I haven’t tried it my self) work on perf board which can be represented in BB. So my view would be to do a mechanically accurate part for BB view. For high density stuff (.65 and .5 mm lead spacing IC packages for instance) just block the breadboard view as it is obviously impractical without an adapter board (which would be a different part). To answer my own question above, all the foot prints are available to all the parts, they just don’t necessarily react as you would expect (they may change to the device they belong to instead of the one you chose for instance).

Peter Van Epp


#4

People have been short cutting the SMD on BB view by using the THT part or putting the SMD on a small board, which is probably understandable because if you are using SMD you don’t really use the BB view anyway. I think the SMD in BB view is not really useful because it is a graphical representation, not actual real life. I reckon we should have a breadboard in PCB with the dimensionally accurate drawings.

I think one of the biggest problems to productivity is white silkscreen. Every time I try to find a foot print I have to pick a part and drag it in to view, where’s if it had black silkscreen we could see what it looked like in the PCB icon in Inspector. I can’t see what stuff is if they are just contacts.


#5

Hmm, there may be a cure for that. A perl script should be able to parse the xml in the core parts directory and rewrite the white silkscreen to black. The changes would be overwritten on an update of the repository but since that hasn’t happened in a while that may not be a big problem. Another interesting task for the list …

Peter Van Epp