Flashing more than 128kb into an Atmega2560 MCU...what programmer?


recently I read about problems to flash more than 128kb into the Atmega2560, which is due to the change from a two bit counter (up to 128kb) to a three bit counter (from 128kb onwards til 256kb).

I think it was the manpage of avrdude which says: ATmega2560, ATmega2561 Flash addressing above 128 KB is not supported by all programming hardware. Known to work are jtag2, stk500v2, and bit-bang pro‐ grammers.

The genuine Atmel/Microchip hardware "feels" a little to expensive...jtag is too complicated (and expensive) ... and what counts as "bitbanging programmer"... I know what bitbanging is (I think), but is using GPIOs bitbanging SPI instead hardware SPI the reason, why more than 128kb can be programmed?

Normally I use a simple FTDI-cable and the bootloader to flash stuff or my buspirate which acts as ISP in this case (bootloader flashing preferred, cause ISP overwrites the bootloader each time...).

Am I able to flash more than 128kb with this hardware? What do I need else?

Thanks a lot for any help in advance! Cheers mcc

Buy a couple of cheap Usbasp Programmers.


Change the firmware to bperrybap/usbasp/tree/1.06-alpha.


Works great.

Hi kprims,

Thanks for the links! :)

If I would prefer the USB=>Serial=>UART=>bootloader=>flash-thingy...what is your recommandation then? Does this problem apply to this at all?

Cheers Meino

Buspirate V3 64K may not be able to flash bootloader for atmega2560 correctly.

If you have an up to date bootloader in the mega2560 you should be able to load >128K using a FTDI cable.

I will drop out of this thread now and let more knowledgeable people help you. :slight_smile: