Skip to main content
  1. Firmware updater is now part of the PrusaSlicer (previously Slic3r PE). 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.
    • Firmware updater is now part of the PrusaSlicer (previously Slic3r PE). 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 PrusaSlicer, which includes a tool for firmware upgrade.

    In Step 1 Download necessary software

    The instruction “Install drivers on your Windows or MacOS system” is not sufficient for MacOS. After downloading, the folder “prusa3d_mac_2_1_4” is left in the Downloads folder. Apparently it needs to be manually moved to the Applications folder to complete the installation.

    Bill Waring - Reply

    Hi Bill,

    yes to install apps on MacO you need to move them to the applications folder. The guide assumes you know what to do, as this is a basic task on both operating systems.

    Jakub Dolezal -

    Seems like the drivers page has been updated, doesn’t look anything like the sample image anymore.

    Evan - Reply

    Hi Evan, yes you are right, the guides will be updated shortly.

    Jakub Dolezal -

    File wont run. I’m receiving a error that setup files are corrupted.

    Philip - Reply

    In that case, please uninstall Slic3r and download it and install it again. Also re-download the firmware package and retry the flashing process again.

    Martin L. - Official Prusa CS -

    I have an aurora z605 Xi3. I can’t tell which one that is on the driver page?

    Garret - Reply

    I’m using 2_0_0 for a while without problems, until trying to update firmware. The instructions are almost exclusively for Windows. Linux is left out. Several issues:

    1 - “Drivers” includes apps and (apparently) actual device drivers (“/dev/ttyACMO”). Overloading the term is not helpful, since there is no indication of what “driver version” is installed. Looking at “Help -> About PrusaSlicer” shows the *app* version number (“Version 2.0.0+linux64”), but if there are actual device drivers “under the hood” they are not listed.

    2 - Attempting to update firmware results in an error: “avrdude-slic3r: ser open(): can’t open device “/dev/ttyACM0”: Permission denied”. Examining that (c-mode) device, shows that it is owned by “root” in group “dialout”.

    It appears either the user (e.g. “joe”) must be added to the dialout group (I tried that, but it has no effect), or port permissions must be changed to add “+o rw” (but that could be a security issue), or, run prusaslicer as root (BAD!). Suggestion?

    John Drabik - Reply

    A separate issue is that the instruction don’t indicate that if updating both the printer and the MMU2, you must first update the printer firmware, then unplug the cable to the printer controller, then get a microUSB cable and connect from the computer to the MMU2s connector, then re-run the update firmware routine (selecting the MMU2s .hex file, of course). I can’t try that yet, but it is clear that updating the printer firmware cannot also update the MMU2s at the same time. Perhaps add a step or two for those that have both?

    John Drabik - Reply

    Hello John, step 3 explains how to flash the MMU2S firmware and that it needs to be done separately from the printer.

    Filip M - Official Prusa CS -

  2. 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/MK2.5S 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.
    • 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/MK2.5S 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/MK2.5S can be found in this PDF file (also enclosed in the firmware package).

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

    For the firmware, it lists various .hex files, but I can’t find the English one.

    Joe O. - Reply

    Every one of them contains English + one other language.

    Martin L. - Official Prusa CS -

    Upgrading my MK3 to MK3S what version of firmware shall I download, the MK3 or the MK3S?

    Paquay - Reply

    After the MK3S upgrade is done, flash MK3S firmware

    Martin L. - Official Prusa CS -

  3. In case of the MMU2/MMU2S upgrade your printer consists of two motherboards, which have to be upgraded separately. Visit prusa3d.com/drivers/ to get the firmware for your MMU2/MMU2S printer. The EINSY or miniRAMBo board located in the black 3D printed case. Look for the MK3/MK3S or MK2.5/MK2.5S hex files, then connect your computer using a USB type B cable.
    • In case of the MMU2/MMU2S upgrade your printer consists of two motherboards, which have to be upgraded separately.

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

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

    • The MMU2/MMU2S control board is located inside the MMU2/MMU2S 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.

    • We will flash the firmware files in the next step. Make sure you have prepared both cables and the printer is turned on.

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

  4. Open PrusaSlicer 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.
    • Open PrusaSlicer 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.

    Win10:

    If Flash fails, try running Slic3r PE as Administrator.

    Gerhard Wildzeisz - Reply

    Thanks Gerhard for the tip ;)

    Jakub Dolezal -

    On Linux try launching Slic3r PE’s AppImage with sudo. Not ideal, but helped me resolve “Permission denied” issues.

    Sergiy Byeloyzorov -

    Thanks, that worked for me!

    Jeremy Martin -

    If it fails on Linux, try adding your user to the “dialout“ group by running “adduser <username> dialout“ as root. Depending your distro your user may already be a member of that group by default, but at least on Debian this is not the case from my experience.

    Manolis Agkopian - Reply

    I had to manually update the drivers from control panel in win7 64bit. Point it to the main Prusa3D install folder and you’re GTG.

    Eric Bass - Reply

    Hi, got a problem here.

    Copyright (c) 2007-2014 Joerg Wunsch

    System wide configuration file is "C:/PROGRA~1/Prusa3D/Slic3rPE/resources\avrdude\avrdude.conf"

    Using Port : COM12

    Using Programmer : wiring

    Overriding Baud Rate : 115200

    avrdude: ser_open(): can't open device "\\.\COM12": The system cannot find the file specified.

    avrdude done. Thank you.

    Can anyone help flash the firmware ?

    Got the drivers working, windows had problems seeing the printer, but updated from installed folder and it’s ok now

    GrigoreMihai - Reply

    Hi there Grigore, check out this article https://help.prusa3d.com/l/en/article/gX... hope that helps :)

    Tom

    Tomáš -

    I can’t find the English .hex file in the list of .hex files.

    Joe O. - Reply

    Hi there, not sure where you were looking for the firmware .hex files. Yet if you go at this link https://www.prusa3d.com/drivers/ and then click on Download 3.3.1. you shall download firmware for the MK3 with only one .hex file which is for english version. Hope this helps.

    Tom

    Tomáš -

    I appreciate your assistance. I was trying to download the MK 2.5 firmware. When I open up the zip file, there is a list of hex files. I couldn’t find a n English one.. I finally figured out that they all had English with a designated second language. I was able to get it and all is fine, now.

    Joe O. -

    what is this problem ?

    avrdude: Version 6.3-20160220-prusa3d, compiled on Aug 30 2018 at 16:11:16

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

    Copyright (c) 2007-2014 Joerg Wunsch

    System wide configuration file is "C:/PROGRA~1/Prusa3D/Slic3rPE/resources\avrdude\avrdude.conf"

    Using Port : COM13

    Using Programmer : wiring

    Overriding Baud Rate : 115200

    avrdude: ser_open(): can't open device "\\.\COM13": The system cannot find the file specified.

    eran reshef - Reply

    how do I solve this ?

    avrdude: Version 6.3-20160220-prusa3d, compiled on Aug 30 2018 at 16:11:16

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

    Copyright (c) 2007-2014 Joerg Wunsch

    System wide configuration file is "C:/PROGRA~1/Prusa3D/Slic3rPE/resources\avrdude\avrdude.conf"

    Using Port : COM13

    Using Programmer : wiring

    Overriding Baud Rate : 115200

    avrdude: ser_open(): can't open device "\\.\COM13": The system cannot find the file specified.

    eran reshef - Reply

    managed - changed the USB port

    eran reshef - Reply

    I got files named as “prusai3_fw_MK25_3_5_1_RAMBo_13a_en-xx.hex”.

    en_cz <-Czechoslovakia

    en_de <- Denmark

    en_es <- Estonia

    en_fr <- France

    en_it <-Italy

    en_pl <- Poland

    Which one is for Canada/USA?

    Allan Albrecht - Reply

    If all fails….read the PDF documents.

    They are all english…….the notations noted are for the second language (if needed).

    Allan Albrecht -

    Hello Allan,

    That is correct, in the .zip package with the firmware all versions are english by default, with a second language in the filename to choose from, should you want to use a different one.

    “prusa3d_fw_MK3_3_5_1.hex” is english with no additional language to choose from.

    Official Prusa Support

    Marcin M. - Official Prusa CS -

    Also, “es” is Spanish and Czechoslovakia does not exist since 1992 ;-)

    Martin L. - Official Prusa CS -

    Couldn’t have been easier once I read the firmware installer was part of the slicer program.

    tedandlaura.sykora@gmail.com - Reply

    Does the printer need to be powered up via power supply to do this?

    jeff d - Reply

    Hi Jeff,

    Yes, it needs to be powered on for you to be able to flash the firmware.

    Marcin M. - Official Prusa CS -

    Please add an auto download of Firmware into PrusaSlicer - it seems daft i have to go and manually download a firmware and point your app at it. Why can’t your app pull it straight down for me.

    T.

    Tony - Reply

    Tonny,

    Thanks for your suggestion, this feature is being discussed.

    Martin L. - Official Prusa CS -

    Step 4, item 2, Re connecting the printer. You might add that you need to connect the printer power cable and turn on the printer. Since those steps were not mentioned, I first assumed the flash was to be done with the printer unpowered.

    Joe Foley - Reply

    HiJoe.

    Thank you for your suggestion. We will add this point to the text. ;)

    Vojta Zeman -

    The Prusa drivers are installed (for me) on com3. I tried the flasher with Slicer from v2.2.2 drivers. The flasher acts like it is doing something when in fact it is not. The warning that you will render your print unusable by cancelling contradicts the troubleshooting article. I upgraded slicer to v2.0 and tried the firmware flash again. This time the firmware flasher gave an error about not being able to communicate on com3. Then I tried changing the port number of the prusa driver (since I noticed another device using com3) but there is no “Port Settings” tab for the prusa device. So, changed the other device using com3 to another port, restarted, and the flash finally worked.

    It would be nice to have information in the troubleshooting guide about checking for conflicting com ports. Better yet, the driver install should have verified that com3 was available before choosing that port.

    Rick - Reply

    Hello Rick,

    Thank you for your feedback, we will update the troubleshooting guide.

    Martin L. - Official Prusa CS -

