Implemented X axis set and report mapping in M563 command and in web and
M408 status responses (but mapping doesn;t do anything yet)
Report number of axes to DWC
M307 H# A-1 C-1 D-1 disables the pid controller for that heater to free
up the pin
Debug print of matrixes during delta calibration is now to 4dp
Implemented fan blip
Support up to 6 axes in many commands
Allow creation of additional axes in M584
Display delta paremners to 3dp instead of 2dp
Removed M126/M127 error messages
Delta calibration now supports bed tilt parameters
On Duet WiFi, delta calibration is now done in double precision maths
Added support for G4 S parameter
Bed compensation or delta calibration is now aborted if the probe was
triggered at the start or was not triggered by the end of the probing
move
Bug fix: JSON file list returned by M20 S2 is now terminated by \n
Bug fix: stupidly high temperatures were returned immediately after
power up in response to status requests
Bug fix: when using an analog Z probe, probing movements were sometimes
aborted before the full depth had been probed but the firmware thought
that probing had terminated at the full depth
Bug fix: generic messages were sent to PanelDue in plain text format
Max temperature excursion and fault trigger time are now configurable
via M570
If a heater fault occurs then any SD card print in progress is abandoned
Improved M122 diagnostics headings
Bug fix: some values of pressure advance caused too many extruder steps
to be schedules, resulting in extruder step errors, and another bug in
the error handling then caused layer shifts
Changes to reduce incidence of false heating fault alarms, in particular
"temperature rising much more slowly than the expected 0.0C"
Stepper drivers beyond the first 5 are assumes to be non-TMC2660 drivers
Increased max number of probe points to 64 on Duet WiFi and 32 on Duet
0.6/0.8.5
Corrected M37 reporting of simulation time
Added move debug facility
Added recording of more types of move underrun
Use fabsf instead of fabs
M21 doesn't re-mounjt a drive that is aloready mounted and has open
files on it
Added "volumes" variable in extended status report
Report card details after M21 is called
Bug fix: M220 speed changes were nott being implemented as soon as they
should be
Bug fix: lookahead was sometimes failing to join sequences of short
decelerating moves together
Bug fix: at startup the thermistor readings were sometimes very high,
which triggered a bug in strtod() called in PanelDue firmware 1.14 and
earlier
Fixed some issues with new PID control
Generate a warning message if the gain from auto tuning or in a M207
command is dangerously high
Don't escape forward slash in json responses because PanelFue doesn't
like it
Fixedbug with PrintMonitor code to find object height
Qualify some omre #include filenames with paths, to reduce the number of
include file paths needed in the compiler options
Fixed doubling of M301 I parameter and halving of M301 P parameter
Implemented M303 auto tune and M307 heater process model
Improved temperature monitoring to detect heater cartridges or
thermistor falling out
Implemented M38 (thanks chrishamm)
Retructured course code tree
Add support for second SD card on SPI bus for Duet WiFi including
implementation of M21 and M22
New temperature monitoring
Increased PWM resolution
When uploading files to wifi module, skip empty blocks
Revised TMC driver in preparation for standstill current reduction
Fixed PrintMonitor bug when the slicer comment includes a '\' character
Further optimisation of step generation ISR
Don't allow more than half the capacity of the DDA queue to be frozen
Duet WiFi: print additional info from WiFi module
- Fix for uncommanded stepper motor movement on some systems following a
software reset
- When multiple motors are due to step, generate all the step pulses
simultaneously
- Added support for multiple drivers for a single axis (M584)
- Added support for extended step pulse width when using external
drivers (T parameter on M569 command)
- Removed XYZE params from M569 (use M584 instead)
- Added M913 command (set motor % of normal current)
- Added Z probe type 5, which is a normally-closed switch or active-high
probe connected to the Z probe connector
- Duet WiFi default Z probe threshold is now 500
- Duet WiFi defaults to using a low end homing switch on the X axis
Changes to use new pin modes in CoreNG
Initialise TMC2660 step/dir/CS pins as early as possible
Allow emergency stop in simulation mode
Disable drives and heaters when doing a software reset
Support 10th drive and 8th heater on Duet WiFi
TMC2660 driver support is now only in Duet WiFi firmware build
Bug fix: PanelDue showed fan at 1% instead of 100%
Added supply voltage monitoring (Duet WiFi)
Rr-initialise TMC2660 drivers whenever Vin supply is lost and comes back
up again
Fixed thermostatic fan bug introduced in version 1.13
Added MCU temperature monitoring
Duet WiFi only: added voltage monitoring, and disable TMC2660 drivers if
the voltage is too low or too high. Not tested as at time of this
checkin,
Temporary fix for RTD temperature spikes causing failed prints
Added 'only if printing a file' condition in M581 command
Fixed M117 for PanelDue
Don't print extruder positions in M114 because they are always zero
Process M0 and M1 when in simulation mode
Allow setting of fan PWM from 50% upwards when a fan is in thermostatic
mode
Reduced default extruder heater PWM frequency
Axes are no longer homes when microstepping is changed
SD card interface speed is included in M122 output
Added support for M581 and M582 commands
M25 pause command can now be used inside a macro file to pause a file
being printed from SD card
Firmware update messages are now sent to USB and PanelDue (but the
existing PanelDue firmware doesn't display them)
Added gcode queue underrun counter, displayed in M122 Move diagnostic
info
M122 responses are now sent only to the comms channel that requested
them
Added support for additional firmware modules to be updated for Duet NG
Corrected a possible problem with multiple incompatible gcodes being
executed concurrently
Support H parameter on M0 and M1 commands
When executing M0/M1 commands and no print is paused, execute
stop.g/sleep.g if they exist
Treat M25 within the file being printed the same as M226
Added additional simulation modes to help identify bottlenecks
Don't disable all interrupts when starting a new move, to reduce
interrupt latency so that we can still receive data from PanelDue
Moved some utility maths functions to CoreNG
Changed .gitattributes file to treat .inf files as binary so that their
hash values don't change and their digital signatures remain valid
Deleted duet.inf ready for adding back as a binary file
1. Changed thermocouple/RTD support to use new (fixed) version of
SharedSpi in CoreNG
2. PrintMonitor fixes:
- Speed up getting file info, because it was slow enough to cause Ajax
timeouts on some systems
- Reduce the number and volume of messages printed when debugging was
enabled, and send them only to the USB interface, because it was
overloading the message buffer system and causing Ajax errors
- Added separate time stats for file seeks
Enhancements
=========
Added support for RTD temperature sensors
When cancelling a print, if cancel.g exists then run it instead of
turning heaters off
Improved file upload speed over the web interface
Chamber heater is now exempted from timeout
Pressure advance now reduces maximum extruder jerk setting by a smaller
amount when the extruder steps/mm is high
The Duet no longer reports itself as an Arduino Due and has its own
Windows driver
Added experimental "maximum average printing acceleration" feature
Try to improve speed of getting file information in Print Monitor
Bug fixes
======
Simulation mode was not working properly
External driver support code sometimes failed to enable the associated
drives
Fixed potential overflow if a user attempted to use non-existent driver
9 on a Duet 0.6
M408 status requests were not handled when in simulation mode
Removed hard coded PATH in project