9
\$\begingroup\$

For programming on most of my larger PCBs I include a 0.1in pitch 1x5 header.

For prototyping this is great because I can connect my programmer to it directly. However for production I could eliminate the header part if there was a programming adapter that could mate to the unpopulated footprint.

I'm thinking something like banana plugs, but ~40 mills in diameter.

I'm aware that I could use pogo pins, but these require a jig or other mechanism to hold them onto the board, and my production quantities are not enough to justify that for each design. The connector I'm imagining could be inserted from one side and retain itself by friction.

Does such a connector or contact exist, and if so what is it called?

I'm also aware that there are cables that are designed to mate to a particular unpopulated footprint, but I would like to keep the 0.1in pin header footprint for general compatibility, and backwards compatibility with existing designs.

\$\endgroup\$
3
  • 1
    \$\begingroup\$ Use a PCB edge connector. Placing finger pins on the PCB are nearly without cost, the main cost is just on the programmer connector. They are also available with ribbon cables. Here is just one of many examples: electronicsurplus.com/… \$\endgroup\$
    – Nedd
    Apr 4 at 21:46
  • 1
    \$\begingroup\$ @Nedd - I am using PCB edge connectors too. Right and left on the PCB is a little slot to push in the connector and in the middle are the finger pins. The bottom side must be without components too, but this is very cheap and reliable. I have done this like USB-C (bottom side with the "rotated" contacts), so it is not important how you put in the connector. \$\endgroup\$
    – MikroPower
    Apr 4 at 21:57
  • 2
    \$\begingroup\$ @Nedd Standard edge connectors consume quite a bit of area. Additionally, you need to bevel the edge which means the board house has to run it through a separate bevel machine or else it takes a while on the router. If you don't you'll tear up the edge connector and use unnecessary force during connection and disconnection. (Prime example: DIMMs, which are a pain to install and are rated for 50 cycles) \$\endgroup\$
    – user71659
    Apr 5 at 8:07

3 Answers 3

17
\$\begingroup\$

This is an idea taken from Xinlix demo boards which we use for bringing up boards.
A standard header footprint with offset pins (0.30 mm for the example below) will provide enough friction to hold header pins in place for JTAG programming. The drawing below is for a 2 mm pitch header pattern. You will need to figure out what offset to use for a 0.1 inch pitch header pattern.

enter image description here

Image of JTAG programming header in use with offset footprint pattern.
enter image description here

\$\endgroup\$
2
  • \$\begingroup\$ In my company, we used to have a 5-pin 0.1in UART header on our test boards, and did just that; pin 2 was offset slightly so a friction fit would work. Interestingly we also used Xilinx heavily, so may well have stolen the idea! \$\endgroup\$
    – SiHa
    Apr 5 at 6:52
  • \$\begingroup\$ " You will need to figure out what offset to use for a 0.1 inch pitch header pattern." Does anyone have a rough guess as to how much offset to use? Typically, holes on 100 mil pitch connectors are over-sized by about 10 mils compared to the pins, so somewhere close to10 mils offset seems like a good starting point. \$\endgroup\$
    – user4574
    Jun 19 at 1:52
13
\$\begingroup\$

I'm thinking something like banana plugs, but ~40 mills in diameter.

I have been searching for that for a long time and I have not been able to source any. I have seen this question asked in other forums, and no one was able to find any either. Too bad.

If you must use the same 5 pads in a 0.1" row for production, then your only option is to use test fixture probes. Either as part of a programming fixture, or one of those programming clips that you can find on Amazon and AliExpress.

Programming clip

{AliExpress}

Having said that, my company has programmed 1000's of boards by sticking a 5-pin PCB pin strip plugged to a PIC Kit programmer and slipped into the 5 holes on the board to be programmed. The weight of the PIC Kit programmer tilts the pins so that they make good contact with the barrels inside the pads.

If you can use a different hole pattern, then I recommend the TagConnect solution.

TagConnect

{TagConnect}

\$\endgroup\$
5
  • 2
    \$\begingroup\$ I've also has thousands of boards programmed just sticking a 4-pin header into holes in the board. Cheap, but works. \$\endgroup\$ Apr 4 at 22:17
  • 3
    \$\begingroup\$ If you slightly stagger/offset the holes in the PCB (eg by 10mils) then the pin headers can be held in by friction. \$\endgroup\$
    – user85471
    Apr 4 at 22:22
  • 1
    \$\begingroup\$ Just size the holes for a tight fit and temporarily push in a 5 pin header for the programmer \$\endgroup\$
    – PStechPaul
    Apr 4 at 22:55
  • \$\begingroup\$ @Kubahasn'tforgottenMonica Thanks maybe I'm overthinking this. I've done that myself, and it does work. \$\endgroup\$
    – Drew
    Apr 5 at 14:03
  • 1
    \$\begingroup\$ I've used the TagConnect connectors for a while now. They have the added benefit that you can have two separate connectors that use a single set of holes - one on the top of the PCB and one on the bottom. A nice secure connection, very small footprint, and adds no cost to production. \$\endgroup\$
    – bta
    Apr 6 at 0:29
0
\$\begingroup\$

There are headers that attach inline with your circuit board. I sometimes see them called "straddle mount" (example). Your board slides between the two rows of pins, and the connector solders to surface mount pads on both the top and bottom of the board. The connector pins usually have enough tension to hold themselves in place temporarily without soldering (especially if you bend them a little bit first). That means you can just slip one on your board, program it, and slip it back off. This requires you to have access to the side of your board, though, so this is less useful after the board is mounted in a case.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.