Finish Line

316 other people completed this guide.

Josef Prusa

Member since: 01/05/2015

142 Guides authored

Team

Prusa Research Member of Prusa Research

Community

3 Members

365 Guides authored

39 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

I am getting this error:

Uncaught node.js Error

Error: EROFS, open '.fw.hex' at Error(native)

I am running Mac 10.12.3

I happen to have Node v4.6.2 installed

Richard Yee - Reply

Same error as @RichardYee, same Mac OS version 10.12.3, node version v5.10.0. What is the resolution?

Soumitra Kumar - Reply

I am also seeing the same Error: open 'fw.hex' message as mentioned above. On macOS 10.12.3, node v6.9.1.

Joe Fiorini - Reply

I tried the FirmwareUpdater on Win10 but the utility was unable to locate any com ports. I tried various thing spending almost a day until I found solution:

1) Remove the PRUSA 3D printer drivers in control panel, under printers & devices.

2) Remove all remaining PRUSA related software in control panel, under Programs and functions.

3) Turned off PRUSA i3 Mk2 and rebooted PC

4) Downloaded 1.7.6 windows drivers and installed them, using RMB and selecting Run as ADMINISTRATOR

5) Turned on PRUSA i3 Mk2

Now the Firmwareupdater found the COM ports and I could update firmware.

