USBTinyISP in circuit AVR Atmel programmer (HCARDU0002)
Posted: Wed Mar 13, 2013 3:55 pm
This USBTinyISP programmer is ideally suited for in circuit programming of AVR devices or for reflashing bootloaders onto Arduino based products. It includes a 6 and 10 pin SPI interface and cables. The 6 pin interface is designed to connect directly to the 6 pin ICSP found on Arduino boards such as the Uno, Mega, Nano, etc. This board also works great with the Arduino development environment, AVR studio and avrdude.
1x USBTinyISB compatible programmer
1x 6 way IDC cable
1x 10 way IDC cable
Order Yours Here.
What are the pinouts on the ICSP connectors?
6 pin header:
10 pin header:
Windows Driver Installation
With most customers now using 64 bit versions of windows we recommend installing the driver using the Zadig driver install utility. Using this utility will help avoid problems caused by Windows Signed Driver Enforcement interfering with driver installation. To install the driver please follow the steps below:
1) Download the Zadig utility below:
[PLEASE LOGIN TO DOWNLOAD]
2) Connect your TinyUSB to the computer using the supplied USB cable. Windows may complain that it cannot find a driver but just ignore this message.
3) Unzip the downloaded file and from the unzipped folder double click the Zadig.exe executable.
4) The Zadig utility should now open up. In the drop-down box at the top of the window you should be able to select the USBTiny programmer (see image below).
If you don't see it listed then go to Options->List all devices and try the drop down box again. If you are still unable to see the programmer listed under 'USBtiny' then remove and reinsert the programmer and try again.
You can confirm that you have the right device selected by checking that the USB ID text box is showing the correct VID and PID (1781 & 0CF9). Also make sure you have libusb-win32 (v1.2.x.x) selected for the driver driver version. You settings should now look similar to the following image:
5) Click the 'Install Driver'. This will automatically install a driver for the TinyUSB. You can now close the Zadig utility.
6) Important: For the driver to finish installing properly you will need to disconnect the programmer and reconnect it.
How do I access the programmer from the Arduino IDE?
By default the Arduino IDE supports the USBTiny programmer. To program your board using the USBTiny select your board type as normal and then under Tools->Programmer select USBTinyISP for the programmer type.
Then to program your Arduino with your current sketch click the upload button as normal, but whilst doing so hold down the shift key. You will also notice that whilst holding the shift key when you hover over the upload button it will say 'Upload using programmer'.
Note that when uploading sketches using the programmer only the sketch will be uploaded, not the bootloader. If at any point you need to reprogram the bootloader back into your Arduino then use Tools->burn bootloader making sure you have the correct board type set.
How do I use this programmer with AVR Studio?
You can program a device from within AVR Studio via the AVRDude command line tool. You will need to download this program separately to AVR Studio. A link to the official site can be found at the bottom of this post. Once downloaded you should have a ZIP file containing an executable called AVRDude.exe. Unzip this to somewhere convenient such as c:\AVRDude\
In AVR Studio go to Tools-> External Tools
You can then add a command line to AVRDude for whatever devices you wish to program. For example if you wish to program an ATMega328p add the following:
Title: AVRDude ATmega328p
Arguments: -c usbtiny -p atmega328p -U flash:w:$(TargetDir)$(TargetName).hex:i
You can also tick the optional ' Use Output window' tick box. Save this and under the tools menu you will now see an entry for the external tool you have just added. In this case 'AVRDude ATmega328p'. Selecting this entry will program your device with the compiled HEX file in your currently open project.
AVRDude can be downloaded from the official project site here: http://savannah.nongnu.org/projects/avrdude
Libraries, example code, and diagrams are provided as an additional free service by Hobby Components and are not sold as part of this product. We do not provide any guarantees or warranties as to their accuracy or fitness for purpose.
Descriptions and diagrams on this page are copyright Hobby Components Ltd and may not be reproduced without permission.