Skip to content

Releases: prusa3d/Prusa-Firmware-Buddy

4.4.1 Firmware for Original Prusa MINI/MINI+

16 Jan 17:48
Compare
Choose a tag to compare

Summary

  • Wi-Fi auto-reconnect fixed
  • Improved Wi-Fi (ESP) flashing
  • RTC fixed
  • Additional hotend protection
  • UI fixes
  • New error code URL
  • Improved bootstrap
  • Known issues

This is the final release of firmware 4.4.1. This changelog is a summary of the previous releases RC1 and RC2. The focus is on bug fixes related to ESP Wi-Fi and RTC.

ATTENTION: Before you rush flashing new firmware, please note that this time, there are two files needed on the USB flash drive. Both firmware and bootloader must be updated!

Wi-Fi auto-reconnect fixed

The auto-reconnect feature in some scenarios didn't work properly. For this release, the developers have updated the algorithm and once the ESP Wi-Fi module loses connection to the selected Wi-Fi network, it will try to reconnect after 60 seconds automatically.

Improved Wi-Fi (ESP) flashing

Previously, in some scenarios, flashing the Wi-Fi ESP module failed after the firmware was updated. In case the printer was restarted using the hardware button below the LCD, the ESP remained powered on and didn’t power cycle. It was necessary to turn off the printer completely and turn it on again.

The issue was found on the CPU pin shared with the RTC (real-time-clock) and in some random scenarios, it was impossible for the system to send a “reset” signal over this pin. Developers have fixed this problem and now the ESP reset should work correctly.

RTC fixed

In order for the printer to remember the correct time, the RTC (Real Time Clock) was implemented. Users reported that this feature sometimes misbehaved and as a result, the printer displayed the incorrect time when the print will be finished. This is now fixed.

However, keep in mind that the timezone has to be set manually, otherwise the feature will not work.

Additional hotend protection

Similar to MK3S+ thermal model protection, also MINI/MINI+ is getting additional detection and protection against hotend overheating. The firmware is checking every second, whether the heater is working as expected. If the measured values differ by more than 30 % for longer than 40 seconds in a row, the printer immediately halts the heating and turns on the print fan at full speed to help cool down the print head.

An error message is displayed on the screen informing the user about what happened. Check whether the thermistor and heater are correctly inserted and tightened in the heater block. Then look for any damage to the wiring. Should you find any, stop using the printer and get a replacement.

Print can be resumed and the print fan is automatically restored to its original value. Please note that this feature is still in development and some changes are expected. Should there be any issues, please let us know using GitHub issues

UI fixes

Overlapping buttons fixed

The dialogue for credentials creations sometimes showed part of the button from the previous screen.

Button displayed outside the screen

While trying to print G-codes sliced with a filament different than the one already loaded in the printer, the printer displayed one button partly outside the screen. This issue was affecting all languages except English.

New error code URL

Starting this release the error codes displayed on the screen will have a shorter URL, which is more convenient for the user.

  • Old format: “help.prusa3d.com/errorcode” (e.g. “help.prusa3d.com/12201”)
  • New format: “prusa.io/errorcode” (e.g. “prusa.io/12201”)

Note: all the current URLs based on the old format will be kept active.

Improved bootstrap

Developers made several optimizations and flashing the firmware is now faster. The overall process took previously around 3-4 minutes, now it takes just 20 seconds.

Known issues

First layer calibration without filament

While running the calibration of the first layer a random bug might occur if the user decides to start without the filament and load the filament in progress. Please reset the printer and load the filament first, then run the calibration.

4.4.1-RC2 Firmware for Original Prusa MINI/MINI+

09 Jan 21:51
Compare
Choose a tag to compare

Summary

  • Improved Wi-Fi (ESP) flashing
  • UI fixes
  • Known issues

This is the second release candidate of the upcoming firmware 4.4.1 focused on fixes and optimizations. Kudos to the community for reporting the issues!

Improved Wi-Fi (ESP) flashing

Previously, in some scenarios, flashing the Wi-Fi ESP module failed after the firmware was updated. In case the printer was restarted using the hardware button below the LCD, the ESP remained powered on and didn’t power cycle. It was necessary to turn off the printer completely and turn it on again.

The issue was found on the CPU pin shared with the RTC (real-time-clock) and in some random scenarios, it was impossible for the system to send a “reset” signal over this pin. Developers have fixed this problem and now the ESP reset should work correctly.

UI fixes

Overlapping buttons fixed

The dialogue for credentials creations sometimes showed part of the button from the previous screen.

Button displayed outside the screen

While trying to print G-codes sliced with a filament different than the one already loaded in the printer, the printer displayed one button partly outside the screen. This issue was affecting all languages except English.

Known issues

This release is affected by a bug, which prevents the printer from overwriting the already existing Wi-Fi credentials file on the USB flash drive with a new blank one. This will be fixed in the upcoming release. For now, if you want to create a new credential file by the printer, make sure there isn't any on the flash drive.

4.4.1-RC1 Firmware for Original Prusa MINI/MINI+

12 Dec 10:13
Compare
Choose a tag to compare

Summary

  • Wi-Fi auto-reconnect fixed
  • RTC fixed
  • Additional hotend protection
  • Improved bootstrap
  • Known bugs

