phord/Teacup_Firmware — comment on commit 522b863ee80254b7870835856f2cd4748522ee52
File:  line 0
By Traumflug:

Thank you for the patch, phord.

Here a few things why I didn't hit merge yet:

- The major problem is, gcode_process.c operates at the end of the queue, dda_start() at it's beginning. So, processing an M82/M83 as provided means influencing a movement entirely elsewhere. With luck this works, though, so you may have tested the patch successfully.

- A new data structure "config" is possible, but there is already next_target (end of the queue) and move_state (start of the queue). e_absolute could go there easily, similar to next_target.option_relative.

- update_current_position() isn't important, as it's used for M114 (report position), only.

I think M82/M83 should be processed the same way M90/M91 is. The tricky thing is to reset E distance from time to time, before it overflows - or to handle an overflow gracefully.