Nomad Tool length Probe UGS

nothing too significant.

sped up the reference probe. slowed down the second probe.
updated descriptions to make it nomad specific.
forced imperial mode before reset modal and close just in case (this is user preference obv)

this was after the probe macro, homed then went back to G54

This should hopefully restore anyway, but I get the “just in case” mindset.

What computer are you using to control the Nomad? I wonder if CNCjs is heavily processor or RAM dependent. I’ll try to work a simple example that should work, in theory, but doesn’t and contact the devs.
I was using essentially the same macro on my SO3 and was losing 0.1mm each tool change. I just tested a version that, as far as I can measure was getting repeatable precision within .01mm. It’s a little messy now, but I’ll clean it up and post for any SO3 users to try.
Maybe I can get @Julien to collect a bunch of data and do a multi-faceted analysis…he’ll probably have to design and build a python driven electromechanical apparatus to tell me that none of it really matters for that bathroom decor my wife wants me to make. :wink:


@neilferreri yeah i crashed the macro before when it didn’t switch back for whatever reason so included it as a safety factor ha

i have cncjs running on a pi 3b+. it has correct power supply and some heat sinks so it should be running at full potential. possible it could be seeing some loss somewhere.

i’m pretty content with how it’s working for now, but def eager to really dial it in. hope to help where i can

1 Like

As much as I’d like to find a witty comeback, I can only admit that I do follow this behavorial pattern :slight_smile:


Hey @neilferreri and all. Sorry for the late response. Was away for the weekend and just got back. I posted my test above. Getting a 0.04 - 0.06 inaccuracy. Guessing backlash. I own a Nomad Classic.

Running this macro for the tests I posted here:

Probing (1.8 KB)

Will test the one @PaulAlfaro posted, tomorrow. Not at my computer currently.

I am running the macro without actually changing the tool.

@neilferreri I think I ran both. The macro I include here in my post and the one you posted above. For me, it is getting confusing. Can’t remember which macro I tested when. Have to try them all again and take notes. Can’t tell how they differ and if they even do differ.

I hear ya!

Here is one (tested on my SO3 XL and whatever @Luke tested on) that I think dials it in. Procedure is the same:
Probe first tool.
Change tool.
Probe next tool.
Set appropriate offset.

I’m really not sure where the issues were coming from, but they seem to be dealt with by a more precise probing sequence. I used a combination of G38.2 and G38.4 to do a handful of probes at decreasing feedrates. This seems to increase precision quite a bit. By using the G38.4, I could execute the probes much faster than a retract and re-probe. I like the sound it makes too!

I’d love to hear feedback before I throw it up on GitHub.
It’s essential that you set and verify your probe locations and safe height. Better to be conservative on the Z!
Text file actually zipped: (1.1 KB)

1 Like

Hi @neilferreri

Just gave your macro a go after updating the coordinates. Really slick probe sequence.
With no actual tool change it repeats great.
However, I tried a few different tool changes. Couple actual and a couple by adding piece of tape to the probe pin. The results were inconsistent - I’ll repeat later to see if I am missing something. Seems odd, but I’m not questioning the macro so I’ll dig deeper on my setup.

I swapped over to my i7 laptop with CNCjs x64 during all this experimenting.
Also, I did do several homing to G54 sequences and saw it range between zero to 0.0005" on the dial so we could establish some sort of mechanical baseline. Perhaps others can chime in with their measurements as well.

Have to say this thread is getting me quite motivated to try CNCjs with my Nomad. If I get some free time next weekend I know what i’ll be doing!

@PaulAlfaro That is odd. On the previous version, I was losing .06-.15mm each time I ran the macro. I’ve run the new one a couple dozen times, with the same tool and tool changes, and if there are inconsistencies they’re too small for me to measure.

@neilferreri yeah I’m hoping it was just late and I was doing something wrong.

I’'ll try again this evening.

1 Like

Nomad repeatability testing


@PaulAlfaro I’m in no way doubting your results. I had some unexplained results with the previous version where you seemed to be getting solid accuracy. There’s nothing in the macros, gcode-wise, that would explain the differences. My last resort is guessing that it has something to do with the way grbl reports and/or the interaction between grbl and cncjs.
I know for testing it’s convenient, but what do you think about it going back to work zero (safe Z) rather than previous location?


I’m up for testing anything if it pushes this forward.

I just realized I should also see how the probe accuracy performs in Carbide Motion as well.
Since I have everything still setup it wouldn’t hurt.

1 Like

I have ran @neilferreri macro several times and I’m getting between 0.03-0.09 inconsistencies with and without changing tools. I think some of my deviation stems from backlash, right?. I tried zeroing and then homing (without running macro) and sometimes I get slight inconsistencies. This (to me) proves that there is something mechanical happening. I use a 1-2-3 block until I can fit it under the endmill and it slightly touches the surface.


Is this the newest macro in the zip file?
Assuming millimeters?
Better, worse, or the same as Carbide Motion?

Yes. Latest macro you posted. Yes, millimeters. Did not test CM this time. Last time I did, with another macro (can’t remember which) it was the same.


The last macro you posted @neilferreri “Precision Tool Change Macro” was repeating within 0.0005"/0.01mm per my setup on CNCjs.

I repeated without a tool change and the dial barely fluttered (would need a higher resolution). With a tool change I was seeing at worst a full tick (0.0005"/0.01mm).

I’m not sure what changed between today and yesterday in regards to the tool changes, but it seems to be working great currently. I’m strongly thinking the hardwares at fault in the inconsistencies at a precision scale.

I also tested Carbide Motion probe and it was seeing the same amount of resolution. I did find it funny that in inches you can only go down to 0.001" (0.025mm) increments whereas in metric you can go down to 0.01mm (0.0003").

Tests for Carbide Create was on my decent spec Windows laptop and CNCjs was on the Raspberry Pi 3 B+. Repeated each test at least 3 separate times to ensure it wasn’t a fluke

1 Like

One consideration is the machine can only hold full and 1/8th step positions — the variation might be caused by how closely the metal rod and its spring are aligning with the nearest position — it is possible that at certain temperatures this is more/less repeatable.

The numbers you’re getting exactly match the specified mechanical resolution:

Mechanical Resolution .0005 in

(from: )

and are better than the expected repeatability/accuracy


@neilferreri @PaulAlfaro

I too have pulled in Neil’s “Precision Tool Change Macro” from the latest revision and can verify that it works perfectly. I removed the first M0 as it’s intended to give the operator a chance to attach probe hardware to the spindle and/or work, and updated the probe location to the Nomad’s tool length probe coordinates. No other elaboration was necessary.

I ran a two-sided job last night with four tool changes, and there were no consistency issues. Thank you for the exceptional work, Neil!