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
Bug fix: M92 command would only set extruder steps/mm if either 1 or 5
extruder steps/mm was provided
Bug fix: Z-homing or bed probing when axis compensation was enabled
caused the X and Y origins to shift
We now mark drives as not homed when we disable them
File info code now supports gcode files generated by Simplify3D
Updated SD card files to latest web interface
Added more comments to config.g
Head movement commands that were in the tfree files have been moved to
the tpre files, to work better when G10 nozzle offsets are used
Added support for nozzle offsets in G10 command
Disable heater timeout if the time limit is set to zero or negative
Don't send non-error responses to the web interface unless the
corresponding command also came from the web interface
Added support for aux input from serial. Need to finish this by making
serial transmission interrupt-driven.
Increased default heater S factor to 1.0 to make it easier for users to
switch from RRP official firmware
Minor fix to move lookahead code
Added support for M570 command (set max time to hot)
M81 command now waits for moves to finish before turning power off
Other minor changes
Increased tcpOutputBufferCount by 1 because zpl had trouble loading the
new web interface until he did
Increased fan rpm debounce frequency to support fan speeds up to about
20000 rpm
Added modified lwip files that were missed from last checkin
Fixed incorrect JSON format in response to the rr_files command when no
files were found
Enabled hardware debounce filter on cooling fan RPM pin to get a correct
and stable readout
Fixed bug that caused the cooling fan PWM frequency to be 165kHz. It is
now 25kHz.
Fan RPM is now included in the web interface status response (thanks
zpl).
Many more error messages are now reported to the web interface as well
as the USB interface.
Interrupt-driven network timer task to better cope with slow SD card
writes (thanks zpl)
Module SamNonDuePin is now used for all digital and PWM pin I/O.
1. Fixed variable name of extrusion factors in JSON status response
2. Fixed bug: changing heat sample interval no longer messes up I and D
pid factors.
3. Ensure that name of file being printed is null-terminated.
4. Removed redundant function SetStepHypotenuse.
Fixed combined xyz move bug (thanks zpl). Reversed default direction of
X motor. Added support for M569 command. Fixed bug in execution of M503
command via web interface.
Refactored printing to strings and web server json response handling in
preparation for adding support for LCD display via serial link
Added a timer to record how long block writes to SD card take
Changed compiler optimization option to -O2 (was accidentally reset to
-Os in previous release)
Set the number of decimal places reported in the responses to various M
commands
Integrated zpl's changes to returning lists of files, returning info for
file being printed, and some network layer changes
Fixed bug: if 5 point bed compansation was used then doing G32 more than
once would try to move the head off the edge of the bed unless the first
4 probe coordinates were reset between them.
Fixed bug: if the last command in a a macro file did not end in newline
then it might not be fully executed
Bug fix: potential array underrun in Gcodes::Pop()
Reduced Z dive height back to 5mm
M563 command extended to allow the tool number origin to be adjusted. If
there is no P parameter in the command then the S parameter specifies an
offset to be added to tool numbers in T, G10, M104 and M109 commands.
This is so that multi-media gcode files generated by slic3r can be
printed without having to edit all the tool numbers in the gcode file
first. This extension is intended to be temporary, until slicer provides
a mechanism for specifying the tool numbers. A separate offset is
maintained for each data source (USB, web or SD card) and the offset for
data from the SD card is reset to zero when a new file is started. To
use this facility to print slic3r multi-media gcode files, add M563 S1
to your start gcode.
M104 and M109 commands now accept an optional T parameter to specify the
tool number, as generated by slic3r in multi-media gcode files.
Movement code from RepRapPro's dev branch incorporated, including
5-point manual or automatic bed compensation mechanism.
Heater status (off/standby/on) is included in the status poll response
for the web interface. This will be used in a future version of the web
interface.
Incorporated code from RepRapPro dev branch to allow many more
M-commands to return values as well as set them.
Incorporated code from RepRapPro dev branch to implement the M119 and
M135 commands. There is currently a bug in the M135 (set heat sample
interval) command, which means that if you change the interval from its
default value of 0.5 seconds then you need to adjust the I parameter by
the same ratio and the D parameter by the inverse ratio.
Extrusion totals are reset to zero when starting a new print from SD
card.
M301 and M304 commands to set PID parameters now take an additional S
parameter. This allows for variations in cartridge heater power and
supply voltage to be taken into account more easily.
Temperature errors are reported to the web server as well as to USB.
The Heat section of the M122 diagnostics report now shows the
accumulated PID I-term.
G90 and G91 commands now affect only the the axes, not the extruders.
Bug fix: numerous calls to strncat were being made with a 'nchars'
parameter that was larger than space available in the destination
buffer.
Bug fix: print moves received just prior to an M109 or M190 command were
not executed until after the heater had reached temperature instead of
before.
M116 now accepts a P parameter so that you can wait just for the heaters
associated with a particular tool
M220 and M221 commands report the current override factor if no S
parameter is provided
Multiple "Filament used" values from gcode files are reported to the web
interface
Active and standby temperatures for all heaters are reported to the web
interface
Bug fix: defining a tool with no drives or no extruders would cause it
to use a collection of drives or extruders depending on the values of
un-initialised array elements
Bug fix: running a macro file would reset the extruder position to a
value depending on what extrusion (if any) was requested by the last
movement command in the macro file
Bug fix: using G10 to set oly the active temperature caused the standby
temperature to be set to an undefined value, and vice versa
G10 can now be used to retrieve the active and standby temperatures as
well as set them
Bug fix: I and D parameters were set to incorrect values when the M301
and M304 commands were used. They also reported the incorrect values.
New T parameter added to M301 and M304 commands, to allow the I term to
be preset to a suitable value when PID kicks in
Adjusted default PID parameters for lower overshoot and less oscillation
Bug fix: when axis or bed compensation was enabled a homing move to seek
for one endstop could be prematurely terminated by another endstop
M122 command only outputs LWIP stats if debug is enabled. Prevents a
hang if no UDB cable is connected when M122 is executed.
Bug fix: when resetting, the heaters used to power up for a short time
M0 and M1 commands now turn the heaters off instead of to standby
Web server status poll response now includes the selected tool number
Fixed M122 so that diagnostics are sent to the web interface as well as
USB
Fixed M220 command to respond to speed change requests faster
Count the number of active extruders and heaters, and only send their
values to the web interface, subject to a minimum of 2 heaters and 1
extruder
Fixed buffer overrun bug in FTP LIST command that caused a subsequent
FTP delete command to crash. Increased file list buffer to 2000 bytes.
Added binary RepRapFirmware-057k-dc42.bin.
Merged in zpl's changes. The FTP server is not yet reliable, in
particular trying to delete a file via FTP after copying another may
result in the Duet rebooting due to the webserver module getting stuck
in a spin loop. Also the copied file has on one occasion been observed
to be shorter than the original.
Corrected returned values of speed factor and extrusion factor
When setting the machine name and password, stop at the first control
character, and remove trailing spaces
Improved speed of response to M220 command
Limit length of text returned in response to rr_name web command, stop
on first control character, and escape and quote or backslash characters