If you've ever wanted a stand alone AVR programmer, that is super easy to use, you've come to the right place!

This guide will show you how to turn any CircuitPython powered board with 4+ GPIO pins into an AVR progammer all on its own. No software like avrdude is needed, this software will program the chip all on its own, just drag the HEX file onto the CircuitPython disk drive.

Perfect to putting bootloaders on empty chips, or field-reprogramming a project!

Supported Chips

In theory, any and all AVR chips with SPI-programming interfaces are supported. However, we only have examples for ATmega328P chips (used in Arduino compatibles), ATtiny85 (used in original Trinket/Gemma), and ATmega2560 (Arduino Mega compatibles)

To program other chips, you'll need to find out the signature, size of the flash, and the flash-page size. You can find this in the datasheet or in avrdude.conf

This code only supports SPI-based programming, not JTAG, SWD or parallel!

This guide was first published on Jan 11, 2018. It was last updated on Nov 25, 2023.

This page (Overview) was last updated on Jan 07, 2018.

Text editor powered by tinymce.