Skip to content
This repository has been archived by the owner on Oct 2, 2020. It is now read-only.

extend selection of DIN41612 connectors #1076

Merged
merged 13 commits into from
May 5, 2020
Merged

Conversation

hvraven
Copy link
Contributor

@hvraven hvraven commented Nov 9, 2018

This selection was generated by an updated script using the
kicad-footprint-generator. This current selection was built by checking
the catalogs of ept, ERNI and Harting and collect the most standard
series.
Added in this commit were: B (was already present), C, D, E, F, Q, R
Still missing standard series are:

  • H11, H15 (vertical and horizontal are different from each other and
    require an updated script, only H11 horizontal is present)
  • M (has a lot of variations which needs to be tracked).
    There are also many manufacturer specific variants which might follow
    (some are very easy to add to the script, others not so much).

The new script was made to copy the style of the existing scripts, just
adding the increased flexiblity to generate all series. Changes to the
generated footprints compared to the existing B series are:

  • a1 pin is a roundrect instead of rect
  • vertical connectors got their silk ref moved to the side. They are
    often used on backplanes, so there might be no space on top.
  • courtyard of the horizontal connector is simpler on the connector
    side. This space if off the PCB anyways and there needs to be room to
    attach the connector.
  • names are now always using two digit numbers for rows and pins.
  • Q and R series vertical have slightly more drawings, trying to
    symbolise their inverted connector nature (vertical is male, while
    usually they are female).

There are two series where the names contain the rows which are
occupied. These are due to connectors only ept sells (E and F series
2x16). The standard is to leave the center row empty, ept also sells a
variant where the top row is empty. To distinguish those only the
non-standard has the rows added to the name.

As a general remark to these connectors. The naming of the pins and rows
is very strict, based on the location relative to the mounting position.
At least in vertical this always holds true, horizontal got some
flexibility on the spacing. The origin is always located at the a1 pin,
even if it is not present. This ensures that connectors can be switched
without having to change everything. This was already the case for the
existing connectors.

There are no real datasheets (as far as I could see the standard is not public). I worked of the catalogs of Harting, ERNI and ept. Some example screenshots below, but there are way to many connectors to display them all. The generation script can be found here, I will post a PR once it is clear that the style is fine.

screenshot_20181109_084445
screenshot_20181109_084526
screenshot_20181109_084555
screenshot_20181109_084621screenshot_20181109_084423

This selection was generated by an updated script using the
kicad-footprint-generator. This current selection was built by checking
the catalogs of ept, ERNI and Harting and collect the most standard
series.
Added in this commit were: B (was already present), C, D, E, F, Q, R
Still missing standard series are:
  - H11, H15 (vertical and horizontal are different from each other and
    require an updated script, only H11 horizontal is present)
  - M (has a lot of variations which needs to be tracked).
There are also many manufacturer specific variants which might follow
(some are very easy to add to the script, others not so much).

The new script was made to copy the style of the existing scripts, just
adding the increased flexiblity to generate all series. Changes to the
generated footprints compared to the existing B series are:
- a1 pin is a roundrect instead of rect
- vertical connectors got their silk ref moved to the side. They are
  often used on backplanes, so there might be no space on top.
- courtyard of the horizontal connector is simpler on the connector
  side. This space if off the PCB anyways and there needs to be room to
  attach the connector.
- names are now always using two digit numbers for rows and pins.
- Q and R series vertical have slightly more drawings, trying to
  symbolise their inverted connector nature (vertical is male, while
  usually they are female).

There are two series where the names contain the rows which are
occupied. These are due to connectors only ept sells (E and F series
2x16). The standard is to leave the center row empty, ept also sells a
variant where the top row is empty. To distinguish those only the
non-standard has the rows added to the name.

As a general remark to these connectors. The naming of the pins and rows
is very strict, based on the location relative to the mounting position.
At least in vertical this always holds true, horizontal got some
flexibility on the spacing. The origin is always located at the a1 pin,
even if it is not present. This ensures that connectors can be switched
without having to change everything. This was already the case for the
existing connectors.
@evanshultz evanshultz self-assigned this Nov 9, 2018
@evanshultz
Copy link
Collaborator

