1. Firmware updater is now part of the Slic3r PE, starting version 1.40.1. In case you have it already installed, you can skip to the next step.
    • Firmware updater is now part of the Slic3r PE, starting version 1.40.1. In case you have it already installed, you can skip to the next step.

    • Go to http://www.prusa3d.com/drivers/ and select your printer.

    • Find the driver section and download the latest package. Leave this page opened for the next step!

    • Install drivers on your Windows, macOS or Linux system.

    • Part of the driver's package is Slic3r PE, which includes a tool for firmware upgrade.

  2. Go back to prusa3d.com/drivers/ to get the firmware for your printer.
    • Go back to prusa3d.com/drivers/ to get the firmware for your printer.

    • Download the zip file with the firmware to your computer and unzip it.

    • For the Mini RAMBo used in MK2/MK2S/MK2S MMU/MK2.5 you have to choose the firmware based on the version of the board you have. Inside the package there will be two files with either RAMBo 13a or RAMBo 10a in the name.

      • RAMBo 13a - used in the majority of the MK2 and all MK2S printers (most common). LCD connectors are part of the board.

      • RAMBo 10a - used in the MK1 and some early batches of MK2 (very rare). LCD connectors are outside the board.

      • More info about the boards used in MK2 a MK2S can be found in this PDF file (also enclosed in the firmware package).

      • More info about the boards used in MK2.5 can be found in this PDF file (also enclosed in the firmware package).

    • For the MK3 there is only one version, no need to choose.

    • In case of the MMU2 upgrade your printer consists of two motherboards, which have to be upgraded separately.

      • Visit prusa3d.com/drivers/ to get the firmware for your MMU2 printer.

      • The EINSY or miniRAMBo board located in the black 3D printed case. Look for the MK3 or MK2.5 hex files, then connect your computer using a USB type B cable.

      • The MMU2 control board is located inside the MMU2 unit sitting on the top of the printer's frame. Look a hex file with "MMU2board" in the name. Then connect your PC using a MicroUSB cable.

    • Always use the bundled USB cables to avoid issues with the connection between your computer and the printer.

    • Open Slic3r PE and from the menu select Configuration ->Flash Printer Firmware

    • Connect the printer to your computer using the bundled USB cable and select it from the menu. Hit Rescan if the printer is not on the list

    • Select the firmware file on your harddrive (*.hex). Do not place the firmware on a network share.

    • Hit the Flash button.

    • Wait until the process is completed. You can click on "Advanced: ..." to see the flashing process including detailed log.

    • When the flashing process is done, you will be informed.

    • We're done here! Your printer is ready to rock ;)

    • In case of issues with flashing the firmware please visit our troubleshooting article.

Finish Line

208 other people completed this guide.

Josef Prusa

Member since: 01/05/2015

69,259 Reputation

141 Guides authored

Team

Prusa Research Member of Prusa Research

Community

3 Members

303 Guides authored

27 Comments

GNU/Linux Users, you can upload hex file using avrdude.

- Install arduino from your distro repos (Tested on Ubuntu 12.04)

- Download your new firmware for your board from: http://www.prusa3d.com/drivers/

- Extract

- Open a terminal and cd to extracted dir

- Upload by running (Change "3mm-RAMBo13a-PrusaNmk2.hex" to your board and extruder):

/usr/share/arduino/hardware/tools/avrdude -C/usr/share/arduino/hardware/tools/avrdude.conf -v -patmega2560 -cstk500v2 -P/dev/ttyACM0 -b115200 -D -Uflash:w:3mm-RAMBo13a-PrusaNmk2.hex:i

Alejandro Romero - Reply

Under Linux I flashed the firmware .hex file with avrdude:

avrdude -c stk500v2 -b 115200 -p Atmega2560 -v -P /dev/ttyACM0 -D -U 1_75mm_MK2-RAMBo13a-E3Dv6full-3.0.8.hex

Even better would be compiling the firmware myself, but so far the Arduino project didn't want to be built..

Jonas Jelten - Reply

I confirm it is working with avrdude on OSX too. Just uploaded doing: avrdude -c stk500v2 -b 115200 -p Atmega2560 -v -P /dev/tty.usbmodemFA131 -D -U 1_75mm_MK2-RAMBo13a-E3Dv6full.hex

To install avrdude: brew install avrdude --with-usb

Denis Pitzalis - Reply

You guys saved me here!....

With standard Arduino software install I was able to do:

$ pwd

/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin

$ ./avrdude -C ../etc/avrdude.conf -P /dev/tty.usbmodem1421 -b115200 -D -Uflash:w:/Applications/Prusa3d/prusa3d_mac_1_7_5/1_75mm_MK2-RAMBo13a-E3Dv6full.hex -v -patmega2560 -cstk500v2

and now my printer is back to normal...

Devon Heron - Reply

Anybody get continuous timeout messages doing this? This is from a Raspberry Pi running OctoPrint. I did hit the "disconnect" button in the OctoPrint web interface to try to prevent port conflicts.

pi@octopi:~ $ avrdude -c stk500v2 -b 115200 -p Atmega2560 -v -P /dev/ttyACM0 -D -U flash:w:1_75mm_MK2-RAMBo13a-E3Dv6full.hex:i

avrdude: Version 6.1, compiled on Jul 7 2015 at 10:29:47

Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

Copyright (c) 2007-2014 Joerg Wunsch

System wide configuration file is "/etc/avrdude.conf"

User configuration file is "/home/pi/.avrduderc"

User configuration file does not exist or is not a regular file, skipping

Using Port : /dev/ttyACM0

Using Programmer : stk500v2

Overriding Baud Rate : 115200

avrdude: stk500v2_ReceiveMessage(): timeout

avrdude: stk500v2_ReceiveMessage(): timeout

avrdude: stk500v2_ReceiveMessage(): timeout

Henry Berg - Reply

View Statistics:

Past 24 Hours: 154

Past 7 Days: 1,128

Past 30 Days: 5,338

All Time: 94,823