Pause during carve

How do I pause during a carve without having to start all over ?
Thx in advance.

Push the pause button (play button turns into a pause button while running)

If I shut down and turn off the controller will it pick back up where I left off at ? Or do I have to start all over ? Thx

Leave it running. Do not shut down the controller

Hope this isn’t hijacking, but I was just getting ready to post this question –
I can see needing to use pause fairly often given my hobbyist work habits and short attention span. Are there certain types of operations where using pause is “better” than others? Types of cuts that I should avoid pausing?

I wouldn’t really rely on “pause” in your workflow to be honest. If you know you’ll need to regularly stop the job to do something, it’s best to program it that way. Pause is more for - “oh crap is that not cutting where I thought?” or “Did I chip the end mill?” - pause to inspect.

Note pause does NOT pause immediately, it finishes out the GCODE line it’s currently processing - so if that happened to be a G02/G03 ARC it will finish the path before pausing.

If you know you’ll need to stop and either adjust work holding or measure/inspect. I’d break the job up into multiple parts. Do not risk being exposed to a machine mid-job and relying on “pause” - if you’re going to be interacting with the workpiece.

2 Likes

Thanks, Tim, I take your point, but this was more about two hours left on carve and momma just called to say supper is ready.

I have paused overnight and it just picked up where it left off. Wasn’t a problem. If you lose electricity then you will have a problem.

1 Like

So it’s ok to pause, shut router off, and leave power on to unit overnight?

Absolutely. My controller is generally on so I can load files to it on a whim when I amd multi tasking in the house.

Do you leave the monitor on all that time as well?

1 Like

Nope. I turn the monitor off

3 Likes

Thanks everybody. This is very helpful to know.

I have left my monitor on many times without a problem.

1 Like

I appreciate this thread. It appears, regarding the controller and display that it is ok to pause for extended periods of time,. Just be safe and turn off the router!. In another thread, users were discussing the stepper motors and if they were “holding” a position (micro step etc). Anyone have any comment regarding the stepper motors and pausing for extended periods of time. Heating up?, losing position, etc?
I have had my X50J (BB) for a week. I do 10 hour 3D carves. I also work, sleep and have neighbors who would like to sleep. So, pausing for extended periods will be necessary.

Also, there is some discussion regarding the display not connecting if it is not turned on before the controller. Is it likely that if you turn off the display after pausing, the display may not re-connect when you turn it on again?
Thanks.

Hey B.,

1. Switching milling motor off during program pause

You can switch off a hand router during pause, but this in most cases does not apply to a ModBus-controlled VFD and spindle. Cheap chinese VFDs like the Huanyang, when in ModBus mode, cannot pause the spindle except when the program tells it so (and it doesn’t during pause). So when letting the machine pause an active g-code program for a longer period, either you would have to let the spindle run during all the pause time, or you would forgo controlling the spindle through the CNC controller with Modbus and set the VFD to manual spindle control mode (which in most cases is not what you want). An exception are some VFDs from Omron/Hitachi, which have a ModBus Override mode. See here and here for details. I believe the VFD from @PwnCNC can also be offered in a version with ModBus Override switch, but I’m not sure if I remember correctly. So with such a Modbus override switch, you would be able to switch the spindle off during pause (or by the way, alter spindle speed).

2. Homing repeatability in case of shutdown or power off during pause

Usually it’s good to not rely on the CNC controller and the stepper motors retaining their state when pausing a job for longer periods. It’s better to always be able to resume an interrupted g-code program. For this, you need perfect homing or zeroing repeatability. The Standard (Original) Series Onefinity machines with the buildbotics-based Onefinity Controller have no limit sensors but rely on stall homing instead, which unfortunately offers no good homing repeatability.

With these machine/controller models, there are two ways to be able to get acceptable homing/zeroing repeatability in order to be able to resume an interrupted program:

3. Resuming an interrupted g-code program

