Is there a way to pick up where the machine lest off or do I need to go through the whole thing again?
do you know exactly where you were in the program? g-code is just a text-file, you can chop out everything before that…
Unfortunately no. I just started the whole thing over but used same piece and same starting point. I’m standing with the machine and running it at 80in feed rate while it’s not close to edges and slow it down when it gets close just to speed it along until it gets caught up where it stopped .
haha. Been there, done that.
If you homed the machine when powering it up, and before setting your work zero you are positionwise good to go. As far as omitting the previous carved areas in Easel your only real option is to mask precarved areas with zero depth objects - or as you have done, go to 200% feedrate to reduce “airtime”.
If proficient with gcode you could edit out the carved parts and rerun the edited code.
Unlikely to be something you’re going to be able to do by hand - most gcode uses relative movements, so you’d have use some sort of gcode preprocessor to figure out the current location for each gcode instruction. Not impossible, and honestly probably not even that hard (it’s just a sequence of geometry problems), but it’s a software task not a gcode editing one.
yeah, in PathPilot on my tormach I can press on a point on the preview on the controller and it will take you to the g-code line
Now that I think about it a bit more, I’d guess that grbl has internal tracking of the current position, and you could probably just modify it to print out (line in gcode) + (physical position), and then run that in a grbl simulator to get all the info you’d need. Or maybe https://github.com/grbl/grbl-sim has the kind of thing you can use straight out of the box?
All these assume that you write code on a regular basis. Me, I’d probably spend a few days coding up a solution, where the guy who actually wants to get stuff done would just roll his eyes and restart the carve and be done much sooner :-).
I’d assume that in the production world, people solve this problem by generating a bunch of different gcode programs to do multiple steps, so your restarts have well-defined beginning and end points (and probably have tool changes, so you’re going back to known positions anyway). At least that’s the way I’d approach it, but I’ve never been close to a commercial cnc operation.
I just started it from beginning running 200% in air and slowing it down when it gets close to something.
Which is where the “proficient” part come into play, its possible but th user need to know/read gcode correctly to pick up where he need to start over. Its not required to start exactly where it stopped, just somewhere close. Whats most likely a known is the depth it stopped at so one can backtrace Z-depth to figure out a safe “pre-position”. Its been a while since I looked at straight Easel-code but IIRC the position is in absolute which simplifies things.
GRBL dont have any feedback/track of whats done
No adding. I’d love even a simple virtual DRO (or at least what it thinks are the x,y,z values), which would greatly help in debugging!
Yes, if you’ve got points in your gcode where it specifies a g90 move instead of a g91, your problem is much more simple. If you’ve got a G90, then you can start your carve with the machine at almost any position - you just need to start from somewhere where your machine won’t crash into the material when it does that first move.