Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem with pausing in CNC or Laser mode #871

Open
dc42 opened this issue Jun 14, 2023 · 1 comment
Open

Problem with pausing in CNC or Laser mode #871

dc42 opened this issue Jun 14, 2023 · 1 comment
Assignees
Labels
bug Bug that has been reproduced

Comments

@dc42
Copy link
Collaborator

dc42 commented Jun 14, 2023

Duet Forum Discussion Thread

https://forum.duet3d.com/post/317412

Firmware Version

3.5.0-beta4 and earlier

What happened?

When CNC-style GCode is used (i.e. new movement commands contain coordinates but the G0/1/2/3 is implied from a previous line), if the job is paused and then resumed, RRF doesn't execute the moves correctly because when it rewinds to the file offset of the first cancelled command, it has lost the context of that command.

@dc42 dc42 added the bug Bug that has been reproduced label Jun 14, 2023
@dc42 dc42 self-assigned this Jun 14, 2023
@dc42
Copy link
Collaborator Author

dc42 commented Jun 14, 2023

One way of fixing this would be to add a 3-bit tag to each move in the movement queue, to indicate whether this move was generated by a G0, G1, G2, G3, or some other command. This tag would be copied into the restore point alongside the file offset; then when the job file is rewound to that file offset, the command context in the GCode buffer would be copied form the tag.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Bug that has been reproduced
Projects
None yet
Development

No branches or pull requests

1 participant