This is fantastic! Adding more of these connectors was on my long-term list of tasks, but now there's no need with your quality footprints!

  • Please add a datasheet or a few to each footprint so we have attribution. Since we use English for the KiCad library please use English documentation.
  • In the description, would you mind to swap the text describing the rows and pins so that the number of rows comes first? Row first is (I believe) the most common way to describe connectors.
  • http://kicad-pcb.org/libraries/klc/F3.6/ specifies that no leading zeros should be used in the number of rows.
  • I prefer the original silk ref des placement where the silk is right side up by default. I understand what you're saying, but the silk ref des usually must be moved anyway after component placement.
  • Am I missing seeing a pin 1 mark on the fab layer?
  • How are female and male demarcated? For example, type B/3 is available in both M and F genders in a vertical footprint, but I don't see male and female footprints. Since the 3D model is tied to a specific footprint (at least for now, and it will always have a default one), we should separate by gender.
  • Please offset silk from fab lines by 0.1mm so the line edges just touch.
  • Make the silk run around the outside body of the connector as much as possible (only avoid pads).
  • For 1mm drill holes, IPC 2221 specifies 1.55mm annular rings for Level B. You can keep slightly larger pads if you like, just letting you know IPC says slightly smaller is OK.

Checking the script is better/easier than reviewing each individual footprint. Let me spend some more time looking at the script and footprints, and in the interim it's fine to go ahead and submit the script PR.

@hvraven
Copy link
Contributor Author

hvraven commented Nov 13, 2018

I started the PR for the footprint-generator and fixed the trivial parts.

About the comments:

  • There is currently no pin 1 marker on the fab layer, I always find it difficult to find an appropriate style. Do you have any suggestions?
  • Female / Male are so far not demarcated as they share the same footprint. I was not thinking about 3D models. I will go through them once I have time and generate both variants.
  • I assume your silk screen running around the body comment was targeting the horizontal connectors. I would rather stick to the current style, maybe extend it a bit in the center towards the pins. The first pin row is already blocking most of the housing shape and I would rather not go around the pins. One could draw the full line if the a line is not occupied. A manually drawn example of the extension:
    screenshot_20181113_084529
  • I reduced the copper diameter a bit. As some of these connectors have a lot of pins to layout the extra space might come in handy.

@evanshultz
Copy link
Collaborator

Likely a suitable pin 1 mark on the fab layer would be adding two lines to form a triangle against an existing line on the layer. Here is an example:
image

I was mentioning silk for both horizontal and vertical. As shown above, tucking closer to the pins (avoid pads by the line width, or 0.12mm) looks nice. Small segments between pads isn't necessary. But what about running all around the extents of the header? Are there situations where this header isn't always hanging off the PCB? For vertical ones, silk will help avoid inserting the part incorrectly by 180 degrees. The last screenshot in your first post would otherwise have little way to show which is the correct insertion. If the physical part doesn't clearly show pin 1 even one rectangular pin isn't helpful.

Also, in the images at the top I see a couple footprints without any rectangular pin.

@hvraven
Copy link
Contributor Author

hvraven commented Nov 13, 2018

Thanks for the helper for the fab layer, I will integrate that.

About the silk layer: As far as I know all of the horizontal connectors extend below their mounting plane on the PCB and must be placed on the edge, but I will double-check that. The vertical connectors do already have a slight silk painting for the connector outline, I moved that out a bit, but didn't post a new screenshot. It now looks like this:
screenshot_20181113_231104
I can run this around as far as possible instead of having only the start of it, but it won't work for all of the connectors due to pin positioning.

@evanshultz
Copy link
Collaborator

Alright. Thanks for the update. If you would check into the horizontal connectors requiring a board cut and provide as much silk on vertical connectors as possible that's all my questions for now. Please make those changes and push another set of footprints and I'll review them in depth. Thanks again!

@evanshultz
Copy link
Collaborator

@lorem-ipsum
Will you be getting back to this PR soon?

@evanshultz evanshultz added this to the 5.1.0 milestone Dec 19, 2018
@hvraven
Copy link
Contributor Author

hvraven commented Dec 21, 2018

I am quite busy right now due to the end of year season, but I hope to find some time around christmas to work on this again.

@hvraven
Copy link
Contributor Author

hvraven commented Dec 28, 2018

