Streamlining Workflow for a 250 Sheet / Setup Job

Before the M0 pause, you could add an M5.
You’d need to start the spindle again after you resume. Another Manual NC program at the beginning of the next toolpath with an M3 should do it. I’ll look to see if there is a way to handle that in the post processor.

per the bitrunner documentation… ?

“An M3 S command of 1000 or greater
(1000 is the RPM) automatically turns
the router on. M3 S2800 is an example M3 S command. Alternately, you might see commands
written like this: M3S2800.”

If you never changed the speed, it should remain what it was. No harm in adding the S18000, though.

@neilferreri

G53 G0 Z-0.2,G53 G0 X-0.2 Y-0.2,M5,M0

did not shut if off before moving to “home”

Which is odd because… when you press “pause” in CM it shuts it off so even absent the M5 shouldn’t the M0 cause it to pause and turn off too?

The moves happen before the M5. Just put the M5 before the G53 moves.

You mean like this?

M5,G53 G0 Z-0.2,G53 G0 X-0.2 Y-0.2,M0

Just tried also didn’t work.

What didn’t work? The router didn’t stop?

Correct, it went to the home position with the router still on.

Here’s the NC file if you want to check.
00-02.nc (636.2 KB)

I’d add the M3 line at the beginning of the following operation.
Does it pause and wait for you to resume?

If you send the M3 and M5 commands through the MDI, does it work?

Yes it does pause, go “home”, and wait for me to press start again. Also… I just manually opened the Gcode in a text editor… it’s interesting that the M3 line is in the previous operation… here is how it looks in Fusion.

I’ll try sending M3 and M5 manually next, but based on that Gcode it seems that the M3 line is executing in the wrong spot.

That is odd.

I was messing with a post processor the other day. I can get it to add the M3 at the beginning of each section. I won’t be able to share any of it until probably Monday, though (out of town).

Motion should shut the spindle off on an M5… I’ll be anxiously awaiting your MDI test results.

Yes upon manually sending M5 it shuts off the spindle… so my guess as to whats going on is the M3 S18000 is executing before the next operation?

I looked into this a bit last night. I think it should work.
Can you confirm that this test file does not work?
Multiple Setups NC v3.zip (79.8 KB)

Hi Neil yes I can confirm the behavior is the same from that file.

Here is the .NC that it posted
1001.nc (1.4 KB)

Here is a video of the behavior:

1 Like

Have you ever used another sender?
CNCjs, UGS, bCNC, etc? I have a hunch.

No, but I just intstalled CNCjs fumbled my way through the application and you are correct it executes the M5 spindle off command and then the subsequent M3 command in the correct way.

So… what gives with CM?

1 Like

Ok, so hunch confirmed…it’s Motion.

Motion intercepts every command, interprets it, and passes it on to the controller. The other senders mostly stay out of the way.
I don’t know enough of what actual happens in the black box to be able to answer completely.
Seems like a bug in the way Motion handles the M0 or buffered commands.
@robgrz

@MarkDGaal Here’s a super simple test to prove the issue. I don’t have a BitRunner, but, based on what you said, I don’t think this will work with Motion.
It should:

  1. Turn the spindle on for three seconds

  2. Turn it off and pause to wait for a resume

  3. On Resume, turn spindle on for three seconds

  4. Turn off spindle and end program

M0_spindleTest.nc (51 Bytes)

1 Like

@neilferreri Correct it does not turn it off when waiting for a resume. Instead it stays turned on and waits for the resume; however, it does shut off when it ends the program.

1 Like

@robgrz or @Jorge are we doing something wrong here? Seems like automating a workflow like this should be exactly how one should use bitrunner?