Description: This new version uses an SMD 5x2 header. This is a simple to use USB AVR programmer. It is low cost, easy to use, works great with AVRDude, and is tested extensively on a Windows desktop. Based on Dick Streefland’s USBtiny and Limor Fried’s USBtinyISP. This is a low-cost programmer designed for those on a tight budget.
This programmer works really well for ATmega168 and ATmega328 and should work with all the AVR micros supported by AVRDUDE. The microcontroller-to-be-programmed can be any AVR with 64K or less of flash. The ATmega328 on an Arduino Uno or RedBoard works perfectly, but the ATmega2560 of an Arduino Mega does not.
This board is buffered and power protected so that you can do some really evil things to the programmer without killing it. It is fast! One of the greatest features of this board is the ability to power the target (up to 500mA) from the programmer.
Note: This product is a collaboration with Limor Fried. A portion of each sales goes back to them for product support and continued development.
Note: The drivers link has been updated below to be Windows 7 compatible.
Based on 37 ratings:
2 of 2 found this helpful:
The key to using this with Linux is that you must be logged in as root (or use sudo). Also, it does not show up in /dev/tty* like other usb-serial devices. avrdude just knows how to talk to it. try this…
sudo avrdude -c usbtiny -p atmega328p -b19200 -v
2 of 2 found this helpful:
Years ago I bought one of these to program an ATTiny85 for a project. Did great when I had it hooked up to my MacBook Pro (at the time). Works great with AVRDude.
Downsides, and it was probably due to my setup issue, was Windows didn’t work too well with it and any virtual machine with Linux didn’t work too well (on same Windows machine).
Other than that, great little thing for those times you need to program a bare MCU without a bootloader.
3 of 4 found this helpful:
Full disclosure: I make and sell a competitive product on Tindie. But that product was inspired directly by this one, although it was inspired by its shortcomings:
The mini USB connector is not nearly as ubiquitous as micro USB. In fact, this device was the only thing in the house that had that connector. So this device needed its own unique cable.
The target power switch isn’t effective. This is because SparkFun added a pull-up resistor to the BUFFEN line. Their intentions were good - the BUFFEN line should be held high if the USB connector isn’t plugged in. But when the target power switch is off and the programmer is powered by USB, target power can leak from the BUFFEN output of the controller through the pull-up resistor. This makes the programmer - as is - unsafe for targets that can be damaged by 5 volt power.
There are extra LEDs that it turns out add very little value. All the D+ and D- LEDs do is light up on bus activity, but the Stat1 LED already lights up when the programmer is working. Stat1 and Stat2, by the way, are not well labeled. They are the PROG and CONN LEDs in the original design. CONN lights up when the USB host enumerates the programmer (so, when the programmer is plugged in and recognized - no need, really, for a separate power LED), and PROG lights up whenever AVRDUDE is actually doing something.
I don’t really see the 5x2 header being used much anymore. Every project I’ve seen uses the smaller 3x2 header or some proprietary 6 pin variant.
The IDC cable they supply is a 5x2 on one end and a 5x2 and 3x2 on the other end about an inch apart with the ribbon cable wires separated and string around to make the 3x2 connector wiring correct. It’s a very clever way to solve the problem, but separating the ribbon cable wires dramatically weakens them. Mine wound up failing and I replaced it with 6 individual crimped 26 gauge wires going from a 5x2 to a 3x2 DIP header..
The TinyISP is only good for AVR programming, and only for targets with less than 128K of flash. Some other AVR programmers can also program both larger and smaller AVR chips (specifically, the Tiny4 series, which uses its own programming protocol), or do JTAG or HVP or other things, but the TinyISP - if for no other reason - simply doesn’t have any leftover space in the ATTiny2313’s flash for added functions.
All of the above aside, this was my first AVR programmer, and the only one I’ve ever used apart from one I built myself. I happen to think that of all of the programmers available the TinyISP is the best bang for the buck. Once you graduate from the bootloader, it’s a good way to go.
Bought this board to reprogram the bootloader on an Arduino Nano that I had managed to kill somehow. Reprogrammed the bootloader with this board right away and the Nano is back to normal.
Have had very good luck with this tool and the Arduino IDE. Have tried to use with AVR Dude, followed several tutorials, spark fun was definitely best, but I was unsuccessful on fronts. I’m quite sure it is me or my laptop. Anyway works awesome in an IDE that is already easy as pie!
Windows 8.1 requires signed drivers for devices; I’ve not found a way to actually get this working yet.
I got this for one purpose to update my nmelbeep anode. It was so easy to use that I can see me using if for many other programming task. Compact, easy to use, assembled and well built and a decent price means a I give it 5 stars.
My switch to turn on or off power to the target wasn’t working correctly. I had to jump the leads to allow me to program my project. I’m a little disappointed with the quality control but other than that it’s worked great.
So sorry for the issues. Please contact us and we may be able to help. www.sparkfun.com/returns
Easy to use And lots of support. Using it with Atmel Studio/visual micro and works like a charm.
Fast and reliable! It’s all you that need!
I use this to program all my Atmel 328P and Arduino Micro boards and it works flawlessly. Also, it is very easy to use and the power to target switch is a great idea. I recommend this tool for any of the Atmel 8-bit processors or the Arduino boards that are touchy to program using the Arduino ISP such as the Leonardo or Micro.
Excellent unit-worked first with your tutorial help.
Windows has determined the driver software for your device is up to date.
Unknown USB Device (Device Descriptor Request Failed)
Be sure download and manually point the driver wizard to these drivers - https://github.com/sparkfun/Pocket_AVR_Programmer/tree/master/Drivers
Great programmer for the price! Worked perfectly with my ATMega once I got my wiring correct =). Very pleased.
Hooking up the USBtiny cable is a bit cumbersome, but overall great product.
I bought this programmer so I could burn the boot loader into ATMegaa328Ps. It does that perfectly but I get avrdude errors when trying to “Upload Using Programmer”. I suspect a setup problem but I am baffled why the boot loader burns fine but not a program. A search of the Internet offers dozens of solutions for avrdude errors. None of them work in this case. I used to work with Microchip PICs and the programmer always worked fine. I don’t understand why Atmel chips having so many programming problems.
There can be a number of things that can lead to programming errors. Here’s a tutorial that will help you avoid some of the pit falls when programming with this board. – https://learn.sparkfun.com/tutorials/pocket-avr-programmer-hookup-guide?_ga=1.177331365.1851504437.1417041706
This little device was the best thing for this old Noob to learn AVR programming!
Haven’t had any issues with the programmer. The target power switch is nice. 10 pin to 6 pin cable was a nice touch, except they wired the 6 pin on wrong. Went ahead and just rewired it myself.
This is one of my favourite programmers. I have used it on a Windows computer and also on a Raspberry Pi using avrdude. I used it to program the following processors: ATtiny2313, AT90S2313, ATMega324, ATMega328, ATMega16 and ATMega32.
I think the only thing missing from this programmer is its ability to integrate seamlessly with Atmel Studio.
Besides being smaller and cheaper, target power switch is so convenient. Works perfectly with Arduino IDE.
Works great to program my tiny but I wish it had the tiny debug serial that you can turn on and off with an exclamation
The Pocket Programmer is an excellent way for people to get into AVR programming with a relatively inexpensive yet effective ISP. It was very easy to set up and works perfectly with AVRdude. It can’t program an AVR with over 64K of flash (e.g. the ATmega2560), but for many people/beginners/projects, that isn’t an issue. The ability to power the target chip has proven to be very handy in the time I’ve been using the programmer. Overall, for $15, this ISP was an excellent buy for the vast majority of my AVR programming needs.
Had time program an r2d2. Turned out this was a great tool to have.
Programmed both ATTINY85 and ATMEGA328 with no problem using AVRDUDE. Made a couple of ISP to ZIF adaptors holding the chip to be programmed out of circuit. The only thing I would change is the USB port from a MINI to a MICRO but that’s my preference :)
I’ve been using Atmel’s MKII for years which requires the IC is powered from another device. SparkFun’s unit does it all off one USB - Love it!
0 of 1 found this helpful:
Nice doing business with you all.
I tried for days. Ended up getting the AVR Dragon. AVRDude just doesn’t offer the versatility of the Studio. It’s a bummer, dude.
Sorry it wasn’t what you wanted. Let us know if you want to send that back. We will be happy to help you out with an RMA. See or returns page if you’d like to do that.
Is it possible top use this programmer with AVR Studio?
Hi, I have not personally tested this, however, there are comments from other users mentioning that they have had success with this programmer in AVR Studio. Thanks!
Works very well for the ATmega328P and I’m sure it works well with others too. Note that just as the description says, it does include an AVR programming cable. I ordered one separately because apparently I just can’t read well.
Also note that it worked fine for me on Linux. I installed avrdude and used the following line:
avrdude -c usbtiny -p m328p -U flash:w:FILETOWRITE.hex
Also, a note to anyone interested, avra is the assembler that I use and it has worked just fine.
As someone else noted, it does have an issue with power leaking through when the power switch is off. This hasn’t caused too much trouble for me, but sometimes I turn off my board and realize it’s still on due to power from the programmer and so I have to unplug it.
Lastly, if you have something wired up and you’re trying to program your μC but having errors, in addition to check your wires, you might also try disconnecting things from the chip. If something is pulling your programming lines to ground for instance it might cause some trouble.
All in all, would definitely buy again.
My first steps into AVR programming outside of an Arudino, and I must say this board makes it pretty easy. Thus far I’ve gotten my head wrapped around some ATtiny85s and I salvaged an Uno board I thought I toasted! Would recommend for sure.
Great programmer. I would suggest to add an option to select VCC level, so the user might select between: No Power / 1.8V / 3.3V / 5V.
Works great with our MagSpoof! https://store.ryscc.com/products/magspoof
The programmer can be a lot more finnicky in noisy environments that the other programmers I have. But I depend on them in a production environment because they integrate reliably with the docs provided, more or less, and because they are easy to replace. Most of my name brand AVR programmers have died and will not be replaced because of their pricing with little to no value advantage.
I’ve used it to program an Arduino, a Wemos XI, and a homebrew ATTiny4313. In all cases works without a hitch. I’m using Arduino IDE and AVRdude on Xubuntu.
Personally, I think this product is awesome. For one, it’s much cheaper than a full-blown AVRISP MKII or similar and does an adequate job for most purposes. I personally don’t have much of a use for a debugger in my programmer (yet)-a serial connection usually suffices. In cases without one, oh well, blinking an LED or making noise will have to do. Then again, what project doesn’t have some kind of output?
It’s based off of the ever-awesome USBtinyISP from Adafruit, but I actually like this version better for a couple reasons:
Overall, I find it’s a solid programmer that works well for most purposes. You can even upgrade the firmware if a future update brings better features! (Well, you’ll need another programmer for that…but most of us have an Arduino lying around and the ArduinoISP code. Or you could just use a blank AVR with enough flash space to store programming code and the new hex file.)
Everything worked perfectly with my Win7 PC once I found and installed the correct drivers.