Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Duet3D/RepRapFirmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-07-16More work on PCCB supportDavid Crocker
Support TMC22xx drivers with independent UARTs Support more thermistors than heaters Support configurations with no aux port Support multiple fan tacho inputs (move tacho support to a separate class) Corrected error in tacho RPM calculation
2018-07-14Merged in chrshamm's changedDavid Crocker
Merged in chrishamm's changes to support fan naming and additional status information
2018-04-10Again more RTOS workDavid Crocker
Use our own version of vsnprintf to save stack and avoid needing to stop scheduler during calls to it G0 now moves at maximum travel speed and ignores F parameters Fixed problem with doing G20 after loading or probing a height map with a significant Z offset Added chrishamm's spindle and fan map changes Added type 10 Z probe which uses Z motor stall detection Don't need to home any more before simulating a file Update user coordinates after G10 is used to change tool offsets Don't require both X and Y or both I and J parameters to be specified in G2/G3 commands
2018-04-02More RTOS workDavid Crocker
Got rid of the global scratchString Rationalised some String and StringRef functions Bug fix: if a motor stall triggered a pause, the driver numbers were not listed in the message Fixed possible race conditions in TMC2660 driver,
2018-03-21Release 1.21David Crocker
New features and changed behaviour: - Report spindle motor speed in rr_status and M408 reports - M106 now also reports the current fan PWM for thermostatically-controlled fans - Machine coordinates are always used when running system macros automatically Bug fixes: - Pulse-type filament monitors are now working - WiFi sockets whose connections abort are now terminated to make them available for re-use - DWC Machine Properties page shows the correct state of active low endstops
2018-03-16Version 1.21RC5David Crocker
New features: - New M569 T parameter options to specify step pulse width, step pulse interval, direction setup and direction hold times - M665 now sets the M208 limits (except Z min) to match the machine limits, so that Duet Web Control reports the correct values Bug fixes: - M116 commands were sometimes executed out-of-order relative to previous G10 commands if movement commands were in progress - G10 L20 now computes the workplace coordinate origin correctly - G53 is only active until the end of the current line of GCode - The default coordinate system is the one selected by G54 - G54..G59 update the user coordinates immediately - Fixed "Error: Pop(): stack underflow!" when a file or macro is terminated due to an illegal move command - A short delay is inserted when M558 is used to change the Z probe type, to allow the averaging filters to accumulate the new data - M291 messages which are non-blocking (i.e. mode < 2) are now synchronised to queued moves, like M117 messages Other changes: - Duet Web Control and PanelDue now report the coordinates relative to the origin of the current workplace - Rewrote dhcp_rec function on Duet06/085 to avoid goto statements (possible fix for startup problem when using DHCP)
2018-02-04Towards 1.21RC2David Crocker
Refactored some string handling Fixes for Duet 2M
2018-01-22Version 1.21RC0David Crocker
Fix stepper driver warning/error messages Reduce SPI speed on Duet Ethernet M350 Enn with just one E value given is now applied to all extruders Corrected nonlinear extrusion steps calculation Refactored the filament monitor support Added laser filament monitor support Added pulse-type filament monitor support Corrected display of M574 endstop type when the type is active low Added support for extruder "endstops" using motor load detection M305 Pn with no other parameters no longer allocates a thermistor to the heater
2017-12-13Version 1.20RC1David Crocker
New features: - Heater PWM frequencies are limited to 1kHz to protect the heater mosfets - Tool offsets and fan mapping are now passed to DWC - More free memory is available, especially in the Duet 0.6/0.8.5 build - Maximum bed heaters increased to 4 for the Duet WiFi/Ethernet - The software reset data now records the date/time of the reset if known and a longer stack trace - The maximum length of GCode commands has been increased, in particular to allow long passwords in M587 commands Bug fixes: - Fixed M28/M29 file upload - Fixed some USB/Telnet response formats when in Marlin emulation mode - Fixed move timing when a long slow printing move follows a faster printing move - Heater tuning was not possible in 1.20RC1 - If a file being printed executed a macro right at the start, DWC could assume that the print had already finished (thanks chrishamm)
2017-12-09Version 1.20RC1David Crocker
New features: M109 and M104 commands now set both the active and the standby temperatures of the tool. M109 now only selects a tool if no tool was selected Filament errors are now logged M587 now checks that the password is either empty or is at least 8 characters long M122 now includes the minimum and maximum StallGuard registers for each driver seen since the last M122 command M307 now accepts an F parameter to allow the PWM frequency to be set. Caution: do not use excessively high PWM frequencies, especially with the bed heater, because you may overheat the mosfets. The calculation of PID parameters from the heater model has been changed to provide faster heating and less risk of undershoot The M81 command now accepts an optional S1 parameter, which defers the power down until al thermostatic fans have stopped SD card detection is now working properly (Duet WiFi/Ethernet only) A file that is open on the SD card can no longer be deleted Bug fixes: M109 commands could cause unwanted head movement when no tool change was required If a filament error occurred more than one, the print would be paused each time but a message box would only be displayed the first time If a new request arrived but no responder was available, there was no timeout waiting for a responder (thanks chrishamm) Z probe types 5 and 8 didn't work on Duet 085 M500 didn't save axis lengths found by G1 S3
2017-12-02Version 1.20beta11+2David Crocker
Merged in changes from dev branch
2017-10-26Version 1.20beta2David Crocker
New features: On SCARA printera arm position limits are applied as well as XY size limits Heater 0 values are sent to to PanelDue even if there is no heated bed When logging is enabled, log entries are now written for when the date/time/date is set When logging is enabled, "Maximum open file count exceeded" messages are logged Loss of power is now handled much faster. The print is paused in the middle of a move if necessary. The M991 parameters are changed to facilitate this. When resuming a print after loss of power, the head is now moved, sideways and finally down when restoring position Following a power failure, M916 can now be used to resume the print instead of using M98 Presurrect.g The heater control now switches to fast PID parameters when the temperature is within 3C of target, instead of within 1C The TMC2660 Stallguard detection and Coolstep parameters may now be configured using M915. Currently, no action os performed when a stall is signalled. If a heater fault occurs, the print is paused instead of cancelled All error messages relating to incorrect use of a G- or M-code now include the G- or M-number of the command that caused them Increased ADC oversample bits to 2 Duet WiFi: M122 diagnostics now include the wifi module sleep mode and additional network diagnostics You can now disable monitorng of TMC2660 drivers rthat are not in use by using parameter R-1 in the corresponding M569 command The M585 (probe tool) command is now implemented (thanks chrrishamm) If axis lengths are adjusted by probing, a subsequent M500 command saves them in config-override.g If tool offsets are adjusted by probing, a subsequent M500 command saves them in config-override.g The layer counting mechanism has been modified to better handle GCode files that use a different layer height when printing support Debug messages sent to the USB port are truncated or thrown away if a software watchdog reset is imminent XY speed limiting is now done separate for each kinematics, in particular for CoreXY printers Support for Polar kinematics has been added but not tested (see M669 command) The TMC2660 drivers are configured to detect short-to-ground conditions faster The parameters in rr_ http commands are now all order-independent Bug fixes An error in computing the time taken to execute moves that were not yet frozen caused the first movement on a SCARA printer following homing to be jerky An extra space in the output from the M114 command confused Printerface, causing it to print exception messages When tuning a heater, any previous maximum PWM that was set is now ignored
2017-10-02Version 1.20beta1David Crocker
Added support for M3, M4, M5 and M450-M453 Added support for DHT11, DHT21 and DHT22 temperature/humidity sensors (thanks chrishamm) Some additional events are now logged The grid defined by M557 is now stored separately from the grid loaded by G29 S1 so that they don't overwrite each other The resurrect.g file is no longer created or deleted during a simulated print SCARA prints are simulated without segmentation so that the simulation runs much faster. In tests, the difference in the simulation time with/without segmentation was negligible. The change to fast PID parameters is now made when the temperature is within 3C of the target instead of when within 1C M408 S1/2/3 responses now include dummy values for the bed heater if there is no bed heater The commands to resume printing that are written to resurrect.g now move the head to 2mm above the printing height, then sideways, then down Bug fixes: If a Duet3D filament sensor was connected and congfigured but flashing an error code instead of sending filament data, the error recovery code running on the Duet caused short pauses in the print On a delta printer if you created additonal axes, when you tried to home them it ran homedelta.g instead of e.g. homeu.g On a delta printer with additional axes, you can now do XYZ moves as soon as the towers have been homed Fixed a possible race condition if the time and date were set at midnight The 4-leadscrew auto/4-screw manual bed levelling code didn't work properly The P parameter was missing from G10 commands written to resurrect.g Arm angle limits are now applied when converting Cartesian to SCARA coordinates The correction limit is no longer applied when computing manual bed levelling screw corrections SCARA arm mode changes are now only permitted in uncoordinated (G0) moves
2017-09-24Version 1.20alpha4David Crocker
We now create a resurrect.g file any time the print is paused Introduced new feature #defines and a DUET_06_085 define to simplify conditoinals that depend on the target board
2017-09-22Version 1.20alpha3David Crocker
Upgraded compiler Floading point constants now default to single-precision Changed to hardware floating point ABI on Cortex-M4 targets
2017-08-01Towards 1.19beta12David Crocker
Homing functionality is now handled by the Kinematic classes. SCARA homing is supported. Added support for binary file upload in M559 and M560 Added support for an additional SX1509B port expander Pause commands issued while a macro is being executed are deferred until the macro has completed and they can be resumed Bug fix: XYZ coordinates could be reported as NaN in DWC status responses, causing AJAX errors Axis compensation now takes account of X and Y axis mapping Messages rejected by webserver now generate a generic message only if debug is enabled More work on filament sensor support
2017-07-11Version 1.19beta9David Crocker
New and changed features: - Experimental resume-after-power-failure support on Duet WiFi/Ethernet. See https://duet3d.com/wiki/Setting_up_to_resume_a_print_after_a_power_failure. - Partly implemented bed levelling using multiple independent Z motors (M671). See https://duet3d.com/wiki/Bed_levelling_using_multiple_independent_Z_motors. - If the G10 command is used to set the standby temperature of a tool that is on standby, the live temperature is adjusted accordingly - SCARA parameters configured using M669 now include X and Y bed origin offsets - Baby stepping is no longer cleared when you home the printer or probe the bed - The Y axis can now be mapped in a similar way to the X axis - When the WiFi module is in access point mode, M122 displays the number of connected clients (needs DuetWiFiServer 1.19beta9) - The M305 command now uses the S parameter to set the heater name instead of the H parameter - The meaning of the first M669 crosstalk parameter for a SCARA printer has changed. A zero value now means that the proximal motor does not affect the proximal-to-distal arm angle. - The CoreXY kinematics calculations have been changed to conform to the way they are defined in other firmwares and at CoreXY.com. See the important upgrade notes. The CoreXZ and CoreXYU kinematics have been changed similarly. - The maximum allowed target temperature for auto tuning now depends on the configured maximum temperature for that heater - The heater gain that provokes a warning when setting heater model parameters with M307 or after auto tuning now depends on the configured maximum temperature for that heater Bug fixes: - G2 and G3 arc movement commands didn't work when the X axis was mapped - On an IDEX machine there was unwanted movement of the new tool after a tool change occurred - Duet WiFiServer 1.19-beta9: fixed a bug that sometimes caused WiFi connection failures - On the Duet WiFi, if the own access point parameters were configurds but the list of remembered host access points was empty, the own access point name appeared in the remembered list displayed by M587 - On a SCARA mnachine, sending G92 X0 Y0 caused the Duet to return position data containing NaNs to Duet Web Control, which caused it to disconnect Upgrade notes: - **Important!** On a CoreXY machine, you need to either swap the X and Y motor connections, or set the Y axis factor to -1 in the M667 command. Similarly for CoreXZ and CoreXYU machines.
2017-06-11Version 1.19beta6David Crocker
Refactored temperatyure sensor code Refactored fan control code Support invisible axes (M584 P parameter) Supprt user-defined virtual heaters Support heater names Support proportional thermostatic fan control Fix G10 retraction command Removed delta probe code
2017-05-28Verison 1.19 beta 2David Crocker
Improved reliability of new interface to WiFi module Added options to control thermostatic fans based on CPU and driver temperatures Support M204 S parameter for backwards compatibility Fixes to Scara kinematics Support additional axes on delta printers Added extra info to M122 repoirt
2017-05-09Version 1.19.2David Crocker
Major refactoring to make it easier to support additional kinematics. Added M669 command to select and configure Scara kinematics
2017-01-03Version 1.17aDavid Crocker
Homing speed: - The speed factor (M220 command, or speed control in DWC and PanelDue) no longer affects the speed of homing moves or other special moves (i.e. G1 commands with S1 or S2 parameter) Bug fixes: - Fixed the M120 (Push) command - Setting relative extruder movement (M83) or a feed rate (G1 Fxxx) in config.g now works again - The F (feed rate) parameter is now processed correctly on a G1 command with the R parameter - If you used M106 to change a fan PWM frequency, the change did not take place until you next changed the speed - On boards with SAM3X processors, due to a chip bug the fan speed was sometimes incorrect if you changed the PWM frequency - If an http client requested a non-existent file that was not an HTML file, the server incorrectly returned a 404 HTML page
2016-12-25Reduced header file couplingDavid Crocker
Restructured the header file inclusion so that the .cpp files are dependent on fewer header files, resulting in less recompilation when most header files are changed
2016-12-09Version 1.17dev8David Crocker
Fixed bugs related to grid bed compensation and M571 in 1.17dev7 version Software reset code storage/retrieval now works on Duet WiFi Removed max average printing acceleration parameter M571 now accepts F parameter to set the PWM frequency M106 now shows if fan is disabled
2016-11-05Version 1.16rc2David Crocker
Fixed several bugs in file time stamping Fixed M280 and M42 commands using unused heaster channels on Duet 0.6 and 0.8.5 Reduced the amount of I2C traffic, by using DueX5 interrupt line to tell if new data is available and by only sending fan PWM values when they change Display TMC2660 driver status and DueX2/X5 stall status in M122 response Removed E parameter from M574 command (use M558 I parameter instead) Fixed response to M307 with H parameter only
2016-10-28Version 1.16 beta 10David Crocker
Added DueX2/DueX5 support Report expansion board type in electronics string Added Z probe type 6 (switch on E1 stop) Support heater 6 on Duet 0.8.5 (untested, probably incomplete) Changed M42 pin numbering, see duet3d.com wiki Added M280 servo support Allow separate firmware un-retract speed to be configured in M207 Allow negative extra un-retraction in M207 Allow dans ot be disabled yusing M106 P# I-1. They can then be used as general-purpose pins (m42) or servos (M280). Removed support for Duet WiFi prototype 1 board Support expanson pin PB6 and use it for cooling fan tacho
2016-10-19Version 1.16 beta 2David Crocker
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
2016-08-10Version 1.15 beta 6David Crocker
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
2016-07-02Version 1.14David Crocker
- 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