CS-Lab Support Forum for CNC Community

Help to run this brand-new forum and stay with us.
Ask your questions, we are here to help! 

 

Forum Navigation
You need to log in to create posts and topics.

Programs takes longer in simCNC than in Mach3

Hello!

Currently i'm trying to move from Mach3 to simCNC. I currently have the trial version in my computer. Im using CSMIO IP/M and all its working as expected. 

My first impression is that simCNC is smoother than Mach3. I tried to do some basic 2D cuts without problems. But, I noticed that 2.5D engraving is slower than in Mach3. I have loaded the same ball nose 3d finish nc program in both Mach3 and simCNC, and, in Mach3 is taking like 8 minutes, but in SimCNC takes about 13 min. It looks like the machine does a lot of starts and stops when executing the program.

I have changed the CV parameters (CV Stops at 10º angle, and CV Tolerance to 0.2mm) with no luck, in Mach 3 the options "Stop CV at angle" and CV Tolerance units are unchecked

In general, I'm very happy with SimCNC, but this case annoys me a lot

Is something that I can do to avoid this?

Thanks you a lot 

Hello,
Thank you for your message, and I'm glad to hear that your initial experience with simCNC has been mostly positive!
 
Regarding the slower execution time during 2.5D engraving: this is very likely related to Constant Velocity (CV) settings and how they influence motion planning. simCNC, like Mach3, uses CV to smooth toolpath execution — but the configuration and interpretation of CV parameters can differ quite a bit between the two systems.
 
In Mach3, when the "CV Tolerance" option is unchecked, it essentially tells the software to use the entire G-code segment length as available room for CV smoothing — meaning large blending tolerances are allowed. This results in smoother, faster motion at the cost of precision, which is usually acceptable for finishing or 3D surface jobs.
 
In simCNC, the G64 P... command defines how much deviation (tolerance) from the programmed path is allowed. If this is set too low (e.g., G64 P0.01), simCNC will try to follow the path very precisely — almost like Exact Stop mode — and the machine will make lots of deceler​​​​ations and accelerations, which can significantly slow down execution.
 
​Also, the CV Stop Angle plays an important role. If it's set too low (e.g., 10° or 30°), simCNC will try to smooth even very sharp corners, which is usually not what you want — especially if you're aiming to preserve geometric features (e.g. machining rectangle with CV stop angle set to 30° will round of its corners). To counter this, users often mistakenly reduce the G64 P... tolerance to extremely small values, which ends up disabling CV almost entirely. A better approach is to increase the CV Stop Angle to something like 121°, so sharp corners remain untouched, and then allow a higher G64 tolerance (e.g., P1.0 or more). This lets simCNC apply smoothing where it’s truly beneficial for fast and fluid motion, without compromising accuracy where it's needed.

Here's what we recommend:

  • Try setting G64 P1.0 (or even higher — don’t be afraid to experiment with values like P5.0 or P10.0).
  • Set the CV Stop Angle to something like 121°. This tells simCNC to stop on truly sharp turns and blend everything else.
Don’t worry — simCNC will never exceed the length of a G-code segment, no matter how high the G64 tolerance is. 
The motion planner always attempts to achieve the best possible path accuracy, depending on feedrate and machine acceleration. So if you’re running a slower finishing pass, actual deviation will usually be much better than the G64 value suggests.
 
A common mistake we see is users setting G64 P0.001 thinking they’re improving precision, but this actually disables CV in practice and leads to jerky, slow motion. On the other hand, allowing some tolerance (like P1.0 or higher) often results in better real-world accuracy, thanks to smoother movement and more stable machine dynamics.
To put it simply — when you unchecked “CV Tolerance” in Mach3, you were telling it: “I don’t care — just make it smooth.” Try letting simCNC do the same, and you’ll likely see performance similar to — or better than — Mach3.
 

Greetings! Thanks you for your extended answer 🙂

I haven't answer before because I haven't had the chance to go to the workshop to try it out. 

I set the CV angle to 121º and tried with some precision value (like P1.0, P5.0 and P10.0) and I didnt notice such a big difference between before and after (maybe 1 minute or 1:30). So, I continued looking for the possible culprit and I found that jerk was setted too low in my MotionKit options (because I saw 50000mm/s3 and I said "wao, that's a lot"). I put again 50000mm/s3 (and played with G64 precision) and now, i'm about 9 minutes, so is almost the same as mach3 (taking in account that the machine is running more smoothly than with Mach3)

I also detected a mechanical problem with my machine (is a homemade hobby CNC Router), that causes innacuracy in the Y axis because the ballscrew were deflecting Y plates. I remade these plates in 20mm 5083 Aluminium and now the problem is gone!! Now, im able raise acceleration from 500mm/s2 to 1200mm/s2 in both X and Y axis.

Taking in account these new parameters, how can I adjust jerk to have a good balance between smootness and speed? 

Thanks you a lot!

I’m glad to hear that most of the issues are resolved!

In fact, 50,000 mm/s³ is on the low side, although the ideal value depends heavily on the specific machine. You can even set it as high as 8,000,000 mm/s³, but at that point you essentially end up with a trapezoidal velocity profile similar to simpler motion planners. In my experience, a reasonable jerk parameter falls between 25,000 and 250,000 mm/s³. You need to listen to how the machine sounds during operation and adjust the jerk to strike the best balance between dynamic response and smoothness. Some customers even create two separate configuration profiles—one for higher dynamics and one for smoother motion—and switch between them depending on the job requirements.

Hello!

After a while, I tried to adjust the jerk to 100k mm3 and finally I adjusted the time to take similar to mach3, so i'm really happy with the result I get in a 3d profile operation. Im still trying SimCNC software but I find it so nice!!

Thanks you for your support!

Please also keep in mind that having control over jerk often makes it possible (depending on the drives used) to increase the acceleration limit.
For example, when configuring motors in Mach3 with a trapezoidal velocity profile, you essentially have infinite jerk. 
To achieve any level of smoothness, it's often necessary to set the acceleration limit quite low to reduce knocking, vibrations, and position deviations - especially on heavier machines, where I’ve sometimes had to set it as low as ~200 mm/s².
 
In simCNC, with the 'S' (S-curve) velocity profile, you can control smoothness and reduce vibrations using the jerk parameter. 
With good-quality drives, it’s often possible to drastically increase the acceleration limit (e.g. from 300 mm/s² to 5000 mm/s²). 
This no longer negatively impacts motion smoothness, and in high-feedrate machining or files with many G0 moves, it can result in significant time savings. 

PARTNERS:

 

USA

Germany

Slovenia / Bosnia

Spain

South Africa

UNI-CAM

The Netherlands

Portugal

Greece

  Distrib milionis logo

Hungary

Distrib logot

Bulgaria

Master

Kenya

Proteq Automation

Egypt

Germanelectronix

China

Jun Ma

Serbia

ALCO

Italy

LVL tech r

Denmark

Varntoft Dania

Finland