I extended the silk marker for the vertical connectors to include the full outline where possible, but I personally preferred the previous solution. As a general note: it is not possible to place the connectors in the wrong orientation (without damaging the connector) as the mounting holes are placed asymmetrically.
I also checked the horizontal connectors, they are all designed to be placed at the board edge.

this is the output of
scripts/Connector/Connector_IEC_DIN/generate_din41612.py  in
kicad-footprint-generator at revision
e610537351f77d457bc2f90f021258384de20fc8
@hvraven
Copy link
Contributor Author

hvraven commented Jan 25, 2019

@evanshultz could you take another look? I tried to integrate your feedback.

@myfreescalewebpage myfreescalewebpage removed this from the 5.1.0 milestone Jan 29, 2019
@evanshultz
Copy link
Collaborator

A few notes after taking a look at the footprints in the latest commit:

  1. Should there always be a round rect pin? The lowest letter-number combination? So if a1 isn't present then it will be a2?
  2. There is text smashed together in the description. For example, DIN41612_B2_2x16_Horizontal includes 2 rows16 pins wide. Perhaps a missing space or comma?
  3. I'm not seeing a fab pin 1 mark. Did you get to add that?
  4. Some of the silk pin 1 marks are offset. See DIN41612_E_2x16_Vertical:
    image
  5. Still missing female and male variants.
  6. Outer silk lines can be closer to fab lines. They are 0.2mm now but can be 0.11mm. This is optional.
  7. I like your suggestion at extend selection of DIN41612 connectors #1076 (comment) to extend the silk lines in towards the outer pins in the row on horizontal footprints. Can you do that?
  8. I would think the silk lines showing connector orientation (around the pins) could be placed on top of the fab lines. They're indicating exactly the same thing and so no offset is needed.
  9. On the vertical connectors, there are overlapping fab lines above and below the pins:
    image
  10. By the vertical connectors not being assymetrical, you mean how to X position of the 2.8mm mounting holes on DIN41612_R2_3x16_Vertical are not inline with the B row, right? So trying to insert the connector 180 degrees around would result in a 0.6mm mis-alignment and it would be obvious to any normally-functioning human that something is wrong.

@evanshultz
Copy link
Collaborator

@lorem-ipsum
Did you have a response for my comments above? Also, and sorry if this sounds pushy, but do you have time to work on this soon? Some other DIN 41612 PRs have popped up recently and if these nice footprints can be get merged we should be halfway to eliminating future issues or requests. So that all adds up to: thank you for taking the time and effort to get so far already!

@agalakhov
Copy link

BTW, does somebody work on DIN 41617 as well?

@evanshultz
Copy link
Collaborator

@agalakhov
Not as far as I'm aware.

@hvraven
Copy link
Contributor Author

hvraven commented May 22, 2019

2nd try as github ate my comment yesterday. I've integrated your feedback for the existing connectors. The selection is not complete yet, but I would like to get those done first :-) About your comments:

  1. I am not really sure. Currently only a1 is made a square, if it does not exist then there is none. As the series uses this strict naming scheme I thought it would make sense. But I can also change that
  2. fixed
  3. added them. I used an arrow for the vertical ones and a simple bar for the horizontal ones as I found no nice spot for an arrow like this:
    Screenshot_20190522_081859
    Screenshot_20190522_081833
  4. basically the same as 1. they always point at a1 even when it is missing.
  5. These are all that exist in the standard. Usually vertical is female and horizontal is male. Only exceptions are the R and Q series where this is flipped. There exist non-standard extensions which I would like to add later on, but they usually come with slightly different outlines.
  6. moved them closer (was easy to do)
  7. I moved them as close as I could before they started colliding with the pins 32. The ones at top I kept the same to keep it symmetric.
  8. changed
  9. fixed
  10. yes, thats exactly what I mean. Nothing one can not "fix" with force, but it should be enough for regular users.

@hvraven
Copy link
Contributor Author

hvraven commented Apr 15, 2020

Sorry for the long silence. About your points: I increased the clearance of the silk screen to .2.

Regarding the naming: I just realised that I broke the pin naming somewhere while integrating the changes. I've uploaded a new version, it follows the pattern @chschlue has posted, which was also how it was in the beginning. I hope this fixes most of the confusion, sorry for that.

