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
Merged in chrishamm's changes to Network, PrintMonitor, and his support
for firmware updates from SD card
Fixed print monitor issue that threw out the layer count and time
estimates when there was an initial extruder priming move in the start
gcode
New features
============
The PWM frequency for the heated bed and for any heater used as a
chamber heater is now 10Hz for bettercompatibility with DC-AC SSRs.
The PWM frequency for fans is now configurable using the F paramete ron
the M106 command. The default is 500Hz, which gives esonable control of
fans not designed for PWM. Increase it to 25000Hz when using 4-wire PWM
fans.
When a Duet 0.8.5 board is configured or detected, the fan control is
now automatically inverted. If you previously used M106 P0 I1 in
config.g to invert it, you will need to remove that.
M579 (scale Cartesian axes) is now implemented (thanks chrishamm).
M114, M119 and M573 commands can now be executed concurrently with other
commands.
When DDA debugging is enabled, the debug output now includes all active
extruders instead of just the first two.
M408 S0 now includes the fan speeds (for PanelDue).
M119 now reports the Z probe as well as the endstop switch states.
A tool can now be defined even if a tool with the same tool number
exists already. The existing tool will be shut down and deleted.
The bed heater can now be disabled using M140 S-1 (thanks chrishamm).
The chamber heater (if present) and the endstop switch states are now
reported to the web interface (thanks chrishamm).
Increased defauklt Z prove dive height to 5mm.
Increased default PID Ki to 0.2
Bug fixes
=========
On a CoreXY machine, XY speeds were too low by a factor of sqrt(2).
On a delta machine, after running auto calibration the Z=0 height could
be slightly inaccurate, depending on the difference between the X and Z
endstop corrections
When using a non-intelligent modulated Z probe on a Duet 0.8.5, the
modulation pin number was incorrect.
The M27 (Report SD card print status) response was inverted compared to
what it should be. When in Marlin mode it now includes the "byte n/m"
field that some versions of Pronterface expect.
Cold extrusion prevention did not work - an error message was generated,
but the extruder was driven anyway.
M999 PERASE is now more reliable (thanks chrishamm).
M23, M30 and M32 commands did not work when the filename parameter
passed included an absolute path.
//A T command inside a macro file did not execute the tool change macros
files.
A memory leak occurred when a tool was deleted.
All moves are now completed before switching to CoreXY mode.
Polling requests from PanelDue were not relied to when a macro was being
executed
M667 with no parameters returned an incorrect string
Added F (probing speed) and T (travel speed) parameters to M558 command
Removed M210 command because home feed rates are defined in the homing
files
Increased UART interrupt priority to avoid dropping characters sent by
PanelDue
Bug fix: M558 P3 did not leave the Z probe control pin high
Bug fix: in version 1.09j only, the move following a G92 E0 command was
sometimes executed from an incorrect start point
Fixed bugs with reads/writes from/to the SD card that spanned one or
more whole sectors
Updated to latest Atmel HSMCI driver
Fixed race condition introduced in version 1.09f
If debug output isn't consumed by a USB host, discard it instead of
blocking( which eventually caused the software watchdog to time out).
Fixed print quality problems that mostly affected delta printers e.g. on
spiral vase cylinder
When reconnecting a browser, cancel any file upload from the same IP
address
M111 now prints the number of each module with debugging enabled or
disabled
In special moves on delta printers, the F parameter is now interpreted
as the speed of the tower that moves the most
M114 now reports stepper positions as well as head position
Default to output in Marlin mode
M104 command defaults to the only tool if there is only one tool and it
is not selected
Trying different code for M999PERASE command to see if we can get it to
unlock flash and reset more reliably
When step errors are logged, report them immediately if Move debugging
is enabled. Also reports the total number of step errors in M122.
Changed interrupt priority to make tick interrupt higher priority than
step interrupt, because we rely on the tick interrupt to check for over
temperature conditions and kick the watchdog
Fixed CoreXY homing bug
Support simultaneous XY homing on CoreXY printers
Updated sample homeall.g file for CoreXY printers to do simultaneous XY
homing
Added H (height correction) parameter to G30 command
G30 S-1 now reports trigger height without changing ZS origin
Added M665 Z parameter to better support square delta printers
Changed interrupt priorities to make step pulse timing interrupt higher
priority than Ethernet (thanks zpl)
Fixed two potential divide by zero errors in PrintMonitor
Don't report an error if tpre, tpost or tfree macro file is not found
Changed the way we report bed height errors after bed probing without
calibration
Final Z probing speed is now always 1/3 of the initial probing speed as
set by M210
Bug fix: after Z probing the Z height was set incorrectly by 1 motor
microstep
Z axis min and max limits are now enforced if the axes have been homed
M665 command now shows the re-calculated delta radius and tower offsets
after auto-calibration
Initial and final RMS errors are now shown after delta auto-calibration
Pause/resume now mostly works when absolute extruder coordinates are
used
Doubled the maximum length of the SD card file listing that can be sent
to PanelDue
Implemented zpl's Network and PrintMonitor changes including M404
(thanks, zpl)
Increased default maximum instantaneous speed changes
Bug fix:: if M226 was used to pause the print, the resume coordinates
were not set up correctly
Bug fix: when changing the travel direction, the head was sometimes
slowed down more than necessary
Bug fix: warm-up time was not shown correctly in DuetWebControl
Bug fix: extruder drive positions were always shown as 0.0 in
DuetWebControl
Bug fix: incorrect PID parameters were shown in response to M301
Replaced old web interface files on SD card by DuetWebControl
Modified all resume.g files to set the speed when moving to the paused
head coordinates
Implemented rr_config web request for zpl's latest web interface
Implemented 7-factor auto calibration for delta printers
Fix bug with fileinfo calls corrupting memory
M563 can now be used to delete tools
Improved speed of integer square root function
Fixed bug in GCodeBuffer IsEmpty function (thanks zpl)
Changed tool numbers to start at T0 in all /sys files
Added sample macro files
Improved the macro file bed.g that gets run in response to a G32 command
to do an extra dummy probe at the start, and to do 2 sets of calibration
instead of just one.
Add R parameter to M552 command to allow HTTP port to be configured
When listing SD card files, ignore files with a leading '.' in the
filename (e.g. files that Mac computers add to store metadata)
Merged zpl's changes for binary file uploading and PrintMonitor
Fixed bug with filament-based print time estimation
Fixed bug that caused feed rate to often not be restored after running
a macro
Print Z probe offsets at end of G32 sequence if Move debug is enabled
Prevent setting of absurdly high hot end temperatures
Added R parameter to G1 to go back to previous location, with optional
offsets
Allow Pronterface and PanelDue M105 requests to execute during file
macros etc.
Added more status information for PanelDue to M105 S2 command
Send replies when prints are paused, resumed or cancelled
Added missing newlines at end of M105 responses
Increased X and Y course homing speeds
Added almost instant pause functonality
Support pause and resume macros
Support nested macros
Support zpl's web interface
Merge in zpl's web interface and network changes
Add R parameter to M105 command for PanelDue
M98 can now run macros from any SD card folder
Fixed G32 so that it really does run macro file bed.g if it exists
Added H parameter to M558 command
Added bed.g file for Mini Kossel with mechanical Z probe
M0 no longer turns motors off
Updated M18 and M84 as per zpl fork
Don't insist that user provides values for all 5 possible extruders in
M906 command
Added Ormerod 2 sys files
Updated web interface files