The ATmel MCU ATMEGA16U2 MEGA 2560 R3 Improved Version CH340G Board is a micro-controller board base on the ATmega2560. It has a USB host interface to connect with Android based phones, base on the MAX3421e IC. It has 54 digital input/output pins (of which 15 can be used as PWM outputs); 16 analog inputs, 4 UARTs (hardware serial ports), a 16 MHz crystal oscillator; a USB connection, a power. Note: If you're reburning the hardware for a Uno board, in the command after flash:w: you typed in UNO-dfuandusbserialcombined.hex; but if you're using a Mega2560, after the command you should do MEGA-dfuandusbserialcombined.hex. So for Mega, the whole command should be. Sudo dfu-programmer atmega16u2 erase. When this command is done and you get a command prompt again, type sudo dfu-programmer atmega16u2 flash Arduino-usbserial-uno.hex. Finally, type sudo dfu-programmer atmega16u2 reset. If your board has an atmega8u2 type atmega8u2 instead of atmega16u2 in the command lines above. Unplug your board.
dfu-programmer is a multi-platform command-line programmer for Atmel (8051, AVR, XMEGA & AVR32) chips with a USB bootloader supporting ISP. Most Atmel devices having a USB port come pre-programmed with the bootloader, and this is a lightweight alternative to Atmel's own FLIP/BatchISP program. This is a mostly Device Firmware Update (DFU) 1.0 compliant user-space application.
topdfu-programmer 0.7.2 released (04 Feb 2015)
This is a minor release fixing a longstanding problem with memory ranges on XMega
- Use the correct memory ranges for XMega. Bootloader space is additional to listed device size.
dfu-programmer 0.7.1 released (03 Jan 2015)

This is a minor release adding one experimental feature and mopping up a few bug fixes