The only open question remaining from my side is which pin to mark on the silk and fab layer. Always the a0 pin, even if it is not existing (thats how it was in the beginning, also used by the few existing footprints), or the lowest numbered existing pin (which is the current status).

@evanshultz
Copy link
Collaborator

@lorem-ipsum
Thanks for the update! We still have time to get this into 5.1.6 and I'm willing to put in the time to get this done if you are.

The silk-to-pin clearance is just less than 0.2mm on some footprints, like DIN41612_Q2_2x16_Male_Horizontal_THT (oddly, on other similar horizontal connectors it is >0.2mm). I measure ~0.17mm.
image

Also here on DIN41612_D_2x8_Male_Horizontal_THT:
image

I checked pin numbers and row names against the above images and have the following questions:

  1. Is it intentional there is not full-stuffed type D? With a row/column spacing of 2.54mm and 2.6mm pads it couldn't possibly work. I'm not asking you to add any more footprints, but just want to check that the existing footprints are correct.
  2. Type F: It looks like only 3 letters are supported but the spec above shows 4. For example, DIN41612_F_2x16_Female_Vertical_THT has columns z and d but why is the latter not f? Is that correct according to the spec when some letters are not used? The footprints appear to have three equally-spaced rows/columns but I'd expect four equally-spaced rows.
  3. Types Q and R are not above. @chschlue could you help us out again?

Type F also has a few things I'm not sure about:

  • The origin of DIN41612_F_2x16_Female_Vertical_THT is not inline with column z while it is on the horizontal version. Is that an error?
  • And on that same connector shouldn't z2 be the origin?
  • Spacing between rows/columns isn't consistent. Is that correct? DIN41612_F_3x16_Female_Vertical_THT is 5.08mm between columns but the horizontal version is 2.54mm between rows.

Regarding the pin marking, I agree with Rene's comment at #1076 (comment) that the lowest-numbered pin that is present should be marked. So a1 instead of c1 on DIN41612_R2_3x16_Male_Horizontal_THT, for example.

And another one for you, @chschlue : does the spec say anything about how to name letters if they aren't fully stuffed? For example, for types with three letters is removing the middle letter and only using the 'lowest' letter the only possible variants? Can only the two 'biggest' letters be used? For four-letter types are these any rules or suggestions for de-stuffing?

@hvraven
Copy link
Contributor Author

hvraven commented Apr 17, 2020

I increased the clearance further, I guess the issue was that I have .2 clearance to the point defining the line. This neglects the extend of the silk line which can still reach into the clearance. I increased it by this size, hopefully it is good now. How can I get the view drawing this .2 line around the pad? I couldn't find any setting for it in the footprint editor.

The connectors I added were based on the connectors I found in the catalogues of the manufacturers listed in the first post. I don't know which ones of those are standard and if there are more which are standard (but if they don't produce them you will have a hard time buying them). Harting lists parts as extension to the norm. They follow the same structure, but I read it that they are not defined in the official standard.

  • In those I did not find any fully stuffed D. As it is for higher currents I assume this is on purpose to allow for thicker pins / wires / traces
  • Q and R are also from the catalogues. They follow C and B, but Male and Female are switched between vertical and horizontal.

About the row numbering: It is supposed to be a grid with 2.54mm spacing. Columns are numbered from 1 to 32 and row starting at "a" with increasing digits as they are needed. Some connectors skip rows to get larger clearance between the rows (e.g. the C series). A few add a row in front of the "a" row, this one is then labelled "z" (so -1 in the alphabet). The vertical connectors follow this grid exactly as the pins go straight down into the PCB. For horizontal ones it is not as fixed as it only has to match on the mating surface. So for those the row spacing can change as the pins are bend down to the PCB at arbitrary positions, while the columns spacing has to stay the same. The mounting holes are fixed for both cases. For the horizontal one it is a fixed offset from the 1 column and the PCB edge, for the vertical a fixed offset from the a1 pin.

  • So for the F series with three rows you mentioned the labelling starts one early at "z", skips "a", has "b", skips "c" and has "d".

@evanshultz
Copy link
Collaborator

I set the Pad Clearance in the Footprint Settings dialog to get the ring around the pad of a desired oversize:
image

