UGS reset x/y non-zero values

I figured some of you are using UGS (which I’ve been experimenting with) so I’d ask me question here.

I am running my machine in metric.

When I’m in machine control and reset X/Y, instead of 0 I get .004 and .007 type values. Now, I know that is a miniscule amount (.007-mm is about two ten-thousandths) but still I was wondering if this is normal behavior?

I do like UGS. Not a big Java fan, frankly, but the ability to setup probing macros seems very nice.

This comes from grbl. If you look at the command being sent by UGS it should be the reset coordinate you expect, but due to the way computers represent fractions there are limits to precision. The grbl developer probably figured the same thing as you, 0.004mm is close enough to zero for our application.


To elaborate further, note that there is a fixed precision with which the machine can move, even with 8x micro-stepping:

8 microstep/step * 200 step/rev * 1/20 rev/tooth * 1/2 tooth/mm = 40 microstep/mm.

(from: Shapeoko CNC Router, Rigid, Accurate, Reliable, and Affordable )

I understand that as we deviate from zero we might expect something other than long doubles but still figured zero would be zero. Mind you I’m not complaining I just thought it odd.