Skipping unnecessary trips to the bitsetter?

I’m working on a project that involves shapeokoing out the same object over and over. The job I’m running only uses 1 bit. All my pieces of stock are the same thickness, and I have a repeatable way to place the stock at the same zero point. Currently, it looks something like this.

When you turn on the machine, and “initialize machine”, that prompts for a tool change and then makes a trip to the bitsetter. Load your job and start it. It starts out asking for a tool change, then makes a trip to the bitsetter. When the job is done, the machine moves to the back. I pull out the workpiece and put in a new piece of stock and start the job again. That starts off with another prompt for a tool change and another couple minutes of bitsettering.

Are there any options in carbide motion to skip any of these? Does it have the ability to remember the currently installed tool between restarts of the carbide motion software, or between being connected to the machine, or even between jobs while still connected to the machine? The machine seems to remember my zero setting fine between all of these. I have not seen anything that remembers anything about which tool is present in the spindle or how long it is.

You should be able to turn the bitsetter off/on in the settings right before initializing machine

2 Likes

What Vince said. Plus, you may find that you don’t “need” the Bitsetter much.

But, it IS quite handy for multi tool jobs.

1 Like

I understand that it can be a useful accessory. That’s why I got it. It seems that the software just kind of defaults to “oh, there’s a bitsetter. Lets see what it has to say.”

I’ve been there before. Editing g-code is daunting at first because of the bad things you can do, but knowing the commands and how they work helps. There are a lot of websites that give a definition of the g-code commands, but this one seems to have the most detailed explanation of the most used of them: https://howtomechatronics.com/tutorials/g-code-explained-list-of-most-important-g-code-commands/

This one has a complete list, with a simple explanation: G-Code and M-Code Command List for CNC Mills [ Examples & Tutorials ]

But for what you want, you can start small and just learn the g-code commands you need to eliminate for this repetitive work. You are going to want to get rid of the following commands for this repetitive work.

To be clear - you should save this modified g-code file with an appended name like: [filename]-repeat.nc or.gcode, whatever the extension is you are using. This will be the file you run for the 2nd through nth time of your production run.

You will want to remove the following commands at the beginning of the code:

M6 or M06 - this is the tool change command. Typically seen as: T[tool number] M6, so “T105 M6” This will eliminate the BitSetter cycle.

M3 or M03- This is your spindle speed. This eliminates your dialog box if you are not using the BitRunner. Typically seen as: M3 S[spindle speed], so “M3 S24000”. If you are using the BitRunner, I would leave it alone. I run my spindle manually, so I got rid of this command to eliminate the dialog box. Here is some code generated with MakerCam. Everything in bold is my comments.


(Generated by PartKam Version 0.05)

G20 <== Dimensions are in inches. G21 is for mm.
G90 <== Absolute programming. X1 Y1 means go to X=1" Y=1", not go 1" in the X and 1" in the Y direction from current location.
G40 <== Tool cutter compensation off. Honestly, not sure, never looked it up, but I don’t think it needs to be there.

(01 2500SC)
G0 Z0.1
T0 M6 <== Change to tool number 0
G17 <== Select X-Y plane. Some g-code generators have this, some don’t.
M3 <== Turn on spindle in the CW direction, no speed indicated.
G0 X0.731 Y8.183
G1 Z-0.05 F30
G3 X0.7502 Y8.1805 I0.0193 J0.072 F45


That’s it for the beginning of the code. Now to the bottom of the code.

M5 or M05 - Spindle Stop. If you are not using the BitRunner, you can delete it. I don’t know how CM would respond if you did have the BitRunner and deleted it.

M30 - End Program. This is the command that tells CM that it is done, and CM sends the spindle back to the home position. I got rid of it, and instead just have the last command to raise my Z to 1" above stock for all of my programs. If you are feeling adventurous, you can figure out how far back you want it to go to clear your stock so you can put a new piece in, and have it go up to a safe height, then back to get out of the way. You have to be careful with doing that, because if you set up in a different location, that backing up could cause problems. If you do that, you should just delete the modified program or note that you should only use it in one location on your wasteboard.