I don't see any silk change on DIN41612_Q2_2x16_Male_Horizontal_THT compared to what I showed, above. And on DIN41612_D_2x8_Male_Horizontal_THT the round pads are OK but the round rect is like this:
image

Regarding letters, thanks for the information. As one example, the screenshot from @chschlue above shows Type D has letters z, b, d, and f. That doesn't match with the above but I'm not sure what is the right way to go. I am more inclined to use a spec rather than datasheets if it comes down to that. Do you see this also and can you reconcile it? Maybe I'm missing something obvious?

@chschlue
Copy link
Contributor

  • Q and R are also from the catalogues. They follow C and B, but Male and Female are switched between vertical and horizontal.

True. Same for S, T, U and V.
60603_t2_1
60603_t2_2

Give me a minute or two to read up on the other open questions.

@chschlue
Copy link
Contributor

chschlue commented Apr 18, 2020

  1. Is it intentional there is not full-stuffed type D? With a row/column spacing of 2.54mm and 2.6mm pads it couldn't possibly work. I'm not asking you to add any more footprints, but just want to check that the existing footprints are correct.

D (and its inverted counterpart S) has contacts in rows a and c, even-numbered columns only.

  1. Type F: It looks like only 3 letters are supported but the spec above shows 4. For example, DIN41612_F_2x16_Female_Vertical_THT has columns z and d but why is the latter not f? Is that correct according to the spec when some letters are not used? The footprints appear to have three equally-spaced rows/columns but I'd expect four equally-spaced rows.

The drawing I posted earlier is a little misleading by itself.
F (and U) is triple-row mechanically, with contacts specifed in even-numbered columns and rows z, b and d or z and b only, bottom row d being empty.
G (and V) has four rows z, b, d and f, all stuffed, even columns only.
Does that make sense?

  1. Types Q and R are not above. @chschlue could you help us out again?

See my last post.

  • The origin of DIN41612_F_2x16_Female_Vertical_THT is not inline with column z while it is on the horizontal version. Is that an error?
  • And on that same connector shouldn't z2 be the origin?

Apart from that I suggest calling this one DIN41612_F_2x16_RowsZD_Female_Vertical_THT and renaming the other one DIN41612_F_2x16_Female_Vertical_THT because DIN41612_F_2x16_RowsZB_Female_Vertical_THT is the one that's actually standardized.

  • Spacing between rows/columns isn't consistent. Is that correct? DIN41612_F_3x16_Female_Vertical_THT is 5.08mm between columns but the horizontal version is 2.54mm between rows.

Don't forget that vertical contacts directly relate to footprint holes while the horizontal connectors allow for variations saving PCB space.

And another one for you, @chschlue : does the spec say anything about how to name letters if they aren't fully stuffed? For example, for types with three letters is removing the middle letter and only using the 'lowest' letter the only possible variants? Can only the two 'biggest' letters be used? For four-letter types are these any rules or suggestions for de-stuffing?

Many of the connectors ERNI and Harting manufacture are simply out of spec (there is no such thing as an IEC 60603 single row B-type, for example, nor any half- and third-length connectors at all).
There are connectors like a five-row E with only its outer rows a and e stuffed, b to d missing or the F variant mentioned above.
Generally, the spec is meant to be exhaustive and contains no provisions for "logical" extensions.
Does this answer the question?

Edit: Some of the stuff I wrote up here had already been answered by @lorem-ipsum. Never mind.

@evanshultz
Copy link
Collaborator

Well... I'll go with what @chschlue says on the parts and naming. Apart from the one naming change above does everything else look OK to both of you?

Apart from that, I think only the thing that really needs to be done is moving the silk pin 1 marker. If the silk-to-pad clearance can grow a bit to meet 0.2mm everywhere that's a bonus.

@hvraven
Copy link
Contributor Author

hvraven commented Apr 29, 2020

So. I think I found the part I missed when increasing the clearance, now it looks ok for me. I also moved the pin 1 marker on the horizontal footprints back to its previous position. It always points on the lowest numbered pin.

Screenshot_20200429_095552

@evanshultz
Copy link
Collaborator

The pin 1 markers look great. Thank you!

