Bootloader and firmware ATMEGA2560

I have a CR-10S 3D printer. This printer has the ATMEGA2560 board. A while ago I could without any problem from the stock firmware to Marlin 1.1.5. Now I want to use the mesh leveling and want to upgrade to 1.1.8. If uploading the firmware, the leds on the board are flashing but it ends with an error. I tried also to burn a new boot loader, but this also ends with an error. The output of loading the firmware and burning the boot loader can be found in the txt-file attached to this messages. Google does not give a clear answer on these error messages.

I am using IDE 1.8.1. I have flashed firmware and burned new boot loaders in other Arduinos many times and had never a problem.

What can I do to load the new firmware and or boot loader.

Arduino Output.txt (8.5 KB)

aneco: I have a CR-10S 3D printer. This printer has the ATMEGA2560 board. A while ago I could without any problem from the stock firmware to Marlin 1.1.5. Now I want to use the mesh leveling and want to upgrade to 1.1.8. If uploading the firmware, the leds on the board are flashing but it ends with an error. I tried also to burn a new boot loader, but this also ends with an error. The output of loading the firmware and burning the boot loader can be found in the txt-file attached to this messages. Google does not give a clear answer on these error messages.

I am using IDE 1.8.1. I have flashed firmware and burned new boot loaders in other Arduinos many times and had never a problem.

What can I do to load the new firmware and or boot loader.

Arduino is (as far as I know) the only "app" that uses the Arduino bootloader. Most probably, the company that built the printer did a direct burn to the chip.

If you have KNOWN working code for the printer, try burning directly with the programmer (that is, use the Arduino IDE and hold [shilft] while clicking the send button).

Also, you don't know (I don't think you know) what the original fuse settings were. Those have to be right also. And, did they have any code in EEPROM? Possibly they did (like maybe the serial number and mfg. date of the printer).

Hope you didn't lose that (or need it).

Hope this helps...

Arduino is (as far as I know) the only "app" that uses the Arduino bootloader.

Nah; not true. There are MANY products that contain "Arduino-compatible" chips, including the Arduino bootloader(s), and can be re-programmed from the Arduino IDE with no modifications. ESPECIALLY 3D printers (some of the early 3D printer efforts led to the ATmega644-based "Sanguino" boards, to get more pins to run all those motors. For example.)

That doesn't mean that this particular printer is using the bootloader. But it's not unlikely, either.

westfw: Nah; not true. There are MANY products that contain "Arduino-compatible" chips, including the Arduino bootloader(s), and can be re-programmed from the Arduino IDE with no modifications. ESPECIALLY 3D printers (some of the early 3D printer efforts led to the ATmega644-based "Sanguino" boards, to get more pins to run all those motors. For example.)

That doesn't mean that this particular printer is using the bootloader. But it's not unlikely, either.

Well, to get REALLY picky, there are actually two "boot" loaders in AVR chips... the one loaded by Arduino and the other the factory loader that understands the STK500_V2 protocol (which is why something like an AVRISPMKII can program a totally blank AVR chip).

Speaking of programmers... I just picked up an Atmel ICE to play with. I hate that #*&$^ little 10 pin micro connector. In order to make the thing robust (that is, usable for more than a week without breaking it), I had to buy a 0.05 to 0.10 pin adapter, then wire it up to provide the standard 6 pin ICSP, then I put the whole thing into a plastic project case with a large (mega2560 type) USB connector wired to the little tiny micro-USB that the ICE uses.

DANG! I wish they hadn't discontinued the AVRISP-MKII... I only have one in operation and one as a spare. :(

there are actually two "boot" loaders in AVR chips... the one loaded by Arduino and the other the factory loader that understands the STK500_V2 protocol (which is why something like an AVRISPMKII can program a totally blank AVR chip).

I assume you're talking about whatever it is that turns the ISP/SPI programming commands into actual actions? (I've always wondered whether that's actually "code" hidden somewhere in the AVR, rather than hardware...) That's not STK500v2; STK500v2 is sort of a packetized version of STK500v1, which is very much a protocol for communicating between a host PC and a programmer (it includes all sorts of commands like "read/set target voltage" that are nonsense to the chip itself.)

http://www.microchip.com//wwwAppNotes/AppNotes.aspx?appnote=en591659