Per Hassel Sørensen - Reply

I had a problem with the FirmwareUpdater on macOS, so I just used avrdude as recommended in the comments. I did have to make one change though. After installing with brew install avrdude, the command I used was:

avrdude -c avrispmkII -b 115200 -p Atmega2560 -v -P /dev/tty.usbmodemXXXX -D -U 1_75mm_MK2-RAMBo13a-E3Dv6full.hex

You will need to look at what /dev/ device you should use. Try ls /dev/tty.usbmodem* to see it.

Andrew Willis - Reply

On linux I use Cura to load the FW file. Quick, easy, without problems.

In avrdude I had an error "avrdude error: stk500v2_ReceiveMessage (): timeout"

Łukasz Zep - Reply

I had to disconnect then delete my printer from the windows 10 settings page plug it back in again. Check its actually connects using Pronterface then run the Firmware updater which doesn't list my printer just Com3 comes up worked fine after that

Neil Winstanley - Reply

Do I have to check the Use relative E distances box in the prusa edition Slic3r?

Joaquin Otero - Reply

Hi Joaquin, "Use relative E distances" is checked by default. This thread is dedicated to the firmware update, next time please use the right section, our forums or support, thanks :)

Jakub Dolezal -

My os is Linux Mint 18.1. I used cura 3.1.0 for update to MK3 firmware 3.1.1.-RC5.

