HELP! Uploaded WRONG Firmware to Control Board

Hello MMC Community!
I uploaded the WRONG firmware to my control board and now my 3D printer is ‘bricked’.
The printer won’t boot and there is a continuous ringing whenever I turn it on, it won’t respond to factory reset and I cannot seem to upload a new firmware to override it.
I am wondering if any of you problem solvers out there can help me fix this so I can get back to 3D printing.
Let me know if you need more information.
Thank you!
Jordana :slight_smile:

Unfortunately, I think you might need help from Prusa. If the cpu won’t come up with the current firmware load, and factory reset doesn’t help, then the only way to install new firmware is the way they do it in the factory - via JTAG, which is a serial interface on the board that lets you connect a JTAG programmer that can reload the flash without help from the CPU.
This means you need a JTAG interface card and programming software for your PC, and the knowledge of how to plug it in and do that (not impossible :slightly_smiling_face:). If you’re lucky, you might find a tiny connector on the card, only 5 or 6 pins, where you connect it. If there is no connector, you will have to solder something on, assuming you can even find where it goes. if there’s a Prusa rep near you, I would at least ask them if they can help with info, or they might b able to reload your card for you or swap your card for one that has a good load on it. Good luck!

Actually, there is another option. I’ve never seen the inside of a real Prusa, but the clones like CR10 are base on Arduino. If yours is like that, you might be able to recover it with the Arduino IDE, and no JTAG cable required. How do you normally install new firmware?

Thanks for your messages! It is a clone and we normally install new firmware via USB cable through CURA. Do you have any suggestions/ideas?

Thank you :slight_smile:

I have a Creality CR-10S. I’ve never actually looked inside the control box, so I took it apart tonight. It’s not built out of a standard Arduino board board in a socket, its a custom board with the CPU on it. The CPU is an ATMega5460, which is indeed an Aduino supported CPU. The USB connection is actually just a standard Arduino USB-to serial converter. I bet when you plug your PC into the printer, a new serial port appears in Windows, even though your printer firmware is insane. (What printer do you have?)

This means the Arduino IDE can probably load it, but only if the bootloader in the chip is sane. I imagine Cura just includes an Arduino loader that it uses to update firmware just like the Arduino IDE does. So I expect that since Cura can’t load the firmware, neither will the IDE. But it might be worth trying the IDE to see if it can load anything. What do you have to lose? Your load is already corrupted, so this won’t make it any worse. There are plenty of little demo programs in the beginners tutorial. If you can load any one of them, then your bootloader is ok (See ). Don’t keep it running the tutorial load any longer that you have to.This load doesn’t understand the printer hardware, so it might turn on the nozzle heat or something, and with no temp regulation firmware, it could eventually cause a fire.

If you can t load anything, then the bootloader is probably toast. Aside - how did the bootloader get corrupted - did your update say anything about updating the bootloader?

If the bootloader is corrupted, then you’ll have to get your hands dirty now. This next bit involves opening the control box and removing the power supply to get at the programming connector. Obviously, remove the power cord from the back of the control box before you open it. You’ll need 2 different sizes of Allen Key to do this on a CR-10.

You can either buy a programming cable (search for “ICSP Cable”, and you’ll find lots). you can also build your own if you want, out of another Arduino. Either way, see If you can successfully install a bootloader, then I suspect Cura will once again do the printer firmware update (using the right file this time! :slight_smile: ).

Or, find a friend who’s Arduino knowledgeable and ask her to do all the above :slight_smile:

@MMC_Stewart wondering is there anything else you can think of here?

oh no! I only just saw this.

Prusas have two reset buttons: the factory reset process (which I think you did: front X button plus the dial button, as detailed here: Factory reset) plus the indent next to the USB port.

Prusa claim it’s impossible to delete the bootloader firmware, so if these don’t work, try their technical support.

1 Like

Except it’s not a real Prusa…

I missed that detail. Need more details, then.