Silk-to-pad clearance is also good. It's close but great on DIN41612_D_2x8_Male_Horizontal_THT and a bit larger on DIN41612_Q2_2x16_Male_Horizontal_THT. But both will be OK.

Can you please address the footprint naming suggestion from @chschlue at #1076 (comment)?

Apart from that I suggest calling this one DIN41612_F_2x16_RowsZD_Female_Vertical_THT and renaming the other one DIN41612_F_2x16_Female_Vertical_THT because DIN41612_F_2x16_RowsZB_Female_Vertical_THT is the one that's actually standardized.

@chschlue
Since you seem to have the specs and may be more familiar with the whole range of parts than me, would you mind taking a quick look to see if I'm a bonehead?

Lastly, because I apparently want to cause you problems and never merge this, it appears the horizontal connectors have a much larger outer silk offset then vertical ones. Vertical ones are nice and tight at 0.11mm, while horizontal are much farther away at 0.26mm. It doesn't make the footprints unusable, and KLC doesn't have a specific value for this distance, but 0.11mm would be nice if you could use that for all footprints. Compare, for example, DIN41612_B2_2x8_Female_Vertical_THT vs DIN41612_B2_2x8_Male_Horizontal_THT:
image
image

Thanks again, @lorem-ipsum ! 5.1.6 is planned for a couple weeks and it I'm very hopeful and excited these footprints will make it!

@chschlue
Copy link
Contributor

chschlue commented May 2, 2020

I have the specs and I meant to take look but forgot about this PR again.
I should be able to get at it some time this weekend.

Copy link
Contributor

@chschlue chschlue left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

din41612_1
din41612_2

  • applicable general dimensions are correct
  • spec requires (2.8 .. 2.9)mm mounting holes, so perhaps we should use 2.85 instead of 2.8
  • type F shall have (1.6±0.05)mm PTHs

@hvraven
Copy link
Contributor Author

hvraven commented May 4, 2020

I did increase the size of the mounting holes to 2.85mm and performed the rename.

About the F series: should it be for all versions? I checked ept, Harting and erni. ept and erni use large holes (1.6mm) only for the vertical connectors, not for the horizontal, Harting does not use them at all. I changed it for the vertical ones to the 1.6mm size, for the horizontal I think the space will become to limited when using 1.6mm holes. Also no one seems to produce them.

Also the gaps in the silk screen are assymetric around the holes. I checked my code and couldn't find any reason for this. Currently I am suspecting some issues in addPolyLineWithKeepout, but I could be wrong. I checked the pins and couldn't find any where it extends into the 0.2mm tolerance, so I would keep it at this for the moment and try to fix this later.

@chschlue
Copy link
Contributor

chschlue commented May 4, 2020

Sry, you're right.
1.6mm is only for vertical F, 1mm is correct for horizontal.

@hvraven
Copy link
Contributor Author

hvraven commented May 4, 2020

Ok, good. Thank you very much for spotting this.

@evanshultz
Copy link
Collaborator

This all looks good to me, after looking at the diff and a quick visual check in KiCad. @chschlue ? Any comments?

@chschlue
Copy link
Contributor

chschlue commented May 5, 2020

LGTM

@evanshultz evanshultz merged commit 3bff23e into KiCad:master May 5, 2020
@evanshultz
Copy link
Collaborator

@lorem-ipsum
Thanks so much for your huge contribution here! Many other users had asked for these footprints and now the library includes a big range of them plus an updated script upon which more can be built. I really appreciate all your time and expertise to make this happen!!

@garlick
Copy link

garlick commented May 5, 2020

I'm super excited to use these!

@antoniovazquezblanco antoniovazquezblanco added this to the 5.1.6 milestone May 6, 2020
@hvraven hvraven deleted the din41612 branch May 14, 2020 08:19
@aewallin
Copy link
Contributor

great work!
what would be needed for H15? I am looking at plug-in 3U powersupplies and they seem to use H15 quite often, sometimes called "power DIN" maybe?

@evanshultz
Copy link
Collaborator

@aewallin
The script will be merged soon and then it will be a starting point to work from. @lorem-ipsum mentioned at #1076 (comment) that H15 will be a likely next addition.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Addition Adds new footprint to library Enhancement Improves existing footprint in the library
Projects
None yet
Development

Successfully merging this pull request may close these issues.