> For the complete documentation index, see [llms.txt](https://quadfusion.printm3d.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://quadfusion.printm3d.com/getting-started/updating-firmware.md).

# Updating Firmware

Updating your firmware can be important to obtain the latest features and bug fixes. The Duet Maestro board uses a fork of RepRap firmware to control a 3D printer. The latest firmware can be found on DC42's [GitHub Page](https://github.com/dc42/RepRapFirmware/releases). There you can download the *.bin* firmware files and, most importantly, read the change log. Note that some firmware releases are experimental and will be classified as an early-release. This means there is a higher risk of unintended bugs in the firmware version.

**Warning: Updating your firmware can cause unintended consequences. Be aware that upgrading or downgrading to unstable firmware versions can cause unexpected bugs and issues. Use caution!**

## Identifying Firmware Version

In order to find out if you want to update the firmware on the Duet Maestro you need to find your current version. You can view the RepRap firmware version in the Duet Web Console Settings Tab. Alternatively, you can use `M122`, command `M122` is the diagnose/debug command for RepRap firmware. If you send command `M122` the board will display a lot of debug statistics. In the first few lines the board will print out what firmware version it is running. Based on your firmware version, you might be able to identify if you are encountering a specific bug. Check DC42's github page regularly in order to read the latest firmware changes and see if any would be useful to you.

![Checking the RepRap Firmware Version](/files/-LIIGtZ4Gn_qFx58qQCD)

## Upgrading System Firmware via the Duet Web Console

1. Download the desired firmware version from DC42's github page. This will be a *.bin* or binary file called *DuetMaestroFirmware.bin*.
2. Download the *iap4s.bin* file, this is necessary in order to update the firmware.
3. Go to the settings tab of the Duet Web Console and find the *Upload File(s)* button. Note: this is not for uploading prints. Files uploaded here will be stored in the *sys/* directory of the microSD card. Upload the *iap4s.bin* and *DuetMaestroFirmware.bin* files.

   ![aosmza6ID0m8KJ7A-uploadsysfiles.png](/files/-LIIGtZ7ku16xCCvP6tL)
4. Once both files are uploaded successfully, go to the *G-code Console*. Send the command `M997 S0`. This will begin the process of upgrading Duet firmware.
5. When the firmware upgrade is completed, you can visit the *Settings* tab in order to ensure that the *Firmware Version* has been updated to the preferred version.&#x20;
6. If you prefer, you can now delete the *iap4s.bin* and *DuetMaestroFirmware.bin* files from the *sys/* directory.

## Other Resources

1. [Duet 3D Wiki: Updating and Installing Firmware](https://duet3d.dozuki.com/Wiki/Installing_and_Updating_Firmware)
2. [Duet3D Forum](https://forum.duet3d.com/): For firmware and Duet specific questions
3. [Duet Fork of RepRap Firmware](https://github.com/dc42/RepRapFirmware)