Unfortunately, the Standard Series Onefinity Controller does not allow you to start a g-code program somewhere in the middle. But in case your program was interrupted – may it be intentionally or unintentionally by a power outage – you can either simply “mill air” for the part to the program that was already achieved until you come to the part that is still undone, or you edit the g-code program by hand (using a text editor) and cut away the portion that was already milled. In this case, you would need an acceptable knowledge of g-code programming because you would have to retain the modal commands at the beginning of the file or of the tool pass.

4. Preset the correct display resolution

The Raspberry Pi inside the Onefinity CNC Controller, when in stock configuration, is set to request the monitor’s capabilities like maximum resolution using EDID. This may fail in case the monitor is not ready at controller startup and result in a fallback to VGA resolution (which is not what you want, especially when using a touch monitor, because the touch device will then not be in sync with the screen content). So it needs to get the right resolution at boot time which is why the Onefinity manufacturer tells the users to first switch to monitor on, and only a few seconds later, the Onefinity CNC Controller.

When switching the monitor on and off later, the Controller should still know the resolution.

However always having to switch on the monitor first and the CNC controller only a few seconds later is not always desirable, e.g. in case you switch everything on with a common power strip.

In this case, you should know that there exists a hack that preconfigures the Onefinity CNC Controller to already know the display resolution at boot time, so you don’t have to worry to turn on the monitor first. You can find it here: Display resolution preset, but to benefit from it, you need to edit and save a config file in the Controller using the CLI. You first need to find out what the native resolution of your monitor is (see monitor’s manual or tech datasheet), and then you find the corresponding mode number in the list on the link provided, and put it into your Onefinity Controller’s boot config text file, and from then on it will always boot into the correct display resolution, even if the monitor is not on at startup.

1 Like

Thank you much for all the info.
I use workpiece coordinates. To do all bit changes I start the project using a V bit to create a dot at a known coordinate (100mm) away from the “carve”. With each bit change, I zero all three axes at the known point, and then move to my workpiece zero (ie, 100mm back). Then re-zero the x and y.
I would use this method to recover from any power failures that happen or if the pause caused some issue . (After reinitializing the system and homing)
I suppose a 3 axes probe would be simpler and accurate, assuming the workpiece has a corner. It is just hard to be confident in something that is intangible (the invisible point calculated as zero from the probe). The dot is tangible, unless it fills with sawdust lol.
My biggest takeaway from this discussion is that you don’t have confidence in the stepper motors “holding” their position accurately for extended time during a pause. Anyone experience this?
Again, Thanks

Hey B.,

most people in this forum reported that they paused the Standard (Original) Series successfully for hours and over night without problems. Problems that appeared with changed positions seemed to always have other reasons.

But some people reported unexpected power outages or reboots over night. They may be unrelated to the controller, but cause your positions values to be lost and when stepper motors are unpowered, they loose their electromagnetic detent and their magnetic detent is what remains, which is usually not enough to make sure they keep the position, especially the Z axis can change the position through gravity.

My approach is rather general. I think I always want to be able to resume an interrupted g-code program. For this you need accurate positioning repeatability (that’s why I mentioned the methods above). Generally, since it is an open-loop stepper machine, a position shift of any motor will remain unnoticed by the controller. Also in its stock configuration, the Standard Series with their connectors with missing serious cable management and even strain relief and the unshielded stepper cables often have general unexpected position change issues during operation due to connector problems or introduced EMI. See search results for plunge workpiece for examples, and Troubleshooting: Rail is getting hung, stuck, or out of alignment (x35/x50 machines) and Z Axis Moving Unexpectedly (Cutting too shallow or too deep) for details on the possible causes of such issues. I think if they can have such errors during operation, they can have the issues also during pause.

The dimensions of the 3-axis Touch Probe are set on the SETTINGS page and automatically subtracted when probing XYZ so the workpiece zero is exactly where the corner is (see also Onefinity Touch Probe Fine Tuning to achieve best possible accuracy). People who want to restrict the use of the 3-axis Touch probe to once after startup of the machine (to replace inaccurate stall homing) use a fixed block or jig, that can be away from workpiece, that is always there and never changes. Its front top left corner is then the absolute point of reference.