Update was easy, unzip, select hex file in cura “upload user defined firmware”. Selected printer was prusa MK2.

Meteor42 - Reply

The Prusa 3D Printing Handbook (from https://www.prusa3d.com/downloads/manual... ) says that “First Layer Calibration ​is required after the firmware update“. Why isn’t this mentioned here also?

Kari Söderholm - Reply

Hi Kari, “first layer calibration” isn’t required after each firmware update. I will talk to my colleagues responsible for the Handbook to correct it.

Jakub Dolezal -

Upgraded successfully on Debian using avrdude, calibration didn’t run on reboot so I started it manually. Everything was fine until first layer calibration at which point it repeatedly failed on point 8. I couldn’t find any reason for this however a factory reset and starting the calibration wizard over fixed this. Thanks for the update :-)

/T

Tom Hinkley - Reply

Can someone please help me? I have installed the new firmware as instructed, and now our Prusa MK2 is not responding, only turns on to a blank screen. I have tried a hard reboot and resetting to older version of the firmware. Please help we are hosting the 3D printer as part of a traveling technologies bundle for our area libraries.

Thanks Crystal

Crystal Vargas - Reply

Hi Crystal, blank screen might be some HW issue, please visit shop.prusa3d.com and look for the live chat button.

Jakub Dolezal -

Hi. I could update my MK3 using the command given above

avrdude -c stk500v2 -b 115200 -p Atmega2560 -v -P /dev/ttyACMx -D -U flash:w:prusa3d_fw_MK3_x_y_z.hex:i

under Raspbian, but not the MMU2. (avrdude: Version 6.3-20171130)

I know the MMU2 has the usual trick of setting the baudrate to 1200 to reset the device, and then we have to wait until the VID/PID is 2c99:0003, but…

To PRUSA3D: an additional section describing a firmaware update under Raspbian / Octopi would be appreciated, or a firmware updater under Linux, or even a simple shell script, since it is quite impossible to compile Slic3rPE under Raspbian. AFAIK

Thanks Dominique

Dominique Lovy - Reply

Hello Dominique,

Unfortunately we can’t cover every possible Linux distribution in our guides, but we’ll do our best to include more tips in them.

Official Prusa Support

Filip M - Official Prusa CS -

Finally I’ve got it ! To reprogram the MMU2 firmware, issue a commanf like this:

stty -F /dev/ttyACMx ispeed 1200 ospeed 1200 cs8 -cstopb -parenb && sleep 5 && /usr/bin/avrdude -v -p atmega32u4 -c avr109 -P /dev/ttyACMx -b 57600 -D -U flash:w:prusa3d_fw_MMU2board_x_y_z.hex:i

