Daniel Spilker

April 25th, 2011

ISPtouch for AVR Microcontrollers

When I started designing PCBs which should fit under Märklin C-Track, I soon realized that a standard 6-pin ISP header for AVR microcontrollers exceeds the height limitation of 4.5mm. My first idea was to press a 6-pin SMD header on the PCB pads for programming. But this method does not ensure sufficient contact for all pins. After searching the internet and browsing serveral print catalogs, I found the AVX 9188 Staggered SOLO Stacker in DigiKey’s print catalog. Its spring-loaded contacts provide a good connection for all pins. The idea for the ISPtouch was born.

Unfortunately I could not find the AVX connector in any Eagle CAD library, so I had to create my own Eagle parts for the AVX connector first. I then designed a small adapter board with a SMD 6-pin header for a standard AVR programmer on one side and the AVX connector on the other side. I added two single pin headers for guidance when pressing the adapter on a PCB for programming. Soldering the adapter, especially the AVX connector is a bit tricky, but doable. I had to cut off a bit of the guiding pins so that they do not collide with the programmer’s connector. To use the adapter in a PCB design I created an Eagle part which features the pads for the connector and two holes for the guiding pins. Pin 1 is marked on both the adapter and the ISPtouch library part with a small “1”. You can find the ISPtouch part along with the AVX Stagged SOLO Stacker parts for the solder and the mating sides in my Eagle library.

Up to now I have used ISPtouch in two designs and flashed many boards. It works flawlessly. Due to the staggered design of the AVX connector, it can only be used in one orientation and will not cause any harm when connected in the wrong way. To flash a board, you need two hands. One hand to press the ISPtouch adapter to the target PCB and one hand to start the programming.

As a nice by-product of the ISPtouch design the target PCB does not require any part to be soldered for the ISP. This safes time and money.

To build an ISPtouch adapter you need the AVX 9188 Staggered SOLO Stacker (e.g. DigiKey 478-5491-1-ND), a 6-pin SMD header (e.g. DigiKey WM17449-ND or DigiKey WM17455-ND) and two single pin headers (e.g. DigiKey 609-3368-ND). You can download the Eagle project for the ISPtouch adapter and the Eagle library for the ISPtouch header on GitHub.