Skip to content

3.1.1-HP firmware for Prusa i3 MK3 + Hyperfine Bed Leveling + PINDA-Fix

Latest
Compare
Choose a tag to compare
@3d-gussner 3d-gussner released this 05 Feb 08:14
· 1032 commits to MK3-private_build since this release

3.1.1 firmware for Prusa i3 MK3 + Hyperfine Bed Leveling + PINDA-Fix

Disclaimer: This is a modified firmware based on Prusa firmware MK3 v3.1.1 release. We are not responsible for any damage/issue this modification may cause . It is the users choice which firmware she/he installs.

UPDATE 05. February 2018

Prusa changed the official 3.1.1 release on the 05. February 2018 from build 197 to 201. This includes the pull request prusa3d#462
Due to the official release change, I decided also to update this release.

Notice that you may need to redo specific changes which has been written to YOUR EEPROM with M500 gcode, like PID tuning, E-steps, etc.

Before you update to this firmware make a copy of your EEPROM settings using gcode M503 and compare it to the results after updating

End of UPDATE

Summary:

  • Filament sensor reliability improvements
  • Print reliability improved
  • More detailed fail stats
  • Fan error pauses print
  • Long pause/print fan error improved
  • Hyperfine Bed Leveling (mod by @jeffjordan and PJR, implemented by @3d-gussner)
  • PINDA2 Calibration Tuning Fix (by @TheZeroBeast)

Release notes for previous firmware version can be found here:
https://github.com/prusa3d/Prusa-Firmware/releases/tag/v3.1.1-RC5

Summary of previous releases can be found here:
https://www.prusa3d.com/drivers/

Detailed description of changes:

Filament sensor reliability improvements

Filament sensor function was optimized, which leads to lower number of false detections.

Print reliability improved

Extruder resolution has been changed to 32 microsteps and stepper routine timing has been optimized.
This ensures that stepper movements are fluent even with high feedrates and printing over serial is reliable. Lower microstep resolution has no negative effect on print quality.
Linear advance feature is still disabled in current firmware version.
Users who saved parameters on previous firmware versions to EEPROM using M500 or by running PID calibration are informed on printer startup that default setting were loaded. This ensures that correct microstep resolution and extruder steps/mm will be used. If "default settings were loaded" message occurs on printer starup, it is recommended to re-run PID calibration or redo custom changes which were stored by M500 on previous firmware versions.

More detailed fail stats

In previous firmware versions, there was just one fail stats menu which contained statistics about power failures, filament runouts and detected crashes. We have split these statistics into "Last print" and "Total" menus.
We have also split detected crashes and now we have separate statistics for X and Y axis.

Fan error pauses print

If fan error occures when printing over serial line using Octoprint, print is paused using action commands (http://docs.octoprint.org/en/master/features/action_commands.html). This should be helpful in cases that fan is blocked by some obstacle and user can remove the obstacle and continue printing. In previous firmware versions connection between printer and Octoprint were lost during fan error and it was not possible to continue printing.

Long pause/print fan error improved

If long pause or print fan error occured during rehoming (for example during crash detection), there was wrong Z coordinate used when resuming paused print (or SD card print paused by fan error). This has been fixed and in current firmware version pause print is postponed until rehoming is finished.

Other

  • Menu options aligned with encoder clicks/positions
  • Invalid unknown gcodes reported on serial
  • Preheat temperatures updated
  • Added temperature calibration warnings which inform user about all necessary conditions
  • Firmware version check fix
  • M600 unload current lowered to avoid damage of filament sensor

Hyperfine Bed Tuning

All the credit for the Hyperfine bed tuning goes to @Jeff-Jordan or JeffJordan and PJR who are incredible active, innovative, helpful and nice persons and can be found quite often in the Prusa forums !!! Also a big THANKS to @robrps who ported this idea to github!

  • If you have any issues/problems with my modifications please let me know via the issues section.
  • If you have questions or problems with Hyperfine bed tuning please use the Prusa Forum Topic Hyperfine bed leveling?

The Hyperfine Bed leveling/correction is an advanced 'Bed level correct' version of the original Prusa code, which allows to manually adjust Left/Right/Front/Rear bed heights. Next to the default Left/Right/Front/Rear it now allows to adjust the four corner points FrontLeft/FrontRight/RearRight/RearLeft.
Best explanation can be found here by JeffJordan https://shop.prusa3d.com/forum/prusa-i3-kit-building-calibrating-first-print-main-f6/hyperfine-bed-leveling--t4330-s110.html#p41311

hyperfine bed leveling jeffjordan

If you use different material here my Hyperfine_Calibration.STL files.
To slice them them correctly in Slic3rPE you need:

  • Add... 'center_HyperCal.stl'
  • Double click on HyperCal.stl
  • Load part... and choose all other stl files from a_HyperCal.stl to h_HyperCal.stl or just one for the corner you need.
    You also can slice these with PrusaControl:
  • Go to 'File' and 'Import multipart model file'
  • Choose all files

Helpful Hyperfine Bed Leveling commands:
G80 = Meshbed leveling
G81 = This will report out the interpolated Z values for a 7 x 7 array that composes the mesh bed. It needs G80 run before

Advanced gcodes:
M45 V20 = Run XYZ-Calibration in verbose mode and lot of information
G80 V20 = Run Meshbed leveling in verbose mode and lot of information

PINDA2 Calibration Tuning Fix

All the credit for PINDAv2 Calibration Tuning fix goes to @TheZeroBeast

Please read for maore information:
prusa3d#439 and prusa3d#421

Helpful PINDAv2 G-code commands:
G75 and D8 = Read PINDA temperature offset values
G76 = Run PINDAv2 temperature calibration