← Back to team overview

kicad-lib-committers team mailing list archive

Re: Cleannig Footprint Libraries

 

> 
> With our recent library convention, we can start cleaning the
> footprint libraries. Here is a list of all footprint libraries:


>      1. Air_Coils_SML_NEOSID.pretty

There are a lot more Coils/Inductors from Neosid (just a firm).

Going from general to special, it would be a tree starting with perhaps
two branches, SMD and THT.
Then active/passive branches then resistor/inductor/capacitor brances,
in inductor branch perhaps two branches: cylindrical and toroidal, in
there more specific: Radial, axial, next step Air Coils, ferrite coils,
iron coils ans so on.
But on the other hand, you could make the branches very differend.
Starting again with SMD/THT to Inductors, you could go further on with:
HF-Types, NF-Types, Main Power Types.....

First starting using only one word instead of Choke, Coil or Inductor.
Let it all be an inductor. ;O)


Another point are current compensated coils, which are also transformers
in a special way of sight....



>      1. Buzzers_Beepers.pretty
>      2. Capacitors_Elko_ThroughHole.pretty
>      3. Capacitors_SMD.pretty
>      4. Capacitors_Tantalum_SMD.pretty
>      5. Capacitors_ThroughHole.pretty

Elko is german short for "electrolytic capacitor". But you could put
them together with Tantalum capacitors to "capacitor polarizised".

>      1. Choke_Axial_ThroughHole.pretty
>      2. Choke_Common-Mode_Wurth.pretty
>      3. Choke_Radial_ThroughHole.pretty
>      4. Choke_SMD.pretty
>      5. Choke_Toroid_ThroughHole.pretty

See above about Inductors.

>      1. Connectors_Serial_MOLEX.pretty
>      2. Connect.pretty

Going from general to special, it would be a bad idea to make a branch
"serial", because if you use a connector vor a special way, like 9 pin
Sub-D for serial, there might be some other people who do not use them
that way.
This is even true for USB, because USB is not only used as a serial
connection, but also for powering only. There are alectrical torches
with USB sockets for charging the accumulator, as an example.

So perhaps:
connector (or socket) > Type (a standard like Sub-D, or
DIN41612/IEC41612, USB-Types, BNC or something) and brand spezific like
the WAGO Types. But here is a problem, because you will get RCA sockets
from many other brands and not only RCA.

But there should be only one word for a connector. Not different like
connector, socket, jack. I would prefere socket, but this is only my
personal preference.

>      1. Converters_DCDC_ACDC.pretty
>      2. Crystals_Oscillators_SMD.pretty
>      3. Crystals.pretty

Crystals are usable as part of a filter, sensor or oscillator and mostly
passive. But Oscillators are only oscillators and active. But they could
diveded further on in CrystalOscillators, PLL/DSP-Oscillators, fixed
oscillators, tuned oscillators. But there are not many, so perhaps it
would be useful, to put THT and SMD into one library? 
>      1. Diodes_SMD.pretty
>      2. Diodes_ThroughHole.pretty
>      3. Discret.pretty
>      4. Display.pretty
>      5. Displays_7-Segment.pretty

Display_7-Segment is more spezific than Display. If it is a 7-Segment
LED, it might also fit to Opto or Diode. But LCD-7-Segment sure not.

>      1. Divers.pretty
>      2. EuroBoard_Outline.pretty
>      3. Fiducials.pretty

Perhaps you could subsummize fiducials to odditys? But i would prefere a
library Fiducials.pretty. It could contain SMD and THT types. There are
not many fiducials at all.

>      1. Filters_HF_Coils_NEOSID.pretty

See above about Inductors. But complete filters should have there own
library.

>      1. Footprint_Symbols.pretty

What about removing the word "Footprint" or better name it
"SymbolsAsFootprints"? This are just non electrical symbols you
sometimes want at a board.

>      1. Fuse_Holders_and_Fuses.pretty

Make a decision whree you want pin 1. Because some are not symmetrical,
and there would be an advantage if you discriminate between input and
output.

>      1. Hall-Effect_Transducers_LEM.pretty

Hall-Effekt devices should have there own library, together with the
Allegro devices, which are in PFF_PSF_PSS_Leadforms.pretty
>      1. Heatsinks.pretty
>      2. Housings_ROHM.pretty

Might be, ROHM housings are common with some IPC/JEDEC
specifications....might be double.

>      1. Housings_SIP9.pretty

But not only 9.....;O)

>      1. Housings_SOT-23_SOT-143_TSOT-6.pretty
>      2. Housings_SOT-89.pretty
>      3. Housings_SOT.pretty
>      4. Housings_TO-50.pretty
>      5. Housings_TO-78.pretty
>      6. Housings_TO-92.pretty

TO-92 Should be strongly revised. There are too many almost similar
footprints with only permutations in the naming of the pads. ;O)
I have to apologize, but it wath my first attempt to make a kicad
library. And i was just thinking too "Eaglish" at this time. ;O)

>      1. Inductors_NEOSID.pretty
>      2. Inductors.pretty

See above about Inductors.
>      1. IR-DirectFETs.pretty

Very special....

>      1. Labels.pretty

