Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

recommendation for chip programming connection (pogo?)

+2
−0

Background: I have several microcontroller based projects with custom PCB that have been in very-low-volume production, but the quantities are starting to go up. (batch sizes now ~100 and threatening to go to ~1000). The economics here are such that part cost is a secondary concern.

I don't feel ready to commit to having the chips pre-programmed, and while I have a bootloader, it is considerably slower than flashing the chip using it's in-system-programming feature.

So far I have put a dedicated picoblade programming header for simplicity, but even this is starting to be a nuisance, and a waste of footprint space.

Question: Looking for recommendations for alternatives, experiences, etc.

I have seen customized programming devices with pogo connectors (some very slick ones, in fact), with unmasked pads on the receiving end on the device to be programmed, and fancy alignment mechanisms.

In particular I was thinking of using something like a 1.27mm thru-hole footprint with smaller holes than the pogos to receive the connections, rather than flat pads. Then maybe ok for the person doing the programming to just hold it in place by hand for the 3-4 seconds it needs.

I was wondering if there are anyone here has recommendations for any off-the-shelf components they have used, or alternative methods that may be relevant.

History
Why does this post require moderator attention?
You might want to add some details to your flag.
Why should this post be closed?

1 comment thread

General comments (4 comments)

1 answer

+6
−0

I have also had this problem for production runs of 100s to 1000 where you don't want to spend too much on a full fancy jig.

Put plain round pads on the bottom of the board. 50 mils is usually a good diameter. Those work well with simple 90° pogo pins. Don't use holes. In my experience, a pogo pin to hole contact is less reliable than a pogo pin to flat pad contact. Note that if you do use holes for some reason, you have to use pogo pins intended for that.

The production jig is the more tricky part. We worked with a mechanical engineer to create a basic design for such jigs for small boards. We design a board that the pogo pin sheaths mount to directly, and they customize the basic design per target board.

Since the sheaths solder directly to the tester board, the electrical connections to them are readily available. I usually copy our PIC programmer circuit onto the tester board, along with whatever custom circuitry is needed to testing and calibration. The tester board therefore contains all the electronics of the tester, except maybe the power supply. Sometimes the whole thing can run from just a USB connection. Sometimes we leave binding posts for 24 or 12 V DC external power.

You can get all the Eagle devices and packages we use for this from the Eagle Tools software release at http://www.embedinc.com/pic/dload.htm.

The pogo pin sheaths and pins are in the POGO library. The attributes give the specific part numbers we use. The pins are separate parts because they have to be ordered and installed separately. The schematic symbols are intended to put a holder and a pin on top of each other. When you do this, you end up with a complete-looking pogo pin in the schematic, and both the holder and pin end up on the BOM.

The pogo pin pads for the board under test are in the CONNECTOR library, with names POGO. Use the 50 mil pads on the bottom of the board for most cases.

The mechanical arrangement is a base plate that the tester board mounts to. The mechanical engineer designs a custom guide piece that mounts to the top of the board. This guide keeps the pogo pins sticking up from the tester board aligned, and has guides to align and hold the board under test coming down from the top. There is an arm that swings down to hold the board under test in place. The part of the arm touching the board under test is also custom. The arm has a lock to hold the board onto the compressed pogo pins, and a switch connection so that the test circuit knows when the lock is engaged. There is also a custom plexiglass cover mounted above the test board to protect the parts of the board that aren't supposed to be touched.

The rest is a bunch of firmware in the tester and software on the host, usually communicating with the tester over USB.

Here is what one such tester looks like with the arm open and no UUT in place:

Image

Here is a detail showing the connections to the switch that indicates the arm is locked. You can also see the custom plexiglass piece, and parts on the test board below that.

Image

Here is a different tester of this same concept, with the UUT in place. You can also see the USB connector and connection to external DC power at top left. The RED/WHT twisted pair at top center goes to the arm switch.

Image

And finally, here is a view with the arm down holding a UUT in place. The arm lock is not engaged.

Image

History
Why does this post require moderator attention?
You might want to add some details to your flag.

1 comment thread

General comments (1 comment)

Sign up to answer this question »