Firmware differences from Marlin, Repetier etc
The Duet and Duet WiFi run RepRapFirmware. This differs from Marlin and Repetier in a number of ways.
- You do not need to build the firmware yourself unless you are a firmware developer. The firmware is supplied as a ready-built binary file. All important configuration parameters are defined within the /sys/config.g file on the on-board SD card, which you can edit either in the web interface, or by moving the on-board SD card to a PC and using an ordinary text editor such as Notepad++. You can also change these parameters on the fly by sending the appropriate G-codes.
- The homing behaviour is defined in homing files also on the SD card. Bed probing behaviour is defined in the bed.g file on the on-board SD card. For more details, see Configuring RepRapFirmware for a Cartesian Printer: Bed Probing File.
- PID auto tune works differently. The firmware models each heater as a first order process with dead time, and measures the corresponding model parameters for your heater. It uses these parameters to compute two sets of PID values. One is designed to minimise overshoot when heating up to operating temperature. The other is used to give faster response to changes in load, for example when a print cooling fan is turned on or the extrusion rate is changed. The model parameters are also used to compute the expected behaviour of your heater, so that the firmware can better detect deviations from this behaviour that could be symptomatic of dangerous heater faults.
- For delta printers, fast auto delta calibration is provided using a least-squares algorithm. The process takes around 30 seconds or less, making it practical to run at the start of every print if you wish.
- Firmware updates are normally done over the web interface, with USB used only as a backup.
- Nozzle heaters are controlled differently. With RepRapFirmware, you associate heaters and extruder drives to tools (you can have more than one of each used by a tool if you like), you assign active and standby temperatures to each tool's heaters, then you activate the tool. You can have several tools that share the same heaters and extruder drives. Other firmwares have a much more primitive concept of tools and typically consider each heater to be a tool.