CNC stopped or disconnected mid-job: causes and fixes
A machine that stops, disconnects, freezes or resets has an electrical or software problem, not a mechanical one. The two leading causes are static from dust collection and the computer or USB link dropping. Both are diagnosed for free by running the job again with one thing changed.
The machine stops part way through a job and does not continue. The sender reports a lost connection, or the controller screen goes blank, freezes or reboots, or an alarm appears with nothing obviously wrong. The spindle is often still running.
first
Most likely causes
- Static discharge from dust collectionMost common
Dry dust moving fast through plastic hose builds charge until it jumps to something. Worst with MDF, acrylic and epoxy, and in dry air. Carbide 3D name it as the most common cause of the disconnects they see. - Electrical noise from the spindle or routerCommon
Worst with a VFD spindle, but a worn brushed router arcs badly too. Usually shows up as a disconnect the moment the spindle starts or stops. See electrical noise and EMI. - The computer went to sleepCommon on USB machines
Sleep, or USB selective suspend, drops the port during a long job. Sienci, Inventables and OpenBuilds all document this, and a Windows update can quietly reset the setting. - A loose USB cable, port or controller boardCommon
Sienci name an Arduino sitting loose in its socket as a frequent cause. Reseat everything before buying anything. - A false limit or homing triggerOccasional
Noise on a long unshielded switch lead, or a normally open switch where normally closed would have been safer. See homing and limits. - Mains brownout or a marginal circuitOccasional
Watch whether the shop lights dim when the dust collector starts. A UPS on the controller and computer both tests and fixes this. - A firmware bugOccasional
It is free to check and it has been the answer more than once. Read the release notes before you buy a single ferrite.
Diagnostic steps: isolate it for nothing
Each step changes exactly one variable. Do them in order and stop when the fault disappears.
- Check the firmware release notes. Free, and it has been the answer in documented cases where the vendor's own support first suggested EMI.
- Does it fail at the same line every time? Run the same file twice. The same place twice is a software or G-code problem. Different places is electrical.
- Run it with the dust collector off. Everything else identical. This is the highest yield single test on a hobby machine.
- Run it with the spindle off, Z zeroed safely above the stock. If it completes, the spindle is the source.
- Start the spindle with the machine stationary. If it disconnects with no axis moving at all, you have isolated it completely.
- Move the spindle and dust collector to a different circuit from the controller and computer.
- Pull the cables apart. Spindle cable out of the drag chain and away from everything, even temporarily and untidily. It proves or disproves the theory in one run.
- Try a different computer, if you stream over USB.
Fixes
- Bond the dust hose. A bare wire inside or spiralled around the hose, tied to the machine frame and to the building ground at one point. Anti-static hose does the same job for more money.
- Turn off sleep, hibernation and USB selective suspend on the streaming computer, and use a short, good quality USB cable with a ferrite moulded in.
- Separate the circuits so the spindle and dust collector do not share a branch with the controller and computer.
- Re-route the spindle cable away from limit, probe and USB wiring, and terminate its shield at both ends if it has one. See electrical noise and EMI.
- Wire limit switches normally closed and add the pull-up and capacitor the firmware documentation specifies.
- Update the firmware if the release notes mention your symptom.
- Move off USB to Ethernet or an onboard controller if nothing above holds, which is what Sienci and Carbide 3D both end up recommending for stubborn cases.
Why it happens
A controller is a small computer whose inputs run at a few volts, sitting next to a spindle that switches hundreds of volts thousands of times a second and a hose that builds a static charge until it jumps. A disturbance too small to notice anywhere else in the shop is enough to make a USB chip drop its connection, a logic input read a false limit trigger, or a processor reset. The controller cannot cut with a corrupted or missing instruction stream, so it does the safe thing and stops. That is the key difference from lost position: this failure announces itself.
Prevention
- Bond the dust collection and route the spindle cable before the first cut, not after the first disconnect.
- Dedicate a computer to the machine with sleep and updates turned off, or run from an onboard controller.
- Keep firmware and sender versions noted, so a problem that starts after an update is traceable.
- Fit a UPS to the controller and computer if the shop lights dim when big loads start.
Recovering the job
Whether you can restart depends on your sender. Some offer a start from line feature that reconstructs the spindle and accessory state up to the resume point. Others have no way to resume at all. Either way, re-home first if your machine has homing switches, because your work offset is usually still valid. See recovering a job.