Saving extruder steps with 3.0.12 firmware

Since my post on extruder calibration, the Prusa firmware 3.0.12 has been released. The problem with this release is that it doesn’t allow extruder steps/mm to be saved to the EEPROM anymore, which many of you have noticed and commented about. The reason for this change was that it would supposedly cause issues for users that updated to the MMU, so they decided to force certain values and not allow them to change. In my opinion there are a number of better ways that this could have been done, but that’s not relevant to getting it fixed!

Luckily, there are a number of ways to get around the issue:

  • Setting extruder steps/mm in starting gcode
  • Compensating with extrusion multiplier
  • Changing firmware

Setting extruder steps/mm in starting gcode

This is the most basic and easiest solution. Rather than entering the extruder steps/mm and saving it to EEPROM with M500, you can just insert the M92 command into your starting gcode in your slicing software. This way it is set at the beginning of every print, and doesn’t need to be remembered by the printer. So, for example I would enter M92 E179 right before the intro line purge gcode that the Prusa MK2 does. This method is easy, but it’s not a permanent solution and defeats the point of the extruder steps being a set and forget thing.

Compensating with extrusion multiplier

I wouldn’t recommend this method as it’s sort of a hack, but some users have done it. This involves changing the extrusion multiplier to take up the changes that you want to make to the extruder steps/mm.

The default extruder steps/mm for the MMU users is 140, and for regular direct drive users its 161.3.

Take your calibrated steps/mm value and divide it by the default value. This will give you a compensated extrusion multiplier. If you already have an extrusion multiplier set in your slicer that isn’t 1.00, multiply it by the compensated extrusion multiplier to get the final value that you should write into your slicing software. Here’s an example:

I’m using the regular printer with no multi material upgrade, so my default extruder steps/mm is 161.3. I have calculated through the extruder calibration that the calibrated extruder steps/mm that I need is 179. To calculate the compensated extrusion multiplier:

179 / 161.3 = 1.11

Lets say that I already have an extrusion multiplier of 1.05 set in my slicer. I will calculate the new value to enter like so:

1.11 × 1.05 = 1.165

This extrusion multiplier takes into account the changes that you want to make to your extruder steps/mm, as well as your existing extrusion multiplier.

One notable difference here is that extrusion multiplier does not affect the retraction distance. So if you’re changing the extrusion multiplier significantly, you will be retracting too much or too little (depending on if you’re adjusting it up or down).

Changing Firmware

There’s an interesting fork of the Prusa firmware called the community mod firmware. Shortly after it was discovered that the 3.0.12 firmware disabled the saving of extruder steps/mm, this change was reverted in the community mod such that you could save it once again.

Feel free to check it out here. All instructions as well as links to pre-compiled versions of the firmware can be found on the github page. This is the most difficult solution, but changing to this firmware also includes a number of other changes that the Prusa branch doesn’t have, which may be of interest to you.


Hopefully this is just a temporary change and will be reverted in the next Prusa release, but at least now we all know the other options if it isn’t!


6 thoughts on “Saving extruder steps with 3.0.12 firmware

  1. I think its best to calibrate E-steps for each filament so to me it makes more sense to store the E-steps in your slicer start g-code instead of globally in firmware.


  2. I remember seeing somewhere your link for donations? Can you please share it again?
    Cheers and thank you very much for the very insightful blog articles written!


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s