Avoiding/Recovering from CM Crashes

I’ve recently been running longer jobs (10+) on my Nomad and have had to find some strategies for recovering from CM crashes during the run. This could be partially due to my hardware, I’m running the mill using a Surface Pro 3, which works great when on battery power but always crashes when I plug in the power adapter. It will also crash one to two hours into a job if I leave it plugged in.

I know that @mbellon mentioned that separating the outlet used to power your computer and your mill is a good idea. I’ve done that but I haven’t taken the next step to connect the computer to a UPS. Mark, can you comment on the model of UPS you use, what to look for in a good UPS and if you’ve had any crashes when using your UPS?

I’ve been able to run for 7 hours continuously without trouble when running from battery on my tablet. The two best strategies I’ve found for continuing a job after a crash are:
1.) Write out all tool paths from Meshcam separately (roughing, finishing, waterline, pencil) so that I work with them independently.
2.) If a crash occurs mid-job, measure the depth of stock remaining and rewrite the tool path with the MeshCAM stock defined to this amount. This will leave the completed geometry sticking out above the stock so the retract height must be set correctly above the geometry to avoid hitting it while jogging.

I read @FlatBaller mention somewhere that he’s been able to hand edit the g-code to recover from such crashes. This would save time as well but I haven’t been brave enough to try it after spending so much time running a job. More strategies on this topic would be great to hear and hopefully we can avoid wasting stock due to this issue once we have defined the tools needed to deal with it.

1 Like

The simplest way I have found to do the hand editing is always ensure that the diagnostics in the lower left corner of CM are showing when I do a cut, so that I can see the line number.

Then I open the tool path file (of the failed cut) in a good text editor.
Go to the line that CM said it was at, then do a search for the previous ‘(’.
MeshCam does a good job of commenting each ‘layer’ start.
Once I find the layer start, I delete everything above that except the prolog of the file (first ~10 lines or so)

Save it as a new file, usually the same name appending the % starting point.
Now load and run this new file without changing anything on the nomad itself.

Also, I sometimes use CAMotics to visualize the tool paths, and then play with the line number slider to see where I want to start/restart a job.

2 Likes

1.) Write out all tool paths from Meshcam separately (roughing, finishing, waterline, pencil) so that I work with them independently…

This is a useful work flow. A bit more management but the isolation of the G codes is useful… especially for restart situations.

I know that @mbellon mentioned that separating the outlet used to power your computer and your mill is a good idea. I’ve done that but I haven’t taken the next step to connect the computer to a UPS. Mark, can you comment on the model of UPS you use, what to look for in a good UPS and if you’ve had any crashes when using your UPS?

When dealing with crashing and other issues with CNC, the very first thing to do is use a neutral/ground checker - if you don’t already have one, get one; they are cheap. Check all of the sockets. If any of them aren’t good - FIX THIS IMMEDIATELY - it is a potentially fatal situation. Not comfortable doing it yourself? Get an electrician in ASAP.

Without proper grounds and neutrals, all bets are off as to the kinds of nasty problems that can occur.

OPTION: If you do get an electrician in, ask about having a local earth ground installed. This is relatively inexpensive and ensures the minimum problems due to ground possible.

It’s important not to push a “leg” - all of the sockets on a circuit feeding into a single circuit breaker - too close to the breaker rating. Slow blow, fast blow - don’t push it.

Motors generate some of the nastiest spikes and noise problems you can possibly imagine. With CNC, the motors are constantly changing their current draw and this makes the “usual suspects” motor issues even worse.

Motors and computers generally do not get along at all.

Once we know the sockets are good we introduce PHYSICAL ISOLATION. The simplest form of physical isolation is getting the sensitive computer elements on a “leg” - circuit breaker - different than the “leg” that the motors are on.

Physical isolation is an ideal. Even so, we want to protect our equipment from potentially hostile electrical issues. The best way to protect a computer is an Uninterruptible Power Supply (UPS). This isn’t about how long the machine can run after the power goes out - it’s about the electrical isolation one achieves due to their operating characteristics and that the machine can shut down quiescently (no sudden power drops) when the power drops.

Which UPSen do I recommend?

I use Schneider Electric - AKA American Power Conversion (APC) - for UPSen when I consult for CNC setups.

I’ve also used Tripp. CyberPower passes all of my research but I haven’t used them as yet.

Typically, I install APC Back-UPS XS 1300 or 1500; Smart-UPS when high end stuff is necessary. Something like the APC Back-UPS BE750G is a fine choice.

Outside of known quality, replaceable and recyclable batteries are important both in term of cost saving - they do wear out - and for the environment.

The Nomad should, ideally, also be behind some sort of filtering - not just a surge suppressor. The fusion of computer and motor control makes the Nomad an “interesting” power challenge. Having a really good ground (and neutral) that very important.

It’s OK to hold off on this. Ensure your grounds and neutrals, use two “legs” if at all possible, and get the computer behind a UPS first.

Most UPSen have two sides - battery and filtered, the former having the highest quality power as well as battery back up - but I’m sufficiently paranoid that I wouldn’t put a Nomad on a UPS (due to the motor element) even on the filtered side. I would call APC (or the UPS company you choose) - and ask them if they are OK with a motor element (small) on the filter side.

A power conditioner is the common choice for protecting equipment with “high tech” stuff inside (e.g. the Nomad (a small motor and a small embedded computer), audiophile equipment, flat panel TVs, game consoles). They provide filtering, isolation and surge suppression that protects the MOVs from wear.

Fuhrman and Panamax are my usual choices for power conditioners. The Nomad is pretty small so high end equipment is unnecessary. A Furman M-8X2, Fuhrman M-8Dx, Panamax MR4000 and Panamax MR4300 are appropriate.

Oh, cheap UPS cables with crap connectors can also be a source of hangs. I would look into using a good USB2 cable. Make sure they connectors seat well.

By-the-by, surge suppressors are of questionable value and… they wear out! Unless one has something like a Panamax, the MOVs used in surge suppressor become worthless in time. Also, surge suppressors - in general - provide little or no filtering to protect the power supplies from strange problems.

mark

2 Likes

Yesterday I had a problem on line 18000 of a job. I opened the NC file and I don’t see the line numbers shown. Can you tell me how you map the number given by CM to the line in this file? For instance I’m not sure if the commented lines are considered in the line numbers so I’m not sure how to assign them.

A good text editor (not notepad) has a feature that will show line numbers automatically for you. an example follows:

Or you can do a search like this