Easy-Z Tool Setter Problems (what is the proper steps to use it)

Hey Dean,

you can also use the T command many lines before the M06 command.

1 Like

Agreed, but I assumed this was a manual based on how he described his scenario, so went with the most common usage scenario… Similar to what you may find in Vectric files…

Hey Dean,

Spaces and tabs are allowed anywhere on a line of code and do not change the meaning of the line, except inside comments. This makes some strange-looking input legal. The line G0X +0. 12 34Y 7 is equivalent to G0 x+0.1234 Y7, for example.

– Source: NIST RS274NGC G-code Standard

The tool is not changed until an M6 is programmed (see Section M6). The T word may appear on the same line as the M6 or on a previous line. It is OK if T words appear on two or more lines with no tool change. Only the the most recent T word will take effect at the next tool change.

PS: Masso says:

WARNING: The T value must precede the M06 or unpredictable results may occur. Please see the video below for additional information

– Source: Masso Documentation: Tool change

But this is Masso-specific. According to the NGC274 standard, it is enough if T command is on the same line to be recognized for the M6 on the same line.

However I would agree that it is good to specify T before M6 for the purpose of logical clarity of the code.

I am not debating anything that you have said… In my first reply to Geige, my correction was just to state that the proper order should be set the Tool number Txx before the Tool Change command M6 or M06 to achieve the expected behavior.

Can it be done differently? Sure, but the results will be different and unexpected if you don’t realize what you have manually programmed, i.e. in the example he gave of M06 Txx the system will still think you are using the previous tool. (He has since corrected the Order…) This video gives a good explanation of the two behaviors for those that want to watch…

Hey Dean,

yes I understood, however this does not apply to other cnc controllers. It is Masso-specific.

This may be because the usual way for a cnc controller to work, is that a g-code line is first read and the commands are sorted internally after reading the entire line. E.g. the Buildbotics and the LinuxCNC controllers take a T command for the current M6 even if it is specified after a M6 on the same line. This is what the g-code standard says: There is no requirement of the T command to precede the M6 if it is on the same line.

I see that Masso went another way. It does not seem to first read the entire line and then to sort the commands internally, but it obviously makes a difference if T is trailing the M6 on the same line. Good to know for Masso owners.

But anyway, again, I would agree that it is good to generally specify T before M6 for the purpose of logical clarity of the code.

Aiph5u, We are all good. I was just trying to focus my response on what would be immediately relevant, not what all the possibilities are. You are much more knowledgeable than I on many things related to the CNC world. I just knew that we are talking about a tool that is specifically sold for the MASSO controller and the question was raised as if using the MASSO controller, so I just focused on the the proper notation for the MASSO per their guidance. (The linked video is actually taken from there as you already know, since you quoted the Warning that is just above it, in your previous response.

Now it is off to make some Chips fly as I have the afternoon off from my regular job and get to go play CNC for a while… Finishing a jig/fixture and then will be lasering 120 shot glasses for the daughters upcoming wedding… Wish me luck…

1 Like

I had similar wonky things happening when I finished the Elite upgrade a few weeks ago and I got some advice from @Pleased2fly .

Basically saying the same thing was @Geige said above.

If you follow these two simple rules the machine will always know what tool it has, and if the gcode is correct there should not be an issue.

I am going to add one more comment from my own experience; The Post Processor matters as well.

I use Fusion360 and there were 2 Post Processors available for the onefinity and masso combination, both had identical version, release number, and dates. One was titled ‘Onefinity’ the other was titled ‘Masso’

When I installed the Onefinity Post Processor it did not put a M6, or pause command at the begining of the gcode. As a result the machine used the information it had last and ran with the wrong tool. I did not let it run to see if the other tool changes would work but the gcode had M6 commands the rest of the way and looked like it was going to be correct.

When I installed the Masso Post Processor it did put a M6, command at the begining of the gcode. As a result, when I started a run the machine immediately stopped and asked me to change the tool. It then asked me to change the tool on the other 4 changes. All worked flawlessly, and still is.

It is possible that Fusion360 matters as well, idk. This was my experience.

1 Like

I havent installed my tool setter yet but your contributions are great.

One question: is it really necessary to have all my tool bits entered into the masso?

It is not necessary but can be handy if you can’t remember what tool you should be using at the tool change, if you use a keyboard connected to Masso it is pretty quick anyway.

1 Like

Until I entered all my bits I would at least enter the bits used for the current project. It did take awhile to enter them all. I created a spread sheet listing the bit, the quantity of each and their number so that I wouldn’t duplicate a bits ID.

Hey Rob! Yes, I believe I’ve figured this sequence out. It’s been really cool seeing others having similar issues so seeing their questions has also helped me.

One thing I’ve seen from time to time is when I go to probe using the X Y Z touch probe, the spindle starts up. Not sure what I did wrong in terms of the steps but it’s happened a few times.

1 Like

Hi Ray,

Not sure what version of the software you are running in the Masso, but this was an issue of spindle starting during probing that was highlighted some 8-10 months ago. If you upgrade to the current version, this will likely not happen.

1 Like

Glad you figured it out Ray!

I just got an edge finder block. If I find out anything useful about using it with a tool setter I’ll post it here.

1 Like

Jim - I have not updated but plan to now based on your help. TY!

I experimented with pausing a job (Cycle Stop) and setting a new Z0. I was able to do it manually as described before (moving Z to the new desired datum and zeroing it out). But I was not able to do this with a probing cycle because the job would not re-start for me after moving to the F3 screen to perform a Z height ptobing cycle. I did find a bit of a work-around in that situation by using the Start at Line function at that point.

On a related note I was playing with a “Triple Edge Finder” block (video attached). With this design, the hole centre probing cycle can be used to find the X-Y location of ANY corner without adjusting offsets. It also doesn’t matter if the workpiece is rotated.

And… did it work? I’m Intrigued to hear how it went and how you set it up.

By “it” do you mean the edge finder? If so, I should probably start a new topic for that.

1 Like

After some speed-bumps and learning curves, I finally got my tool setter figured out to function the way I want it to. It serves both movable and docked duties. If I’m just measuring a tool length on the top of my workpiece (per my normal workflow), it is used as movable. If I know I have upcoming tool changes which are not handled as M6 in the program (such as 1 tool per program in which tool changes are manual and not called automatically), it will measure the initial Z height, then jog to the ‘docked’ position to record the Z ref tool length. Then, subsequent tool changes will automatically just go to the docked tool setter location and will retain my top-of-workpiece Z zero. These various options are chosen in the tool measurement macro.

This same measurement behavior should also be doable on the Masso controller (my controller is a Centroid Acorn).