3D Printed Pogo Pin Programmer

The new hotness for Internet of Things hardware is the ESP8266. Alone it can connect to a WiFi network, but it doesn’t really have a lot of output options. Paired with an ATMega, and you really have something. That’s the philosophy behind the WIOT board, and when [Chris] was assembling these boards, he needed a way to flash firmware. The board has an unpopulated ISP header from the assembler, so pogo pins are the answer. How do you make a pogo pin jig? With a 3D printer, of course.

The ISP header wasn’t populated to give the board a slim profile, but this means a jig of sorts would be needed to program the WIOT. The first attempt was buying a few pogo pin adapters from Tindie, but this was terribly uncomfortable to hold while the board was being programmed.

To fix this problem, a small clip device was rigged up, printed out, and used for programming. Interestingly, this clip has a very deep throat, and a few holes used for bolting on a separate programmer. This shows a lot of forward thinking: the programmer can be reused for different boards with completely different layouts and programmers. If the next revision of the WIOT needs a JTAG header to program the micro, the problem of programming it is already covered.

21 thoughts on “3D Printed Pogo Pin Programmer

  1. I kind of felt the same pain with regards to pogo pin ISP adapters. I used to use the SparkFun one, but decided to make my own. The “innovation” I came up with is a right-angle DIP plug on the bottom board so the plug goes on horizontally and the ribbon cable goes down. I think it fits in the hand better. For most of my smaller projects I now use a special ISP header designed exclusively to receive pogo programmers. Only two of the pads are actually through-hole vias and the other four are just SMD pads.

    Anyway, I sell my pogo adapter on Tindie. Not sure if mine is one of the ones the submitter tried (mine isn’t what’s pictured).


  2. Stupid question, probably, but I’ll ask anyway: What’s the benefit of Pogo pins compared to just using a normal 6-pin header? In other words, assume you’ve put 6 SMT pads or small vias on the PCB in a 2×3 array with 0.1″ spacing. Now you want to connect to these 6 pads/vias to program the AVR on the board. Is there some reason Pogo pins are superior for this task compared to just a 2×3 0.1″ header you probably already have lying around the parts bin?

    1. Generally you would use pogo pin jigs when you are doing higher volume production. You remove the cost of the header and the assembly cost, which really adds up. It’s also better for the longevity of the programmer, since you’re not plugging and unplugging a lot. Then there’s the ergonomics and frustration with having to put the programmer connector on and off.

      Pogo pins are awesome for repeated tasks.

  3. Sorry if this is inappropriate, but the words cockrum and deep throat have a NSFW feel to them…also statistically geeks and nerds are better at pleasure and have more fetishes that their normal counterparts…

  4. Or use the ATMega to do the usb to serial and pull down the appropriate programming pin on the 8266 to flash the firmware (I assume you dont require 115200 baud to program).

    Note also both ATMega and ESP8266 can run on a lot less than 3.3V if your having issues.(I’m guessing your keeping 3.3V for I/O purposes though!)

    Nice project though :-)

  5. There’s another reason for the ‘deep throat’ – the centre bar is meant to flex slightly when the handle end is squeezed, and without the throat that flex wouldn’t be sufficient to open up the programmer end.

    1. So… my soda happened to have spilled all over my keyboard due to laughing. Please tell me that was intended. If you was serious, bravo for the use of double entendre.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.