-
Notifications
You must be signed in to change notification settings - Fork 235
Changelog DWC 3.x
There were no changes in this release. If you are upgrading from v3.4 or older, please read the next section.
Compatible versions:
- DuetSoftwareFramework 3.5.0
- RepRapFirmware 3.5.0
Upgrade notes:
- Accelerometer plugin is no longer included, so a warning on first load may show up. Use the Input Shaping plugin instead
- Internet Explorer 11 and probably older iOS/Safari versions are no longer supported
- It is highly improbable that plugins built for DWC v3.4 can be loaded with v3.5 due to an upgrade from Webpack 4 to 5
- All external DWC plugins targeting v3.4 will NOT work with v3.5
API changes:
- Added "auto-major" version placeholder to plugin buidl script to reference e.g.
3.5
instead of3.5.0
- Internal
download
action has got an extra parameter to flag if the file may be downloaded from the root web directory - External plugins in
src/plugins
are automatically included so they can be added as git submodules (but not when DWC core is built) - Added automatic import support for
dwc-src
subdirectory in plugin folders (preferred alternative tosrc
) - Added new Vuex machine action to perform custom HTTP requests for third-party plugins
- Users can now provide custom translation strings in the format
<i18n.key>#arg1(#arg2...)#
from RRF (echo, M291, etc)
New features:
- Files ending with .g.bak are now displayed with syntax highlighting
- E-STOP button can now be used even when a message box is open
- Syntax highlighting for menu files and board.txt file used on STM32 (thanks jaysuk)
- Support for HTTP session keys instandalone mode so the G-code reply shows up on all sessions from a single IP address
- Addition of new button to indent comments following G/M/T-codes in G-code files
- Introduced new setting to enable/disable the webcam using a switch
- Added Dutch translations
- Input shaping profiles show damping factor in list if applicable
- Code editor shows ruler at column 255 to indicate maximum G-code length
- Added support for recursive delete operations
- Implemented new dialog informing users about incompatible software versions (may be disabled in the settings)
- Added new context menu action to duplicate filaments (only applicable to
config.g
,load.g
, andunload.g
) - Dark theme and locale is applied depending on system settings on first DWC load
- Warning message is shown if no more than 5% free space is available upon connecting
- All software versions are enumerated on the Machine Settings page
- Ported every component to TypeScript
- Moved over to the new @duet3d/objectmodel TypeScript definition of the object model
- Upgraded all packages except Vue 2 and ChartJS to the latest versions (including Webpack 5)
- Multiple bed heaters can be grouped as a single one using a new machine-specific setting
- Added missing translations where applicable using i18n-ally
- Added new setting to customize auto-switching to the Job Status page on job start (thanks MintyTrebor)
- Added extrusion rate / volumetric flow rate (toggling between is possible by clicking on the label)
- Message boxes with confirmation can be dismissed again globally
- Added build time to the hover title of the Duet Web Control version on the settings page
Changed behaviour:
- Installing DuetWebControl.bin is no longer supported due to incompatibilities with new SBC update code
M997 S2
(Bookworm-based DuetPi only) - When RRF plugins containing
daemon.g
are updated, that file is renamed todaemon.g.bak
instead of deleting it - Previously reset faulted heaters no longer require a countdown
- Monaco editor is automatically disabled on mobile devices due to touch incompatibilities
- Auto-completion is disabled in the Monaco editor
- Local storage is automatically cleared if full
- Update object cancel dialogs to clearly define the action
- Error dialog is shown if the software versions are incompatible (major/minor version mismatch)
- Warning notification is shown if not all software versions are equal (patch version mismatch)
- Moved plugin menu items to the Plugins category
- Removed
M561
option from compensation menu - Replaced previous code editor with Monaco (same component as in VS Code) including new G-code highlighting
- Tools, beds, and chambers can be grouped as single items
- Added several new icons to the tools panel
- Plugins are loaded asynchronously to improve initial loading speed drastically especially in standalone mode
- In SBC mode
dsf-update.zip
containing .debs or single .deb files can be uploaded ifRootPluginSupport
is enabled inconfig.json
- When a start-up error occurs, it is now displayed as a notification and log item upon (re-)connect
- Volumetric flow is displayed by default in FFF mode
- "Connecting..." dialog is no longer persistent in PWA mode in case third-party plugins offer extra functionality
- When a file has been simulated, instead of simulating the file again the file can be started instead
Bug fixes:
- Fixed spurious JS error messages in the console caused by items in the tool/heater list
- Colons in filenames could result in file operation errors
- File edit dialog no longer asked for confirmation when closing after changes
- Downgraded monaco code editor due to incompatibilities with Chromium on Debian Buster
- Version check was partially broken in the install plugin dialog
- Upload button in mobile view was not round
- Code editor was not focused automatically when the editor opened
- Fixed alignment of axis position label in msgbox
- Fixed rendering bug affecting hangprinter anchors
- Fixed support for boards[].wifiFirmwareFileNameUpdating
-
move.axes
can be queried sequentially to support up to 30 configured axes - Refreshing the G-code filelist with only 1-2 files could lead to occasional update stalls
- Object model browser did not display referenced
<see cref="..."/>
properties -
M291 S4
with too many choices created a button row that did not wrap - Fixed minor gap between babystep buttons on certain screen sizes
-
daemon.g
is renamed todaemon.g.bak
before it is uploaded - Added some margin between the print control buttons
- Temperature chart may update only once per second which hopefully addresses unexpected slow-downs
- Input shaping plugin required invisible axes to be homed as well
-
DuetAPI.xml
(OM browser reference) is downloaded as a plain file from the root web directory - Added back missing code editor features like Ctrl+F search and F1 overlay
- Fixed syntax highlighting of variable names starting with capital letters
- File lists no longer refresh automatically while multi-file uploads are in progress
- Reset prompt did not show up if the machine remains halted
- Download as CSV/Text wasn't working under certain circumstances
- Fixed sorting in filaments dialog
- Fixed workplace number index in CNC UI
- Automatic saving of G/M/T codes from input fields was not working under certain conditions
- Fixed syntax highlighting for repeated G2/G3 codes (Fanuc-style) and for T-1
- OSK could overlap on the editor
- Filename parsing of damping factor was only partially working in the input shaping plugin (since 3.5.0-beta.3)
- Profile list of IS plugin could become excessively large
- Improved error handling if saving to local storage is not supported
- Fixed minimum of damping factor input in IS plugin
- Pause/Cancel buttons were not disabled when cancelling a print
- Default message box value was not updated correctly
- Minor fixes in the G-code syntax highlighting
- Input shaping selection with multiple boards was not working
- Line numbers could be truncated in very large files
- Thumbnail cache of subdirectories was cleared on refresh
- File list would not load completely if a file was deleted while fileinfo was obtained
- Fixed tool fan on the Job Status page
- Fixed control of bed and chamber heaters with diverging heater/slot numbers
- Fixed spurious G-code hangs in standalone mode
- Fixed display of driver IDs in the object model browser
- Message box for OK-only did not send
M292
- Extra sensor options did not relate to correct indices
-
default
property of message boxes did not allow correct type changes (e.g int -> string) - Error messages could start with two "Error" prefixes
- CNC movement panel did nnot display correct feedrates
- Fixed axis position display in CNC mode
- It is no longer necessary to run newer NodeJS versions with the
--openssl-legacy-provider
option - Changed text color of the selected node in the object model browser to white in dark mode
If you are upgrading from a version older than 3.4.0, please read the upgrade notes for 3.4.0 to 3.4.5 as well.
Compatible versions:
- DuetSoftwareFramework 3.4.6
- RepRapFirmware 3.4.6
New features:
- Updated various translations
- Added special i18n string formats for OEM substitutions
Bug fixes:
- Fixed length check in file edit dialog
- OSK could overlap the code editor
- Minor fixes for fileinfo caching
- Sorting on filaments dialog was not working correctly
If you are upgrading from a version older than 3.4.0, please read the upgrade notes for 3.4.0 to 3.4.4 as well.
Bug fixes:
- "Turn everything off" button could generate too long G-code potentially breaking this feature in standalone mode
If you are upgrading from a version older than 3.4.0, please read the upgrade notes for 3.4.0 to 3.4.3 as well.
New features:
- Last modified timestamps are now passed to file upload requests in SBC mode
Bug fixes:
- Timestamps in ISO8601 format did not contain leading zeros
If you are upgrading from a version older than 3.4.0, please read the upgrade notes for 3.4.0 to 3.4.2 as well.
New features:
- Empty file uploads must be confirmed (extra safety check to avoid potential issues with
config.g
)
If you are upgrading from a version older than 3.4.0, please read the upgrade notes for 3.4.0 and 3.4.1 as well.
New features:
- Added support for VSCode and for i18n-ally extension
- If rr_gcode returns a non-zero err value, the code is no longer awaited and a warning is printed (standalone mode)
- Updated Chinese translations (thanks ningjiazun)
- Updated Spanish translations (thanks ajtudela)
- Added Ukranian translations (thanks ctaras)
Bug fixes:
- Fix macro list icon size (thanks ctaras)
- Fixed some translations using new i18n-ally support
- Copy button on object model browser was no longer aligned
- Code input could exceed the maximum allowed buffer size in standalone mode (255 chars)
- Files with apostrophes in the filename were not correctly invoked
- Delete menu item showed up twice on the Filaments page
- Help links pointed to outdated documentation
- G-code viewer did not display temps correctly if the tool list contained gaps
- Fixed tool inputs for Chrome on Android
- Disabled translation prompt that showed up in Chrome browsers
If you are upgrading from a version older than 3.4.0, please read the upgrade notes for 3.4.0 as well.
New features:
- Added support for inch display units (thanks MZachmann)
Bug fixes:
- Added missing support for iOS 9 devices (yet untested)
- Disabled CodeMirror text editor for iOS devices due to selection bug
- Certain colours of the charts were not updated when switching to dark theme
- Webcam rotation/flip options were broken
-
Content-Type
header was incorrectly set in HTTP requests for Duets in standalone mode - Job progress did not use filament information if available
- Added missing values to the object model
- Custom move steps for extra axes (e.g. U, V) were not properly loaded from the settings
New features:
- Added Polish translations (thanks Chri55) and Japanese translations (thanks nyarurato)
- Greatly improved performance for object model updates
- Plugins may now register custom i18n data
- Added controls from DWC-CNC fork
- Added support for password protection to SBC connections
- Added search/replace/goto dialog to the G-code editor dialog (see here for the key mapping)
- Prompt after editing config.g asks users to either reset or rerun config.g
- Added new bottom navigation menu for mobile devices and made margins smaller depending on the screen size
- Added back "Install Updates" button for standalone mode users
- Selected nodes on the object model browser can be copied using a new button
- Added new npm run build-plugin script allowing users to build external plugins easily (see also the new plugin guide)
- Added support for JPEG/PNG/QOI thumbnails for both SBC and standalone mode
- Sensor temperatures are now displayed per layer in the tooltip of the layer chart (if available)
- Replaced old notification system with a new one preventing potential overlap of the E-STOP button
- Small icon menu can be enabled on demand in the settings
- Added back options to allow users to specify which tool change macros are supposed to be executed
- Users can choose if the current or file timestamp should be used for file uploads (only in standalone mode)
- Sliders can be replaced with numeric inputs on demand
Changed behaviour:
- Old-style rr_status requests are no longer supported
- Built-In/Third-Party Plugins are now called Integrated/External Plugins
- Heightmap plugin is now based on BabylonJS (removes dependency to ThreeJS)
- Increased default number of extrusion factor sliders from two to six
- Modified default extruder feedrates to match values on PanelDue
- When the controller is halted and the Reset button is displayed, the connection dialog can be dismissed
- Added message to firmware update prompt advising users to install firmware updates over DWC in SBC mode only on explicit request (only on Duet)
- Reduced height of navigation menu items in desktop mode
- Resume button is no longer enabled while a print is being paused
- Removed auto-sleep button. Invoke M1 or a custom macro in your end G-code if you want to turn off the heaters at the end of a print
- Default delay before settings/cache elements are saved is greatly reduced
- Homing buttons are enabled unless the corresponding axes are homed or movement without homing is permitted (see M564)
- Webcam content is disabled when the webcam page is hidden
- Filaments menu item is only visible in FFF mode
- DWC can connect to http://localhost (alternative to http://[hostname])
- Made "Install Updates" button visible in SBC mode for non-Duet boards
- Made bottom navigation bar optional and changed navigation menu again for smartphones
- Tool state is now modified using
M568
instead ofG10
- Document title is put into braces when the machine is disconnected
- Syntax highlighting is always enabled unless the OSK plugin is enabled
- Minor changes to the look of the main menu in desktop mode
- Invalid JSON from RRF is always logged to the console in standalone mode
- Thumbnail data is explicitly checked after receipt in standalone mode
Bug fixes:
- Order of displayed extruders depended on toggle order
- Auto-completion drop-down list could overlap the code input
- OM values
boards[].mcuTemp
,boards[].v12
, andboards[].vIn
were not nullable - Webcams could not have an indefinite update intervals (0ms) which could conflict with MJPG streams
- Layer stats were not properly regenerated after reconnecting to a Duet in standalone mode
- Non-default system directory was not correctly loaded after connecting
- Connecting dialog was briefly hidden before it was displayed again on reconnects
- Object model patches could delete certain properties that should remain existent
- Upload progress bar remained active for empty files even after the file had been completely uploaded
- Webcam stream was not actively interrupted when the page was deactivated
- File edit dialog could throw an exception under certain circumstances
- During updates/resets boards[0] was not fully available but DWC attempted to access a property from it
Changes since 3.4-rc2:
- Changed the way non-blocking button G-codes are sent to RRF/DSF (e.g. movement or babystepping codes)
- Updated translations and documentation links for docs.duet3d.com
- Plugin install dialog asks users to reload the page if DWC plugins were updated
- Bug fix: "Ignore file timestamp on upload" wasn't working as expected in standalone mode
Upgrade notes since version 3.2:
- Saved G-codes from the inputs are no longer saved on the Duet to avoid excessive SD card wear
- This will be the last DWC version that remains compatible with old-style status responses
Compatible versions:
- DuetSoftwareFramework 3.3.0
- RepRapFirmware 2 or newer (1.2x may work but untested)
Bug fixes:
- Layers chart was only cleared when the layer variable was set
- Plugin upgrades were not working in standalone mode
Compatible versions:
- DuetSoftwareFramework 3.2.2
- RepRapFirmware 2 or newer (1.2x may work but untested)
Bug fixes:
- Auto-indentation used spaces regardless of last line indentation type
- Fixed reset prompt for 0:/sys/board.txt (for STM and LPC users only)
- Upload errors for dwc-settings and dwc-cache are no longer displayed
- Spindle RPM inputs didn't wait for code to finish
- Failed uploads for DWC system files are no longer shown
- On-Screen Keyboard hid lower end of the text editor
- When DWC reconnected in standalone mode due to HTTP 401, the
rr_connect
request was malformed
Compatible versions:
- DuetSoftwareFramework 3.2.0
- RepRapFirmware 2 or newer (1.2x may work but untested)
Changed behaviour:
- Apart from the tool fan the first three fans are displayed by default
- Reduced extrusion slider step size from 5% to 1%
Bug fixes:
- When an error occurred during a plugin installation, the upload button became unusable
- New code editor was always disabled in Chrome-based browsers due to touchscreen detection
- Standard editor always displayed end of the file
- Sometimes the heightmap could not be shown and only a black frame was displayed
Compatible files:
- DuetSoftwareFramework 2.0.0 or newer
- RepRapFirmware 2 or newer (1.2x may work but untested)
Bug fixes:
- Downloading filaments did not work
- When opening large files in DWC, a timeout exception could be thrown
- When connected in SBC mode, the kinematics key could be incorrectly updated
- Duplicate notifications were not closed again automatically
- Display messages from M117 were displayed multiple times
Compatible files:
- DuetSoftwareFramework 2.0.0 or newer
- RepRapFirmware 2 or newer (1.2x may work but untested)
Changed behaviour:
- When installing expansion board updates, DWC waits for the status to become not 'Updating' before moving on to the next one
Bug fixes:
- Mesh edit dialog sent wrong M-code when using delta kinematics
- Resetting the speed and extrusion factors worked even when the UI was frozen
- Datetime was not updated after a firmware reset
- When returning from a filament directory on the Filaments page, the "Create Filament" button was no longer visible