Arduino ISP is open-source hardware! You can build your own board using the following files:
How to use
Connect the Arduino ISP to your Arduino board's ICSP headers. Make sure to match the orientation of the plugs by looking at the white dot on the corner of the connector.
Once connected, open the Arduino IDE and select "Arduino ISP" under the "Tools > Programmers"
To upload a sketch using the Arduino ISP, choose "Upload using programmer"
option in the File
menu, or use the keyboard shortcut: "CTRL+SHIFT+U"
If you want to burn the bootloader into the AVR microcontroller select the "Burn bootloader" option under the "Tools"
Note: The Arduino ISP is only supported by Arduino IDE 1.5.7 or later.
For more details about using the Arduino ISP please visit the Getting Started
- Using an Arduino as an AVR ISP: how to use an Arduino board as an AVR ISP (in-system programmer). This allows you to use the board to burn the bootloader onto an AVR (e.g. the ATmega168 or ATmega328 used in Arduino).
- Programming an ATtiny with Arduino ISP: How to install the ATtiny core for the Arduino IDE for programming AVR ATtiny microcontrollers using the Arduino software and the Arduino ISP programmer.
- How to read your Arduino built-in EEPROM: How to read the content of the onboard EEPROM on an AVR microcontroller by dumping the flash memory using the Arduino ISP programmer.
Powering the target board
The Arduino ISP is able to provide the 5V power supply voltage to the board being programmed.
If you want to power the board through the ISP you have to close the SJVCC jumper on the board.
Reprogramming the on board ATtiny44
The firmware on the ATtiny44 inside the Arduino ISP can be updated or replaced. To program the ATtiny you have to close the SJFAB jumper and connect an ISP programmer in the ICSP connector.
Verification error problem
If you encounter this kind of problem you should power the board you are trying to program with the Arduino ISP with external power rather than with USB power.
For example if you are burning the bootloader to an Arduino Leonardo you have to power the Leonardo through the power jack with a 9V wall wart power supply.
Unknown USB device
If your computer does not recognize the device try a different USB port. Some particular USB ports cause problems during the communication, changing the USB port usually fixes the problem.