I have my Z home at top but linuxcnc sees that as a positive number. My travel min is -0.003 (all the way down) and max is 7.65 with home switch at 7.6 and home at 7.5. I am pasting my Z section from the ini file which has my specific home settings. Check your home settings in the hal file as you have a line for min-home-U, not Z. Mine are all the same which would be max-home-z. Also you will need to define the Z settings the same way that your Y and X are done.
Code:
net max-home-x => joint.0.home-sw-in
net max-home-x => joint.0.pos-lim-sw-in
My settings are carried over from earlier versions of lcnc so the syntax may be a bit different.
#*** AXIS_Z *******************************
[AXIS_Z]
MAX_VELOCITY = 5.700069312842844
MAX_ACCELERATION = 20.0
MIN_LIMIT = -0.003
MAX_LIMIT = 7.65
[JOINT_3]
TYPE = LINEAR
HOME = 7.5
MIN_LIMIT = -0.003
MAX_LIMIT = 7.65
MAX_VELOCITY = 5.700069312842844
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 25.0
SCALE = 4064.0
FERROR = 0.05
MIN_FERROR = 0.01
HOME_OFFSET = 7.6000
HOME_IGNORE_LIMITS = YES
HOME_SEARCH_VEL = 0.1450
HOME_LATCH_VEL = 0.1450
HOME_FINAL_VEL = 0.1450
HOME_SEQUENCE = 0
#******************************************