Commit graph

246 commits

Author SHA1 Message Date
David Crocker
c64bf3f783 Version 1.15tc4
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
2016-08-21 22:18:21 +01:00
David Crocker
58a7aa11d8 Release 1.15 beta 3
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
2016-07-16 08:21:19 +01:00
David Crocker
1ac43b3bf2 Version 1.14
- 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
2016-07-02 17:21:16 +01:00
David Crocker
cddcf711cd Version 1.13b
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
2016-06-24 16:20:25 +01:00
David Crocker
60eea873d6 Removed 1.09 series binaries 2016-06-19 23:41:13 +01:00
David Crocker
ac4794daf1 Version 1.13a
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,
2016-06-19 23:39:25 +01:00
David Crocker
b96f710d4c Added Duet WiFi binary 2016-06-16 08:57:13 +01:00
David Crocker
a9f01da35c Added a binary 2016-06-15 21:47:15 +01:00
David Crocker
54f2af4abc Added 1.13 beta 1 binary 2016-05-27 21:00:35 +01:00
David Crocker
1b2be24ead Version 1.12a
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
2016-05-10 12:52:19 +01:00
David Crocker
7c864d13e3 Version 1.12
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
2016-05-07 21:55:19 +01:00
David Crocker
79828f9cd9 Version 1.11 release
Use updated CoreNG to fix incorrect extruder 1 motor current
Improved accuracy of setting extruder 1 motor current
2016-04-14 12:21:24 +01:00
David Crocker
f3a1b62c0a Version 1.11-beta1
Changed to CoreNG
Implemented chrishamm's latest Network and Webserver changes, including
Telnet streaming
Added S parameter to M997 command for DuetNG
Increased file read block size to 2K when getting file info
2016-04-10 21:50:16 +01:00
David Crocker
818e14f984 Version 1.10+4
Updated with chrishamm's latest Network, Webserver and PrintMonitor
module changes
2016-03-30 13:29:13 +01:00
David Crocker
4250e2dc54 Version 1.10
Added chrishamm's DHCP fixes
2016-03-24 10:33:15 +00:00
David Crocker
68068e97ba Version 1.09z-rc1
Merged in chrishamm's latest changes
Implemented firmware retraction
2016-03-23 14:53:50 +00:00
David Crocker
4fb3bcb254 Version 1.09x release
Eliminated module SamNonDuePin because its functions are now provided in
CoreDuet
Use updated emac module in CoreDuet
2016-03-13 12:58:56 +00:00
David Crocker
8d99d640b8 Version 1.09x-beta3
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
2016-03-11 18:03:41 +00:00
David Crocker
206f85c690 Version 1.09t beta 2
Got rid of most of module SamNonDuePin because CoreDuet now provides the
required functionality
No need to define function watchdogSetup any more because the core no
longer calls it
2016-03-10 14:10:48 +00:00
David Crocker
13ad2ba6e4 Switched to new build system
Switched to the new build system that doesn't need the Eclipse Arduino
plugin and uses the CoreDuet project instead of Arduino to provide
hardware support
2016-03-09 16:38:18 +00:00
David Crocker
bac9eb516e Version 1.09s beta 4
Enhancements:
- Implemented M143 and M350
- Wait until movement finished when processing M906
- Allow for additional axes in M906 reporting code
- Added support for external drivers module
- Aux2 device support is now conditional
- Added separate error code for temperature above safety limit
Bug fixes:
- Fixed spurious error report when processing corrupt input line
- When there is a temperature error, return the correct error code
- Update the overheat ADC value when changing thermistor parameters
- Fixed occasional divide by zero problem in PrintMonitor that led to
AJAX errors
- Cold extrusion prevention only checks the active tool, to allow the
same extruder and heater to be configured in multiple tools
- If extrusion is prevented because of a temperature fault, display a
message instead of silently preventing extrusion
2016-03-09 14:34:01 +00:00
David Crocker
e8ed4e38d4 Renamed binary 2016-01-16 23:12:19 +00:00
David Crocker
f5c4bdc770 Version 1.09r
Added timeout to output buffers destined for USB
Fixed bugs in thermocouple code
Reallocated thermocouple pin numbers
Made Roland mill and inkjet support conditional and normally disabled
Fixed issue with thermocouple code messing up the timekeeping system,
which was suspected of causing the network to be unreliable
Added support for M577 (thanks chrishamm)
2016-01-16 23:10:36 +00:00
David Crocker
4a1072a8e7 Version 1.09q-alpha3
Merged in chrishamm's changes including OutputBuffer fix, changes to
Roland pin numbers, rr_configfile support in web server, and Roland and
inkjet pin numbers moved to Pins_duet.h
Merged in wrangellboy's http response changes for compatibility with
Edge browser
Other minor changes
2016-01-16 14:35:31 +00:00
David Crocker
0636efee40 Version 1.09p-alpha2
Fixed issue with rare missing steps at the end of delta moves
Fix minor delta calibration issue
Fix issue with ADC crosstalk on Duet 0.8.5
Refactored RepRap and OutputBuffer classes in preparation for fixing the
OutputBuffer bugs
2016-01-10 22:04:30 +00:00
David Crocker
4ae868f77c Withdrew version 1.09o binary
Withdrew version 1.09o binary, pending fixes to prevent network
disconnects
2016-01-07 19:45:19 +00:00
David Crocker
96e8d2010b Minor updates
Added chrishamm's FTP fix
Fix spurious extra command word in http parser
Minor improvements to Heat and PrintMonitor
2015-12-31 12:28:35 +00:00
David Crocker
f9d4dec31a Updated binaries 2015-12-27 21:09:19 +00:00
David Crocker
3a0e7b87de Fixed version message
Changed version message from 1.09m-beta3-dc42 to 1.09m-dc42
2015-12-08 20:28:18 +00:00
David Crocker
6525a46a52 Version 1.09m
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
2015-12-06 22:12:31 +00:00
David Crocker
efe13ef2f1 Version 1.09k
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
2015-09-20 15:14:00 +01:00
David Crocker
b4b82c6546 Version 1.09j
Bug fix: Pause function sometimes used to hang while running pause macro
file
Don't wait for all moved to complete when executing a G92 command that
just resets extruder positions
M574 endstop configuration now overrides M558 when determining whether
or not to use the Z probe instead of a homing switch
Added XYZ parameters to M667 command to support CoreXZ etc. machines
with paired axis ratios that are not 1:1
Minor change to step ISR to improve timings and service drives in
round-robin order
2015-09-06 14:10:42 +01:00
David Crocker
a996c7ec4f Version 1.09i
Added support for Duet 0.8.5 with auto detection between 0.6 and 0.85
board types
Added P parameter to M115 command to set board type
Changed M115 output to report the board type that was configured or
auto-detected
Improved ISR and step pulse generation efficiency to allow higher
movement speeds, especially wheh using 0.9deg/step motors
Added XYZE parameters to M569 command to allow driver remapping
Added R parameter to M569 command to allow enable signal to be reversed
when using external drivers (thanks dnewman)
Removed M558 R parameter because boare type 0.7 can now be set via M115
instead
Moved Fan0 RPM sense pin to PA14 to avoid conflict with Duet 0.8.5 FAN1
pin
M408 poll command can now be handled concurrently with other commands
2015-09-02 19:33:28 +01:00
David Crocker
13c1fc77fb Version 1.09h
Improved step ISR and related functions to improve maximum delta
movement speed and prepare the ground for new pressure advance
algorithms
2015-08-25 21:28:43 +01:00
David Crocker
ea9921fe92 Version 1.09grc1
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).
2015-08-23 08:47:30 +01:00
David Crocker
87980e2966 Version 1.09f
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
2015-08-22 11:01:28 +01:00
David Crocker
d971c6c000 Version 1.09e
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)
2015-08-10 19:31:25 +01:00
David Crocker
68cd21c99c Release 1.09d
Enabled gcc compiler warnings. Fixed over 100 warnings including at
least one actual and several potential bugs.
Simplified delta calibration code and added X and Y parameters to M665
command
Implemented chamber temperature commands (thanks chrishamm)
2015-07-31 12:31:05 +01:00
David Crocker
e9f876f0a4 Version 1.09c
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
2015-06-26 21:24:39 +01:00
David Crocker
bb8a2c3ef7 Version 1.09b
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
2015-06-14 20:15:36 +01:00
David Crocker
4cc0a512b4 Version 1.09a
Merged in zpl's latest changes to Network and Print Monitor modules,
providing DHCP and Netbios name support
Added command M999 S4321 to unlock flash memory, reset and boot to BOSSA
port
Z dive height is now relative to Z probe trigger height and default is
reduced to 3mm
Added experimental support for acoustic probe for delta printers
Bug fix: firmware once again prevents Z homing before X and Y are homed,
if the Z probe is used for Z homing
Various code tidying
2015-05-17 21:06:39 +01:00
David Crocker
2fad987ac4 Corrected binary file name and deleted old binaries 2015-04-19 17:07:45 +01:00
David Crocker
29185f7f68 Version 1.00f
Speed factor and extrusion factor changes now take effect 1 move earlier
Default feed rate after reset increased to 3000mm/min
M574 command now accepts E parameter to that active low Z probe switches
can be used
Bed compensation is cancelled if Z probe was already triggered at the
start of a probe
M20 S2 response now flags directories with a * prefix
M408 command introduced as an alternative to M105 S2 and M105 S3
When cold extrusion is prevented, say which tool was affected in the
error message
Bug fix: if a drive was turned off manually after going into idle mode,
when it was enabled again the current remained at 30%
Bug fix: cold extrusion prevention did not work
2015-04-19 17:04:55 +01:00
David Crocker
9d0cfcf76d Version 1.04e
Fixed bed probing issue in version 1.04d
Aux port now requires checksums by default
2015-04-09 12:30:16 +01:00
David Crocker
73b2820738 Removed 1.04d binary
Removed 1.04d binary because of a problem with bed compensation
2015-04-08 21:13:09 +01:00
David Crocker
6e0f113927 Version 1.04d
Tidied up delta auto-calibration code. We now use least squares for 3,
4, 6 or 7-factor calibration.
When doing delta calibration, if a probe offset was used to adjust the
head position when probing, use the actual head coordinates instead the
probed coordinates.
Bug fix: newline was missing at end of SD card file list sent to USB
when in Marlin emulation mode.
Bug fix: Heater average PWM report (M573) sometimes gave inaccurate
values when the S parameter was used.
2015-04-08 18:03:59 +01:00
David Crocker
52b21d0eed Version 1.04c
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
2015-04-02 20:19:17 +01:00
David Crocker
3eae342072 Version 1.04b
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
2015-03-24 12:11:06 +00:00
David Crocker
8c39bd0fcf Version 1.04a
Fixed bug: when uploading to SD card via USB the file was printed
immediately
Merged RRP's 1.04 changes in, except that the fan output is only turned
on/off for extruding/non-extruding moves if the ancilliary PWM is set to
a nonzero value
2015-03-21 14:44:53 +00:00
David Crocker
31adc97abf Version 1.00q
Corrected case of geometry string passed to PanelDue
Added stepper motor idle mode
Added experimental 6-point Delta calibration
2015-03-19 18:10:20 +00:00