So, the last commands look like this:


G3 X0.0072 Y9.004 I0.1527 J-0.3946
G3 X-0.0868 Y8.8712 I0.2782 J-0.2967
G3 X-0.12 Y8.7137 I0.3575 J-0.1575
G0 Z0.1 <== Change this to “G0 Z1” or “G0 Z25” for mm to move up to 1" above zero.
M5 <== Probably best to leave alone with BitRunner, delete if manual spindle control.
M30 <== Delete to stop spindle from homing at the end of the program.

As far as editing the gcode, that was the direction I though this would be heading. I was hoping for something more magical and user friendly. I’m not scared to sed and nuke all the lines ending with M6. It would be handier if I didn’t have to resort to that and then keeping around 2 versions of the gcode and remember which one to send to the machine.

I am also in the same situation often, I think a simple solution would be to add a button in CM “Same bit” or similar that would avoid again the trip to the bitsetter. Another thing that bug me is when I want to cancel a file execution either after PAUSE or just after the trip to the bisetter in a file RUN the only way out is STOP, then another initialization and trip to the bitsetter twice… I understand when using STOP in an operation you have to initialize, but after a PAUSE or some other cases, you could just do a CANCEL and return to the main menu without an initialization.

1 Like

I agree with you regarding the Pause ==> Stop buttons not having to home, but someone in here - probably @WillAdams - said that most of the time when people are hitting the pause ==> Stop buttons, it is because something went wrong, and it is prudent for the machine to re-home to ensure that the machine is reset in case of missed steps or belt skipping.

I too am frustrated with the homing cycle because I realize I need to make a simple change, but since I already hit Start, I am stuck with a homing cycle, but I understand the reasoning. This program was made for new people to CNC, and it tends to baby us a bit.

Maybe an option is to have an additional check box in the settings menu? One that asks us what to do when we hit Pause ==> Stop?

On Pause ==> Stop, do:

Move to Z=0
Home Z Only
Home X, Y, Z

Pause is used to temporarily halt the machine, allowing one to check something or make some minor adjustment — it should be possible to resume thereafter

Stop is used to end the cut, presumably because something went wrong — it should be necessary to restart from a known state, and if one presses Stop, it is because one doesn’t want to continue.

Will, I understand that since a long time. A few days ago, i ran a tool path and pause it to verify and found an error in my tool path design, just want to abort and run another tool path, the software knows the exact position of my stepping motors but the only way to cancel/abort is STOP. Yesterday I was doing a repeating jobs with a small Z adjustment between pieces, a few times I just press Start job, seconds later realizing that I forgot my Z adjustment, only solution again is STOP, with the initialization… what a pain. May be I should unbox Bisetter more often… or may be I should look for another code sender? If you want make a lot of protection for the new comers, a possibility would be an advance user level like many softwares, but I understand it is more complex in coding…

Will, another case of too many trips to the bitsetter, a job requiring 10 tool paths to realize and one bit change, I will have 8 trips to the bisetter for nothing. I am using the free version of Fusion360, so every tool path is a different file. Since there is at least one change of bit, I don’t disable the bitsetter. A “Same bit button” would be very very nice.

Fusion will run multiple toolpaths for the same tool. I do it all the time on my hobbyist version.

1 Like

Thanks I will look how to do it, I though I have read it was one of the restriction of the hobbyist version, so never tried to do it differently.

Have you timed it with a stop watch? Perception versus reality and all that.

1 Like

Are these 10 tool paths all in one file? If not, why not?

Will, I was generating one file per tool path because when I tried to generate them in one file, there was an error message in Fusion telling it required the paid version, but what I didn’t read carefully was for multiple tools, so as Griff wrote a few messages up, it can be done for multiple paths with the same tool. I selected a few tool paths and executed the post process command and it works, thanks to Griff. But the “Same Bit Button” would still be nice in other cases.

I use Fusion 360 and Cut2D Desktop. Interestingly, Cut2D does not have the bitsetter visits for the same tool. I haven’t checked what happens for a different bit,
John

This topic was automatically closed after 30 days. New replies are no longer allowed.