2021-12-10 21:06:44 +00:00
|
|
|
|
# AVRDUDE
|
|
|
|
|
|
2022-01-07 23:30:48 +00:00
|
|
|
|
[![Build Status](https://github.com/avrdudes/avrdude/actions/workflows/build.yml/badge.svg)](https://github.com/avrdudes/avrdude/actions/workflows/build.yml)
|
|
|
|
|
|
2021-12-10 21:06:44 +00:00
|
|
|
|
AVRDUDE - AVR Downloader Uploader - is a program for downloading and uploading
|
|
|
|
|
the on-chip memories of Microchip’s [AVR microcontrollers](https://en.wikipedia.org/wiki/AVR_microcontrollers).
|
|
|
|
|
It can program the Flash and EEPROM, and where supported by the programming
|
|
|
|
|
protocol, it can program fuse and lock bits.
|
|
|
|
|
AVRDUDE also supplies a direct instruction mode allowing one to issue any
|
|
|
|
|
programming instruction to the AVR chip regardless of whether AVRDUDE
|
|
|
|
|
implements that specific feature of a particular chip.
|
|
|
|
|
|
|
|
|
|
AVRDUDE was originally written in 2003 by Brian S. Dean. Since 2006, AVRDUDE has been maintained by Jörg Wunsch,
|
2021-12-18 21:32:50 +00:00
|
|
|
|
with the help of [various contributors](./AUTHORS).
|
2021-12-17 21:52:27 +00:00
|
|
|
|
|
|
|
|
|
The latest version of AVRDUDE is always available here:\
|
|
|
|
|
<https://github.com/avrdudes/avrdude>
|
2021-12-10 21:06:44 +00:00
|
|
|
|
|
2022-03-06 23:22:59 +00:00
|
|
|
|
## Documentation
|
|
|
|
|
|
|
|
|
|
Documentation is [here](https://dl8dtl.github.io/avrdude/).
|
|
|
|
|
|
2021-12-10 21:06:44 +00:00
|
|
|
|
## Getting AVRDUDE for Windows
|
|
|
|
|
|
2021-12-18 21:32:50 +00:00
|
|
|
|
To get AVRDUDE for Windows, install the latest version from the [Releases](http://download.savannah.gnu.org/releases/avrdude/) page.
|
2021-12-10 21:06:44 +00:00
|
|
|
|
|
2022-01-07 23:31:35 +00:00
|
|
|
|
Alternatively, you may [build AVRDUDE](https://github.com/avrdudes/avrdude/wiki) yourself from source.
|
2021-12-10 21:06:44 +00:00
|
|
|
|
|
|
|
|
|
## Getting AVRDUDE for Linux
|
|
|
|
|
|
|
|
|
|
To install AVRDUDE for Linux, install the package `avrdude` by running the following commands:
|
|
|
|
|
|
|
|
|
|
```console
|
|
|
|
|
sudo apt-get install avrdude
|
|
|
|
|
```
|
|
|
|
|
|
2022-01-07 23:31:35 +00:00
|
|
|
|
Alternatively, you may [build AVRDUDE](https://github.com/avrdudes/avrdude/wiki) yourself from source.
|
2021-12-10 21:06:44 +00:00
|
|
|
|
|
2021-12-18 21:32:50 +00:00
|
|
|
|
## Getting AVRDUDE for MacOS
|
|
|
|
|
|
|
|
|
|
On MacOS, AVRDUDE can be installed through Mac Ports.
|
|
|
|
|
|
2022-01-07 23:31:35 +00:00
|
|
|
|
Alternatively, you may [build AVRDUDE](https://github.com/avrdudes/avrdude/wiki) yourself from source.
|
2021-12-18 21:32:50 +00:00
|
|
|
|
|
2021-12-10 21:06:44 +00:00
|
|
|
|
## Using AVRDUDE
|
|
|
|
|
|
|
|
|
|
AVRDUDE is a command-line application. Run the command `avrdude` without any arguments for a list of options.
|
|
|
|
|
|
|
|
|
|
A typical command to program your HEX file into your AVR microcontroller looks like this:
|
|
|
|
|
|
|
|
|
|
```console
|
|
|
|
|
avrdude -c <programmer> -p <part> -U flash:w:<file>:i
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
For instance, to program an **Arduino Uno** connected to the serial port **COM1** with a HEX file called `blink.hex`,
|
|
|
|
|
you would run the following command:
|
|
|
|
|
|
|
|
|
|
```console
|
|
|
|
|
avrdude -c arduino -P COM1 -b 115200 -p atmega328p -D -U flash:w:objs/blink.hex:i
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
There are many different programmers and options that may be required for the programming to succeed.
|
2021-12-18 21:32:50 +00:00
|
|
|
|
|
2022-01-07 23:31:35 +00:00
|
|
|
|
For more information, refer to the [AVRDUDE documentation](http://download.savannah.gnu.org/releases/avrdude/avrdude-doc-6.4.pdf).
|