UPDATE: Beta release is available. Read more here
I wanted to share a change we will likely roll out to Carbide Motion soon. It’s something we’ve had on the drawing board for a long time, but we never wanted to make a breaking change to the workflow.
- CM will begin measuring the tool using BitSetter after you set a Z zero, whether by touching off or using a probe.
- It will no longer be necessary to load a tool and measure it when you initialize the machine.
- It will no longer be necessary to load a tool only when you press the “Load Tool” button.
- There will no longer be popups before jogging to tell you not to change the tool.
- You will not be able to download CM without clicking OK to an obnoxious popup pointing to a blog post summarizing this.
- There is no change if BitSetter is disabled.
This is a deep change, so we were also able to go into the BitSetter and initialization code to remove some of the delays that give the spindle time to spin down. (They’re not removed; we now track the time of the movement and only dwell for the remaining time)
Why are we doing this?
We’re moving the moment that we use the tool measurement closer to the moment that we measure it, which makes it harder for someone to change the tool at the wrong time.
Again, this is something we’ve wanted to do for a long time, but people don’t like change, so we kept putting it off. (I’ll skip the straw that broke the camel’s back)
When does the tool get measured now?
The tool is going to be measured with BitSetter every time you set a Z zero:
- With a BitZero
- By clicking “Zero All”
- By clicking “Zero Z”
- By entering an offset and pressing “Enter”
The spindle will then return to the prior X/Y position, with the spindle retracted to the top.
What does this mean for normal use cases?
1- If you start the machine, set a zero and run a CM project
- Initialize the machine. There is no need to measure the tool.
- Go to jog, set zero, tool is measured.
- Run the program, tools are measured normally.
There is no real change here; the initial tool measurement is deferred until the zero is set. Some popups are avoided.
2- Set the zero once, then never again. Start the machine and run a CM project
- Initialize the machine. No need to measure a tool.
- Run the program, tools are measured normally.
This should be a net win, with the initial “Load Tool” process eliminated. Some popups are avoided.
3 - Start the machine, set a zero, and run a custom program without an M6 tool change
- Initialize the machine. There is no need to measure the tool.
- Go to jog, set zero, tool is measured.
- Run the program, no tool is measured.
No real change here; the initial tool measurement is deferred until the zero is set. Some popups are avoided. (We’d call this a “Winston Workflow” that is not frequently used)
4 - Start the machine and run a custom program without an M6 tool change
- Initialize the machine. There is no need to measure the tool.
- When you click the “Run” button, CM mandates that you hit the “Load Tool” button to measure a tool. This only happens the first time the program is run.
- Run the program, no tool is measured.
There is no real change here; the initial tool measurement is deferred until you try to run the program. Some popups are avoided. (We’d also call this a “Winston Workflow” that is not frequently used)
What we need
We’ve discussed this a lot internally, and we’re at the point where nobody can come up with any practical use case where this is a net negative. We’re 90% sure this is going to happen.
This is likely a one-way change to the code, so once we go any further, there’s no going back. Before doing that, we wanted to post here for feedback. Thoughts?
(I’ll take a “like” on this post as, “You guys are genius, DO THIS!!”)
PS- This is a single-issue thread, so I’ll delete off-topic replies to keep it on track.