Releases: mdealer/RepRapFirmware
2.05.1.1-simple_dynamic_unretraction 2020-03-29b1
Changes:
- The averaging duration is now configurable: M207 D[seconds]. Default: 0.25
- Improve averaging reliability; fix potential computation errors.
- Fixed the underruns; runs smoother.
- Expanded debug output; it is now possible to validate computations by hand, if needed.
USB debug output:
- regular print move: print [X Y Z] ...
- unretraction move: unretract [X Y Z] ...
- moves that are evaluated prior to unretraction: prepared [X Y Z] ...
Abbreviations in debug output:
- mt: move time
- rate: extrusion rate
- ner: computed next extrusion rate
- ler: computed previous extrusion rate
- ep: extrusion pending (step remainder for very small moves)
- up: computed unretraction compensation
- nc: move count that were used when computing next extrusion rate
2.05.1.1-simple_dynamic_unretraction
Dynamic Unretraction
Discussion: https://forum.duet3d.com/topic/14927/enhancing-pressure-advance/91?_=1585252458630
It looks at the extrusion rate of two print move sequences that are separated by a retraction. Then, the adjustment to unretraction is made as such:
adjusted_unretract_distance = nominal_unretract_distance + (second_sequence_extrusion_rate - first_sequence_extrusion_rate) * new_dynamic_unretract_constant
Usage: M207 C[the constant]
Only works with firmware retraction (G10/G11).
The retraction move cannot get reversed and cannot exceed the unretraction amount to prevent computation errors as it would invalidate the precomputed movement parameters.
Attaching the Duet via USB and connecting a terminal will output debugging information:
[272.833008 229.201004 3.613331] mt=0.096972, er=0.999899, up=-0.160771, ler=0.577527, ner=0.416756, ep=-0.000101
[X Y Z] mt=moveTime, er=nominal_unretract_distance, up=adjustment, ler=first_sequence_extrusion_rate, ner=second_sequence_extrusion_rate
2.05.1.1-simple_dynamic_unretraction 2020-03-28b1
Changes:
- Some of the compensation limitations are now increased. Compensation can be up two times larger than unretraction distance, thus it may also reverse the move.
- Either a whole move or up to 10ms of the next and previous section is now used for computing the extrusion rate. Previously it was up to 100ms.
- Skip compensation, if previous or next extrusion rate is too little.