Arduino MEGA2560, "verification error, first mismatch at byte [...]"

I'm getting this weird error on both my Megas. Most of the sketch data is XBM bitmaps, so I guess this is what it triggers this bug (long sequences of repeated data). Has anyone else experienced this bug/glitch? I guess there is something wrong with avrdude.

Do you happen to have 3 or more bytes with the value 0x21 in a row in your bitmaps?

The Arduino Mega 2560 has a bootloader that will go into a special mode if it sees a sequence of three exclamation points "!!!".
This can be triggered by this showing up anywhere in the code to be downloaded, strings or byte arrays.

This has been fixed in a newer version of the bootloader that is included with Arduino IDE. You will need to download the new bootloader with an ISP or an Arduino programmed with the Arduino ISP sketch.

No, but I do have many bitmaps that contain 0xFF. Commenting out those bitmaps does not trigger the bug. I will try to upload the new bootloader and see what happens. Thanks a lot!

Well, I wired up my Arduino Duemilanove, flashed ArduinoISP, installed a capacitor to disable the reset and wired up the two boards. I tried uploading the .hex file both through avrdude and inside the Arduino IDE but I always get:

avrdude: verification error, first mismatch at byte 0x1e000
         0xff != 0x0d
avrdude: verification error; content mismatch

What am I missing here? Any lock bits that need to be disabled first maybe?

Hello everybody

Any solution to this? I have the same problem here too: A RANDOM number of cheksum errors (mostly 5 - 7) at random locations. Same problem on two Arduino Mega 2560 boards. Verifing via MK2 programmer in Atmel studio shows no mismatches (i tried this several times). I also tried several cables an different USB ports as well as erasing the chip an programming a new bootloader, but the problem persists. The message I got from the last upload:

avrdude: stk500v2_recv(): checksum error
avrdude: stk500v2_recv(): checksum error
avrdude: stk500v2_recv(): checksum error
avrdude: stk500v2_recv(): checksum error
avrdude: verification error, first mismatch at byte 0x1d6e
0xe9 != 0x0f
avrdude: verification error; content mismatch

But the programm on the arduino board woks perfectly! Sketch size is around 16 kBytes -this might give a clue as the simple blink demo uploads without any errors. Uploading Uno & Leonardo board also works flawless.

Any ideas how this can be solved?

Kind regards,
Genki