kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #13070
Re: Library Convention
Kerusey has shown me an interesting
document<http://www.ti.com/lit/an/szza021c/szza021c.pdf>from TI on the
lib-commiters mailing list. It shows that one manufacturer
uses more than one orientation for the same package. This leads me to two
possibilities:
1. We fix pin 1 in quadrant 1, without exception. Those using a part
packaged in another way will have to make their own rotated footprint.
2. We add a way in the footprint name to describe the pin orientation. For
example: "TSSOP-20-Q1", for quadrant 1. This will clutter up the names a
bit more, but will allow committing every orientation.
I vote for option one, which will alleviate a bit all of the work done by
librarians and contributors, and move the small extra effort to those using
the more obscure parts. It will also keep our libraries slimmer.
As for the IC origin, I think Jean-Paul's thorough explanations make the
most sense. I think this is the convention we should adopt.
Another discussion we began on the lib-committers mailing list was about
the unit system used for schematic. I suggest we take the occasion to draw
every part using SI units, so millimeters (Symbols rule #1, could be
extended to more than pins actually). I know I will get some resistance on
that front. My main reason is that, obviously, millimeters are
international. It is true that lots of footprints have been designed using
the imperial system, however, for schematics, it's just the size on paper.
It won't change anything, it's a drawing. The meaning will stay the same.
Imagine for a moment if it was possible to just remove everything
pertaining to inches in eeschema. Wouldn't it be beautiful? I don't expect
it to happen anytime soon, but we can still work toward that direction. I
for one am tired of having everything twice: two wrench sets, two box sets,
two drill bit sets, two anything sets. I know it's tough for people to
switch over, but I think an effort has to be made if we want to get there.
Regards,
Carl Poirier
On Fri, Apr 18, 2014 at 10:55 PM, Jean-Paul Louis <louijp@xxxxxxxxx> wrote:
> Hi Carl,
>
> Thanks for giving me credit for the TH IC origin.
> <SoapBox ON>
> I can comment a bit on this.
> The reason for pin-1 origin is because of the way the machines used for
> DIP insertion works.
> In the 80’s, the leading manufacturer was Universal, but now quite a few
> far eastern manufacturers have appeared,but the technology has not
> developed much.
> The TH Inserters are using grippers to hold the TH parts. There is no
> rotation of the placement head, instead the table holding the PCB rotate
> -90deg, 0, +90 deg and 180 deg.
> There was no camera to register the location of the part, so it was
> imperative that the origin was on pin 1 always to simplify the programming
> of the machine, and consistency was a premium.
> This not true for SMT as the SMT placement machine do not use grippers,
> but suction cups. So for SMT, the origin is best at the center of gravity
> of the part which is called the centroid.
>
> For 17 years, I was the control authority for the master library of a very
> large company, so believe me if I tell you that it is not easy to get a
> consensus across tens of factories. I was successful in providing
> guidelines that saved my company millions of dollars, but I had to fight to
> make every see the light.
> <SoapBox OFF>
>
> I will be glad to help, and provide guidance for your effort as I am a
> strong supporter of open source.
>
> Is there a document that describe where the system data files should be
> for each architecture?
> I cannot find where the files should be on my OS X laptop, so what I have
> done might not be what should be done.
> I hope Adam will be able to shed a light on that.
> I am not an expert on cake files, so it is hard for me to address the
> situation. I need a document like "CMake for idiots”.
> Then I will be able to help fix the OS X build. Right now, my build
> complete fine, but the exec files end up in the wrong location,
> and the data files go somewhere I have not yet found.
>
> Best regards,
>
>
> *Jean-Paul*
> AC9GH @ EN61vr99
> louijp@xxxxxxxxx
>
>
>
>
>
> On Apr 18, 2014, at 9:15 PM, Carl Poirier <carl.poirier.2@xxxxxxxxx>
> wrote:
>
> Hi developers,
>
> First, I apologize for emailing you here about the library convention, but
> I'm under the impression it doesn't generate much interest on the
> librarians mailing list. For those who have read the original conversation,
> the only thing I added is the rule for extra pads to packages (SMD rule 3).
> I specifically wanted to get further advice on two details. Kerusey Kayru
> has brought up two points in the discussion on the library mailing list,
> but I would like to know more.
>
> 1. Is a device that's made by many manufacturers and sold in tubes, tapes
> or trays always in the same orientation?
> 2. For automatic insertion of THT components, where should the origin
> point be put? Jean-Paul Louis was saying to me it should be on pad 1, so is
> it always the case?
>
> This is what I have now:
>
> > General Rules:
> >
> > 1. Writing uses C-style naming with the first letter of each word being
> capitalized. Ex: "Socket_Strip_Straight_2x06"
> > 2. Every acronym has all of its letters capitalized.
> > 3. Manufacturer name is capitalized as usual. Ex: NEC, Microchip
> > 4. Component name must match its filename
> > 5. When dimensions are used in part name, they are in millimeters and
> unit is not capitalized. Ex: "Cap_10x13mm_RM5"
> > 6. Filename is the same as the part name
> >
> > Symbols:
> >
> > 1. A pin length of 4mm is used, except for components without pin
> numbers which use 2.5mm.
> > 2. Usual symbol is used if there is one
> > 3. Black-box components group pins logically, for example by function
> set, and ports in counter-clockwise position. Ex:
> >
> >
> > Footprints:
> >
> > 1. Follows datasheet recommendation unless intentional variation, for
> example longer pads for hand soldering
> > 2. Pad 1 is placed at the top left corner
> > 3. For through-hole components, origin is set on pad 1.
> > 4. For surface-mount devices, origin is placed in the middle of the chip.
> >
> > Names for Surface-Mount Devices (SMD):
> >
> >
> > 1. Specific package feature first, not separated by anything.
> > 2. Package name, numbers separated from letters using hyphen Ex: "SOT-89"
> > 3. Pin number is expanded with '+' sign for extra pads to package, with
> acronym for type of pad. Ex: Exposed pad under QFP: "QFP-48+1EP"
> > 4. Variation of package, separated by another hyphen. Ex: "SOT-23-5"
> > 5. If it's a manufacturer-specific package, name can be appended,
> separated by an underscore.
> > 6. Any modification to the original footprint, indicated by appending
> the reason. Ex: longer pads are used to facilitate hand soldering of a QFN
> component: "QFN-52_HandSoldering"
> >
> > Names for common devices, such as resistors, capacitors, etc:
> >
> > 1. Name of part, may be shortened for common components. ex: "Cap",
> "Socket_Strip", etc.
> > 2. Dimension, which may include at its end the positioning. Ex:
> "TO-220_Horiz", "1x02_Angled"
> > 3. Pad distance, in the form of an RM rating.
> > 4. Any modification to the original footprint, indicated by appending
> the reason.
> >
> > Names for devices that have their own footprint
> >
> > 1. Name of part.
> > 2. Part number. Ex: "Oscillator_SI570"
> > 4. Any modification to the original footprint, indicated by appending
> the reason.
>
> I think I have most cases covered. If we can settle down on that basis,
> then we'll adjust as we go for special cases. Thanks to all of you for
> the constructive comments.
>
> Regards,
>
> Carl Poirier
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp
>
>
>
References