Great work! On Sep 17, 2013, at 15:10 , Joerg Wunsch <[email protected]> wrote:
> More than two years after the previous release (5.11.1), AVRDUDE 6.0 > finally made it to go public. > > I'd like to thank everyone who has been involved into that release, > both active developers with SVN access as well as numerous users who > contributed bugfixes, improvements and suggestions. > > The primary reason for the major version number bump was a changed > syntax of the configuration file (programmer types are now strings > rather than keywords), but that version number change has certainly > also "raised the bar" about many other things that should have been > done before releasing it. Among those are: > > . direct reading of ELF files (provided libelf with its header files > is around when ./configure runs) > > . keep track of input file contents; when programming just a > bootloader only, nothing else but the bootloader area is touched > > . config file can refer to a "parent" device; this dramatically > simplifies the config file as only those things that have been > changed compared to the parent must be specified anew > > As an experiment, I'm trying to provide an "official" Win32 binary > release for the first time. It has been compiled using a MinGW32 > cross-compilation environment on my FreeBSD host system. If this > turns out to be a complete failure, please tell me, so I can stop this > experiment, and leave Windows binaries to those who know more about > the matter than me. If it works, you might want to tell me > nevertheless, so I might continue that service in future. > > Here are the complete release notes for 6.0 (from the NEWS file): > > * Major changes compared to the previous version: > > - Programmer types in configuration file are no longer keywords but > specified as string. > > So you need to change 'type = XYZ;' to 'type = "XYZ";' in own > config files. (internal: The parser does not need to know all > programmer types now, new programmers will update only the table > in pgm_type.c.) > > - The erase cycle counter (formerly options -y / -Y) has been > removed. > > - Specifying a -U option without a memory type (short form of > option argument list) now defaults to "application" memory for > Xmega devices, and "flash" for everything else. This ensures > the Xmega bootloader is not accidentally touched. > > - For programmers that support it, the default erase method is a > page erase now, rather than a chip erase (Xmega only). > > - Keep track of input file contents > Memory segments are being tracked to remember whether they've > been actually read from a file. Only segments that came from a > file are being programmed into the device, or considered for > verification. This drastically improves handling speed for > sparse files (e.g. files that have a second bootloader segment), > and it ensures the device contents is actually compared for > everything mentioned in the file (even in case the file has > large 0xFF blocks). > > - The -U option now accepts ELF files as input files, and extracts > the appropriate section contents that matches the requested memory > region. To enable this feature, the host system used for the > compilation must have a libelf around, including the respective > header files (i.e., package "libelf-devel" on many Linux systems). > > - Programmers and parts lists > > They are now sorted at output with '-c ?'/'-p ?'. (patch #7671: > Sorting programmers and parts lists for console output) > > Programmers and parts lists in documentation generated from lists > mentioned above. (patch #7687: Autogenerating programmers and > parts lists for docs) > > Output list of programmer types with '-c ?type', add list to > documentation > > - Configuration files now accepts parent parts/programmers, parts > starting with '.' (eg. .xmega) are not included in output parts > list and can be used as abstract parents > > (bug #34302: Feature request : device configuration with parent classes) > (patch #7688: Implement parent programmers feature) > > - Additional config files which are read after default can be > specified on command line using '-C +filename' > > (patch #7699 Read additional config files) > > - "Safemode" can now be turned off by default from within a > configuration file (like ~/.avrduderc). > > - The new option -l logfile allows to redirect diagnostic messages > to a logfile rather than stderr. Useful to record debugging > traces, in particular in environments which do not offer > shell-style redirection functionality for standard streams. > > - When leaving debugWIRE mode, immediately retry with ISP rather > than bailing out completely. > > - The USBasp programmer implementation now supports detailed traces > with -vvv, and device communication traces with -vvvv. > > - The "verbose" terminal mode command allows to query or modify the > verbosity level. > > * New devices supported: > - ATmega48P (patch #7629 add support for atmega48p) > - AT90PWM316 (bug #21797: AT90PWM316: New part description) > - ATxmega16D4, ATxmega32D4, ATxmega64D4, ATxmega128D4 > - ATmega256RFR2, ATmega128RFR2, ATmega64RFR2, ATmega2564RFR2, > ATmega1284RFR2, ATmega644RFR2 > - ATtiny1634 > - ATxmega128A1U, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, > ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega16A4U, > ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega192D3, > ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, > ATxmega32A4U, ATxmega32C4, ATxmega384C3, ATxmega384D3, > ATxmega64A1U, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, > ATxmega64B3, ATxmega64C3, ATxmega64D3 > - ATtiny43U > - ATmega406 > - ATxmega8E5, ATxmega16E5, ATxmega32E5 > - ATtiny20, ATtiny40 > > * New programmers supported: > - linuxgpio > + any (embedded) Linux system with 4 GPIOs available can be used > as a programmer with little or no additional hardware. > > - avrftdi > + o-link (patch #7672 adding support for O-Link (FTDI based > JTAG) as programmer) > + 4232h (patch #7715 FT4232H support) > - TPI support > + openmoko (bug #37977 Support for Openmoko Debug Board) > > - usbasp > + nibobee (previously specified as '-c usbasp -P nibobee) > + usbasp-clone (same as usbasp but ignores vendor and product > string, checks only vid/pid) > > - ftdi_syncbb (new type for synchronous bitbanging with ft232r/ft245r) > + ft245r (FT245R Synchronous BitBang, miso = D1, sck = D0, mosi > = D2, reset = D4) > + ft232r (FT232R Synchronous BitBang, miso = RxD, sck = RTS, > mosi = TxD, reset = DTR) > + bwmega (BitWizard ftdi_atmega builtin programmer, miso = DSR, > sck = DCD, mosi = CTS, reset = RI) > + arduino-ft232r (Arduino: FT232R connected to ISP, miso = CTS > X3(1), sck = DSR X3(2), mosi = DCD X3(3), reset = RI X3(4)) > + diecimila (alias for arduino-ft232r) > > - pickit2 > > - Atmel JTAGICE3 > > - buspirate_bb (TPI programming using the BusPirate in bitbang mode) > > * Bugfixes > - bug #34027: avrdude AT90S1200 Problem > - bug #34518: loading intel hex files > 64k using record-type 4 > - patch #7667: Minor memory handling fixes > - patch #7680: Fixing timeout problem in ser_recv in ser_win32.c > - patch #7693: Fix config file atmel URLs (+ URLs in > avrdude.texi and avrpart.h) > - bug #21663: AT90PWM efuse incorrect, bug #30438: efuse bits > written as 0 on at90pwmxx parts > - bug #35261: avrftdi uses wrong interface in avrftdi_paged_(write|load) > - patch #7437 modifications to Bus Pirate module > - patch #7686 Updating buspirate ascii mode to current firmware, > use AUX as clock generator, and setting of serial receive > timeout > - bug #34768 Proposition: Change the name of the AVR32 devices > - patch #7718: Merge global data of avrftdi in a private data > structure > - bug #35208: avrdude 5.11 on freebsd 8.2-STABLE does not reset > Arduino Uno properly > - bug #34518: loading intel hex files > 64k using record-type 4 > (Extended Linear Address Record) > - bug #34027: avrdude AT90S1200 Problem > - bug #30451: Accessing some Xmega memory sections gives not > supported error > - bug #28744: Can't load bootloader to xmega128a1 > - bug #29019: pagel/bs2 warning when uploading using stk500 to xmega > - bug #30756: When setting SUT to 64ms on XMEGA, avrdude doesn't > read device signature > - bug #37265: wrong page sizes for XMega64xx in avrdude.conf > - bug #37942: Latest SVN can't program in dragon_jtag mode > - patch #7876 JTAGICE mkII fails to connect to attiny if debugwire > is enabled AND target has a very slow clock > - bug #39893: Verification failure with AVRISPmkII and Xmega > - bug #38713: Compilation of the documentation breaks with texinfo-5 > - bug #38023: avrdude doesn't return an error code when attempting > to upload an invalid Intel HEX file > - bug #39794: warnings when building avrdude 6.0rc1 under CentOS 6.4 > - bug #35800: Compilation error on certain systems if parport is disabled > - bug #38307: Can't write usersig of an xmega256a3 > - bug #38580: Current svn head, xmega and fuses, all fuses tied to fuse0 > - bug #39691: Buffer overrun when reading EEPROM byte with JTAGICE3 > - bug #38951: AVR109 use byte offset instead of word offset > - patch #7769: Write flash fails for AVR910 programmers > - bug #38732: Support for ATtiny1634 > - bug #36901: flashing Atmega32U4 EEPROM produces garbage on chip > - bug #28344: chip_erase_delay too short for ATmega324P, 644, 644P, and > 1284P > - bug #34277: avrdude reads wrong byte order if using avr911 (aka > butterfly) > - bug #35456: The progress bar for STK500V2 programmer is "wrong". > - patch #5708: avrdude should make 10 synchronization attempts instead > of just one > - patch #7606: ATtiny43u support > - patch #7657: Add ATmega406 support for avrdude using DRAGON + JTAG > - bug #35474: Feature request: print fuse values in safemode output. > - patch #7710: usb_libusb: Check VID/PID before opening device > - [no-id]: Fix SCK period adjustment for STK500v2 > - bug #40040: Support for ATtiny20 and ATtiny40 > > * Internals: > > - Restructuring and compacting programmer definition part of > grammar for config file. > - Cleanup of parser code, removing unused definitions/ > functions. Using yylex_destroy if available. > - Fixed some more memory leaks, added cleanup code at program exit > (to minimize the number of non-freed memory blocks reported by > valgrind) > - Fixed some findings reported by cppcheck. > > -- > cheers, Joerg .-.-. --... ...-- -.. . DL8DTL > > http://www.sax.de/~joerg/ > Never trust an operating system you don't have sources for. ;-) > > _______________________________________________ > avrdude-dev mailing list > [email protected] > https://lists.nongnu.org/mailman/listinfo/avrdude-dev -- Rick _______________________________________________ avrdude-dev mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/avrdude-dev
