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

BugList.txt « src - github.com/Duet3D/RepRapFirmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 0b5a09a9070ceb97a38cbf5cc9c9abb538248070 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
Duet 3 work list
- [done] Configure ESP SPI pins and channel on 0.3 board from Pins.h
- [done] Fan/heater output flexible configuration
- [done] Endstop/Z probe flexible configuration
- [done, test] Leadscrew adjustment moves not implemented on remote drivers
- [done] Separate temperature sensors from heaters
- [done] Remote temperature sensors
- [part done] Remote heaters
- HeaterProtection objects probably don't work
- Driver on/off voltages to be defined in Pins.h, they depend on the board
- Enable dotstar support
- SWdebug stuff for main board
- Hiccup delay times will need sending to CAN drivers
- Remote fans
- Remote GPIO and servo ports
- Driver numbers to be specified using board.driver format in M584 and M569
- Remote M906 and M913
- Remote M569
- Remote M915
- Move M912 function to sensor creation

Done in 2.03beta1:
- [done, ok] MBytes/sec -> Mbytes/sec in M122 P104 report
- [done, ok] Remove 'RTOS' from firmware name?
- [done, ok] G1 X1E1 no longer gets treated as if it also has an E parameter
- [done, ok] On 12864 display increment default column by 1 extra to leave a space
- [done, ok] Bug: setting M558 A parameter to anything >31 sets it to 0 instead of to 31
- [done, ok] Slicer PE time estimate string, https://forum.duet3d.com/topic/8440/rrf-2-02-slic3r-pe-1-41-2-filament-used-and-print-times-wrong and SodaStreamHolder gcode file
- [done, ok so far, poss homing issue] Generalised Cartesian/Core kinematics inc. markForged
- [done, ok] M572 and M221 with no extruder drive number to set all extruders used by the current tool, https://forum.duet3d.com/topic/8444/setting-pressure-advance-in-filament-file
- [done, ok with new filament monitor, test with old] Support filament sensor firmware v2
- [done, ok] Improve efficiency of debug print in WiFiInterface: don't keep calling cat and strlen
- [done, ok] Filament monitor to use time since end of last nonprinting extruder move
- [done, ok] Fix continuous rotation speed error bug on Polar kinematics, https://forum.duet3d.com/topic/8747/polar-printing-polar-axis-rotation-issue/3
- [done, ok, needs community test] Generalised Cartesian kinematics
- [done, ok] fixed a crash in the crash handler when no task was active
- [done, ok] Fix M3D Kanji problem on some displays
- [done, ok] 4-tower delta kinematics
- [done, ok] G2/G3 R parameter instead of IJ
- [done, ok] On delta, G1 Y-100 after homing hits endstops - new limit check not working properly
- [done, ok] Configurable 12864 SPI frequency
- [done, ok] PR to send standby bed temperature in M408
- [done, ok but test with babystepping] Deferred DM allocation and removal of DM array
- [done] Support L parameter in M585, thanks chrishamm
- [done] Scara R parameter to set min radius, https://github.com/dc42/RepRapFirmware/issues/221
- [done, test] Disable mdns in legacy Duets, https://forum.duet3d.com/topic/8352/duet-0-6-randomly-reboots/5
- [done, test] rr_fileinfo and M36 with no filename to include estimated print time and simulation time in the response, as in the report with a filename
- [done, test] In CNC and laser mode update user Z coordinate after tool change, https://forum.duet3d.com/topic/8181/tool-offset-honored-but-not-displayed-correctly
- [done, test] On SCARA and delta printers, apply geometric limits even if not applying M208 limits
- [done, test] G92 should not constrain the passed coordinates to the M208 limits if M564 S0 has been used to disable limits
- [done, test] Bug fix: month number written to height map.csv and filament files was too low by 1
- [done, test] wilriker PR to allow steps/mm to be quoted in M92, https://forum.duet3d.com/topic/8225/m92-parameter-to-indicate-microstepping/6
- [done, test] G30 S-3 option, to set trigger height to stopped height
- [done, test] Bug: 12864 display needs to be refreshed when a change in printer state alters visibility
- [done, test] When M106 Pn Sxxx received, if n = current print cooling fan number, update the print cooling fan speed variable, https://forum.duet3d.com/topic/8540/part-fan-value-missing/6
- [done, test] DAA to handle requested accel/decl > max
- [done, doesn't scroll correctly at the end of the list, fixed in beta2] Suppress filenames starting with '.' in the 12864 display
- [done, ok] Implement G17, error on G18/G19.
- [done, test] Core kinematics: enable all necessary motors
- [done, test] Make G2/G3 segment length lower at low speeds, https://forum.duet3d.com/post/79040
- [done, still not quite right, fixed in beta2] Bug: M997 S1 sent from USB keeps returning M105 status reports while the wifi firmware is flashing, and PanelDue 'flashing' update messages get erased
- [done, ok] M453 do the switch to CNC mode even if bad P parameter used
- [done, test] After pausing a print, if Cancel is pressed, cancel initial heating first like M108 does
- [done, ok] M122 P105 prints object sizes

Done in 2.03beta2:
- [done, ok] Bug: M997 S1 sent from USB returns one M105 status reports when flashing wifi firmware completes, and PanelDue 'flashing' update messages get erased
- [ok] Suppress filenames starting with '.' in the 12864 display
- [done, ok] M305 P# report includes the last error
- [done, ok] Remove M135
- [done] Increase temperature sampling from 2 to 4 samples/sec and increase max consecutive bad temperature count from 4 to 8
- [done, ok] Shrunk the DDA by 8 bytes (another 4 may be possible)
- [done] Shrunk each Tool from 196 to 140 bytes
- [done, ok] M203 Innn to set minimum movement speed
- [done, ok] M203 now reports feedrates in mm/sec and includes minimum speed
- [done, ok] Scale fan PWM up to M106 X value
- [done, ok] Add error for M208 min >= max
- [done, ok] Allow hex input everywhere that an unsigned value is expected
- [done, ok] Fix leadscrew adjustment bug in 2.03beta1
- [done for single endstop per axis, ok] M574 endstop assignment, including option for >1 endstop per motor
- [done, ok] Bug: M406 S6 or with other invalid S parameter never completes
- [done, ok] M111 Sn where n != 0 no longer enables all debugging, for better compatibility with Repetier host
- [tested, ok] Test heater tuning (sample rate changed)

Done for 2.03beta3:
- [done] Allow UVW tower endstop adjustments on deltas
- [done] M291 only lock movement if jog buttons are enabled, https://forum.duet3d.com/topic/8988/wishlist-interrupt-tool-change-from-a-trigger/16
- [done, test] Apply tool offsets in tpre.g and tpost.g
- [done, ok] Bug: 12864 display selects wrong file to print if files starting with '.' are present
- [done] HttpResponder fix from sdavi
- [done, test] Bug fix: if axis scaling was used then baby stepping, tool offsets and workplace coordinate offsets were not correctly accounted for when converting machine position to user position
- [done, but looks like it doesn't work properly] Duet085: allow 2 additional fans
- [done, test] Stop movement when changing pressure advance with M572, https://forum.duet3d.com/topic/9140/extruder-behaves-strangle-when-disabling-pressure-advance/10
- [done] Stop movement when changing endstop config in M574
- [done, test] Bug fix: don't apply limit checking in non-FFF mode to move types other than zero, https://forum.duet3d.com/topic/9203/laser-mode-endstop-limit-and-homing/4
- [partly done, test babystepping, test resurrect.g file M291 command correct] Y babystepping, https://forum.duet3d.com/topic/8015/change-z-babystepping-to-y-babystepping-for-belt-printers/14
- [done, but interference between them] support multiple DDA rings
- [done, test] Implement M470/M471 PR, thanks wilriker
- [done, test] Fix 'nan' standard deviation when G30 P0 X0 Y0 Z-9999 S-1 is run
- [done, test] Per-channel and push/pop inch/mm setting
- [done, test] Ryan's M453 issue, https://forum.duet3d.com/topic/9363/m453-issue-after-homing
- [done, test] Unsupported G and M codes try to run Gxx.g or Mxx.g
- [done, test] M650 and M651 are no longer handled specially
- [done] Increase tuning timeouts to 30 mins for bed/chamber heaters and 7 minutes for extruder heaters
- [done, test] Laser power is only sticky if S1 parameter is used in M452 command
- [done] Calibration without homing afterwards left the machine position incorrect
- [done] Bug fixes for deltas with >3 towers
- [done] Setting a chamber heater sometimes crashed the firmware
- [done] Support M505
- [done] Duet085: allow 2 additional fans

Done in 2.03RC1:
- [done, test] M291 don't ever lock movement, and unlock movement if it is owned and we are waiting for a response, e.g. if used within homeall.g and an SD file does G28
- [done, test] resurrect.g: put filename in quotes, and add R0 to M290 command
- [done, test] 12864 % complete
- [done, ok] 12864 time remaining
- [done, ok] 12864 requested and top speeds
- [done, ok] 12864 IP address as one variable
- [done, ok] 12864 auto % where applicable
- [done, test] 12864 menu items: visibility wasn't applied to alter/value/image items
- [done, ok] Limit 12864 refresh rate to avoid fast-changing items flickering
- [done, ok, port] Only add 1 space after left-aligned text items with no explicit width on 12864
- [done, ok, port] Bug: fix crash when there were no selectable items in a menu on 12864
- [done, ok, port] Ignore blank lines in menu files for 12864
- [done, ok] Mount SD cards automatically if they are not mounted and we are asked to list files on them on 12864, and display any error messages
- [done] applied latest FatFs patches
- [done, ok, check in v3] M109 not running tool change files, https://forum.duet3d.com/topic/10108/m109-command-does-not-run-tool-change-macro-s/6
- [done, check in v3] M302 to wait until moves have completed
- [done, not tested] Duet085 additional fan issue
- [done, test] Include workplace coordinate # in status response, https://forum.duet3d.com/topic/9896/display-current-active-csys-p1-g54-p2-g55-next-to-x-y-z
- [done] Network reset didn't work on Maestro
- [done, ok, check in v3] minor corrections to thermistor and PT1000 reading conversion
- [done, check in v3] Increase #triggers from 10 to 16
- [done, test, check ported to v3] If a print is ended or cancelled with G10 in effect, cancel the Z lift
- [done, reported ok, port to v3] TMC2208 drivers: disable open load detection when in stealthChop mode
- [done, port to v3] increase number of output buffers to 24
- [done, port to v3] inches/mm now handled in resurrect.g
- [done, ok, port] Bug: was holding movement lock while waiting for bed or extruder to heat up, so unable to pause/cancel during heat up
- [done, ok, port] Bug: fix crash when there were no selectable items in a menu
- [done, ok, port] Only add 1 space after left-aligned text items with no explicit width
- [done, ok] Mount SD cards automatically if they are not mounted and we are asked to list files on them from 12864 display, and display any error messages

Done in 2.0RC2:
- [done, community to test] I2C errors: recover from them
- [done, ok] Separate task to keep DuetX endstop input state up to date

Done in 2.0 RC3:
- [done] M584 formatting improvement when no extruders
- [done] Probably issue with leadscrew move when driver numbers >= MaxAxes are used to drive Z motors
- [done] In CoreNG, increment I2C reset count when resetting the I2C system
- [done, ok] Recognise filament usage comment in Prusa slicer, https://forum.duet3d.com/post/95091
- [done, test] M585 L parameter still not working
- [done, test] In resume.g a G1 R command goes to the wrong coordinates. Save restore point in machine coordinates always? But we do need to take tool offsets into account.
- [should be ok now, reproduce original problem, test] Homing files when workplace coordinates were active cause other axes to move, RL and https://forum.duet3d.com/topic/10480/new-firmware-2-03rc2-available/16
- [should be ok now that restore points are in machine coordinates; test] Resurrect.g all coordinates need to be machine coordinates
- [done, test] Resurrect.g restore workplace # and workplace offsets
- [done] Probable error with babystepping: incorrect sign when doing tool offset inverse transform, so it restores an incorrect Z position
- [done] G53 now available even when workplace coordinates not supported in build (cancels tool offsets)
- [done, test] For E3D: scale feed rate in proportion to total mix, for serial extruder drives etc.
- [done, test] Allow M203 max speeds lower than 1mm/sec, https://forum.duet3d.com/post/95049
- [done] Enable laser in Duet085 build
- [done, ok] M563 P# with no other parameters: better response formatting when no heaters or no drives
- [done] Added extra diagnostics for when a filename is too long
- [done, test with over-long filenames] Added missing newline at end of some error messages
- [done] in resurrect.g, for tool changer, select tool after running reasurrect-prologue and run tpre and tpost files when selecting current tool
- [done] In resurrect.g, set up fan speeds after the tool is selected so that the mapped fan speed is correct

- [no fault] Investigate https://forum.duet3d.com/post/94668 (filament load macro using stall detect not working)

In 2.03RC4:
- [done] Print Z shift in Move diagnostics
- [done] In Move diagnostics, only print bed probe heights if 3/4/5-point bed compensation is in use
- [done] Bug fix for Z shift if Z probe averaging mode is being used
- [done, test]Bug fix: M0 H1 turns heaters off there is a stop.g file
- [done] M1 no longer disables drives (you can do that in sleep.g)
- [done] M0/M1 with a stop.g/sleep.g file no longer deselects the tool, it just turns off tool heaters if no H1 parameter
- [done, ok] After grid probing, print min/max error as well as mean and std dev, also record them in the height map file
- [done] M675 PR
- [done] Warning if you run mesh bed probing and there is a substantial height offset
- [done] Warning if you load a mesh and the Z datum has not been set by probing and there is a Z probe
- [done] Fix 2.03RC3 bug: G10 L20 gave wrong results when a workplace coordinate offset was in use
- [done] M114 displays bed compensation amount at current position

In 2.03RC5:
- [done] After running stop.g ensure all moves are finished before setting motors to idle current, https://forum.duet3d.com/post/96452
- [done] When downloading a .zip file don't set content-encoding to gzip, https://forum.duet3d.com/post/96469
- [done, test] When disabling HTTP protocol or disabling the network, release any associated resources e.g. output buffers. Similarly for FTP and Telnet.
- [done, ok] Delta printer: after homing, allows attempts to move Z up beyond endstop switches, https://forum.duet3d.com/topic/10735/delta-printer-max-limits
- [done, ok] FTP responder: initialise haveCompleteLine (thanks gtjoseph)
- [done] In SCARA printers/laser cutters (not CNC), if we can't do a coordinated travel move due to unreachable intermediate positions, try an uncoordinated one
- [done] Duet Maestro build now supports laser cutters
- [done] SCARA bug: when attempting to move beyond arm limits the cached X and Y are inconsistent with the cached theta and psi

For 2.03 release:
- Add virtual extruder position to M114 response for Octoprint, https://forum.duet3d.com/topic/10821/returning-virtual-extruder-position-in-m114/3
- When disabling network or a protocol, set the number of active HTTP and/or Telnet clients to 0
- Added jerk policy, P parameter to M566
- Pulse-type filament monitor now reports mm/pulse to 3 decimal places instead of 2

- For 2.03.01:
- [done] Bug: delta auto calibration adjusts homed height incorrectly if the delta radius or rod length was changed
- [done] Bug: G29 P parameter doesn't work if there are nonempty deployprobe.g/retractprobe.g files, https://forum.duet3d.com/topic/10904/g29-p-parameter-ignored/5. Remove P parameter from G29 S0, add G29 S3 (same as M374).
- [done] Bug: M557 P parameter didn't work
- [done] G31 to show current parameters, not just probe output value
- [done] Pulsed filament monitors: don't try to resync on every interrupt when interrupts are arriving very fast because the sensor has high resolution
- resurrect.g missing the tool selection command?
- Bug with small Z movements at Zmin, https://forum.duet3d.com/topic/11025/strange-behavior
- Issues when diagonal rods are not all the same lengths, https://forum.duet3d.com/post/99714

Outstanding issues:
- Running out of output buffers and not freeing them up, https://forum.duet3d.com/post/96586
- Inconsistent Z0 position, https://forum.duet3d.com/user/caveman
- [defer] When writing resurrect.g after a pause, the G92 coordinates are wrong

- Bug in 2.03, 2.04RC1 and latest 3.0 beta: https://forum.duet3d.com/topic/11343/new-reprapfirmware-3-0-early-beta/30
- Bug in 2.03 and 2.04RC1: M586 with T0 parameter generates spurious warning, https://forum.duet3d.com/topic/11632/m586-error-tls/4
- Display Error Status in hex

Duet 3:
- Bug: code queue not always used when it should be, https://github.com/chrishamm/DuetSoftwareFramework/issues/1
- Bug: M308 Y"mcutemp" or "drivers" doesn't work without P"nil" parameter

- Different motor currents on Duet main board V0.6 vs older versions

Planned for 3.0:
- Two Z height issues, https://forum.duet3d.com/post/108569
- M291 not displaying on PanelDue as well as web interface, https://forum.duet3d.com/topic/11240/m291-display-on-lcd-not-always-working-when-web-session-is-open
- [done] 3.0 bug: Fix Z probe starting height
- Test leadscrew adjustment moves
- Separate sensor config from heaters
- analog threshold in M581, https://forum.duet3d.com/topic/11549/analog-threshold-for-m581-trigger
- filament sensor errors run filamenterror0.g etc. in preference to pause.g
- ignore M587 etc. commands in config.g
- option to use Z endstop as emergency backup when probing with bltouch, IR sensor etc.
- Option to invert PS_ON pin sense
- Firmware retraction parameters per tool

- Dynamic height map allocation, https://forum.duet3d.com/topic/11449/possible-increase-possible-441-points-for-bed-mesh-compensation
- Bug: in CNC mode, if a move goes out of bounds then the spindle is stopped immediately but moves in the queue continue to execute. Need to go to a special state to empty the queue, and then turn the spindle off?
- Bug: incomplete FTP uploads, https://forum.duet3d.com/topic/10987/ftp-not-uploading-whole-files
- Bug? DWC 1.22.6 doesn't auto show the height map after probing since firmware 2.03, https://forum.duet3d.com/topic/10904/g29-p-parameter-ignored/5
- Support M24 in pause.g and filament-change.g
- M24 in filament-change.g macro doesn't resume the print
- Mechanism to restore original spindle speed (+ wait afterwards?) or laser power after a pause
- [on hold] investigate filament file not run on initial tool change, https://forum.duet3d.com/topic/9405/first-t0-in-gcode-does-not-work/5
- Filament monitors: disable if tool is not active/no commanded extrusion, or does it do that already?
- [yes it already did] In simulation mode, does M109 implicity select a tool? https://forum.duet3d.com/topic/9595/simulation-error
- support live Z baby stepping (could also be live X and Y on Cartesian printers, maybe even on CoreXY)
- abort SD print if G28 or G32 or G29 fails, https://forum.duet3d.com/topic/9383/way-to-cancel-print-after-g32-failure/9
- Check that in all modes, if insufficient axes are homed then the SD job is aborted
- In CNC or Laser mode, abort job if it goes outside machine limits, https://forum.duet3d.com/topic/9269/yet-another-cnc-improvement-outside-machine-limits/4
- In simulation mode, if the job was aborted for any reason, report this instead of reporting the simulated print time
- M143 A3 option to turn off whole machine immediately on heater fault?
- Turn off power in emergency stop? https://forum.duet3d.com/topic/9158/ps_on-m81-incorporated-into-the-emergency-stop-functions/5
- Clear filament sensor alerts after they are acknowledged, https://forum.duet3d.com/topic/9072/filament-out-warning-always-present/8
- [done, document, test] Compensate probe trigger height for other heater temperature than bed
- For PanelDue, send heater data for the first heater in each tool (does PD handle #heaters and #tools separately?) https://forum.duet3d.com/topic/8458/hide-unused-heater-channels-paneldue-5/4 and https://forum.duet3d.com/topic/8933/paneldue-two-tools-same-heater-one-pair-of-temp-buttons/2
- Implement M410 quick stop
- Implement power loss M582 trigger action?
- On heater fault shutdown, do we try to turn off power? https://forum.duet3d.com/topic/9283/controlled-shut-down-of-24-volt-power-supply-by-ssr/4
- Consider option to cancel objects, see https://forum.duet3d.com/topic/9226/cancel-skip-individual-objects-during-print/8. Also say which object we are printing.
- Option to display current tool mix ratio on 12864 display, https://forum.duet3d.com/topic/10777/can-show-the-mixing-ratio-on-the-duet-maestro-12864-display

- Laser turns off, https://forum.duet3d.com/topic/9636/laser-turns-of-during-straight-lines/5
- Test endstop input high/low noise immunity, decide on pullup enable/disable

- [mostly done] Z height based on plasma voltage or force
- [gone away? could be related to visibility issue] Investigate 12864 display heater fault warning, https://forum.duet3d.com/topic/7718/12864-display-current-tool-temperatures/6
- Slow startup move issue, https://forum.duet3d.com/topic/8284/firmware-2-02-released/7 (adding S2 fixes it)
- M291 issue, https://forum.duet3d.com/topic/8381/m291-s2-does-not-block-macro-execution/5
- In laser mode allow M3 instead of S to control laser power? (wait for feedback, not as simple as it looked)
- [check latest forum response, possibly caused by M208 checks] Investigate @frafa's SCARA issue, https://forum.duet3d.com/post/76024
- [await reply from Mario] Is there any benefit to setting RNDTF in M569?
- [done] Danny's G1->G0 request [added IntermediatePositionsReachable function]
- Warm up time not always displayed in 2.02
- Deferred allocation of DMs: don't create DMs for nonlocal drives, pass #steps to CAN interface instead
- Reports that DueX5 endstops stop working after a while, https://forum.duet3d.com/topic/8284/firmware-2-02-released/9
- Pressure advance issue? https://forum.duet3d.com/topic/8672/extruder-motors-skip-steps-with-pressure-advance-enabled/3
- Command (M18/M84?) to enable specified motors or axes
- Don't keep sending "wifi reported error" messages during reconnection attempts, https://forum.duet3d.com/topic/8837/wifi-reported-error

3.x planned:
- Option to calibrate bed tilt but not tower positions, https://forum.duet3d.com/topic/9236/delta-auto-calibration-changes-in-bed-tilt-calculations/2
- Stop print after a short to ground report? https://forum.duet3d.com/topic/8239/duet-maestro-short-to-ground/10
- Option to enable a trigger when not printing (C3?), https://forum.duet3d.com/topic/8459/m581-external-trigger
- Implement G43?
- What does M48 do in Marlin?
- Option in M452 to allow G1 S or M3 to control laser? Also whether S is sticky.
- On Maestro, delay between first enabling the driver and moving the motor; or a separate command to enable a motor.
- When installing DuetWiFiServer, PanelDue message keeps disappearing
- Overlap SD card write and network fetch, for faster file upload?
- Object model
- Conditionals, loops and maths in GCode commands
- S-curve acceleration
- Some features from the list below

Future:
- G5 Bezier curves
- https://forum.duet3d.com/topic/9507/unretract-after-tool-change/13
- Option to skip some parts of a build, https://forum.duet3d.com/topic/9226/cancel-skip-individual-objects-during-print
- New DuetWiFiServer using RTOS and a later Expressiv SDK version
- Remove string allocation from ActOnMCode to save stack space
- Easier way to support multiple endstops on axes (combine with facility to reassign endstop inputs)
- Junction deviation instead of jerk? Probably combine with S-curve acceleration.
- Add I2C success count to I2C stats
- Run script if thermal error? https://forum.duet3d.com/topic/8038/suggestion-run-script-in-case-of-thermal-error
- Run script on filament error?
- Option for an endstop input to trigger an emergency pause
- Count steps until homing switch is triggered compared to original, https://forum.duet3d.com/topic/8017/request-check-for-lost-steps
- In CNC or laser mode, don't segment G0 moves for mesh bed compensation, https://forum.duet3d.com/topic/7728/go-vs-g1-movement/11
- Z homing switch offset in M208 or elsewhere, https://forum.duet3d.com/topic/7767/z-offset-is-negated-in-homing-g-macro
- After looking for G1 Z commands to find object height in gcode file analyser, check that there is extrusion after it
- M260 allow bytes to be specified in hex, more generally allow hex anywhere?
- Auto mount SD card when it is inserted
- Option to set an idle timer, https://forum.duet3d.com/topic/7758/configuring-idle-timeout
- Extruder motion until filament sensor senses motion stopped?
- Allow jerk between printing and non-printing moves, so that coast-to-end works? already made a change for coast-to-end.
- Error handling in [variable] parser in GCodeBuffer class
- WiFi auto reconnect should not log all unsuccessful connection attempts, just the first one
- Option to send M280 servo commands just a few times instead of continuously
- M3 R parameter so it can restore the spindle/laser after a pause (https://forum.duet3d.com/topic/5418/cnc-laser-m3-unpause-r-parameter)
- Adjust laser power during acceleration/deceleration
- First layer segmentation, to help with baby stepping? Or another way to implement live babystepping?
- Object model variables in 12864 display menus
- CNC shutdown when movement outside limits attempted not working well, https://forum.duet3d.com/topic/6186/stable-firmware-2-01-duet-2-and-1-22-duet-06-085-released/55
- Better dead time measurement during auto tuning. Measure both turn-on and turn-off?
- Feedforward heater control for fan and extrusion speed changes
- If wifi module gets stuck in starting or changing mode state, reset it again
- At the end of a simulation, restore the original workplace coordinate selection
- CNC: look at G17/18/19, see https://forum.duet3d.com/topic/4669/ooznest-workbee-screw-driven
- Option in M92 to specify what microstepping the values are specified at, https://forum.duet3d.com/topic/8225/m92-parameter-to-indicate-microstepping/4
- Trigger option to do emergency pause? https://forum.duet3d.com/topic/7846/pause-and-store-print-state-on-network-signal-ups/4
- Allow extruder movement in tpre? https://forum.duet3d.com/topic/7263/controlling-stepper-motors-via-drive-numbers-eg-g1-d4-700-f100/4
- M207 per-tool values, https://forum.duet3d.com/topic/6855/add-drive-extruder-parameter-to-m207/6
- Command to copy output from the following commands to the log file?
- Track which devices use which pins
- Hangprinter PRs
- PR to have any enabled driver report 50C
- Alternative G10 command to set offsets from known current tool position, see https://forum.duet3d.com/topic/6465/g92-g10-m585-for-setting-head-position-not-machine-position/4
- Keep sending M408 responses to PanelDue while waiting for movement to complete, or M400 or homing move or similar
- Extra logging? [did some extra in 2.02RC3] https://forum.duet3d.com/topic/7103/extend-m929-logging-capabilities/5
- Danny's modified SCARA kinematics (workpiece is on a plate, extruder is fixed)
- Look at pushover notification support, https://forum.duet3d.com/topic/169/notification-via-pushover-or-other-service/45
- M81: don't give low voltage warnings when main power has just been turned off
- M81: option to invert polarity?
- Add S4 option to G1 command, like S1 but no endstop checks (needed for CoreXY, CoreXZ)
- M569 command to allow selection of smart/dumb driver (including on Duet M), also allow all 12 drivers to be smart
- Apostrophe in quoted filename: can we make apostrophe special in SSIDs/passwords but not filenames?
- M140 command to set default bed heaters for M140 S commands (e.g. M140 P0:1:2)
- Consider: Heater faults to run M81 even when not doing a build (https://forum.duet3d.com/topic/6225/configure-action-on-heater-fault/7)
- Option to repeat G32 until deviation/leadscrew adjustment is below a threshold or a retry count reached (and allow for probing failures)
- Macro option when a motor stall is detected, https://forum.duet3d.com/topic/7026/more-options-for-stall-detection
- Update PanelDue firmware via Duet
- Use Heat task to read DHT sensors?
- Add option R4 to M915 command, to do an emergency stop (useful for Z motor)
- GCodes corresponding to rr_move and rr_mkdir, https://forum.duet3d.com/topic/5470/firmware-2-0rc6-and-1-21-1rc6-released/13
- support G12 clean tool?
- Add fan PWM limit, https://forum.duet3d.com/topic/5370/m106-feature-request-limit-max-pwm-parameter/4
- after homing, warn if outside M208 movement limits on SCARA, polar etc.
- Unexpected heaters off/tool selection behaviour, https://www.duet3d.com/forum/thread.php?pid=43059#p43059
- warn when using : where ; was probably meant
- Error message if you attempt movement with VIN < minimum
- When VIN power too low and stepper drivers turned off, flag axes as not homed?
- min/max RSSI display?
- report RSSI in M552?
- Auto mount main SD card when inserted
- Add warning message when print exceeds bounds
- When uploading while a file is being printed, don't allow the currently-printing file to be replaced
- Option to send stall warning messages when not printing from SD card, https://forum.duet3d.com/topic/6720/stall-protection-on-pyserial-print
- Custom macros to execute on stall detection, including extruder stall detection https://forum.duet3d.com/topic/6730/stall-detection-custom-actions
- When Z probe readings are out of tolerance, display the lowest difference seen between consecutive readings?
- dual extrusion layer counting, see https://www.duet3d.com/forum/thread.php?pid=34816#p34816
- M140/M190 with no P parameter sets all bed heater temperatures (same for M141/M191)
- M291 to lock movement and wait for it to finish?
- Bug: https://www.duet3d.com/forum/thread.php?pid=34772#p34772 (needs RRF fix too?)
- configurable minimum extrusion temperature (per extruder?)
- case-insensitive http headers
- Send reduce power command to PanelDue when main power turned off?
- Option to not broadcast SSID?
- Support faster homing by using interrupts to check homing switch states
- Allow manual bed probing to be aborted
- Don't do pressure advance during accel/decel of sequences of short segments
- Add T parameter to M207
- look at supporting SIZE in FTP
- Make mp.delta.hmz0sK, hmz0scK and dsk 64-bit in SAM4E versions, to increase movement limit - also increase K2?

Investigations:

[done, waiting forever for SD card] Investigate https://www.duet3d.com/forum/thread.php?pid=32237#p32237
[done] https://www.duet3d.com/forum/thread.php?pid=30414#p30414 (watchdog reset)
[can't reproduce] https://www.duet3d.com/forum/thread.php?pid=28210#p28210 (pressure advance causes over extrusion)
[done] https://www.duet3d.com/forum/thread.php?pid=28255#p28255 (tool change problem)
[done] https://www.duet3d.com/forum/thread.php?pid=30431#p30431 (bed probing inaccurate)
[can't reproduce] https://www.duet3d.com/forum/thread.php?pid=30799#p30799 (step errors at high E steps/mm)
[no fault] https://www.duet3d.com/forum/thread.php?pid=30851#p30851 (split axis motor goes the wrong way)
[done BUT still wrong in lwip 2] inconsistend oversize vs. len
p->ref == 1 in WiFi
File transfer/write error if you upload while printing, https://forum.duet3d.com/post/109751