UGCS Return to zero issue

Having an issue with understanding Return to Zero with UGCS. Up until now I have been using Easel for everything. I purchased @CharleyThomas 3 axis zero tool and am trying to become familiar with UGCS and Gcode. Not having any problems with my XCarve or the 3 axis tool. Works just fine and sets my work position zero point where I want it. However when I use the Return to zero button through UGCS I get unexpected results. When it decides to go to the zero point it drops the Z axis first before quickly moving the X,Y to zero scraping along the top of my work. I see the Z drop in the Gcode. It this normal? I should mention that several times it has decided to raise the bit crushing the z limit switch when I hit return to zero even though the machine work zero readout clearly has the Z zero in the other direction. I can’t seem to consistently set conditions when it will do one or the other.

G90 G0 Z0.0
G90 G0 X0 Y0 Z0

BTW: Using an XController, Windows 10, and both the nightly build of UGCS and version 1.09.

UGCS issues a G28 command when you press the “Return to Zero” button. Do a search on using G28 and you should be able to straighten things out.

1 Like

Yeah, read that before and issued G28.1 to try and straighten things out. I’ll try reading it again.

Keep in mind that the G28.1 command uses machine co-ordinates. If you don’t home your machine, Machine Zero is set to the location where the spindle is when the machine is powered on, or when you connect to the serial port of the Arduino. Without homing the G28 command will go to a different place each time you start the machine.

Homing is your friend.:smiley:

Ok it’s possible that I homed sometimes and not others. Next time I’ll get a chance is Sunday. The other question is… It has gone exactly where I wanted it to a bunch of the times. But does it make sense to drop the Z axis first? If so, G28 seems to be a useless feature for an XCarve. A great way to break bits and scratch projects. Thanks.

That might need some investigation. When I use G28 it raises Z and then moves X,Y.

Thanks. Will do a very controlled step by step investigation on Sunday.

The return to zero button in UGS sends your spindle to Machine Position zero and not Work Position zero. When you run the g-code to zero you bit with the touch plate it sets your Work Position zero so that your bit is at the front left corner of the material.

If you do not home your machine then your Machine Position zero will be where it was when you powered up your power supply and load UGS.

I recommend never hitting the return to zero button in UGS unless you first run a homing cycle to set your home position.

So actually everything is running the way it is supposed to, it’s just that the return to zero button in UGS is not always convenient or wise to use. If you use PicSender, there is not eve a return to zero button on it for machine zero. There are three buttons that say goto zero. One for each axis and they will send the bit to work position zero which is what is set by the touch plate.

I hope that cleared things up and didn’t make it more confusing.




It seems that UGCS has changed the “Return to Zero” button functionality. I just checked version 1.0.9 and it does a G90 G0 Z0.0 followed by a G90 G0 X0 Y0 Z0

May be a good idea to avoid the “Return to Zero” button if they keep messing with it.

1 Like

Yes. That’s what I saw. Thanks. Think I understand now.

Thankyou. I had read a bunch of things talking about Work vs. Home position G28 etc and thought I understood why certain things were happening before starting this Topic, but deep down in my brain I couldn’t resolve the fact that the Return to Zero has a less than useful function for my workflow. I’m guessing that’s because USGS is a tool for using G-Code and not written to specifically support the XCarve. The button probably makes more sense on other machines. I guess what I needed was your comment “the return to zero button in UGS is not always convenient or wise to use”. I was planning to investigate PicSender anyway. Thanks again.

1 Like


I just ran a test with UGCS version 1.0.9 and the “Return to Zero” button moves the machine to Work Zero, not Machine Zero.

What version of UGCS are you running?

Tried two versions but did it randomly. I had tried a nightly build from 2 weeks ago first and when I crushed my Z limit switch I started trying to figure out why. Did a bunch of different steps including homing (after replacing the switch) but had not tried anything in a logical order so didn’t see the pattern. Then I went to version 1.09. At some point I started to investigate the Z drop to zero before the X,Y motion. Didn’t realize I was trying to find a single solution to 2 different issues. I knew it was operator error but couldn’t see the forest for the trees. So I broke down and asked. Understand now. Thanks.

PicSender is not a free program but for about $20 it is well worth it and is MUCH MUCH more stable than UGS. USGS has a tendency to freeze on very large files such as 3d carvings. PicSender will run all day long. You can download a trial version to test with. The only limitation with it is that it will only carve half your file.

The only time I ever use UGS anymore is when testing my G-Code Generator to insure compatibility or to help troubleshoot a problem for someone else.

And no, I don’t get paid to say that!



I’m really not using UGS, I use PicSender. I do have version 1.0.8 installed that I sometimes test with but for all my carvings I use PicSender.


I had downloaded the trial version of PicSender a couple weeks ago and already planned to buy it. But I thought it prudent to first understand UGCS so I could decide which program would work better for me. If nothing else the user interface on PicSender is easier to use on my laptop. UGCS defaults to such a tiny font that about midnight my eyes are two blurry to read the screen.