Commit graph

60 commits

Author SHA1 Message Date
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
aa7bac3cc0 Merged in Dan's thermocouple support
Merged in Dan's thermocouple support
Define serial port allocation in Pins_duet.h
Fixed some leaks of OutputBuffer objects under error conditions
The terminating newline character in a gcode response is now added in
HandleReply
2015-12-30 13:11:56 +00:00
David Crocker
611620d689 Version 1.09o-dc42
Implemented F, H and R parameters to M106 command. The second fan output
on a Duet 0.8.5 now defaults to being a thermostatic fan at power up.
Improved speed of file upload to SD card
G32 is now allowed if the printer has not been homed, if there is a
bed.g file
G30 commands are no longer allowed on a delta that has not been homed
M572 parameter P (drive number) replaced by parameter D (extruder
number)
File info requests are now processed in stages to reduce impact on
printing (thanks chrishamm)
Use latest network stack and webserver modules from chrishamm (thanks
chrishamm)
Added Roland mill support (thanks RRP/chrishamm)
Added S parameter (idle timeout) to M18 ans M84 commands (thanks
chrishamm)
Moved I/O pin assignments to separate Pins.h file to more easily support
alternative hardware (thanks dnewman)
Bug fix: filament usage and % print complete figures were incorrect when
absolute extruder coordinates were used
Bug fix: file-based print estimate was occasionally returned as 'inf'
which caused the web interface to disconnect
Bug fix: M666 now flags all towers as not homed
Bug fixes to extruder pressure compensation (M572 command).
2015-12-27 21:04:02 +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
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
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
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
David Crocker
e990e2af1e Version 1.00l
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
2015-02-27 00:20:05 +00:00
David Crocker
7fb8f47424 Version 1.00h
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
2015-02-11 22:50:34 +00:00
David Crocker
de99a709a9 Merged changes from Delta branch 2015-01-24 12:53:29 +00:00
David Crocker
52b78a8f8b Minor changes 2014-12-13 15:37:11 +00:00
David Crocker
19d8e625ea Implemented M105 S1 command 2014-11-10 12:52:25 +00:00
David Crocker
183f760fb1 Various
Saved Windows project settings for Eclipse
Source code changes to work with later versions of gcc
2014-10-24 11:52:45 +01:00
David Crocker
46d78148b0 Version 0.78j
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
2014-08-17 22:14:33 +01:00
David Crocker
57704f033b Merge RRP's 0.78 version and my 0.65k version 2014-07-06 19:57:21 +01:00
Adrian Bowyer
2b96c2b6f6 Version 0.78
Release.
2014-07-03 13:10:36 +01:00
David Crocker
4eaeac108b Merged in zpl's changes for FTP and Telnet 0.65k)
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.
2014-06-28 18:21:01 +01:00
David Crocker
73724a4b9a Merged RepRapRro's 0.65e version in
Merged changes (mostly to handle multiple tools i.e. extruders) from
RRP's 0.65e version.
2014-06-04 17:39:36 +01:00
David Crocker
8464b5bfac 059d-dc42 release
1. Reworked network layer to be more robust in the presence of network
errors (hopefully). In particular, don't release transmit buffers if
they might still be needed to retry sending data because the ACK got
lost.
2. Fixed bug whereby fileinfo command looked for the print height and
filament used if the extensio was .gcode or .gc or .gco but not if it
was .g.
3. When the M25 (pause print) command is received, pause the current
gcode so that commands such as M116 (wait for temperatures) can be
interrupted.
2014-05-29 23:14:55 +01:00
David Crocker
a416c367d2 Various bug fixes and enhancements (version 0.59a)
Fixed bug whereby incoming gcodes were URI-decoded twice, which could
cause problems if a comment contain a % character
Fixed bug whereby M109 and M190 waited for all heaters to reach target
temperature instead of just the one involved
Fixed bug whereby files whose names contain an uppercase letter G could
not be uploaded or deleted
Increase buffer size for incoming gcodes
Removed parameter to set max PWM value in M106 command. Max PWM value is
now 255 as per recent RepRapPro change.
Changed the code that deals with dropping characters in unimportant
messages sent to USB such that we only drop characters at the end of a
line (adding ".\n" to whatever we send) or drop whole lines
2014-05-14 22:04:14 +01:00
Jean-Marc Giacalone
ecb93ffcf6 Merged version065 from duet branch. 2014-04-24 21:44:16 +01:00
Adrian Bowyer
a44da7774a Bit of tidying... 2014-04-11 21:49:12 +01:00
Adrian Bowyer
61ea528fba Tool class created. This will allow tool definitions with multimple drives and heaters. Blank for the moment... 2014-04-11 16:31:06 +01:00
David Crocker
009a2045d0 Concurrent HTTP connection support & more
Completed changes to support multiple concurrent HTTP file requests.
Added support for new poll response for future support of additional
heaters and multiple extruders. Fixed a bug in reporting extruder
distance.
2014-04-08 13:20:06 +01:00
David Crocker
68e6ed2575 Preliminary version for serving all files for Duet
Changed webserver and network code to support multiple concurrent
connections
Removed support for differential-mode ultrasonic z-sensor
Reduced X and Y instantDv from 15 to 10 mm/sec to allow outlines of
holes to e drawn at lower speed
Changed temperature reading code to give thermistor disconnected reading
of -273C when there is a negative high ADC offset correction
2014-04-06 22:50:24 +01:00
David Crocker
92fefbf598 Fixed G32 auto bed compensation
Fixed bug introduced at version 057o-dc42 that broke the G32 bed
compensation. Added the Z heights of the bed compensation points to the
information displayed by M111 S2. Simplified the code that does
Z-probing in fast and slow stages. Added function sncatf and used it to
simplify the code in several places.
2014-03-26 18:07:49 +00:00
Adrian Bowyer
1129fa218f Added in David Crocker's improvements (many thanks to him). 2014-02-11 11:23:28 +00:00
David Crocker
9edaed4ac1 Further improvements to web upload and tidy-up
Further improved web file upload speed
Dealt with Eclipse code analysis warnings
Made some more functions and parameters const-correct
2014-01-30 14:26:45 +00:00
David Crocker
16c20b1a93 Added ARRAY_SIZE macro 2014-01-29 15:28:07 +00:00
David Crocker
bdca3b1e5d Extend web functionality for iamburny's web interface
Added new fields "zprobe" and "resp" to webserver poll response
Immutable string parameters are passed as const char* not char*
Increase max number of files displayed to 42
Range-check heater parameters in incoming commands to avoid buffer
overflow if heater number is out of range
2014-01-21 21:07:21 +00:00
Adrian Bowyer
96818433c6 Making master branch the same as the duet branch. 2013-12-14 12:03:25 +00:00
Adrian Bowyer
971fed0d02 Temperature range checking added (see Configuration.h). If temps repeatedly
fall outside the set range, it assumes the thermistor is bust and turns off the heater.
2013-11-10 21:55:44 +00:00
Adrian Bowyer
e1601d7b3f Various bits of code tidying. Lookahead fixed to take account of bed transform (we can no longer assume that Z moves are strictly orthogonal to XY moves, and so their scalar product may be non-zero). All velocities are now in mm/s internally. The GCodes class is responsible for multiplying mm/min by 0.0166667. 2013-10-24 16:53:25 +01:00
Adrian Bowyer
3c901fb194 Further work on Z probing. One problem was working with a white-painted bed. Replacing that with ordinary Kapton-covered glass seems to work better. And that has allowed the debugging of the code. But the probe still does not always see the bed. 2013-10-21 23:09:21 +01:00
Adrian Bowyer
79c008d469 G31 modified to allow reporting of probe values, and setting of a Z value and threshold. (See http://reprap.org/wiki/G-code#G29-G32:_Bed_probing) 2013-10-20 22:48:26 +01:00
Adrian Bowyer
07d323a41d Setting up latest Due code to work on the Duet. 2013-08-28 16:36:38 +01:00
Jean-Marc Giacalone
e180f84007 housekeeping. 2013-08-06 10:59:36 +01:00
Jean-Marc Giacalone
982846e7e0 project into Eclipse. 2013-08-05 12:19:54 +01:00
Jean-Marc Giacalone
4bd3e98b13 merged due branch. working in Eclipse 2013-07-23 21:24:55 +01:00
Adrian Bowyer
c928771c75 Temperature polling added. 2013-06-17 22:18:39 +01:00
Adrian Bowyer
549d56c08d Acceleration code now completely general w.r.t. axis and (multiple
simultaneous) extruder moves.  Extruder relative mode has a bug - fix
tomorrow.  And so to bed...
2013-05-23 00:00:20 +01:00
Adrian Bowyer
82efa28c81 First crude hack at acceleration code. Timer claims that the interrupt
routine executes in 6.5 microseconds, so we shouldn't have any trouble
driving the steppers fast...
2013-05-21 21:22:12 +01:00
Adrian Bowyer
fb2bbc0504 Code tidying. 2013-05-21 11:30:25 +01:00
Adrian Bowyer
d2544d7fac Redundant PHP code commented out of firmware. 2013-05-11 00:28:54 +01:00
Adrian Bowyer
0a7af81dcf A little tidying... 2013-04-29 22:08:38 +01:00
reprappro
b23e6943a8 Skeleton of the GCode interpreter written. 2013-04-16 23:49:15 +01:00
reprappro
00ca902341 Making a start on the movement code. 2013-04-15 21:41:07 +01:00
reprappro
b207f31dc7 Messages webpage added with session log. 2013-03-04 21:56:42 +00:00
reprappro
31399c9efa Added Exit() functions to all classes. 2013-03-02 18:25:44 +00:00