Does a blind Throughole testpoint exist (or is it possible)

I hereby certify that I am not simply asking someone else to design a footprint for me.

This is an auto-generated message that is in place on the “footprints” section of the KiCad.info forum. If I remove it and ask for a footprint to be designed anyway, I understand that I will be subject to forum members telling me to go design my own footprint or referring me to a 3rd party footprint site.

Hi all, and thanks in advance for your help.

I will start with a bit of background. I work for a circuit board test company, and occasionally we produce one off circuit boards to aid in our testing.

My task is to reproduce a PCB designed by another company. (I intend to use kicad_skip to automate a great deal of this task, as most of the locations of the components and testpads are known in advance)

The PCb I am duplicating has multple layers (I think 10) 2 of which are ground planes.

The top layer is very dense, I will not be able to add any further circuitry to it.

The bottom layer consists of a grid of header pins. (see attached image). the header pins are the subject of this post.

The header pin socket is a blind hole through the bottom 5 layers, with a donut solderpad on the bottom most layer. (am told the hole itself is not plated, as this may cause the hole to be too small for the pin to be inserted.

This is the feature I am trying to reproduce in kicad.

I have a co-worker who is also attempting to duplicate this feature using Altium and he says that the only method he can think of is to add a blind via, then ask the FAB house not to plate it.

But I would like to avoid none standard parts if possible.

Does anyone know if describing this in keycad is possible?
If I have explained anything poorly, feel free to ask for clarification.

Thanks again in advance.
Andy

I don’t know if an average PCB house will be able to make this. To create a NPTH blind via, the drill would need to be only partially drilled through the board after plating. Not sure this possible.

Those test pins, do they only connect to the outside layer, or also to the pad inside the hole? That second would be the weirdest.

A little bit later:

I assume that is bottom of the PCB, not bottom of the hole.

It is possible this is a special layer stackup, win which the back “half” and the front “half” are first made independently, and then laminated together. This would make it similar to “blind via’s”, but without the plating.

There is a technique called “back drilling” or “depth drilling”. The most common usage for back drilling is for via’s in very high frequency applications. In such, the extra length of the via “tubes” are drilled away after manufacturing to a specified depth. But I see no reason why depth drilling could not be done directly into the PCB instead of an already existing via hole.

A simple search brings up plenty of results for back drilling.
https://html.duckduckgo.com/html?q=pcb+depth+drilling

The first link is to altium, which has direct support for this:

Other links point to PCB manufacturers.
Doing this will probably require some extra coordination with a PCB manufacturer, even when done in altium, but more so in KiCad.

KiCad does not have direct support for this (yet). First thought for hacking around this in KiCad was to use a footprint / pad with a very specific drill size, and during production, use that specific drill size for the back drilling. But that does not work in this case because you can not allow these holes to show up in the front layers of the PCB.

Just specifying a donut shaped SMT pad can probably be done in KiCad but It would need to do some experimentation on how to do this. The donut shape is probably important, because NPTH is drilled in a separate process step, and drilling through copper would create burrs on the copper.

For the holes themselves, I guess it’s easiest to create an array of blind via’s. This will give you hole coordinates and a (special) drill diameter, but as I said before, it will require extra communication with your board manufacturer. Adding a picture with a closeup of how the holes in your current PCB look like may help.

Thank you for your detailed answer.

In answer to your questions:
1, do they only connect to the outside layer, or also to the pad inside the hole?
They only connect to the outside layer. I am told that if the inside of the hole was plated the tolerance would be too poor to ensure we could fit the pins.

2, I assume that is bottom of the PCB, not bottom of the hole.
correct, the metal surrounding the holes in the picture I uploaded is the donut I was refering to.

The reason I am using Kicad is the number of libraries that allow me to programatically produce schematic and pcb files.

I suppose there is nothing to stop me from generating everything in kicad, then importing the design into Altium, where the backdrilling could be worked on. (We already have somebody familier with Altium, I have been tasked to help them out by generating as much as possible automatically)

I will have a talk with them about your suggestions, thank you very much.

If they have any questions that I can’t answer, I may reply again if that is OK.

Thanks again
Andy

That is fine.

We made them before with a certain house, but with lots of manual labour. My take is to automate the process.

Something that may work to do it completely in KiCad:

  1. Design the PCB with donut shaped SMT pads.
  2. Create Gerbers, etc.
  3. Make a copy of the project.
  4. In the copy, replace all the footprints with donut SMT pad with a footprint that has a hole.
  5. Generate drill files.
  6. Combine this drill file with the orignal project.
  7. Talk to your PCB manufacturer if they can make this.

Note, the back drilling is a separate step anyway, so having all these holes in a separate file is probably a bonus.

It may be a good idea to create a test project with just a small array of holes and then shop around for a PCB manufacturer that is willing to help you with making this.

1 Like

I’d second the idea of talking to the fabrication house (PCB manufacturer) that you plan to work with. They may tell you that they love the idea of separate drill files (as @paulvdh suggested above), but they may also say that they only accept ODB++ for a complex board like this, in which case you definitely need to move to Altium for the fancier pad stack control (and backdrilling). Double and triple check the import when you move from KiCad to Altium though! I’ve had good luck in the past, but I don’t know how up to date Altium’s KiCad importer is.

In the longer term, consider giving this issue a thumbs up to show support for custom pad stacks in KiCad. True padstacks and via stacks with differing geometries on different layers (lp:#1827233) (#2402) · Issues · KiCad / KiCad Source Code / kicad · GitLab

I’ve heard some rumors that the KiCad importer in altium has not really been updated after It’s release. It may only support KiCad V6 files (Or I think that was the version it supports).

But it’s just rumors, I do not have nor use altium myself.

Looks like as of last week(!) Altium 24.6 can import KiCad 7 and 8, but apparently struggles with arcs in KiCad files.

1 Like

If I had to do this, I would create a pad with a drill size that was used nowhere else on the board.
Then, I would, working with my fab house, manually edit the drill file to specify that tool number to be drilled to a specific depth.

That would be the logical first choice, but from what I understand, this is not acceptable because through holes conflict with:

But it did trigger another Idea. KiCad has no GUI interface to add blind via’s to a PCB, but it may work if you hack the code for a blind via into a footprint. In the past some other things have been hacked into footprints for which KiCad does not have direct support. I don’t know whether it works, but you can give it a try. The workflow would be something like:

  1. Design your PCB partially (Number of layers is correct).
  2. Place a blind via on the PCB.
  3. Close KiCad, look up the text lines for the blind via in the PCB file.
  4. Copy those lines into the footprint for the donut hole. This may need coordinate modification, I guess that inside a footprint all coordinates are measured from the footprint’s anchor point.
  5. Put a few of the modified footprints on the PCB and check whether it works.
2 Likes

That sounds like a fun bodge.

I will have to give that a go, and let you know how it goes.

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.