This is the first public release candidate of the upcoming firmware 4.4.1. The focus is on bug fixes related to ESP Wi-Fi and RTC.

ATTENTION: Before you rush flashing new firmware, please note that this time, there are two files needed on the USB flash drive. Both firmware and bootloader must be updated!

Wi-Fi auto-reconnect fixed

The auto-reconnect feature in some scenarios didn't work properly. For this release, the developers have updated the algorithm and once the ESP Wi-Fi module loses connection to the selected Wi-Fi network, it will try to reconnect after 60 seconds automatically.

RTC fixed

In order for the printer to remember the correct time, the RTC (Real Time Clock) was implemented. Users reported that this feature sometimes misbehaved and as a result, the printer displayed the incorrect time when the print will be finished. This is now fixed.

However, keep in mind that the timezone has to be set manually, otherwise the feature will not work.

Additional hotend protection

Similar to MK3S+ thermal model protection, also MINI/MINI+ is getting additional detection and protection against hotend overheating. The firmware is checking every second, whether the heater is working as expected. If the measured values differ by more than 30 % for longer than 40 seconds in a row, the printer immediately halts the heating and turns on the print fan at full speed to help cool down the print head.

An error message is displayed on the screen informing the user about what happened. Check whether the thermistor and heater are correctly inserted and tightened in the heater block. Then look for any damage to the wiring. Should you find any, stop using the printer and get a replacement.

Print can be resumed and the print fan is automatically restored to its original value. Please note that this feature is still in development and some changes are expected. Should there be any issues, please let us know using GitHub issues

Improved bootstrap

Developers made several optimizations and flashing the firmware is now faster.

Known bugs

ESP flashing failed

In some scenarios, flashing the ESP Wi-Fi might fail after the firmware is updated. In case the printer is restarted using the hardware button below the LCD, the ESP might remain powered on and doesn’t power cycle. Please turn off the printer completely and turn it on again. This behavior will be fixed in the upcoming releases.

First layer calibration without filament

While running the calibration of the first layer a random bug might occur if the user decides to start without the filament and load the filament in progress. Please reset the printer and load the filament first, then run the calibration.

4.4.0 Firmware for Original Prusa MINI/MINI+

25 Nov 13:51
Compare
Choose a tag to compare

Summary

  • Support for Wi-Fi (ESP-01 & ESP-01S)
  • PrusaLink updated
  • Network menu updated
  • Networking improvements
  • GUI improvements
  • Selftest improvements
  • Core/Libs
  • CPU reset G-code added
  • Translations updated
  • Known issues
  • Bug fixes

This is the final release of firmware 4.4.0. This changelog is a summary of the previous releases (beta2 and RC1). The main focus is on the support of Wi-Fi and related networking features like PrusaLink.

ATTENTION: Before you rush flashing new firmware, please note that this time, there are two files needed on the USB flash drive. Both firmware and bootloader must be updated!

ATTENTION 2: In case you run into flashing issues, try to repeat the process or use another USB flash drive. See this troubleshooting article for more information.

Support for Wi-Fi (ESP-01 & ESP-01S)

The MINI+ can be connected to the network using an Ethernet cable. In this release, we are adding support for Wi-Fi via ESP-01 (ESP8266). Please read the following paragraphs carefully. We have streamlined the entire process as much as possible, however, it is necessary to know which ESP hardware to use and how to set up the connection.

Brief history of development

On paper, connecting MINI+ to the Wi-Fi network seemed easy. However, in reality, the task required a complete overhaul of almost everything. First, the firmware for the ESP itself provided by the manufacturers wasn't working as expected. During the tests, we encountered random packet losses, feature limitations (max 5 sockets at once), and constant disconnects. Therefore our developers have written brand new firmware for the ESP board to ensure better stability and performance.

Second, the communication between the printer and the Wi-Fi module based on ESP8266 proved to be a source of issues and almost the entire networking (ISO-OSI stack) had to be written from scratch to achieve a smooth transfer of data across the Buddy board into the USB flash drive. Another important step was to ensure that the user can switch between the Ethernet and Wi-Fi almost seamlessly.

Third, saving data on the USB flash drive was not at the expected level. Although the data transfer rate through the Wi-Fi was reasonable, saving received parts of the G-code file onto the USB drive was affected by a bottleneck. The devs have implemented multiple performance fixes for this final release.

Fourth, all these changes mentioned above have resulted in a need to update the bootloader. It’s something the MINI platform wasn't initially designed for, so it introduced new challenges. The developers have found a solution and made the updating process fully automatic (more information below).

Overall, enabling Wi-Fi on the MINI platform proved to be a very difficult task. We learned a lot during the development and we would like to share our experience and discoveries - check our detailed technical explanation in the dev-diary on our Prusa blog.

Hardware prerequisites

The ESP8266 is quite popular among other devices, especially in IoT (internet of things), therefore there are multiple manufacturers and also two hardware revisions. We have purchased several Wi-Fi modules from different producers and our internal tests haven't shown any significant differences, however, as with any other product, not all might be equal. For this reason, we are sharing the data from our measurements in this spreadsheet and we would appreciate it if the community would join us.

Regarding hardware revisions, there are two, ESP-01 and ESP-01S. Both differ in memory size (512 kB vs 1 MB flash) and assembly of the LED. During the tests, we haven't discovered any functional differences between them. However, it is recommended to purchase the higher memory (1 MB flash).

