Importing gcode doesn't give you a time estimate

Recently, I ran a project where I noticed that the travel path of easel was bad - I was carving out text and perhaps it was the SVG i imported and the layers tricking Easel, but it was going to random letters throughout the carve with no way of telling easel “hey, be more efficient, time is money!”

So I’ve been exporting the gcode and running it through the gcode optimiser: https://xyzbots.com:4000/gcode-optimizer/

All you need to do is uppercase everything after it spits out a much faster travel path.

Now here is where I’m confused, simulated, easel will give me a time. Imported gcode? No time at all. So I can’t compare if it’s faster to pre-process the gcode to easel or not.

Is this on purpose to discourage importing gcode? It’s the exact same gcode from Easel just rearranged, why would it have trouble understanding how long it would take?

Can anyone help me on this?

I do not use Easel. With that out of the way, I do know something about programming.

When a CAM/CAD program is generating gcode, it can also calculate an estimate rather easily of how long it will take to run the gcode file while it is compiling the gcode. With imported gcode, Easel would have to first run (simulate) the entire gcode file line by line, start to finish, in order to calculate an estimate, which would add considerable time to actually running the file.

That is how it does it’s own gcode though, it literally simulates everything before it shows the toolpath, even when going for carving

That’s a flaw in the motion planning of whatever external CAM package you are using. You don’t want easel re-writing the g-code. That would be like an actor doing hamlet, but rewriting Shakespeare into modern English when he goes to perform because he thinks it’s better. It might be good, but is not what the original (or Director) intended. If you use externally generated g-code you expect easel to faithfully send that to the CNC controller.

In many cam packages (like say fusion 360) in your op settings you can often set a priority (like work by area) to prevent all the retractions and movement. In Fusion it’s on the linking tab of a given operation. They basically only really calculate time-in-cut from what I see, rather than time for job. Unless I missed it you didn’t mention your CAM program. Easel does not have these features (or god help us a minimize retractions button, this thing loves to hop around)

As for time guesstimates they suck in general on every cam package, but they give you a rough idea (minutes vs. hours). And of course are useful as relative measurements. It would seem from the OEM of the machine they could do a better job (it requires a bunch of machine specific knowledge of the kinematics, like how fast is a rapid, how fast is a retraction)