Homing Cycle help required

Can someone please explain how to reset the homing cycle/parameters in ugsplatform64 v1.1 its driving me nuts.

1 Like

Not sure what you mean. Have been using the USGplatform and I’m not sure what you are asking. But to then again, I have only been using it for a few weeks.

I’m trying to re-set the home position on the Longmill. Currently when I home the cnc it attempts to lift the Mill well past the limit of the Z axis. So I’d like to reposition the Home position so that it doesn’t attempt to go to the current one which is beyond the bounds of me longmill. Then I could introduce “soft |limits” into my homing cycle.

When you say ‘home’ that typically means the place where the router moves so it’s position can be verified by mechanical or proximity switches. Some people recommend the near left corner, and Z all the way up. CNC machines for most part put the home position at the far right corner, all the way up. When you do it this way the sender calls this 0,0,0, and all positions measured absolutely, as opposed to relatively, are actually negative. This is a leftover from the old CNC days. When you home you are setting the machine zero. To home on the LongMill will require the addition limit switches and activation of the feature n the gcode sender. The GRBL docs have very good discussions and wiring diagrams for adding and using limit switches.
When you set ‘reset zero’ you are setting the work coordinates. This is really useful for the user so he can see relative movements. This is the location from which the sender will start running your Gcode. You can do it manually or by using the zeroing block. Note that I have had frequent problems with UGS not setting the zero location properly the first time I use it after starting the program. I have to manually rest zero and run the probe cycle again, then it’s fine.
You can watch a good video about setting work coordinates, including the G54, G55, etc. systems, here https://www.youtube.com/watch?v=61FNml8M3i0

Thanks for that Bill, appreciated.
So I’d like to set limits on the X&Y axis’s so that the plates don’t crash into each other at the ends/ Limits of there respective travel. But in order to do so I need to enable soft limits which requires a homing cycle. I understand the relationship between work location and machine location. My problem is with re-setting the co-ordinates for the machine and how to do that. I have locations set for G28 (out of the way) and G30 (tool change location) - no problem. Getting the machine to “home Cycle” itself within the bounds of my machine is the issue.

I’m off to GitHub for more tuition

That video for the co-ord systems is very good!

I understand wanting a machine to do it all automatically but its not like the bed is 6 feet wide by 18 feet long. Just move the head over a few inches out of the way. Whats the big deal. Takes 5 seconds and mine is slower than yours.

In UGS it automatically sets the home position to wherever the axis are when the program is started.

1 Like

Unfortunately that’s the way UGS works. No easy solution without limit switches.

Heyward, do I recall correctly that you ended up switching to CNCjs a while back? I’m considering making the move as well. Are you still using it and are you happy with it?


Heyward is correct, as far as my research uncovered. Even soft limits require homing which requires sensors/switches.

I’m very happy with my proximity switches but I’m sure I could have been just as happy withe mechanical ones. I honestly wouldn’t try and use a CNC going forward without limit sensors and homing. If you want repeatability and flexibility you want limit switches and homing. Having a computer driven router that is really good at going to an exact spot but not starting your work session from a homed position is a waste of potential and capability.

What I did before I added switches was I carefully manually set my machine to where I wanted “home” to be (far right corner, Z all the way up) by manually doing it. Then I shut down UGS and the Longmill and turned it back on. As noted, whereever the router is at power on is considered the home position. I added a macro that lifts to the top of the Z range and sends it back to the home position and I tried to be diligent about running the macro by hand after a work session, so when I powered down it would be in the correct spot. This way, when I powered up, I would start in the home position.

After a while, and with wheels coming loose and losing position as well as banging in to any of the three axis (both in GCode at times and by hand, rapiding around) I decided it would be much easier to add limit switches. They have been brilliant.

No more crashing (except Z down, haven’t figured out where to mount that one yet) and most importantly I start every work session with a homing cycle which gives me the exact same spot every time. This way I can also spread a job over multiple days and still come back and rehome and return to WCS 0 and known I’m in the same spot.

Most people use mechanical switches. I went with proximity switches because that’s where google lead me and I didn’t understand the differences well enough. Mechanical switches are much much cheaper but you can also break them easily as you try and get everything going or if you crash in to them too hard. Proximity switches never make contact with the gantries so you won’t break them. Mechanical switches, set up in the optimal way, will also alarm if there is a break in the sensor circuit (say a wire gets kinked), saving you from a surprise when you rely on a limit sensor that isn’t working.

Unfortunately, Sienci didn’t plan any locations for mounting switches of either type (I think this is a significant oversight) so it requires some brain work and planning on your part as well as the general GRBL documentation to figure out a system. I don’t have a 3D printer but if you do, others have posted various mounting clip designs you can search out.


@jwoody18 - Yes Jeff. I switched to CNCjs about 6-7 weeks ago. Have been running since with no problems. I thought I had a problem one time a couple of weeks ago. I was running a job and all of a sudden it just stopped carving. I didn’t see anything to tell me why it stopped. No alarms or error messages. I was fixing to kill the job and it suddenly started carving again. Job finished normally. I never did find out why. I’m guessing it was my computer that paused for some reason for about 30-40 seconds. I have all the power stuff turned off so no problems there. Hasn’t happened since.

I still like it. I like the visualizer lets you turn the view around to different sides, top or bottom. Shows the cutter movement relative to the anchor point (in my case lower left corner). I have saved a few jobs from cutting wrong because it accurately shows where and how deep it’s cutting. And it switches between MM and Inches no problem.

I did have to set up 3 macros for the Sienci probe but it was easy. CNCjs has a probe widget but the only axis I could get to work was the Z. I do use that when I do tool changes. Otherwise I use my macros. 1 macro each for 1/4", 1/8" and 1/16" for initial setup.

If you decide to try or use it I can assist if needed.

1 Like