Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC2)
Hi there,
new version of firmware 3.4.0-RC2 is out! This version is recommended experienced users 😎
What is new
Current release 3.4.0-RC2
Multi Material 2.0 (MMU2) support
This firmware version (both MK3 and MK2.5) is initial version with Multimaterial v2 support. Firmware detects automaticly if mmu2 unit is connected. More information about multimaterial features will be added later. Multimaterial specific messages are just in English now. Translation of all messages will be finished in final release.
Stealth mode loudness reduced
In previous firmware release (3.4.0-RC1), stealth mode speed was increased which led to significantly increased loudness. In the current firmware version stealth mode max. feedrate limit has been reduced to 100mm/s, which leads to reduced loudness and preserves reduced print time compared to older firmware versions (3.3.1 and older).
Bug fixes from RC1
- Flow factor setting fixed
- Bed level correction menu fixed (issue #1083)
- Wizard fix: Before first layer calibration
- Linearity correction menu readded (MK3 and MMU2 only)
- M600 fixes (issue #1046)
- Speed factor fix (issue #1047)
- For the full changelog, please check: https://github.com/prusa3d/Prusa-Firmware/releases/tag/v3.4.0-RC2
---
Previous release 3.4.0-RC1
Filament sensor engine 2.0
This release brings a major update to the filament sensor. Part of the software responsible for the analysis of the filament movement was rewritten to increase the precision and reliability of the sensor. With the new firmware, the filament runout should be always detected in time and the number of false detections drops significantly. Previously MK3 and MK2.5 shared similar values for the evaluation and it was sometimes causing issues on the MK2.5, this is now fixed.
Engine 2.0 brings also new feature for the filament evaluation. During the filament load sequence, the filament is scanned using the IR sensor and evaluated. As soon as the filament is loaded to the extruder the printer knows, whether it can reliably control the filament flow during the print or not. In case the sensor can't read the filament movement properly, the user is informed on the printer's screen with an option to turn off the sensor.
Filament sensor precision is greatly influenced by the cleanliness of the sensor itself. The easiest way is to use a compressed air. There is a dedicated hole in the x-carriage exactly for this purpose. See the picture below to compare the clean and dirty sensor.
Improved power panic for MK3
During the power outage, MK3 saves the last position of the extruder and as soon as the power is restored, the printer reads the data and continues. In case there are more consecutive power outages, the restore sequence is interrupted and this can sometimes lead to a print failure. A similar failure of the print might occur after a very short power outage (<50 ms). New firmware release fixes both scenarios.
Adjustable beeper notifications
Starting firmware 3.4.0 there are 4 levels of the acoustic signalization - Loud, Once, Silent and Mute. The user is able to choose between each level in the printer's menu -> Settings –> Sound. You can also change the sound settings during the print in the menu -> Tune.
Level description:
Loud - printer uses acoustic signalization for a failure or if confirmation is needed
Once - this level is similar to Loud, but all beeps are played only once.
Silent - most of the beeps are muted, the user is informed only in case of a serious error
Mute - printer stays muted regardless of the importance of the error
G-code M42 reenabled
Due to the insufficient space in the printer's memory, the G-code M42 was previously removed from the firmware. The entire code of the firmware is now optimized and M42 returned back. You can use it to trigger or read from the pins on the board (e.g. trigger time-lapses on your camera).
Feedrate and acceleration limits fixed for the MK3
Until now the feedrate and acceleration values were compared to the hardcoded limits of the printer during the entire print at every movement, which caused high CPU load. New implementation checks for G-codes M201 and M203 only at the beginning of the print. If the input values are smaller than hardcoded values, no action is triggered. In case the values from G-code are bigger, the firmware replaces them with hardcoded ones.
Current limits for the MK3 in the firmware:
Stealth mode:
feedrate 172 mm/s
acceleration 960 mm/s^2
Normal mode:
feedrate 200 mm/s
acceleration 2500 mm/s^2
---
Supported printers:
Original Prusa i3 MK3
Original Prusa i3 MK3 Multi Material 2.0 (new)
Original Prusa i3 MK2.5
Download link and description:
v3.4.0-RC2 https://github.com/prusa3d/Prusa-Firmware/releases/tag/v3.4.0-RC2
v3.4.0-RC1 https://github.com/prusa3d/Prusa-Firmware/releases/tag/v3.4.0-RC1
Firmware flashing guide:
http://manual.prusa3d.com/Guide/Upgrading+firmware+v1.2/66?lang=en
Note: Use the latest Slic3r PE 1.41.0 to flash the MK3 MMU2
Please report any bug here:
https://github.com/prusa3d/Prusa-Firmware/issues
As always, we wish you happy printing and look forward to your feedback!
/ Knowledge Base
The guy behind Prusa assembly manuals...
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Does this also improve the old sensor, or only the new rev?
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Does the adjustable beeper notifications also affect the volume of the beeps, or only the frequency of beeping occurance? I'd generally like to still have the beeps available, as I'm not always watching the printer (so maybe Silent would be ok, if it doesn't make the loud beep for filament unload!).
Prusa i3 MK3 kit
MK3/S Upgrade Kit
FW 3.7.0
Slic3r PE 1.41.3
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Hi All,
I've just reflashed with this firmware and have found Bed Level Correction is not working properly on mine (Or it is working differently....)
As usual, when upgrading I always do a factory reset and completely re-run through the Calibration Wizard, PID Tune, Temp Calibration, etc....
So All previous settings have been cleared, and should not be affecting this.
What is happening:
- Bed Level Correct for all 4 sides shows 0
- When I adjust, eg. Left -5, I then hit select and the main screen shows zeros for all values still.
- No matter which value I attempt to change and no matter how much I adjust by, they all show zeros.
I only need such a minimal adjustment to get it right again...
Thanks, keep up the excellent improvements!
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
One bug is that under the service menu item it reports that it is firmware version 3.3.1, even though it clearly isn't, because under settings it does have the new loudness setting.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Interesting that nobody spotted it that E-correction settings are missing in this release. 😉 I've printed tower but can't add my settings. Waiting for update!
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Does the adjustable beeper notifications also affect the volume of the beeps, or only the frequency of beeping occurance? I'd generally like to still have the beeps available, as I'm not always watching the printer (so maybe Silent would be ok, if it doesn't make the loud beep for filament unload!).
Yeah, there are several beep options you can select. You can select to have your printer beep only for critical warnings and only beep one time.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
I've been running this firmware version since it hit the github on Thursday. So far everything has been running really smooth.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Something I noticed yesterday was, I was going to unload my filament before I left for the weekend, and went to move the z axis up before preheating.
Well, the z motors were barely turning, and it took about a solid minute to move it up 20mm. After messing around with it, still trying to unload, I rebooted the mk3, and still the same issue.
I thought I would check the mode, and it was set for Stealth mode. After I switched back to Normal mode the axes started moving at their normal speed again.
Prusa i3 MK3 kit
MK3/S Upgrade Kit
FW 3.7.0
Slic3r PE 1.41.3
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Btw Jakub: It would be great if you can confirm that these bugs are duplicated by Prusa and in github. I'll eagerly try RC2 but some of the bugs above (especially the bed leveling) make RC1 sound DOA for me.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Does this also improve the old sensor, or only the new rev?
Both revisions share the same sensor, it will work on both.
/ Knowledge Base
The guy behind Prusa assembly manuals...
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Btw Jakub: It would be great if you can confirm that these bugs are duplicated by Prusa and in github. I'll eagerly try RC2 but some of the bugs above (especially the bed leveling) make RC1 sound DOA for me.
Hi, all those comments are forwarded to our devs 😉
/ Knowledge Base
The guy behind Prusa assembly manuals...
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
G-code M84 reenabled
Due to the insufficient space in the printer's memory, the G-code M84 was previously removed from the firmware. The entire code of the firmware is now optimized and M84 returned back. You can use it to trigger or read from the pins on the board (e.g. trigger time-lapses on your camera).
This is rather unsettling. I'm happy to see m84 restored but am feeling rather disenchanted that the Mk3 firmware feature set is running into a memory limit wall. Clearly those who rallied for a more-powerful motherboard with additional resources were correct.
I'm sure there are possible work-arounds, like moving the calibration and setup features to a specialized firmware and stripping them from the mainline. But the right answer would have simply been more memory, and that benchy has sailed.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
Ever since updating to the latest firmware when ever im printing with octoprint if the filament run out and I change the filament the printer will reset instead of resuming the print 🙁
Also can we get a false alarm option for when the filament sensor triggers? It would be super nice not to have to perform the whole filament change when the sensor triggers for no reason.
Re: Firmware 3.4.0 broked filament sensor
I reset factory MK3 then upgraded to 3.4rc1, then another factory reset probably just because I enjoy doing those , but then this new firmware will not complete the self test due to a filament sensor wiring error, but I didn't believe that error message, not for one single minute. I had been used to enjoying outstanding performance from my filament sensor, including using black, white, and even translucent PLA.
I downgraded MK3 firmware back to previous version, and now my filament sensor is properly recognized again without any delay.
Unless I am wrong, and I am never wrong 😯 , something in this first 3.4 build is more crooked than a barrel of fish hooks.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
The only quirk I've noticed so far is that the printer will stop for a second while it's printing infill and then resume. It's kinda like the printer stops to think for a moment.
Im using slic3r PE and printing from SD.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
I've had no success loading filament with this release. If I reverse back to 3.2.1, then no problem.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
On 3.4.0 RC1 and 3.4.0 RC2, Z axis movements are very slow (tried both Octoprint control and adjusting the position with a long press on the button). A Z-home will slowly raise the Z axis, slowly lower it, wait for a while and then home on Z 0.15. The Octopi log is:
Send: G91
Recv: ok
Send: G28 Z0
Send: G90
Recv: echo:busy: processing
Printer seems to support the busy protocol, adjusting timeouts and setting busy interval accordingly
Recv: echo:busy: processing
Recv: echo:busy: processing
Recv: echo:busy: processing
... repeated several times...
Recv: echo:busy: processing
Recv: tmc2130_home_enter(axes_mask=0x01)
Recv: 0 step=29 mscnt= 478
Recv: tmc2130_home_exit tmc2130_sg_homing_axes_mask=0x01
Recv: tmc2130_home_enter(axes_mask=0x02)
Recv: echo:busy: processing
Recv: 0 step=34 mscnt= 545
Recv: tmc2130_home_exit tmc2130_sg_homing_axes_mask=0x02
Recv: echo:busy: processing
Recv: ok
Recv: ok
Send: M113 S2
Recv: ok
Send: M105
Recv: ok T:28.7 /0.0 B:28.9 /0.0 T0:28.7 /0.0 @:0 B@:0 P:31.7 A:34.4
Send: M105
After going back to 3.3.1, speed is normal for both directions, no problems.
Does this happen for anyone else ? worth opening a bug in Github ?
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
This is rather unsettling. I'm happy to see m84 restored but am feeling rather disenchanted that the Mk3 firmware feature set is running into a memory limit wall. Clearly those who rallied for a more-powerful motherboard with additional resources were correct.
I'm sure there are possible work-arounds, like moving the calibration and setup features to a specialized firmware and stripping them from the mainline. But the right answer would have simply been more memory, and that benchy has sailed.
Is it a RAM or ROM limitation? If it's the latter, move (some of) the calibration code to the SD card or require connecting a PC or Pi for calibration?
I'm hoping the MK4 or whatever would be powered by a RISC-V CPU with way more RAM and ROM than would be anticipated to be necessary.
Inspired to get into 3D printing by Micah Elizabeth Scott, Naomi Wu, and an anonymous Bitcoin girl I met in college.
Re: Firmware 3.4.0 for Original Prusa i3 MK3 (currently RC1)
The only quirk I've noticed so far is that the printer will stop for a second while it's printing infill and then resume. It's kinda like the printer stops to think for a moment.
Im using slic3r PE and printing from SD.
Same issue here with RC2. In fact I think the problem has gotten worse compared to RC1. I am printing at 15mm/s and its pausing every 30 seconds to "think". This is printing off of the sd card or octoprint.