Fusion 360 - Bit Changes

Does anyone know if Fusion 360 will pause and allow a bit change or does it simply ignore it.

I did a project and it looks like it simply ignored it and kept on going.

Is this normal or do I need to do something to make sure it does a pause.


I don’t have my machine yet so take this with a grain of salt until someone else chimes in that knows more than me.

My understanding is that the standard practice is to save each toolpath as it’s own file. That way you can jog or whatever during tool change with no issues.

Even if it paused you would need to program something custom to raise the z so you could remove the bit and add other code for a bit setter… Do separate files for each tool

VCarve works with multiple tools in a single file - but it’s very limited. You can’t move anything when it’s paused, and it has to re-probe at 0,0 - which might not work well. I’ve been meaning to look into the post-processors and/or the tool change code in the 1F firmware to see if something more flexible could be arranged. But for now, creating each tool in a separate file seems to be the way to go.

I think I found an option to allow a tool change, however I think keeping the files separate would be a cleaner way of doing it.


Martin - I save all my files that use different bits as separate gcode files. That lets me load them and adjust the machine at my leisure. I don’t know if the BB post processor supports tool changes or not, but I know Fusion does in general.


Is it expected behavior for the post processor not to be outputting tool selection code (ex T1)?

It outputs a comment (ex (T1)), but never any actual commands.
Also the comment is only ever on the first section.

To answer my own question after looking at the post processor code.
The easiest option without touching the post processor is to explicitly insert a Force Tool Change operation.

The other is to tweak the post processor to always output the tool change code.
Really I think this,

        if (!isFirstSection()) {
            writeBlock("T" + toolFormat.format(tool.number), conditional(getProperty("useM06"), mFormat.format(6)));
        } else {
            writeComment("T" + toolFormat.format(tool.number));

Should really just be,

writeBlock("T" + toolFormat.format(tool.number), conditional(getProperty("useM06"), mFormat.format(6)));

This should be harmless in our case because there is no tool changer so I’m sure BuildBotics just ignores the code. (Or it can be paired with the useM06 option to prompt the user and force run a procedure in BuildBotics).