From a0952665d18dda49690ab4f2a734a083ad17dc60 Mon Sep 17 00:00:00 2001 From: dc42 Date: Fri, 13 Dec 2019 09:29:27 +0000 Subject: [PATCH 1/3] Updated whatsnew for 2.05 --- WHATS_NEW.md | 30 +++++++----------------------- 1 file changed, 7 insertions(+), 23 deletions(-) diff --git a/WHATS_NEW.md b/WHATS_NEW.md index fe3bbb3915..3dbc75ac5c 100644 --- a/WHATS_NEW.md +++ b/WHATS_NEW.md @@ -1,42 +1,26 @@ Summary of important changes in recent versions =============================================== -Version 2.05RC2 -=============== +Version 2.05 +============ Compatible files: - DuetWiFiServer 1.23 - DuetWebControl 2.0.4 (recommended) or 1.22.6 -Upgrade notes from version 2.04 or 2.05RC1: -- If using this relesse to control a laser cutter or laser engraver, see "Changed behaviour" below. +Upgrade notes from version 2.04: +- If using this release to control a laser cutter or laser engraver, see "Changed behaviour" below. Changed behaviour: - In laser mode (M453), M3 never turns on the laser immediately. Instead it sets the default laser power for following G1/G2/G3 commands. Likewise, M5 does not immediately turn off the laser, it sets the default laser power for following G1/G2/G3 commands. If a subsequent G1 command has a S parameter, the value of that parameter becomes the default laser power for that command and subsequent G1/G2/G3 commands. - -Bug fixes: -- 2.05RC1 was not compatible with Duet Web Control 2.0.x. This has been fixed. -- In laser mode, M3 and M5 commands used in a job gave unpredictable results - -Version 2.05RC1 -=============== -Compatible files: -- DuetWiFiServer 1.23 -- DuetWebControl 1.22.6 - -Known issue: -- This release is not compatible with Duet Web Control 2.0.x. Please either use Duet Web Control 1.22.6 or wait for firmware release 2.05RC2. - -Upgrade notes: -- See the known issue above. - -Changed behaviour: - Current position is no longer shown for pulse-type filament monitors, because it was meaningless and nearly always zero - Calibration data for pulse-type filament monitors is no longer displayed by M122 (same as for laser and magnetic filament monitors). Use M591 to report the calibration data. +- The rr_config HTTP response and M408 S5 response now include new field "sysdir" which gives the system files directory set by M505. This will allow future versions of Duet Web Control to fetch the height map from the correct folder after running G29. Bug fixes: +- In laser mode, M3 and M5 commands used in a job gave unpredictable results - If a print that was sliced using absolute extrusion mode was resurrected, unwanted extrusion occurred just before the print was resumed - Bed compensation did not take account of the XY offset of the printing nozzle from the head reference point -- When using SCARA kinematics the calculation of the minimum achoievable radius was incorrect. Depending on the B parameter of the M667 command, this could result in spurious "Intermediate position unreachable" errors, or non-extruding G1 moves being turned into G0 moves. +- When using SCARA kinematics the calculation of the minimum achievable radius was incorrect. Depending on the B parameter of the M667 command, this could result in spurious "Intermediate position unreachable" errors, or non-extruding G1 moves being turned into G0 moves. - A badly-formed GCode file that returned the layer height or object height as nan or inf caused DWC to disconnect because of a JSON parse failure - M579 scale factors were not applied correctly to G2 and G3 arc moves - Spurious newlines were sometimes sent to USB and other output channels when commands such as M106 were deferred to execute in step with movement commands, or when commands were executed in response to triggers From 2548ca0423f2c57da618d1a563dfd5d9306539f1 Mon Sep 17 00:00:00 2001 From: dc42 Date: Fri, 13 Dec 2019 11:09:19 +0000 Subject: [PATCH 2/3] Update WHATS_NEW.md --- WHATS_NEW.md | 1 + 1 file changed, 1 insertion(+) diff --git a/WHATS_NEW.md b/WHATS_NEW.md index 3dbc75ac5c..d78ca4d5a7 100644 --- a/WHATS_NEW.md +++ b/WHATS_NEW.md @@ -25,6 +25,7 @@ Bug fixes: - M579 scale factors were not applied correctly to G2 and G3 arc moves - Spurious newlines were sometimes sent to USB and other output channels when commands such as M106 were deferred to execute in step with movement commands, or when commands were executed in response to triggers - Messages sent to USB and Telnet output channels did not always time out when the channel became unavailable for writing +- Added check for W5500 reporting received data too big to fit in a single buffer Version 2.04 ============ From 702e46ebc1cafac384cb1a1248924a8f4e659e14 Mon Sep 17 00:00:00 2001 From: David Crocker Date: Fri, 13 Dec 2019 11:53:35 +0000 Subject: [PATCH 3/3] Version 2.05 final Added "sysdir" to rr_config response Check for invalid data length when reading from W5500 --- src/Networking/W5500Ethernet/W5500Socket.cpp | 4 ++-- src/RepRap.cpp | 8 ++++++++ src/Version.h | 6 +++--- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/Networking/W5500Ethernet/W5500Socket.cpp b/src/Networking/W5500Ethernet/W5500Socket.cpp index e07ce8ce73..54804c02ab 100644 --- a/src/Networking/W5500Ethernet/W5500Socket.cpp +++ b/src/Networking/W5500Ethernet/W5500Socket.cpp @@ -247,11 +247,11 @@ void W5500Socket::Poll(bool full) } } -// Try to receive more incoming data from the socket. The mutex is alrady owned. +// Try to receive more incoming data from the socket. The mutex is already owned. void W5500Socket::ReceiveData() { const uint16_t len = getSn_RX_RSR(socketNum); - if (len != 0) + if (len != 0 && len <= NetworkBuffer::bufferSize) { // debugPrintf("%u available\n", len); NetworkBuffer * const lastBuffer = NetworkBuffer::FindLast(receivedData); diff --git a/src/RepRap.cpp b/src/RepRap.cpp index b9913d5673..b29c826543 100644 --- a/src/RepRap.cpp +++ b/src/RepRap.cpp @@ -1597,6 +1597,14 @@ OutputBuffer *RepRap::GetConfigResponse() response->catf(",\"firmwareDate\":\"%s\"", DATE); + // System files folder + { + String sysdir; + platform->GetSysDir(sysdir.GetRef()); + response->catf(", \"sysdir\":"); + response->EncodeString(sysdir, false); + } + // Motor idle parameters response->catf(",\"idleCurrentFactor\":%.1f", (double)(platform->GetIdleCurrentFactor() * 100.0)); response->catf(",\"idleTimeout\":%.1f", (double)(move->IdleTimeout())); diff --git a/src/Version.h b/src/Version.h index be51b691ca..add10d715f 100644 --- a/src/Version.h +++ b/src/Version.h @@ -11,16 +11,16 @@ #ifndef VERSION #ifdef RTOS -# define MAIN_VERSION "2.05RC2" +# define MAIN_VERSION "2.05" #else -# define MAIN_VERSION "1.26RC2" +# define MAIN_VERSION "1.26" #endif # define VERSION MAIN_VERSION #endif #ifndef DATE -# define DATE "2019-12-08b1" +# define DATE "2019-12-13b1" #endif #define AUTHORS "reprappro, dc42, chrishamm, t3p3, dnewman, printm3d"