Firmware prerequisites

As explained above in the history section, enabling Wi-Fi requires updating both the bootloader and firmware. Note that this time you need to include two separate .bbf files on the USB drive. The printer will automatically load both of them and do all the work in the background. Since this update overwrites almost the entire memory of the printer, the update might take up to 15-20 minutes.

Step-by-step guidance

The first encounter with the Wi-Fi flashing procedure might be tricky and this is why we have created a dedicated Wi-Fi guide, which will take you through the process step by step, similar to our assembly manuals.

Read the manual first before you start flashing the printer. In case you run into issues, please use our forum, where we have created a dedicated section or start a new issue here on GitHub

Transfer speeds

There are multiple factors affecting the overall performance (signal quality, USB flash drive speed, etc.). The transfer speed from your computer to the printer should be around 250-300 KB/s over the Ethernet and 45-100 KB/s over the Wi-Fi.

PrusaLink updated

MINI+ is running a PrusaLink service, which is a cornerstone for future networking capabilities. Once the printer is connected to the local network, PrusaLink is accessible via an internet browser. Look in the Menu -> Settings -> Network and rewrite the IP address.

Until now, PrusaLink was providing read-only data about the printer (temperatures, fan RPM, speed, etc.). Starting this release we are adding new features. The major change is the ability to upload G-codes and control the printing process. This can be done through a web interface (see our guide for PrusaLink) or using PrusaSlicer. To ensure that it is you, who is sending the file, you must input an API key, which can be found in Menu -> Settings -> Network -> PrusaLink -> Current API key.

Besides uploading files, the PrusaLink web interface for MINI+ is also capable of:

  • Start print*
  • Pause/Stop print
  • Browse through G-codes, which are on the printer
  • Delete G-code

*MINI+ must be on the home screen and “print-preview” screen - this is intentional for safety reasons

Note that files are currently sorted alphabetically (A-Z). Other options are planned for future releases.

Network menu updated

Due to the completely new or updated features described above, the “Network” menu was also updated. There are new menu items allowing you to set the new features based on your preferences. The list now contains these added items:

  • PrusaLink
    • Enabled [ON/OFF]
    • Generate API key
    • Current API key
  • Interface
    • Wi-Fi (enables the ESP module)
    • Eth (switches to Ethernet)
    • OFF (disables both interfaces)
  • IP (displays the current IP address)
  • MAC (displays MAC of the active interface)
  • Ethernet
    • Protocol (please note currently only IPv4 is supported)
    • LAN [DHCP/Static]
    • IP (assigned IP address)
    • Mask (subnet mask)
    • GW (gateway IP address)
    • MAC (interface MAC address)
  • Wi-Fi
    • Setup Wi-Fi module (flashes the latest available firmware for the ESP)
    • Create credentials (creates an empty config file on the USB drive)
    • Load credentials (loads config file from the USB drive)
    • Protocol (please note currently only IPv4 is supported)
    • LAN [DHCP/Static]
    • IP (assigned IP address)
    • Mask (subnet mask)
    • GW (gateway IP address)
    • MAC (interface MAC address)

Example of the Wi-Fi prusa_printer_settings.ini:

[wifi]
 ssid= 
 key_mgmt=WPA
 psk=