Replace /dev/ttyACMx and the hex filename by the actual values of course. The stty 1200 does a board reset, to set the board in boot mode. The sleep 5 add a 5s delay, for me it’s ok.

HTH

Dominique Lovy -

why cant i just put the firmware on the SD card and let the printer install it itself?

Sharon - Reply

Hello Sharon,

The device that the firmware is being flashed from has to be externally powered without any power and data interruptions in order for the firmware to be flashed succesfully, therefore it has to be loaded directly into the board via a cable from a computer. It’s impossible to flash it via an SD card, since the flashing process involves a complete printer reboot, meaning loss of all active data upon it.

Official Prusa Support

Marcin M. - Official Prusa CS -

Can you update the firmware from octoprint?

Chip - Reply

Hi,

I’m not aware of this method - we can only guarantee that the flashing is possible via Slic3r.

Filip M - Official Prusa CS -

Just flashed FW to version 3.5.3. Utility says the flash process worked fine. Printer says FW is now 3.5.3.

Problem is now the filament autoload doesn’t work? Worked just fine right before the upgrade. Now, nothing happens when you press the autoload button and insert the filament. Preheat is done and both printhead and bed are at the proper temp.

Tried to re-flash but now get a failed message in the log saying it can’t open the device.

Rebooted the printer but no joy.

Printer is i3 Mk3. Used Slicr to perform the update.

Suggestions?

keith southard - Reply

Hello Keith. It does not work because the 3.5.3 firmware is for MK3S and you have an MK3. Use the 3.5.2 version.

Martin L. - Official Prusa CS -

How long does a firmware flash usually take? I’m trying to flash my mk3s to 3.6.0 and it’s been about 20 minutes and no activity on the progress bar. It does say “Writing” at the bottom of the avrdude output log, and the printer screen just says “Original Prusa i3 Prusa Research" with … at the bottom. Should I cancel it and try again? or will this cause more issues?

Scott Robertson - Reply

Hey Scott, it usually takes ~2min to complete.

Make sure you have the most up-to-date slic3r and drivers installed.

You can also check this guide: https://help.prusa3d.com/l/en/article/gX...

Filip M - Official Prusa CS -

I bought my prusa i3 mk3s on 03/20/2019.

Do i still have to upgrade the firmware or is it up to date?

adam - Reply

Hey Adam, you can check the latest firmware here: https://www.prusa3d.com/drivers/

And on the printer you can go to Support menu, where you’ll see the latest firmware.

Filip M - Official Prusa CS -

I upgraded my mk3 i3 to version 3.7.1 . The upgrade process was reported successful. Afterwards, I try to print a test print and the printer starts its warm up and nine point calibration dance but then stops, asking me to unload and reload the filament. I do so, it restarts its nine point calibration and then again asks me to unload and reload the filament. The filament is extruding, so there seems to be no clogged filament but I cannot print anymore. Any way to debug this?

Kasper - Reply

Never mind, I am an idiot. I had used the mk3s firmware on my mk3, inadvertently. The ‘printer type has changed’ message should have been a dead give away, but it was not. Reflashed with the correct firmware and all works well, except I think my settings are broken and I should recalibrate/retune.

Kasper -

Hi Kasper,

if you had upgraded to MK3S from MK3, then you will have to run Calibrate Z, as the extruder heights in both versions are different. Ideally, re-run the whole XYZ calibration.

Marcin M. - Official Prusa CS -

how can i update SL1 firmware?

Savvas Hapsis - Reply

Hello,

The easiest way probably is to do it through the USB key. Check your printed Handbook, there is a guide for this.

Martin L. - Official Prusa CS -

It is necessary to turn on the 3D Printer. Otherwise, PrusaSlicer detects the printer but flashing fails.

Pedro - Reply

Add Comment

View Statistics:

Past 24 Hours: 119

Past 7 Days: 619

Past 30 Days: 4,487

All Time: 136,064