If you still have access to DWC, upload these 3 zip files, one at a time in the system tab. Don't extract them. Reboot after each. Use M115 to verify the firmware has been applied.
RepRapFirmware 2.05.1 update
RepRapFirmware 3.0 update
RepRapFirmware 3.3 update
That will get your firmware and DWC up to date as of firmware 3.3.
You can see the change logs here on the Duet3D Github repository.
For your config, might be a good idea to run through the RepRapFirmware configuration tool and generate a fresh set for RRF3.
Backup your existing config files in the sys folder in case you want to switch back to RRF2. It is easy to switch back and forth, just upload the zip file for the version you want and then upload your config files.
These documents will come in handy during the conversion.
Migrating from RRF2 to RRF3
GCode dictionary
Starting in version 3.3 there is a firmware folder in the root of the SD card. During a firmware update initiated by uploading a firmware file to the DWC the files will now go into this firmware folder to keep the system folder a bit tidier. Normally it would get created automatically, but if that doesn't happen and you get an error that the folder is missing, please create it manually in the root of the SD card using a PC. All firmware .BIN files can be moved into this folder.
The two main ways to get some diagnostic information is to send M122 and M98 P”config.g” to check for problems. M122 provides a look at basic and advanced system information and M98 P"config.g" will execute your config files as a macro and will show any of the syntax errors that may otherwise get missed during startup.
Read Configuring RepRapFirmware for a Cartesian printer: Homing Z
Recent firmware versions do not allow axes to be moved before they have been homed. The only movements allows are homing moves (G1 moves with S1 or H1 parameter) and individual motor moves (G1 moves with S2 or H2 parameter). So any Z movements that your homing files make before Z is homed should use the S2 parameter. Alternatively, add M564 H0 to config.g to allow axis movement before homing.
See here: Adapting an existing printer to Duet
See the BLTouch Troubleshooting page.
Fan 1 output is configured in thermostatic mode by default in RRF 2.x, and also turns on automatically when the processor is started up or reset. This is for added safety when you use it to control the hot end fan. See Connecting and configuring fans: Thermostatically controlled fans and also the following section on that page.
Delete the deployprobe.g and retractprobe.g files in the /sys folder of the SD card, unless you have set them up specifically to handle a type of Z probe that needs to be deployed (e.g. BLTouch).
You have configured your slicer to use absolute extrusion coordinates, then you have used a relative extrusion command in your slicer end gcode script to retract a little filament, without switching to relative extrusion mode first.
If your printer is a delta, open the homedelta.g file in the System Editor of the web interface. Look for the first G1 S1 line in that file. The X, Y and Z parameters on that line are the maximum distances that the carriages will move up when homing. Increase them to be a little larger than the maximum distance that the carriages can ever be below the homing switches.
If your printer is a Cartesian, CoreXY etc. the solution is similar. For example, if the X axis sometimes fails to home all the way, look for the first G1 S1 X command in homex.g and increase the X parameter to at least the length of the axis. Do the same in homeall.g.
CoreXY motion will require some configuration to ensure a correct right handed coordinate system. Please follow the CoreXY setup guide here, specifically the testing motor movement section: Configuring RepRapFirmware for CoreXY printer
This is often caused by using an incompatible browser. Chrome and Firefox work well with Duet Web Control. Microsoft Internet Explorer and older versions of Edge and Safari may have problems (see here for details).
DWC file editor works in Safari 10.0.1 and later. (Won't work in any earlier versions), from the thread linked above.
If this is not the case ensure you are running the latest stable versions of the firmware and Duet Web Control
3D printers must be configured to use a right-hand coordinate system. If you have configured your printer to use a left-hand coordinate system, your prints will come out mirrored.
Looking at the front of the printer. the most common arrangement using a right-hand coordinate system is:
A few printers (e.g. the Ormerod) have +X moving the head towards you, and +Y moving either the head to the right or the bed to the left.
On a delta printer, the X tower should be on the left, the Y tower on the right, and the Z tower at the back.
See What to do if your Duet won't respond.
See WiFi troubleshooting.
Occasionally after a firmware update the wifi module will fail to start correctly. This is usually caused by a failed wifi module firmware update. Reflashing the module by sending M997 S1
over USB terminal should solve the problem. If it happens while updating from RRF 3.2 or earlier to RRF 3.3, send M997 S1 P"0:/sys/DuetWiFiServer.bin"
A disconnected (open circuit) thermistor shows -273C in RRF. Other temperature sensor faults give a reading of 2000C, which triggers thermal protection as a safety. In general, check your wiring first and then ensure thermistor configuration is correct and uses the right syntax for your firmware version. i.e. RRF2 vs RRF3.
When doing a firmware update you may receive a missing IAP file error if the correct IAP file isn't present on the SD card in the /sys folder along with the firmware. For example, iap4e.bin. IAP stands for In Application Programming and it is the file responsible for facilitating the firmware flashing process. Over time the IAP files have changed to allow for newer and larger firmware bin files to be flashed. The correct IAP BIN files are generally included with each major release requiring them. You're unlikely to see this error if you have been upgrading your firmware along with their release. It's more likely to occur when jumping from an older firmware to the newest and skipping over many releases. To correct the problem, you can likely find the IAP file in question in the last major release.
You may receive this warning after running a PID tuning when the tuned PID values are loaded at startup. It is an informational warning telling you what temperature the firmware algorithm suspects the heater is capable of reaching in a full power runaway heater situation. It is meant to encourage you to either choose a less powerful heater that is physically unable to reach such a temperature, or to take precautions to mitigate the effects of an uncontrolled heater situation, such as adding a thermal cut out spec'ed appropriately to cut power to the heater if a temperature is exceeded. At the very least, do not leave your printer unattended, have a smoke detector present, and have a fire extinguisher handy.
Yes, but with limitations. See here: Firmware Overview: Printing over USB connections
Usually this means you have a delta printer and your homedelta has a move to position the print head at center. However, it can't reach that point because it would require moving one of the carriages up further than it physically could. The solution is to lower the print head first in Z and then command it to center in X Y.
RepRapFirmware no longer tries to work out what layer number is printing, and no longer provides an estimate of print completion time based on layer progress. The mechanism to work out the layer number failed in many cases, for example when the slicer used variable layer heights or printed multiple objects one at a time. The removal of these 200 lines of hard-to-maintain code has made more space available for other features on the older Duets that are tight on memory space. A consequence of this change is that DWC will no longer produce a layer chart if the GCode file being printer does not include layer number comments. For slicers that do not normally generate these comments (e.g. PrusaSlicer) it is usually possible to add a layer change script to generate them.
See this forum thread for a work around: