2003-03-11 22:34:53 +00:00
|
|
|
|
$Id$
|
|
|
|
|
|
|
|
|
|
Approximate change log for AVRDUDE by version.
|
|
|
|
|
|
|
|
|
|
(For more detailed changes, see the ChangeLog file.)
|
|
|
|
|
|
|
|
|
|
----------------------------------------------------------------------
|
2006-12-22 23:21:53 +00:00
|
|
|
|
Current:
|
|
|
|
|
|
2007-01-13 22:57:14 +00:00
|
|
|
|
* Bugfixes.
|
|
|
|
|
|
2006-12-22 22:52:34 +00:00
|
|
|
|
Version 5.3.1:
|
2006-01-23 21:04:13 +00:00
|
|
|
|
|
2006-11-21 11:19:10 +00:00
|
|
|
|
* Add support for the AVR Dragon (all modes: ISP, JTAG, HVSP, PP,
|
|
|
|
|
debugWire).
|
|
|
|
|
|
|
|
|
|
* Add support for debugWire (both, JTAG ICE mkII, and AVR Dragon).
|
2006-10-27 08:45:47 +00:00
|
|
|
|
|
2006-12-20 23:43:34 +00:00
|
|
|
|
* Add support for the AVR Doper USB HID-class programmer.
|
|
|
|
|
|
2006-11-02 21:02:41 +00:00
|
|
|
|
* Bugfixes.
|
2006-10-27 08:45:47 +00:00
|
|
|
|
|
|
|
|
|
Version 5.2:
|
|
|
|
|
|
2006-03-28 20:35:21 +00:00
|
|
|
|
* New devices supported:
|
|
|
|
|
|
|
|
|
|
- AT90USB646/647/1286/1287
|
2006-05-23 22:28:43 +00:00
|
|
|
|
- ATmega2560/2561
|
2006-08-13 22:34:42 +00:00
|
|
|
|
- ATmega325/3250/645/6450
|
|
|
|
|
- ATtiny11 (HVSP only device)
|
2006-09-01 20:48:04 +00:00
|
|
|
|
- ATtiny261/461/861
|
2006-03-28 20:35:21 +00:00
|
|
|
|
|
2006-02-21 21:17:08 +00:00
|
|
|
|
* Fixed paged flash write operations for AT90PWMx devices
|
|
|
|
|
(error in datasheet).
|
|
|
|
|
|
2006-03-28 20:35:21 +00:00
|
|
|
|
* Add signature verification.
|
|
|
|
|
|
2006-08-13 22:34:42 +00:00
|
|
|
|
* Add high-voltage mode programming for the STK500 (both,
|
|
|
|
|
parallel, and high-voltage serial programming).
|
|
|
|
|
|
2006-09-06 20:06:07 +00:00
|
|
|
|
* Add support for using the JTAG ICE mkII as a generic ISP
|
|
|
|
|
programmer.
|
|
|
|
|
|
2006-08-17 15:06:20 +00:00
|
|
|
|
* Allow for specifying the ISP clock delay as an option for
|
|
|
|
|
bit-bang programming adapters.
|
|
|
|
|
|
2006-09-19 22:33:53 +00:00
|
|
|
|
* Add support for Thomas Fischl's USBasp low-cost USB-attached
|
|
|
|
|
programmer.
|
|
|
|
|
|
|
|
|
|
* The "stk500" programmer type is now implemented as a stub
|
|
|
|
|
that tries to probe for either "stk500v1" or "stk500v2".
|
|
|
|
|
|
2006-09-01 20:48:04 +00:00
|
|
|
|
* Many bugfixes.
|
|
|
|
|
|
2006-01-23 20:53:59 +00:00
|
|
|
|
Version 5.1:
|
2003-09-06 18:17:58 +00:00
|
|
|
|
|
2005-10-09 09:29:24 +00:00
|
|
|
|
* New devices supported:
|
|
|
|
|
|
|
|
|
|
- ATmega640/1280/1281
|
2005-12-16 22:39:39 +00:00
|
|
|
|
- ATtiny24/44/84
|
2005-10-09 09:29:24 +00:00
|
|
|
|
|
|
|
|
|
* JTAG mkII support now works with libusb-win32, too
|
2005-09-21 01:45:48 +00:00
|
|
|
|
|
2005-11-29 22:58:04 +00:00
|
|
|
|
* JTAG ICE mkI support has been added
|
|
|
|
|
|
|
|
|
|
* Solaris support has been added (including ecpp(7D) parallel-port
|
|
|
|
|
bit-bang mode)
|
|
|
|
|
|
2005-09-21 01:45:48 +00:00
|
|
|
|
|
|
|
|
|
Version 5.0:
|
|
|
|
|
|
2005-09-18 01:16:39 +00:00
|
|
|
|
* Support for JTAGICE MkII device
|
|
|
|
|
|
|
|
|
|
* Support for STK500 Version 2 Protocol
|
|
|
|
|
|
|
|
|
|
* New devices supported:
|
|
|
|
|
|
|
|
|
|
- AT90CAN128
|
|
|
|
|
- ATmega329x/649x
|
|
|
|
|
- ATmega164/324/644
|
|
|
|
|
- AT90PWM2/3,
|
|
|
|
|
- ATmega164/324/644
|
|
|
|
|
- ATmega329x/649x
|
|
|
|
|
- ATtiny25/45/85
|
|
|
|
|
|
2005-09-18 20:12:23 +00:00
|
|
|
|
* Support for serial bit-bang adapters: Ponyprog serial, UISP DASA,
|
|
|
|
|
UISP DASA3.
|
|
|
|
|
|
2005-09-18 01:16:39 +00:00
|
|
|
|
* DAPA programmer pinout supported
|
|
|
|
|
|
|
|
|
|
* New "safemode" feature where fuse bits are verified before exit
|
|
|
|
|
and if possible recovered if they have changed. This is intended
|
|
|
|
|
to protect against changed fuses which were not requested which is
|
|
|
|
|
reported to sometimes happen due to improper power supply or other
|
|
|
|
|
reasons.
|
|
|
|
|
|
|
|
|
|
* Various fixes for avr910 and butterfly programmers
|
|
|
|
|
|
|
|
|
|
* Full support for AVR109 boot loaders (butterfly)
|
|
|
|
|
|
|
|
|
|
* Adding -q -q suppresses most terminal output
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 4.4.0:
|
|
|
|
|
|
2004-07-19 06:10:43 +00:00
|
|
|
|
* Native Win32 support: The windows build doesn't need Cygwin
|
2004-07-07 10:13:25 +00:00
|
|
|
|
anymore. Additionally, the delay timing on windows should be
|
|
|
|
|
more accurate now.
|
|
|
|
|
Contributed by Martin Thomas
|
|
|
|
|
|
|
|
|
|
* Add support for
|
|
|
|
|
- ATmega48, ATmega88 (contributed by Galen Seitz)
|
|
|
|
|
- ATtiny2313 (contributed by Bob Paddock)
|
|
|
|
|
- ATtiny13 (contributed by Pawel Moll)
|
|
|
|
|
|
|
|
|
|
* Added command to change the SCK of STK500-programmers. Now it
|
|
|
|
|
is possible to program uC with slow oscillator.
|
|
|
|
|
Contributed by Galen Seitz
|
|
|
|
|
|
|
|
|
|
* Baudrate for serial programmers (STK500 and AVR910) is
|
|
|
|
|
configurable in the config or at the command-line.
|
|
|
|
|
This way some more tweaked bootloaders and programmers can be used.
|
|
|
|
|
|
|
|
|
|
* Deprecated options have been removed.
|
|
|
|
|
Now the "-U" option must be used.
|
|
|
|
|
|
2004-07-18 14:09:41 +00:00
|
|
|
|
* MacOS X now supported by default.
|
|
|
|
|
|
2004-07-07 10:13:25 +00:00
|
|
|
|
Version 4.3.0:
|
|
|
|
|
|
|
|
|
|
* Added support for "Butterfly" evaluation board.
|
|
|
|
|
|
|
|
|
|
* Make cycle-count work with AVR910-programmers.
|
|
|
|
|
|
|
|
|
|
* Added "Troubleshooting"-Appendix to the manual.
|
|
|
|
|
|
2003-11-19 19:12:38 +00:00
|
|
|
|
* Add ATmega8515 support.
|
|
|
|
|
Contributed by: Matthias Wei<65>er <matthias@matwei.de>
|
2004-07-07 10:13:25 +00:00
|
|
|
|
|
2003-11-19 19:12:38 +00:00
|
|
|
|
* Add ATmega64 support.
|
|
|
|
|
Contributed by: Erik Christiansen <erik@dd.nec.com.au>
|
2004-07-07 10:13:25 +00:00
|
|
|
|
|
2003-11-19 19:12:38 +00:00
|
|
|
|
* Improved polling algorithm to speed up
|
|
|
|
|
programming of byte oriented parallel programmers.
|
|
|
|
|
Contributed by: Jan-Hinnerk Reichert <jan-hinnerk_reichert@hamburg.de>
|
2004-07-07 10:13:25 +00:00
|
|
|
|
|
2003-11-19 19:12:38 +00:00
|
|
|
|
* Add "fuse" and "lock" definitions for the AT90S8535.
|
2004-07-07 10:13:25 +00:00
|
|
|
|
|
2003-11-19 19:12:38 +00:00
|
|
|
|
* STK500 skips empty pages in paged write resulting in faster downloads
|
|
|
|
|
when there are empty blocks in between code (such as files that contain
|
|
|
|
|
application code and bootloader code).
|
2003-10-13 17:53:56 +00:00
|
|
|
|
|
2003-09-06 17:47:16 +00:00
|
|
|
|
Version 4.2.0:
|
|
|
|
|
|
|
|
|
|
* Add basic support for reading and writing fuses via SPI with avr910
|
|
|
|
|
programmers. Submitted by
|
|
|
|
|
Jan-Hinnerk Reichert <jan-hinnerk_reichert@hamburg.de>.
|
2003-07-24 21:26:28 +00:00
|
|
|
|
|
2003-08-29 23:23:25 +00:00
|
|
|
|
* Perform an auto erase before programming if the flash memory is
|
|
|
|
|
anywhere specified to be written by any of the -U requests. Old
|
|
|
|
|
style memory specification options (-f, -i, -I, -m, and -o) are
|
|
|
|
|
deprecated in favor of the new -U options. Auto erase is disabled
|
|
|
|
|
if any of the old-style options (specifically -i and -o) are
|
|
|
|
|
specified.
|
|
|
|
|
|
2003-08-24 18:40:06 +00:00
|
|
|
|
* Add new -U option for specifying programming operations - allows
|
|
|
|
|
multiple memory operations on a single command line.
|
|
|
|
|
|
|
|
|
|
* New progress reporting, looks nicer and is nicer to wrapper
|
|
|
|
|
environments such as emacs.
|
|
|
|
|
|
|
|
|
|
* Fix long-standing timing (verify) problems on Windows platform.
|
2003-09-06 17:47:16 +00:00
|
|
|
|
Submitted by Alex Shepherd <ashepherd@wave.co.nz>.
|
2003-08-24 18:40:06 +00:00
|
|
|
|
|
|
|
|
|
* Add new file format option - 'm' for "immediate mode." In this
|
|
|
|
|
case, the filename argument of the -o, -i, or -U options is
|
|
|
|
|
treated as the data for uploading - useful for specifying fuse
|
|
|
|
|
bits without having to create a single-byte file for uploading.
|
|
|
|
|
|
2003-07-24 21:26:28 +00:00
|
|
|
|
* Add support for displaying and setting the various STK500 operational
|
|
|
|
|
parameters (Vtarget, Varef, Master clock).
|
|
|
|
|
|
|
|
|
|
* Add 'picoweb' programming cable programmer.
|
|
|
|
|
Contributed by Rune Christensen <rune.christensen@adslhome.dk>.
|
|
|
|
|
|
|
|
|
|
* Add support for the sp12 programmer. Submitted by
|
2003-09-06 17:47:16 +00:00
|
|
|
|
Larry Barello <larryba@barrello.net>.
|
2003-07-24 21:26:28 +00:00
|
|
|
|
|
|
|
|
|
|
2003-04-17 23:19:58 +00:00
|
|
|
|
Version 4.1.0
|
2003-03-24 23:02:11 +00:00
|
|
|
|
|
|
|
|
|
* Add support for the Bascom SAMPLE programmer. Submitted by
|
2003-09-06 17:47:16 +00:00
|
|
|
|
Larry Barello <larryba@barrello.net>.
|
2003-03-24 23:02:11 +00:00
|
|
|
|
|
2003-03-24 23:37:09 +00:00
|
|
|
|
* Add support for avr910 type programmers (mcu00100, pavr avr910, etc).
|
|
|
|
|
|
2003-04-16 23:00:29 +00:00
|
|
|
|
* Support new devices: ATmega8535, ATtiny26
|
2003-04-16 22:44:55 +00:00
|
|
|
|
|
2003-03-24 23:02:11 +00:00
|
|
|
|
|
2003-03-11 22:34:53 +00:00
|
|
|
|
Version 4.0.0
|
|
|
|
|
|
2003-09-06 17:47:16 +00:00
|
|
|
|
* Now support Linux - added by "Theodore A. Roth" <troth@openavr.org>.
|
2003-03-11 22:34:53 +00:00
|
|
|
|
|
2003-09-06 17:47:16 +00:00
|
|
|
|
* Now support Windows - added by "Eric B. Weddington" <eric@ecentral.com>.
|
2003-03-11 22:34:53 +00:00
|
|
|
|
|
|
|
|
|
* Use 'configure' scripts to tailor the code to the system avrdude
|
|
|
|
|
is getting ready to be compiled on - added by "Theodore A. Roth"
|
2003-09-06 17:47:16 +00:00
|
|
|
|
<troth@openavr.org>.
|
2003-03-11 22:34:53 +00:00
|
|
|
|
|
|
|
|
|
* Motorola S-Record support - submitted by "Alexey V.Levdikov "
|
2003-09-06 17:47:16 +00:00
|
|
|
|
<tsar@kemford.com>.
|
2003-03-11 22:34:53 +00:00
|
|
|
|
|
|
|
|
|
* Support parallel programming on the STK500. Introduce 'pagel' and
|
|
|
|
|
'bs2' keywords to the config file for this purpose.
|
|
|
|
|
|
|
|
|
|
* Add support for the AT90S2343
|
|
|
|
|
|
|
|
|
|
* Add support for the ATmega169
|
|
|
|
|
|
|
|
|
|
* Add ability to specify system defaults within the config file
|
|
|
|
|
(default parallel port, default serial port).
|
|
|
|
|
|
|
|
|
|
* Specify the default programmer seperately from the programmer
|
|
|
|
|
definition. This is now done in the config file using the
|
|
|
|
|
'default_programmer' keyword.
|
|
|
|
|
|
|
|
|
|
* Support a per-user config file (~/.avrduderc) so that one can
|
|
|
|
|
override system wide defaults if desired.
|
|
|
|
|
|
|
|
|
|
* Follow the datasheet more closely for several parts in the "retry"
|
|
|
|
|
code when entering programming mode fails initially. Introduce
|
|
|
|
|
'retry_pulse' to the config file for this purpose.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 3.1.0
|
|
|
|
|
|
|
|
|
|
* This change represents a name change only. There is currently an
|
|
|
|
|
effort to port AVRPROG to other platforms including Linux and
|
|
|
|
|
Windows. Since Atmel's programmer binary that's included within
|
|
|
|
|
their AVR Studio software is named AVRPROG.EXE on the Windows OS,
|
|
|
|
|
there is the chance for confusion if we keep calling this program
|
|
|
|
|
AVRPROG as well. Up until now the name hasn't really been a
|
|
|
|
|
problem since there was no chance to confuse 'avrprog' on Unix
|
|
|
|
|
with Atmel's AVRPROG because Atmel's tools only run on Windows.
|
|
|
|
|
But with the Unix 'avrprog' possibly being ported to Windows, I
|
|
|
|
|
felt a name change was the best way to avoid problems.
|
|
|
|
|
|
|
|
|
|
So - from this point forward, my FreeBSD Unix program formerly
|
|
|
|
|
known as AVRPROG will subsequently be known as AVRDUDE (AVR
|
|
|
|
|
Downloader/UploaDEr).
|
|
|
|
|
|
|
|
|
|
This change also represents a time when the AVRDUDE sources move
|
|
|
|
|
from my own private repository to a public repository. This will
|
|
|
|
|
give other developers a chance to port AVRDUDE to other platforms
|
|
|
|
|
and extend its functionality to support additional programming
|
|
|
|
|
hardware, etc.
|
|
|
|
|
|
|
|
|
|
So goodbye AVRPROG, welcome AVRDUDE!
|
|
|
|
|
|
|
|
|
|
Version 3.0.0
|
|
|
|
|
|
|
|
|
|
* Rewrite parts of the code to make it easy to support other types
|
|
|
|
|
of programmers besides the directly connected parallel port
|
|
|
|
|
programmer (PPI).
|
|
|
|
|
|
|
|
|
|
* Add support for Atmel's STK500 programmer/development board. The
|
|
|
|
|
STK500's "paged mode" read/write is supported which makes this
|
|
|
|
|
programmer very fast. This is sorely needed on parts with large
|
|
|
|
|
memories such as the ATmega128. My 12K test program burns in
|
|
|
|
|
about 5 seconds, add another 5 to read it back out for
|
|
|
|
|
verification.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.1.5:
|
|
|
|
|
|
|
|
|
|
* When getting ready to initiate communications with the AVR device,
|
|
|
|
|
first pull /RESET low for a short period of time before enabling
|
|
|
|
|
the buffer chip. This sequence allows the AVR to be reset before
|
|
|
|
|
the buffer is enabled to avoid a short period of time where the
|
|
|
|
|
AVR may be driving the programming lines at the same time the
|
|
|
|
|
programmer tries to. Of course, if a buffer is being used, then
|
|
|
|
|
the /RESET line from the programmer needs to be directly connected
|
|
|
|
|
to the AVR /RESET line and not via the buffer chip.
|
|
|
|
|
|
|
|
|
|
Feature contributed by Rick C. Petty <rick@KIWI-Computer.com>.
|
|
|
|
|
|
|
|
|
|
* When in interactive terminal mode and dumping memory using the
|
|
|
|
|
'dump <memtype>' command without any address information, and the
|
|
|
|
|
end of memory is reached, wrap back around to zero on the next
|
|
|
|
|
invocation.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.1.4:
|
|
|
|
|
|
|
|
|
|
* Fix -Y option.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.1.3:
|
|
|
|
|
|
|
|
|
|
* Be backward compatible when reading 2-byte rewrite cycle counters
|
|
|
|
|
as written by avrprog version 2.1.0. Version 2.1.1 changed over
|
|
|
|
|
to a 4-byte counter, which caused avrprog versions 2.1.1 and 2.1.2
|
|
|
|
|
to report a negative count for parts that were initialized using
|
|
|
|
|
version 2.1.0. Thanks to Joerg Wunsch for noticing this.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.1.2:
|
|
|
|
|
|
|
|
|
|
* Add '-V' option to disable automatic verify check with uploading
|
|
|
|
|
data.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.1.1:
|
|
|
|
|
|
|
|
|
|
* Fix ATmega128 instruction sequences for reading fuse bits -
|
|
|
|
|
contributed by Joerg Wunsch.
|
|
|
|
|
|
|
|
|
|
* Modify erase-rewrite cycle counter code to use a 4 byte counter
|
|
|
|
|
instead of a two byte counter.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.1.0:
|
|
|
|
|
|
|
|
|
|
* Implement a per-part erase-rewrite cycle counter; requires the use
|
|
|
|
|
of two bytes of EEPROM memory.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.0.5:
|
|
|
|
|
|
|
|
|
|
* Support for ATtiny15 - contributed by Asher Hoskins
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.0.4:
|
|
|
|
|
|
|
|
|
|
* Config file fixes for various parts.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.0.3:
|
|
|
|
|
|
|
|
|
|
* Work around problem programming fuse bits on parts like the
|
|
|
|
|
at90s4433 as described in the following errata:
|
|
|
|
|
|
|
|
|
|
http://www.atmel.com/atmel/acrobat/doc1280.pdf
|
|
|
|
|
|
|
|
|
|
* Add part definition for at90s4414, at90s4433.
|
|
|
|
|
|
|
|
|
|
* Add fuse/lock bit memory instructions for the at90s1200,
|
|
|
|
|
at90s2333, at90s4433 and at90s8515.
|
|
|
|
|
|
|
|
|
|
* Fix setting of programmer status LEDs under certain write-fail
|
|
|
|
|
conditions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.0.2 :
|
|
|
|
|
|
|
|
|
|
* Fix writing to read-only memories such as the lock bits of the
|
|
|
|
|
AT90S2313.
|
|
|
|
|
|
|
|
|
|
* Copyright updates.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.0.1 :
|
|
|
|
|
|
|
|
|
|
* Use correct parallel port pins for VCC.
|
|
|
|
|
|
|
|
|
|
* Add programmer definition for Atmel's STK200.
|
|
|
|
|
|
|
|
|
|
* Add programmer definition for the AVR3 board.
|
|
|
|
|
|
|
|
|
|
* Fix address bit encoding for many parts.
|
|
|
|
|
|
|
|
|
|
* Allow the ``BUFF'' signal to be asserted by multiple pins of the
|
|
|
|
|
parallel port (like VCC) instead of just one. The STK200 appears
|
|
|
|
|
to need this feature.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 2.0.0 :
|
|
|
|
|
|
|
|
|
|
* Add support for programming fuse and lock bits if supported by the
|
|
|
|
|
part.
|
|
|
|
|
|
|
|
|
|
* Move instruction encoding into the config file. Now any part can
|
|
|
|
|
be supported as long as it uses the same basic serial programming
|
|
|
|
|
instruction format.
|
|
|
|
|
|
|
|
|
|
* Add part definitions for the ATMega163 and ATMega8 devices.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 1.4.3 :
|
|
|
|
|
|
|
|
|
|
* Mostly internal code cleanup.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 1.4.2 :
|
|
|
|
|
|
|
|
|
|
* Fixes for ATMega paged memory support.
|
|
|
|
|
|
|
|
|
|
* Support for ATMega16 device.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 1.4.1 :
|
|
|
|
|
|
|
|
|
|
* No functional changes, update to Copyrights only.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 1.4.0 :
|
|
|
|
|
|
|
|
|
|
* Add part definitions to the config file.
|
|
|
|
|
|
|
|
|
|
* Add initial support for Atmel's ATMega paged memory parts.
|
|
|
|
|
|
|
|
|
|
* Config file documentation added.
|
|
|
|
|
|
|
|
|
|
* Add a definition for the Dontronics DT006 programmer.
|
|
|
|
|
|
|
|
|
|
* Fix Intel Hex support for addresses larger than 64k.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 1.3.0 :
|
|
|
|
|
|
|
|
|
|
* Make programmer pin assignments configurable.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Version 1.2.2 :
|
|
|
|
|
|
2003-09-06 17:47:16 +00:00
|
|
|
|
* Initial public release.
|