Homing Sequence

I have a Genmitsu 4040-Pro; the bed is 400mm by 400mm and set up as such in MM.

Much of my issues are probably user error, and am using UGS to move X, Y, Z axis back to where need to go when MM resets. However, I cannot get it to home since the sequencing drops the Z axis first, straight into my spoil board and the zeros for all my axis are incorrect presently.

I cannot move my X or Y axis back toward the home since it zeros out the machine coordinates, leaving my tool somewhere to the right -middle of my bed instead of the front left where it should be.

Can I change the homing sequence to change my X and Y first, then Z? Hitting home of X and Y separately does not work.

Forgive me, i’m a newbie and have issues with the other CAM/CAD/Controller software I’ve tried.

Is there a reason you are using UGS to control the machine, MM can do it as the machine is a GRBL based machine.

I’m having to use UGS to control and move the machine after MM resets the zeros to the wrong spot in the machine, making it so I can’t toggle the X and Y coordinates back to the machine zero.

Homing causes the Z axiz to drop first into my spoilboard requiring me to E-stop.

Try going to settings (spanner & wrench) then custom Gcode and either change Home Z to $H=0 this will raise your Z to 0 (top) as part of Homing OR change HOME to G0 X=0 Y=0 Z=0 provided you have set your spindle at 0,0 in the home position.

Then the machine is not configured correctly. A CNC should home the z axis UP, not down. That’s the standard homing cycle. Move z up (such that it is avoiding all obstacles) and then home x and y. So you need to configure your homing cycle correctly.
You can home individual axis with the $HZ, $HY and $HX commands, as long as your firmware supports it.

Yes, you can, if you use standard grbl firmware, you can change this, but it will require a recompile of the firmware.

1 Like

@misken is exactly right. It appears your machine was never properly configured, or might have a stored offset. Enter in the Console window in this order…

  1. $I
  2. ?
  3. $$

Then copy everything starting with the ā€œ$Iā€ and paste it in your reply.

Good evening,

Here’s what it says:
$I
?
$$
[VER:ARM32 V3.0.20230816:]
[OPT:VZL,35,254]
Target buffer size found
ok
<Idle|MPos:0.000,0.000,-24.121,0.000|Bf:35,254|FS:0,0|Pn:RHS>
ok
$0=10 (step pulse,usec)
$1=25 (step idle delay,msec)
$2=4 (stepport invert mask)
$3=4 (dirport invert mask)
$4=0 (stepenable invert,bool)
$5=1 (lims pin invert,bool)
$6=1 (probe pin invert,bool)
$10=3 (status report mask)
$11=0.010 (junction deviation)
$12=0.002 (arc tolerance,mm)
$13=0 (report inches,bool)
$20=0 (soft limits,bool)
$21=1 (hard limits,bool)
$22=1 (home cycle,bool)
$23=7 (homing dir invert mask)
$24=100.000 (homing feed,mm/min)
$25=500.000 (homing seek,mm/min)
$26=250 (homing debounce,msec)
$27=1.000 (homing pull-off,mm)
$30=10000 (maximum spindle speed,rpm)
$31=0 (minimum spindle speed,rpm)
$32=0 (laser mode enable,bool)
$100=800.000 (X axis pulse:step/mm)
$101=800.000 (Y axis pulse:step/mm)
$102=800.000 (Z axis pulse:step/mm)
$103=177.777 (A axis pulse:step/mm)
$110=2000.000 (X axis max rata:mm/min)
$111=2000.000 (Y axis max rata:mm/min)
$112=2000.000 (Z axis max rata:mm/min)
$113=1000.000 (A axis max rata:mm/min)
$120=20.000 (X axis acceleration:mm/s^2)
$121=20.000 (Y axis acceleration:mm/s^2)
$122=20.000 (Z axis acceleration:mm/s^2)
$123=20.000 (A axis acceleration:mm/s^2)
$130=400.000 (X aixs max travel:mm)
$131=400.000 (Y aixs max travel:mm)
$132=80.000 (Z aixs max travel:mm)
$133=9999.000 (A aixs max travel:mm)
ok

If I messed it up or it needs to be changed otherwise, please let me know!

Thank you.

EDIT: I changed the Machine Settings for the Z homing inversion, and it changed it back to normal and corrected.

Thank you!!

1 Like

When I push any of the home buttons, other than the Home all, I get:

error:3
Grbl ā€˜$’ system command was not recognized or supported.

Homing works for other controllers I have used but not Millmage.

Then your firmware does not support individual axis homing. It only can home all axis at once. Or it uses a different syntax, which is less likely.

You are up and running, right?

Enter $$ and copy the current parameters. Paste them in a text file and put them in a safe location. I even print a copy of mine.