Uuups, i recognice that there are labels not for electronic only, which
i made for myself. I did not realise, that i uploaded them at all. But
if someone loke them, why not?

>      1. LEDs.pretty

All types of LED? 7-segment? What about fork-light-gates?
What about subsumising to Opto Devices? Ok, i think, it is better to
have a extra library with LED, too.

>      1. Measurement_Points.pretty
>      2. Measurement_Scales.pretty

Same thinking about like for fiducials. Up to now, i only used the 
Measurement_Scales as controll scales for pdf previews. So you can
check, wether your printing is distorted or not.

>      1. Mechanical_Sockets.pretty

A folder for mechanical only things, not only for sockets? Card guides
as an example....But than the DIN41612/IEC41612 should have a special
library.

>      1. Mounting_Holes.pretty

I made this library before Kicad got an option for mounting holes. So
there might no longer use for this library.
>      1. Muonde.pretty
>      2. NF-Transformers_ETAL.pretty
>      3. Oddities.pretty

Just for Net-ties and other odd stuff. ;O)

>      1. Opto-Devices.pretty

Think about, what i wrote about LEDs.

>      1. Oscillator-Modules.pretty
>      2. Oscillators.pretty

Think about, what i wrote about LEDs.

>      1. Pentawatts.pretty

Pentawatt is TO-220-5. So might be possible to subsumize them to TO-220?
But i would prefere a special library. But then it should renamed to
TO-220-5.pretty or perhaps TO-220-5_Pentawatt.pretty. Because some
people recognize them better as "Pentawatt" than "TO-220-5". ;O)

>      1. PFF_PSF_PSS_Leadforms.pretty

All Hall-Effect Transducers. Think about, what i wrote about the LEM
Hall-Effect Transducers.

>      1. Pin_Arrays.pretty
>      2. Pin_Headers.pretty
>      3. Potentiometers.pretty
>      4. Power_Integrations.pretty
>      5. Printtrafo_CHK.pretty
>      6. QFP.pretty

What about "Housings_QFP.pretty"?
>      1. Relays_ThroughHole.pretty
>      2. Resistors_SMD.pretty
>      3. Resistors_ThroughHole.pretty
>      4. Resistors_Universal.pretty

Mmmmh. I think, the name of the library should show the dual use SMD/THT
of the footprints. What about "Resistors_Universal-SMD-THT.pretty"?
>      1. SMD_Packages.pretty
>      2. Sockets_BNC.pretty
>      3. Sockets_DIP.pretty
>      4. Sockets_Mini-Universal.pretty

Going from general to special, this where once brand specific sockets
(Tyco?). Now they are known as Mate-N-Lok sockets, which are more
specificated to mini. So i would prefere Sockets_Mate-N-Lok.pretty or
even Sockets_Mate-N-Lok_Mini.pretty


>      1. Sockets_MOLEX_KK-System.pretty
>      2. Sockets_PGA.pretty
>      3. Sockets.pretty
>      4. Socket_Strips.pretty
>      5. Sockets_WAGO734.pretty
>      6. SOIC_Packages.pretty

What about "Housings_SOIC.pretty"?

>      1. SSOP_Packages.pretty

What about "Housings_SSOP.pretty"?

>      1. Terminal_Blocks.pretty

This Terminal blocks are WAGO 236 Type. So i would suggest the name
TerminalBlock_WAGO236.pretty. This are spring loaded terminal blocks and
not sockets.

>      1. Transformers_SMPS_ThroughHole.pretty
>      2. Transistors_OldSowjetAera.pretty
>      3. Transistors_SMD.pretty
>      4. Transistors_TO-220.pretty

Remove the transistors, because there are Diodes with TO-220 housings,
too. But then remove this Diode TO-220 footprints from the diode library
and put them into Housings_TO-220.pretty, too. 

>      1. Transistors_TO-247.pretty

Same like with TO-220

>      1. Valves.pretty
>      2. Wire_Connections_Bridges.pretty
>      3. Wire_Pads.pretty


> For those of you who have expressed their interest to give a hand,
> please voice in, saying which library you would like to tackle.
> Basically, you have to ensure the library respects the convention on
> all fronts. Some explanations on the procedure to follow have been
> placed here. Basically, it's the fork & pull request git workflow. If
> any questions arise, please ask.

I would like to keep me back a while, because i started a new job and
have much to do. But for first, i would like to have good strukturated
library conventions, which is written down offically somewhere.

There should also some rules for pdf previews, mesh models and boards,
because there is a (not so bad) way to distribute footprints with
boards, which can used for pdf footprints, too.
If you looked about the librarys, you will have noticed my pdf previews,
and there should be some rules for them, too. (like having always a
scale for checking printer distorsion, hints about CC or 
I have them written down last year or so, and i will search for them and
give them to you. They are incomplete, but might help you save some
time.

At last, here is one library left over at my harddisc, and i wonder,
wether it is not at your list:
"TO-12_TO-18_TO-43_TO-42_Housings_11Jun2013.mod". There are also mesh
models for TO18, too. I will rename and transfer it to
"Housings_TO-12_TO-18_TO-43_TO-42.pretty". ;O)

With best regards: Bernd Wiebus alias dl1eic






> Carl




Follow ups

References