But if you hit the stop button after the pause, you can’t start up again where you left off. OR can you and I just don’t know how???
No, there’s no way to restart again from the Stop point currently.
Then I need the pause button. Because jobs are sometimes long and humans need to do stuff like eat and pee.
Correct. You have to restart the program or run another.
I would argue that some of this could be handled within carbide motion and not be dependent on the machine firmware. It’s motion that sends the GCODE, it can just send some additional instructions.
Having moved from a 4 to a 5, the pause is now useless to me.
I really wish shapeoko would dedicate some more time to motion … there are a lot of gaps in the software. Or open source to allow contributions.
See:
which seems to indicate CM is maybe coming back around to be worked on again.
If you wish to work on opensource — there are more communication/control programs for Grbl than one can easily count:
pick one and pitch in?
Great to hear you’re going to start working on it again. To your point on how much to pack on screen, the thing I like most about CM vs the open source tools is it’s cleanliness this and simplicity of used despite a few key shortcomings.
It’s not like CM is a dead program. It’s had MASSIVE changes since I got my first Shapeoko. Could it use a few more features…yup. I’m always passing on my thoughts and opinions. But it’s still easy to use and integrates well with the machine and accessories.
Program restart is in our internal build. We’ll see how the testing goes over the next week, but it could be released in the next few weeks.
Find a way to make the machine less sketchy and I’ll buy a lifetime sub. My current biggest gripes are pause and having to butcher my program to make a workable restart. Also the e-stop turning whatever is in the spindle into a grenade because I don’t have a gas strut.
I understand the pros and cons of stopping the spindle during the pause.
I used the pause a couple of times to tight (or add) some clamps, it made me a bit nervous to have a spindle running while I was doing that.
As a suggestion, it could be an option in the setting; Pause with Spindle running / Pause with Spindle not-running. I don’t really mind about lifting the Z or not, although I would believe it could be a bit safer when restarting.
I use the VFD button to stop the spindle after using a the Pause to clear the Sweepy of debris.
My understanding of the code is that there isn’t a hook to insert the spindle stop command/put Grbl into a state where it will accept commands — a layman’s understanding of what is happening here:
- Grbl is processing commands and has a “look-ahead” buffer which has zero or more lines in it (usually this value is positive, and significantly more than 1)
- each such line may move the machine as far as all the way across the working area, so allowing them to run out and then stop will not serve the user’s desire to stop when requested
- a command (character?) is sent which the code which fills the “look-ahead” buffer pre-emptively recognizes, and rather than add it to the buffer, the command currently being executed is halted as quickly as the machine can be brought to a recoverable stop
- Grbl then waits for a command to resume, or to cancel — because of the code state those are the only options which are possible — attempting to process any other command here would cause a loss of state and make it impossible to resume
For anyone who wants to dig deeper into this, the code is at:
It’s quite elegant C and anyone with a modicum of understanding of programming could learn quite a bit from perusal — which suggests another future project, re-writing it as a Literate Program: