3.10.0-RC2 Firmware for MK3, MK3S, MK3S+, MK2.5 and MK2.5S
Hello all.
We are pleased to share with you the latest release candidate for our MK series of printers;
Summary
- Support for a GD external FLASH chip
- Reservation in the EEPROM for job ID tracking
- XYZ calibration algorithm improved
Bug Fixes
This is the second release candidate of the upcoming firmware 3.10.0 with multiple optimizations to the code.
Support for a GD external FLASH chip
As mentioned in the previous firmware releases, the Covid-19 virus is negatively impacting worldwide supplies, and to be able to ship the printers continuously without any significant delay, we have started to look for alternative verified suppliers of the most critical parts.
In this release, we are extending system support for external FLASH chip GD25Q20CEIGR from company GigaDevice to ensure our production of Einsy boards remains unrestricted. For the user, there is no impact on the functionality of the printer, everything remains the same.
Reservation in the EEPROM for job ID tracking
For the host software, there is now a reserved space in the EEPROM to track/identify the print job. Even if the SD card or Raspberry Pi becomes unresponsive, the job ID will prevail. The 4-bytes variable in EEPROM is named "EEVAR_HOST_JOBID". Host software can manipulate the EEPROM variable via D3 commands.
XYZ calibration algorithm improved
During extensive internal testing of the XYZ calibration, it was discovered that in certain rare scenarios the data provided by the sensor are not handled correctly. The developers have improved the algorithm and if this scenario happens, the scan of the recent calibration points is automatically repeated.
Bug Fixes
Incorrect G-code reading from a buffer
There was a bug in the new G-code reading code, which could stop the print in progress. In some scenarios, the system would insert a new line '\n' into the current cached block of the G-code file and change the G-code line syntax. Kudos to @lhecker for reporting the issue and providing a good test case (fixes issue #3077).
"Time Remaining" function bug fixed
If the printer receives G-code “M73 C0”, it disables switching between “Time to finish” and “Time to color change”. However, this caused an issue during the last minute before the color change, when the printer stopped switching between these two values completely.
To avoid this scenario, the firmware was adjusted. It is advised for the slicer software to use a floating-point value for the last minute before the color change (e.g. M73 C0.1) which is technically greater than zero and enables the function to work correctly.
M120 and M121 disabled
From now on, G-codes M120 and M121 have been disabled as they do not function correctly and cause issues when used in the G-code file. If necessary, advanced users can enable them in the FW code and recompile.
Crash detection during MBL
Normally, if prior to Mesh Bed Leveling (MBL) a crash on the Y-axis is detected, the MBL is repeated again and print coordinates are verified, then a purge line is printed. In some scenarios starting firmware 3.9.0 (previous releases are not affected), the purge line was incorrectly placed in the center of the sheet, now this is fixed and the purge line is correctly placed in the front-left position.
Please Note this is a RC candidate and is recommended for users who are familiar with release candidate software.
Download from here https://github.com/prusa3d/Prusa-Firmware/releases/tag/v3.10.0-RC2
Please report any issues here; https://github.com/prusa3d/Prusa-Firmware/issues
Shane (AKA FromPrusa)