- Add experimental support for autocomplete on Ubuntu
- Fix exit status of help-related options and improve start sequence
- Fix infinite loop in rpl_malloc
- Fix filenames in distribution tarball
dfu-programmer 0.7.0 released (02 Aug 2014)
This release contains a major internal reworking in several areas
- More reliable writing of eeprom and user flash areas
- Blank memory check
- Hex dump facility
- New 'launch' command replaces start and reset commands
- Status output shows progress while programming
dfu-programmer repository moved to GitHub (25 May 2014)
After many years hosted on SourceForge we have taken the decision to migrate the repository to GitHub. We hope users will benefit from the enhanced support for open source collaboration that is offered by GitHub, and that we will benefit from more user input.
You can find the new repository here.
Downloads will continue to be hosted by SourceForge.
topYou can download the source distribution from the project files page. Windows users can download a pre-compiled executable, a set of USB drivers and the HTML help file in a separate zip file from the same page.
top8051 based controllers:
at89c51snd1c, at89c51snd2c, at89c5130, at89c5131, at89c5132
AVR based controllers:
at90usb1287, at90usb1286, at90usb1287-4k, at90usb1286-4k, at90usb647, at90usb646, at90usb162, at90usb82, atmega32u6, atmega32u4, atmega32u2, atmega16u4, atmega16u2, atmega8u2
AVR32 based controllers:
at32uc3a0128, at32uc3a1128, at32uc3a0256, at32uc3a1256, at32uc3a0512, at32uc3a1512, at32uc3a0512es, at32uc3a1512es, at32uc3a364, at32uc3a364s, at32uc3a3128, at32uc3a3128s, at32uc3a3256, at32uc3a3256s, at32uc3a4256s, at32uc3b064, at32uc3b164, at32uc3b0128, at32uc3b1128, at32uc3b0256, at32uc3b1256, at32uc3b0256es, at32uc3b1256es, at32uc3b0512, at32uc3b1512, at32uc3c064, at32uc3c0128, at32uc3c0256, at32uc3c0512, at32uc3c164, at32uc3c1128, at32uc3c1256, at32uc3c1512, at32uc3c264, at32uc3c2128, at32uc3c2256, at32uc3c2512
XMEGA based controllers:
atxmega64a1u, atxmega128a1u, atxmega64a3u, atxmega128a3u, atxmega192a3u, atxmega256a3u, atxmega16a4u, atxmega32a4u, atxmega64a4u, atxmega128a4u, atxmega256a3bu, atxmega64b1, atxmega128b1, atxmega64b3, atxmega128b3, atxmega64c3, atxmega128c3, atxmega256c3, atxmega384c3, atxmega16c4, atxmega32c4
topThe need for this tool came about when Wes Schmidt needed to flash an at89c51snd1c chip that had the USB bootloader on it, but the Atmel-provided tool (FLIP) didn't support USB flashing in linux.
After a few days of web searching and scraping together a windows machine to do the job, he found that Atmel provided a document describing the communications protocol used, and happily spent the next week hacking together the start of dfu-programmer.
topThe mailing list is the preferred communication method.
dfu-programmer is a multi-platform command-line programmer for Atmel (8051, AVR, XMEGA & AVR32) chips with a USB bootloader supporting ISP. Most Atmel devices having a USB port come pre-programmed with the bootloader, and this is a lightweight alternative to Atmel's own FLIP/BatchISP program. This is a mostly Device Firmware Update (DFU) 1.0 compliant user-space application.
topdfu-programmer 0.7.2 released (04 Feb 2015)
This is a minor release fixing a longstanding problem with memory ranges on XMega
- Use the correct memory ranges for XMega. Bootloader space is additional to listed device size.
dfu-programmer 0.7.1 released (03 Jan 2015)
This is a minor release adding one experimental feature and mopping up a few bug fixes
- Add experimental support for autocomplete on Ubuntu
- Fix exit status of help-related options and improve start sequence
- Fix infinite loop in rpl_malloc
- Fix filenames in distribution tarball
dfu-programmer 0.7.0 released (02 Aug 2014)
This release contains a major internal reworking in several areas
- More reliable writing of eeprom and user flash areas
- Blank memory check
- Hex dump facility
- New 'launch' command replaces start and reset commands
- Status output shows progress while programming
dfu-programmer repository moved to GitHub (25 May 2014)
After many years hosted on SourceForge we have taken the decision to migrate the repository to GitHub. We hope users will benefit from the enhanced support for open source collaboration that is offered by GitHub, and that we will benefit from more user input.
You can find the new repository here.
Downloads will continue to be hosted by SourceForge.
topYou can download the source distribution from the project files page. Windows users can download a pre-compiled executable, a set of USB drivers and the HTML help file in a separate zip file from the same page.
top8051 based controllers:
at89c51snd1c, at89c51snd2c, at89c5130, at89c5131, at89c5132
AVR based controllers:
at90usb1287, at90usb1286, at90usb1287-4k, at90usb1286-4k, at90usb647, at90usb646, at90usb162, at90usb82, atmega32u6, atmega32u4, atmega32u2, atmega16u4, atmega16u2, atmega8u2
Atmega16u2 Driver Mac
AVR32 based controllers:
at32uc3a0128, at32uc3a1128, at32uc3a0256, at32uc3a1256, at32uc3a0512, at32uc3a1512, at32uc3a0512es, at32uc3a1512es, at32uc3a364, at32uc3a364s, at32uc3a3128, at32uc3a3128s, at32uc3a3256, at32uc3a3256s, at32uc3a4256s, at32uc3b064, at32uc3b164, at32uc3b0128, at32uc3b1128, at32uc3b0256, at32uc3b1256, at32uc3b0256es, at32uc3b1256es, at32uc3b0512, at32uc3b1512, at32uc3c064, at32uc3c0128, at32uc3c0256, at32uc3c0512, at32uc3c164, at32uc3c1128, at32uc3c1256, at32uc3c1512, at32uc3c264, at32uc3c2128, at32uc3c2256, at32uc3c2512
XMEGA based controllers:
Atmega16u2 Dfu Drivers For Mac Os
atxmega64a1u, atxmega128a1u, atxmega64a3u, atxmega128a3u, atxmega192a3u, atxmega256a3u, atxmega16a4u, atxmega32a4u, atxmega64a4u, atxmega128a4u, atxmega256a3bu, atxmega64b1, atxmega128b1, atxmega64b3, atxmega128b3, atxmega64c3, atxmega128c3, atxmega256c3, atxmega384c3, atxmega16c4, atxmega32c4
topThe need for this tool came about when Wes Schmidt needed to flash an at89c51snd1c chip that had the USB bootloader on it, but the Atmel-provided tool (FLIP) didn't support USB flashing in linux.
After a few days of web searching and scraping together a windows machine to do the job, he found that Atmel provided a document describing the communications protocol used, and happily spent the next week hacking together the start of dfu-programmer.
topAtmega16u2 Bootloader
The mailing list is the preferred communication method.



