Saturday, September 19, 2015

Arduino as ISP Shield

When I started playing with AVRs I started like most people. I bought an Arduino starter kit, then added on. And then added some more. Quickly I realized that a lot of projects need far less then an a $30 boards potential. So the Tiny series was a beautiful discovery. They're popular that's for sure. 

I have a USB Tiny ISP from adafruit that I love because i got to assemble it. I mounted a small breadboard to it and it works great. But it likes to slid around. I do have 3 Arduinos mounted to plexiglass plates with half size bread boards. The make great programmers for the tiny AVRs. They take a bit of time to set up. Since I've started using OSHPark making custom boards is obtainable. They also have a large user contributed project section a but of searching found the Pixie85, Pixie2313 and Pixie84 boards. These simply add an ISP header to the chips. Brilliant. I added chip sockets and boom easy to swap out a chip. That solved the messy breakouts with the USBtinyISP. 
My solution to the Arduino setup issue was a custom shield. Searching arduino isp on OSHPark came up with solutions the had sockets for only a certain chip, or were just clumsy to use. I liked Arno's Tiny ISP shield but the chip socket was a deal breaker. So I set about making my own.

Mistakes happen when designing circuit boards. Sparkfun has made a few interesting mistakes on boards. This one had two mistakes, one being a "unintended feature" that I might keep. This is Rev 0.2 because the first version I some how added a 2x3 header with 2mm pin spacing that was caught before I submitted to fab.  The Second issue is easily seen in the completion photo. I miss counted the offset of the headers. The holes for the headers were loose enough to allow a slight angle. So my design is  .07 inches less wide that it should be. It saves 20 cents a board and nothing is stressed but the angle. it sides on perfectly since I soldered the headers in while attached to the Arduino. My test board didn't need the cap, matter of fact it hindered operation and wouldn't allow the Arduino to work. The LED's are designed to be optional. the wires come from under, The holes need to be slightly bigger, a 22(7) wire was too big, I had to remove a strand to get them to fit.

Version 0.3 is slated to have the extra 0.07 inches in width, and the right most led will get a header pin.



1 comment:

  1. I'd like to offer a suggested enhancement... It's a page from my own AVR ISP designs, which I lifted (a bit) from the USBTiny indirectly. Take a look at my Raspberry Pi AVR ISP cap... http://www.geppettoelectronics.com/2015/06/avr-isp-pi-hat-user-guide.html

    By adding just a few more components, you wind up with the ability to program with 3.3v, 5v, or with "target power" at whatever voltage the target uses.

    ReplyDelete