Preventing movement before the spindle has reached its commanded speed
A CNC spindle should be at the requested speed before the cutting tool enters the material. When the controller starts moving immediately after sending the spindle-on command, the first move can happen while the spindle is still accelerating. That can cause rough entry cuts, overloaded tools, broken bits, or unexpected marks in the workpiece.
|
Key idea: Dwell is a short programmed pause between turning the spindle on and beginning the cutting move. In many controller setups, the cleanest solution is a spindle-on delay or “wait for spindle” setting rather than manually editing every toolpath. |
Why a spindle needs time before cutting
A VFD-controlled spindle does not instantly jump from stopped to full speed. The VFD ramps frequency and motor speed over a short period. The required time depends on the spindle, VFD parameters, commanded RPM, controller behavior, and the acceleration settings in the drive.
The spindle may sound as though it has started while it is still below the commanded speed. A toolpath that begins cutting during that ramp can place a sudden load on the cutter before the spindle has developed the intended cutting conditions.
· The tool may enter the material before the spindle reaches speed.
· Small end mills and delicate carving bits are especially vulnerable to shock loading.
· A lower-RPM operation may require more delay than a high-speed operation.
· A controller delay applies consistently to jobs, while a hand-edited G-code dwell may apply only to one file.
The easiest fix: use the controller spindle-on delay
Many CNC controllers provide a setting that pauses after the spindle is commanded on. Look for names such as Spindle on delay, Spindle start delay, Dwell after spindle start, or Wait for spindle at speed. This is usually preferable to inserting a dwell manually into every file because it keeps the behavior tied to the machine configuration.
Sienci gSender, SuperLongBoard, and AltMill
For Sienci Labs controllers using gSender—including SuperLongBoard and AltMill workflows—the setting is commonly shown as Spindle on delay. In the underlying GRBL settings, this is associated with $392.
Open the PwnCNC setup guide for the Sienci controller and look in the spindle/laser controls section for the spindle-on delay setting: Sienci Labs SuperLongBoard / AltMill setup guide
One PwnCNC support case involved a VFD configured to take approximately six seconds to ramp up. The AltMill began moving sooner than that, so an 11-second spindle-on delay was entered in gSender. The exact number is not universal; it was chosen to give that particular spindle and VFD enough time to reach speed with margin.
|
Do not copy the number blindly: Start with the actual ramp time of your spindle/VFD, then add a small margin. If the spindle reaches speed in six seconds, an 11-second delay may be reasonable for that setup—but another machine may need less or more. |
How to choose a starting delay
1. Disable cutting and remove the tool or keep the tool safely above the workpiece.
2. Command the spindle to start at the RPM you normally use.
3. Watch the VFD display, frequency, or other available speed indication while the spindle accelerates.
4. Measure how long it takes to reach a stable operating speed.
5. Set the controller’s spindle-on delay slightly longer than that measured ramp time.
6. Run an air cut and confirm that the machine waits before the first cutting move.
7. Make a shallow test cut in scrap material before returning to production work.
Avoid making the delay unnecessarily long. A delay that is too short may allow premature cutting; a delay that is excessive simply adds time to every toolpath. The goal is a repeatable pause long enough for the spindle to reach speed.
Adding a G4 dwell in G-code
A second approach is to add a G4 dwell after the spindle-on command. A typical sequence may look like this:
M3 S18000
G4 P11
G1 X... Y... F...
In this example, the controller turns the spindle on, pauses, and then begins the first cutting move. However, G4 syntax and time units are controller-dependent. Some controls interpret P as seconds; others use different units or a different dwell format. Verify the syntax for your controller before relying on it in a production job.
|
Best practice: If your controller has a global spindle-on delay, use that first. Use a G4 command when you specifically need a delay inside a particular program, when the post processor inserts it correctly, or when your controller does not provide a suitable spindle-start setting. |
VCarve and post-processor workflows
VCarve generates the toolpath, but the controller or post processor determines how the spindle command and the following move are written. If your machine begins moving before the spindle reaches speed, check these in order:
1. Confirm the spindle reaches the requested speed when commanded manually by the controller.
2. Set the controller’s spindle-on delay if that option is available.
3. Check the selected VCarve post processor and whether it supports spindle-start delay or G4 output.
4. Inspect a small section of the generated G-code before running the file.
5. Test the file above the workpiece, then in scrap material.
Do not assume that inserting G4 into the VCarve toolpath editor will automatically produce the correct result. A post processor may remove, relocate, or format commands differently. The safest workflow is to configure the machine-level delay first, then use post-processor customization only when a job truly requires a special dwell.
What about MASSO and other controllers?
The exact menu names vary, but the same principle applies. Look for a controller setting that defines spindle startup delay or confirms that the spindle is at speed before motion begins. If the controller supports an “at speed” input or feedback signal, configure and test that function according to the controller documentation.
· Controller spindle-on delay — controller configuration — best default for every job on the machine.
· Wait-for-speed / at-speed feedback — controller and VFD configuration — useful when the controller can verify actual spindle status.
· G4 dwell in G-code — post processor or individual file — useful for a specific program or unsupported controller setting.
Dwell will not fix every spindle problem
If adding more delay does not solve the issue, the problem may not be timing. Before increasing the delay repeatedly, verify the underlying spindle system:
· The commanded RPM and actual RPM agree.
· The VFD is receiving the intended run and speed commands.
· PWM, analog, or Modbus wiring is connected to the correct controller terminals.
· The VFD parameters match the controller’s control method.
· The spindle is not limited by an incorrect minimum-frequency or speed setting.
· The spindle is not overheating or losing speed under load.
For a broader spindle setup and compatibility review, see the PwnCNC Spindle System
If you are adding slower spindle speeds for automatic tool changes, review the available PwnCNC ATC System
Safe testing procedure
1. Keep the spindle disabled while changing settings or wiring.
2. Remove the cutter or position it safely above the workpiece.
3. Start the spindle at the intended RPM and observe the VFD.
4. Confirm that the delay occurs before any X, Y, or Z cutting motion.
5. Run the program as an air cut.
6. Test on scrap with conservative depth and feed settings.
|
Stop immediately if: the spindle does not reach speed, the VFD reports an alarm, the tool begins moving before the delay ends, the RPM changes unexpectedly, or the spindle becomes unusually hot. |
Final checklist
· Find the controller’s spindle-on delay or wait-for-speed setting.
· Measure the actual spindle ramp time instead of guessing.
· Set a reasonable margin above that ramp time.
· Use $392 / Spindle on delay for supported gSender, SuperLongBoard, and AltMill setups.
· Verify G4 units and syntax before inserting a manual dwell.
· Run an air cut and a scrap test before cutting the final workpiece.
· Treat persistent RPM or communication problems as a separate spindle/VFD troubleshooting issue.
Need help choosing the right setup?
The correct dwell depends on the spindle, VFD, controller, speed-command method, and the way the machine is configured. If you are unsure which setting applies, send PwnCNC support the controller model, spindle/VFD model, commanded RPM, VFD ramp behavior, and a short video of the first move. That information is far more useful than simply reporting that the spindle “sounds slow.”
A short delay is simple to configure, but it should be based on what the machine actually does. Once the spindle reaches speed consistently before the tool enters the material, the machine can cut more predictably and delicate tooling is less likely to be shocked at the start of a move.








