
Prusa’s firmware version numbers have suddenly gone into overdrive.
In a rather astonishing development, Prusa released firmware versions 7.0.0 and 8.0.0 within days of each other. These are supposedly major releases, something that would normally involve significant changes and considerable development time. Normally that first digit would change every year or so, not in a few days.
Even stranger, Prusa’s release notes for version 7.0.0 now advise users to skip that version entirely and proceed directly to 8.0.0.
What the heck is going on?
It turns out Prusa has slipped in a new firmware versioning policy, and we are seeing the results of that change.
Previously, Prusa used a three-part version numbering scheme: milestone.major.minor/patch. The first number represented a big milestone in firmware development, while the other numbers identified smaller feature additions and fixes.
That old approach has now been replaced by a more formally defined “major.minor.patch” system.
Under the new policy, the third number is reserved strictly for small patches and bug fixes. The middle number identifies larger changes that can fit into an existing stable release.
But what about that first number?
Prusa now increments the major version number whenever it creates a new release from its main development software branch. Whatever functionality has accumulated in that branch then becomes part of the new release.
Because of this, major versions will appear far more frequently than before. Version 9.0 might arrive tomorrow, maybe without including a big change in the printer’s capabilities.
The astonishing sudden appearance of versions seven and eight almost simultaneously is just the first demonstration of their new policy.
There are actual improvements in both releases, however.
Firmware 7.0.0 introduces support for Prusa’s new 400C high-temperature hotend on compatible CORE One machines, along with additional engineering filament presets. There’s also improved filament color handling, smarter tool mapping for multimaterial printing and automatic Z-axis alignment.
Version 8.0.0 adds support for OpenPrintTag, the open NFC-based filament identification system, on compatible CORE One machines equipped with the appropriate reader. This allows the printer to identify filament characteristics and track consumption on tagged spools.
Other changes include new filament acceleration controls, improved communication with Prusa Connect and additional reliability fixes.
Version 8.0.0 incorporates the improvements from 7.0.0, explaining why Prusa recommends installing the newer release directly. So if you are still on version 6, don’t think about going to version 7 at all.
A Security Issue Behind The Releases
There’s another interesting development with these near-simultaneous releases.
In August, independent security researcher Yannick Dixken reported 14 security findings involving approximately 23 individual defects in Prusa’s Buddy firmware.
Some involved potentially serious problems, including memory corruption and unauthorized code execution under specific conditions. Prusa says the most serious exploit required a printer communicating with an attacker-controlled Connect server, and that none of the findings permitted direct attacks from the internet.
The company addressed the findings in firmware 7.0.0 and later, although one low-severity defect requiring physical access remains only partially fixed.
This created an tricky situation for Prusa.
The company initially decided to release the firmware binaries without simultaneously publishing their source code. Their good intention was to give customers time to install security fixes before potential attackers could examine the corrected code.
Unfortunately, Buddy firmware is licensed under GPLv3, and hiding the new source code conflicts with the license’s requirements.
Prusa later acknowledged that this decision was a mistake, published the source and committed to releasing source code simultaneously with future firmware binaries, including security updates.
I suspect the new versioning approach will eventually prove pretty useful for Prusa’s development team. It permits more frequent releases while at the same time keeping maintenance patches away from ongoing development.
But anyone operating a Prusa 3D printer will have to become accustomed to the new numbering scheme.
When firmware version 10.0 eventually arrives, you might think it must be a monumental upgrade. But under Prusa’s new rules, it could just be the next batch of improvements ready for release.
You will also have to lose that regretful feeling that you haven’t yet upgraded to version X.0. That meant something in the past, but not anymore.
Bottom line here: read the release notes, not the version id.
Via Prusa GitHub