where:

  • ssid - is the name of your Wi-Fi network
  • key_mgmt - is the type of security protocol (don't change it for now)
  • psk - your Wi-Fi password

Networking improvements

Tailor-made HTTP server

While working on PrusaLink and its extended network capabilities, the developers have discovered that none of the existing web servers is sufficient for our needs. Previously used lwhttpd, became more and more demanding for the hardware.

For these reasons, the developers have decided to write our own HTTP server, which is optimized for the hardware and expected capabilities. It is able to process folders with large amounts of G-codes, thumbnails in G-codes, simultaneous upload/download, and more.

Wi-Fi capabilities

The ESP is currently able to run as a client and connect to the nearest AP on a 2.4 GHz network. The data connection can be both encrypted (WEP/WPA-PSK) or unencrypted. For now, the WPA-enterprise and similar security encryptions for businesses aren't supported.

The printer is able to store login for a single Wi-Fi network, if you want to switch between wireless networks, you have to always overwrite the currently stored credentials.

The ESP is trying to automatically connect to the selected Wi-Fi network and reconnect if the connection is lost. If the printer is unable to connect to the network for over 60 seconds, the ESP module is restarted, and once fully booted up, it continues searching for the network.

Support for the SSL

Part of the firmware is now the library mbedTLS, which will be used in the future for more secure communication between the MINI+ printer and any server.

GUI improvements

Remember the position from the previous menu

Currently while returning to the previous menu, the printer doesn't remember the position of the cursor and scrolls all the way up...

Read more

4.4.0-RC1 Firmware for Original Prusa MINI/MINI+

29 Sep 17:03
0ee723b
Compare
Choose a tag to compare

Summary

  • Support for Wi-Fi (ESP-01 & ESP-01S)
  • PrusaLink updates
  • Added translations
  • Remote print checks
  • Bug fixes

This is the public Release Candidate of the upcoming 4.4.0 firmware. There are multiple improvements across the entire firmware including Wi-Fi-related features, PrusaLink optimizations.

There are 37 commits and 15 bug fixes. Kudos to the community for reporting the issues!

ATTENTION: Before you rush flashing new firmware, please note that this time, there are two files needed on the USB flash drive. Both firmware and bootloader must be updated! The entire flashing process is automatic, printer will restart several times.

Support for Wi-Fi (ESP-01 & ESP-01S)

This firmware release brings some under-the-hood improvements to already existing implementation of the Wi-Fi support for the MINI+/MINI. More information about the ESP Wi-Fi including the setup is available in the 4.4.0-BETA2 release notes.

PrusaLink updates

The entire PrusaLink experience (the web management interface for the printer) has been updated with new features and bug fixes.

  • Fallback for missing translations (to English)
  • UI improvements
  • A-Z file sorting (currently only one supported)
  • Removed the Download button*

*This is a temporary action, once the download feature is fixed, the button will return into the web user interface.

Added translations

In the previous firmware release, only the English language was available for Wi-Fi setup. This firmware version adds new translations.

Remote print checks (experimental)

When you start a remote print, the printer now correctly checks whether the right filament is loaded. If the G-code file is sliced for a different type of filament than the one that is currently loaded, the printer will display a message. Please note this is an experimental feature and might sometimes misbehave.

Bug fixes

  • When uploading G-codes via Wi-Fi, the One-click Print message was incorrectly displayed. This is now fixed.
  • Low-RPM fan errors fixed: when the user lowered the print fan RPM to less than 40, the printer displayed an error message because the system saw the fan as completely stopped. This is now fixed.
  • The filament sensor is no longer enabled by default. This caused an error on printers without a filament sensor - a message was displayed warning the user that filament is not loaded. This is now fixed. When no filament sensor is detected, it is automatically disabled.
  • Fixed filament unload for the first layer calibration. When the user wanted to change filament before the first layer calibration, the unload was successful, but the printer did not follow up with the filament loading procedure. This is now fixed
  • Safety timer at the end of the first layer calibration: if the user kept the printer running after the first layer calibration procedure with the “Do you want to repeat…” message on the screen, the printer continued to heat up the nozzle and the bed. This is now fixed. Once the procedure ends, the heating is disabled and is only re-enabled after the user’s interaction.
  • First layer calibration ignored Mesh Bed Leveling errors and no warning message was displayed. This is now fixed.
  • Incorrect filament displayed after a filament runout. If the user loaded a PETG filament, restarted the printer and started a print during which a filament runout occurred, the printer then shows PLA as the loaded filament. This is now fixed.
  • Extruder location for filament change fixed. The parking position of the extruder was taken over from the homing of the X-axis. - - This could cause a situation where the extruder would be directly over a print during a filament change. To prevent possible damage to the printed model, the parking position was reverted to the original state - to the end of the X-axis.
  • Flashing ESP (Wi-Fi) during printing is no longer possible. Previously, it was possible to navigate through the Tune menu during the printing process to the ESP flashing option which would cause the print process to jam. These menu options are no longer interactive during a print job.
  • Configuration saving in experimental menu fixed. Previously, if the user set E-Steps in the experimental menu and then adjusted the Footer, the E-Step value was not saved. This was fixed by removing the Footer from the experimental menu.
  • Unload filament double-click bug fixed. Previously, if the user chose Unload in the Filament menu and proceeded to select Load or Unload, the menu item had to be clicked twice.
  • Flashing texts fixed by adjusting the way how texts are rendered
  • Assist sound mode issues in the Print menu are now fixed
  • OctoPrint logo is now correctly displayed after the connection is established
  • Flashing screen during filament change is now fixed

4.4.0-BETA2 Firmware for Original Prusa MINI/MINI+

27 Jul 18:34
839cfba
Compare
Choose a tag to compare

Summary

  • Support for Wi-Fi (ESP-01 & ESP-01S)
  • PrusaLink updated
  • Network menu updated
  • Networking improvements
  • GUI improvements
  • Selftest improvements
  • Core/Libs
  • CPU reset G-code added
  • Known issues

This is a beta release dedicated to experienced users. Some features in this firmware are still being developed and might not behave as expected. Use GitHub and forums to report any issues.

ATTENTION: Before you rush flashing new firmware, please note that this time, there are two files needed on the USB flash drive. Both firmware and bootloader must be updated!

Support for Wi-Fi (ESP-01 & ESP-01S)

The MINI+ can be connected to the network using an Ethernet cable. In this release, we are adding support for Wi-Fi via ESP-01 (ESP8266). Please read the following paragraphs carefully. We have streamlined the entire process as much as possible, however, it is necessary to know which ESP hardware to use and how to set up the connection.

Brief history of development

On paper, connecting MINI to the Wi-Fi network seemed easy. However, in reality, the task required a complete overhaul of almost everything. First, the firmware for the ESP itself provided by the manufacturers wasn't working as expected. During the tests, we encountered random packet losses, feature limitations (max 5 sockets at once) and constant disconnects. Therefore our developers have written a brand new firmware for the ESP board to ensure better stability and performance.

Second, the communication between the printer and the Wi-Fi module based on ESP8266 proved to be a source of issues and almost the entire networking (ISO-OSI stack) had to be written from scratch to achieve a smooth transfer of data across the Buddy board into the USB flash drive. Another important step was to ensure that the user can switch between the Ethernet and Wi-Fi almost seamlessly.

Third, saving data on the USB flash drive is still not at the expected level. Although the data transfer rate through the Wi-Fi is reasonable, saving received parts of the G-code file onto the USB drive is affected by a bottleneck. The devs are aware of this issue and are working on finding a fix.

Fourth, all these changes mentioned above have resulted in a need to update the bootloader. It’s something the MINI platform wasn't initially designed for, so it introduced new challenges. The developers have found a solution and made the updating process fully automatic (more information below).

Overall, enabling Wi-Fi on the MINI platform proved to be a very difficult task. We learned a lot during the development and we would like to share our experience and discoveries - you can expect a dev-diary on our Prusa blog with a detailed technical explanation soon.

Hardware prerequisites

The ESP8266 is quite popular among other devices, especially in IoT (internet of things), therefore there are multiple manufacturers and also two hardware revisions. We have purchased several Wi-Fi modules from different producers and our internal tests haven't shown any significant differences, however, as with any other product, not all might be equal. For this reason, we are sharing the data from our measurements in this spreadsheet and we would appreciate it if the community would join us.

Regarding hardware revisions, there are two, ESP-01 and ESP-01S. Both differ in memory size (512 kB vs 1 MB flash) and assembly of the LED. During the tests, we haven't discovered any functional differences between them. However, it is recommended to purchase the higher memory (1 MB flash).

Firmware prerequisites

As explained above in the history section, enabling Wi-Fi requires updating both bootloader and firmware. Note that this time you need to include two separate .bbf files on the USB drive. The printer will automatically load both of them and do all the work in the background. Since this update overwrites almost the entire memory of the printer, the update might take up to 15-20 minutes.

Step by step guidance

The first encounter with the Wi-Fi flashing procedure might be tricky and this is why we have created a dedicated Wi-Fi guide, which will take you through the process step by step, similar to our assembly manuals.

Read the manual first before you start flashing the printer. In case you run into issues, please use our forum, where we have created a dedicated section and developers will be checking in on a regular basis.

Expected transfer speeds

There are multiple factors affecting the overall performance (signal quality, USB flash drive speed, etc.) and the firmware is currently still not fully optimized. For now, the expected transfer speed from your computer to the printer should be around 250-300 KB/s over the Ethernet and 45-100 KB/s over the Wi-Fi.

Known issues

While updating the printer, flashing the ESP, or connecting the Wi-Fi network the process might take too long (30 mins or more). To resolve this issue, turn the printer OFF and ON again as restarting might not be enough. Don't worry, the printer won't get bricked. Developers will fix this behavior in a future release.

PrusaLink updated

MINI+ is running a PrusaLink service, which is a cornerstone for future networking capabilities. Once the printer is connected to the local network, PrusaLink is accessible via an internet browser. Look in the Menu -> Settings -> Network and rewrite the IP address.

Until now, PrusaLink was providing read-only data about the printer (temperatures, fan RPM, speed, etc.). Starting this release we are adding new features. The major change is the ability to upload G-codes. This can be done through a web interface (see our guide for PrusaLink) or using PrusaSlicer. To ensure that it is you, who is sending the file, you must input an API key, which can be found in Menu -> Settings -> Network -> PrusaLink -> Current API key.

Besides uploading files, the PrusaLink web interface for MINI+ is also capable of:

  • Start print*
  • Pause/Stop print
  • Browse through G-codes, which are on the printer
  • Download G-codes from the printer
  • Delete G-code

*MINI+ must be on the home screen, “print-preview” screen, “print-finished” screen - this is intentional for safety reasons

Network menu updated

Due to the completely new or updated features described above, the “Network” menu was also updated. There are new menu items allowing you to set the new features based on your preferences. The list now contains these added items:

  • PrusaLink
    • Enabled [ON/OFF]
    • Generate API key
    • Current API key
  • Interface
    • Wi-Fi (enables the ESP module)
    • Eth (switches to Ethernet)
    • OFF (disables both interfaces)
  • IP (displays the current IP address)
  • MAC (displays MAC of the active interface)
  • Ethernet
    • Protocol (please note currently only IPv4 is supported)
    • LAN [DHCP/Static]
    • IP (assigned IP address)
    • Mask (subnet mask)
    • GW (gateway IP address)
    • MAC (interface MAC address)
  • Wi-Fi
    • Setup Wi-Fi module (flashes the latest available firmware for the ESP)
    • Create credentials (creates an empty config file on the USB drive)
    • Load credentials (loads config file from the USB drive)
    • Protocol (please note currently only IPv4 is supported)
    • LAN [DHCP/Static]
    • IP (assigned IP address)
    • Mask (subnet mask)
    • GW (gateway IP address)
    • MAC (interface MAC address)

Example of the Wi-Fi prusa_printer_settings.ini:

[wifi]
 ssid= 
 key_mgmt=WPA
 psk=

where:

  • ssid - is the name of your Wi-Fi network
  • key_mgmt - is the type of the security protocol (don't change it for now)
  • psk - your Wi-Fi password

Networking improvements

Tailor-made HTTP server

While working on the PrusaLink and its extended network capabilities, the developers have discovered that none of the existing web servers is sufficient for our needs. Previously used lwhttpd, became more and more demanding for the hardware.

For these reasons, the developers have decided to write our own HTTP server, which is optimized for the hardware and expected capabilities. It is able to process folders with large amounts of G-codes, thumbnails in G-codes, simultaneous upload/download and more.

Wi-Fi capabilities

The ESP is currently able to run as a client and connect to the nearest AP on a 2.4 GHz network. The data connection can be both encrypted (WEP/WPA-PSK) or unencrypted. For now, the WPA-enterprise and similar security encryptions for businesses aren't supported.

The printer is able to store login for a single Wi-Fi network, if you want to switch between wireless networks, you have to always overwrite the currently stored credentials.

The ESP is trying to automatically connect to the selected Wi-Fi network and reconnect if the connection is lost. If the printer is unable to connect to the network for over 60 seconds, the ESP module is restarted and once fully booted up, it continues searching for the network.

Support for the SSL

Part of the firmware is now the library mbedTLS, which will be used in the future for more secure communication between the MINI+ printer and any server.

GUI improvements

Remember position from the previous menu

Currently while returning to the previous menu, the printer doesn't remember the position of the cursor and scrolls all the way up, which can be uncomfortable for the user. Starting this release the printer will remember the position and return properly to i...

Read more

4.3.4 Firmware for Original Prusa MINI/MINI+

16 Dec 17:05
Compare
Choose a tag to compare

Summary

  • Support for PrusaSlicer 2.4
  • Time Zones extended
  • Satin sheet profiles added

This is the final release of firmware 4.3.4 focused primarily on extending the support for the upcoming PrusaSlicer 2.4. There are also some other improvements requested by the community. Compared to the previous version 4.3.4-RC, there are no changes.

Support for PrusaSlicer 2.4

The PrusaSlicer 2.4 is currently in the beta stage and you can read more about its new features here. Some of the changes introduced in version 2.4 have a direct impact on the firmware and in order to work correctly, the developers had to make some adjustments.

Starting with version 2.4, the G-codes have a larger allocation for the context information, which is located at the end of the G-code. Previously, it was enough to read the last 10 KB, however now it is necessary to extend the search for the last 20 KB (similar to the MK3 family). Thanks to this adjustment the printer is now able to correctly read the type of the filament, its usage and display it correctly on the print preview screen.

Time Zones extended

Starting with firmware 4.1.0 the printer is able to connect with the NTP servers and get the UTC time (assuming it is connected to the internet). The user then sets the correct Time Zone of the printer's location with respect to the UTC. Once all is set, the printer is able to provide the exact time in which the running print will be finished.

The list of the Time Zones was extended for this release and enables setting the difference to +14 (the previous limit was +12). This extension allows community members in New Zealand and surrounding Pacific islands to set the time correctly.

Satin sheet profiles added

In case the MINI or MINI+ are used with multiple types of steel print sheets, it is recommended to use the feature “Print sheet profiles”, which enables the user to store individual values of “Live adjust Z” for each steel sheet.

The factory list previously included profiles for Smooth and Textured sheets. This release extends this list with profiles for Satin sheets. However, please note that this is just about the names of the profiles. The factory settings for each profile are the same regardless of the name. The profiles Custom1 and Custom2 will be renamed Satin1 and Satin2.

In order to rename the profiles, a factory reset must be performed. Before this operation is performed, it is recommended to write down the current “Live adjust Z” value and use it later during recalibration.

4.3.4-RC Firmware for Original Prusa MINI/MINI+

22 Nov 16:50
Compare
Choose a tag to compare

Summary

  • Support for PrusaSlicer 2.4
  • Time Zones extended
  • Satin sheet profiles added

The main focus of this release is on extending the support for the upcoming PrusaSlicer 2.4. There are also some other improvements requested by the community.

Support for PrusaSlicer 2.4

The PrusaSlicer 2.4 is currently in the beta stage and you can read more about its new features here. Some of the changes introduced in version 2.4 have a direct impact on the firmware and in order to work correctly, the developers had to make some adjustments.

Starting with version 2.4, the G-codes have a larger allocation for the context information, which is located at the end of the G-code. Previously, it was enough to read the last 10 KB, however now it is necessary to extend the search for the last 20 KB (similar to the MK3 family). Thanks to this adjustment the printer is now able to correctly read the type of the filament, its usage and display it correctly on the print preview screen.

Time Zones extended

Starting with firmware 4.1.0 the printer is able to connect with the NTP servers and get the UTC time (assuming it is connected to the internet). The user then sets the correct Time Zone of the printer's location with respect to the UTC. Once all is set, the printer is able to provide the exact time in which the running print will be finished.

The list of the Time Zones was extended for this release and enables setting the difference to +14 (the previous limit was +12). This extension allows community members in New Zealand and surrounding Pacific islands to set the time correctly.

Satin sheet profiles added

In case the MINI or MINI+ are used with multiple types of steel print sheets, it is recommended to use the feature “Print sheet profiles”, which enables the user to store individual values of “Live adjust Z” for each steel sheet.

The factory list previously included profiles for Smooth and Textured sheets. This release extends this list with profiles for Satin sheets. However, please note that this is just about the names of the profiles. The factory settings for each profile are the same regardless of the name. The profiles Custom1 and Custom2 will be renamed Satin1 and Satin2.

In order to rename the profiles, a factory reset must be performed. Before this operation is performed, it is recommended to write down the current “Live adjust Z” value and use it later during recalibration.

4.3.3 Firmware for Original Prusa MINI/MINI+

15 Oct 09:38
Compare
Choose a tag to compare

Summary

  • Support for custom extruders
  • Thermal regulation for custom extruders
  • Extended print statistics
  • Nozzle pressurizing improved
  • Translations updated
  • BSOD caused by a broken thermistor fixed
  • Print timer fixed

This is the final release of firmware 4.3.3. This changelog is a summary of the previous release candidate 4.3.3-RC with additional changes introduced in this release. The main focus was to add features requested by the community, provide improved print statistics and fix certain bugs.

Compared to the previous release 4.3.2, there are 48 commits in 13 merge requests.

Support for custom extruders

We received requests from our community members to add configuration options for custom extruders. This release brings new functionality enabling the users to tune settings for a custom extruder on the MINI and MINI+. Previously, this was only possible with custom firmwares.

Installing a custom extruder is a significant change to the entire printer and might require multiple adjustments afterward. Therefore we recommend using this feature only in case you already have experience in this field.

To adjust settings for your custom extruder, go to LCD Menu -> Settings -> HW settings -> then long-press the knob. Similarly to the MK3S+, a new “Experimental” submenu will appear on the screen, where you can adjust the following:

  • Save and return - while exiting this dialogue any adjusted value will be automatically saved
  • Z-axis length - here you can adjust the length of the Z-axis based on your needs. In case you want to increase its length significantly, don't forget you might get limited by the cables.
  • Default Z length - the system will fall back to its default value, which is 185 mm.
  • Extruder steps per unit - different extruders might require different stepping
  • Default steps per unit - the system will set the factory value, which is 325
  • Extruder direction - there are two choices of spin, “Prusa” and the second is obviously “Wrong” 😉
  • Default directions - set the direction back to the default (Prusa)

Custom Extruder

Once parameters are adjusted, click on “Save and return”, the printer will ask you whether you want to save the changes to the EEPROM and then restarts itself. When the printer boots up again, the changes are applied across the system. This was done to ensure that even with adjusted parameters the printer will be still able to perform First Layer Calibration, Live Adjust Z and, of course, print.

Thermal regulation for custom extruders

Due to the support of custom extruders, we received requests from the community to enable Marlin PID in the firmware. We have performed multiple tests using different materials to verify the “Prusa” thermal regulation works correctly on both stock and custom extruders. The results below show clearly that the current algorithm (a feed-forward driving + PID tuning of the steady state) is capable of correct thermal regulation in all tested scenarios including the sudden start of a cooling fan.

Test results for custom extruder:

Material: PLA
Temperature: target 215 °C, max 216 °C, min 213.9 °C

PLA

Material: ASA
Temperature: target 260 °C, max 263.1° C, min 258.9° C

ASA

Material: FLEX
Temperature: target 240 °C, max 241.6° C, min 238.4° C

FLEX

Material: POLYCARBONATE
Temperature: target 275 °C, max 279° C, min 273.3° C

PC

Also, the implementation of two regulating algorithms and switching between them creates a risk of a bug or failure, which can possibly lead to printer damage. Moreover, based on the results the default Marlin PID performs worse in some scenarios (e.g. when the cooling fan is suddenly started). Since the provided algorithm works as expected even for custom extruders, we have decided to keep it unchanged.

Extended print statistics (previously Odometer)

Another frequent request by our community is implemented in this firmware release. The printer now stores information not only about the filament used and print time but also about the distance traveled at each axis (X, Y, Z), which is displayed in meters.

For the final release, the developers have changed the name from Odometer to Statistics to match the terminology used in Prusa printers. Also, the graphics of this submenu were adjusted to fit the overall design of the user interface.

This feature opens the door for multiple features, some of them will be introduced in the upcoming releases. For example:

  • Planned printer maintenance - once the bearings or other components reach a certain threshold, the printer will inform the user and provide instructions on how to clean, maintain or replace selected parts.
  • Storing print statistics to a server - once the printer is connected to the upcoming Prusa Connect service, it will send the statistics and enable easier management of larger farms.
  • Becoming a 3D printing grandmaster - the printer is capable of storing a print time of 9999 days 99 hours. The first user to reach this value on a final release without any tricks will become a grandmaster of 3D printing.

Printer Statistics (odometer)

All print data is stored in the EEPROM. To optimize the number of writes to the memory, only finished or stopped prints are saved. In the case of a watchdog reset mid-print, the data is not stored.

Nozzle pressurizing improved

In some scenarios, after a filament change, the printer created a blob imprinted in the object. Removing this surface irregularity was hard once the filament solidified and for this reason, the developers have improved the algorithm responsible for the filament change. It is based on the one used in the MK3S+.

Once the proper filament change is confirmed by the user by selecting “Color correct”, the printer starts to pressurize the nozzle to achieve even filament distribution. This results in a thin string of filament being pushed out of the nozzle. It is necessary that the user removes this string with pliers or another tool before the nozzle reaches back to the printed object. It is important to note that the NOZZLE IS VERY HOT at this point, thus removing the string by fingers will inevitably result in burns.

This behavior is now used by default every time a filament change is triggered during the print by command M600. If the printer is stationary and load/unload/filament change is selected manually by the user, then the nozzle pressurizing is not activated.

Translations updated

Due to the new features introduced in this release, all languages were updated. The only exception is the experimental menu, which remains untranslated, as it includes advanced settings and requires the user to be proficient in English. This update also solves issue #1575.

BSOD caused by a broken thermistor fixed

The developers have identified an incorrect printer behavior in a situation when the print is run remotely using Octoprint and the thermistor either gets broken or is accidentally removed from the Buddy board.

Instead of properly displaying the red screen (THERMAL RUNAWAY/MINTEMP), the printer crashed to BSOD or the Watchdog reset screen. This is now fixed and this might also resolve other situations, where the printer is showing the Watchdog reset.

Print timer fixed

The developers have accidentally introduced a bug into the previous release 4.3.3-RC. In some scenarios the system didn't stop counting the elapsed time, even after the print was already finished. This is now fixed while printing from the USB flash drive.

Note that while printing over the serial line (e.g. Octoprint/Pronterface), the system does not run the timer at all as it is difficult to determine the exact start and finish of the print in general.

4.3.3-RC Firmware for Original Prusa MINI/MINI+

07 Sep 15:56
Compare
Choose a tag to compare

Summary

  • Support for custom extruders
  • Nozzle pressurizing improved
  • Extended print statistics (Odometer)
  • BSOD caused by a broken thermistor fixed

This is the first public release candidate of the upcoming firmware 4.3.3. Based on the request from the community, the developers are introducing several new features.

Compared to the previous release 4.3.2, there are 34 commits in 8 merge requests and a significant amount of testing time.

Support for custom extruders

Based on the requests from the community this firmware release enables users to install and tweak settings for a custom extruder on the MINI and MINI+. Previously this was only possible with custom firmware.

Installing a custom extruder is a significant change to the entire printer and might require multiple adjustments afterward. Therefore we recommend using this feature only in case you have some experience in this field.

To adjust settings for your custom extruder, go to LCD Menu -> Settings -> HW settings -> then long-press the knob. Similarly to a MK3S+ a new “Experimental” submenu will appear on the screen, where you can tweak the following:

  • Save and return - while exiting this dialogue any adjusted value will be automatically saved
  • Z-axis length - here you can adjust the length of Z-axis based on your needs. In case you want to increase its length significantly, don't forget you might get limited by the cables.
  • Default Z length - the system will fall back to its default value, which is 185 mm.
  • Extruder steps per unit - different extruders might require different stepping
  • Default steps per unit - the system will set the factory value, which is 325
  • Extruder direction - there are two choices of spin, “Prusa” and the second is obviously “Wrong” 😉
  • Default directions - set the direction back to the default (Prusa)

Custom Extruder

Once parameters are adjusted, click on “Save and return”, the printer will ask you whether you want to save the changes to the EEPROM and then restarts itself. When the printer boots up again, the changes are applied across the system. This was done to ensure that even with adjusted parameters the printer will be still able to perform First Layer Calibration, Live Adjust Z and, of course, print.

Nozzle pressurizing improved

In some scenarios, after a filament change, the printer created a blob imprinted in the object. Removing this surface irregularity was hard once the filament solidified and for this reason, the developers have improved the algorithm responsible for the filament change. It is based on the one used in the MK3S+.

Once the proper filament change is confirmed by the user by selecting “Color correct”, the printer starts to pressurize the nozzle to achieve even filament distribution. This results in a thin string of filament being pushed out of the nozzle. It is necessary for the user to remove this string with pliers or another tool before the nozzle reaches back to the printed object. It is important to note that the NOZZLE IS VERY HOT at this point, thus removing the string by fingers will inevitably result in burns.

This behavior is now used by default every time a filament change is triggered during the print by command M600. If the printer is stationary and load/unload/filament change is selected manually by the user, then the nozzle pressurizing is not activated.

Extended print statistics (Odometer)

Another frequent request by our community is implemented in this firmware release. The printer now stores information not only about the filament used and print time but also about the distance traveled at each axis (X, Y, Z), which is displayed in meters.

This feature opens the door for multiple features, some of them will be introduced in the upcoming releases. For example:

  • Planned printer maintenance - once the bearings or other components reach a certain threshold, the printer will inform the user and provide instructions on how to clean, maintain or replace selected parts.
  • Storing print statistics to a server - once the printer will be connected to the upcoming Prusa Connect service it will send the statistics and enable easier management of larger farms.
  • Becoming a 3D printing grandmaster - the printer is capable of storing a print time of 9999 days 99 hours. The first user to reach this value without any tricks will become a grandmaster of 3D printing.

Printer Statistics (odometer)

All print data is stored in the EEPROM. To optimize the number of writes to the memory, only finished or stopped prints are saved. In the case of a watchdog reset mid-print, the data is not stored.

BSOD caused by a broken thermistor fixed

The developers have identified an incorrect printer behavior in a situation when the print is run remotely using Octoprint and the thermistor either gets broken or is accidentally removed from the Buddy board.

Instead of properly displaying the red screen (THERMAL RUNAWAY/MINTEMP), the printer crashes to BSOD or the Watchdog reset screen. This is now fixed and this might also resolve other situations, where the printer is showing the Watchdog reset.