Z-Max End stop? Printer ignoring it?



  • So I have a cube printer with a BL Touch, which works great. THis leaves the Z end stop unpopulated, so I installed a Hall endstop and magnet on the Z table to keep it from crashing into the bottom if I want to send the print bed after a print to the very bottom, or use the Z-Max as a home after a power outage. Since Z is somewhat variable in its absolute Max end stop based on what print surface I am using , I wanted to make this more simple since I had extra sensors laying around.

    I put this as my endstop config:
    "M574 X1 Y2 U2 Z2 S1 ;
    M574 Z1 S2 "

    When I do a G1 Z300 S1 from what I understand it should go until it hits an Endstop or the 300mm request. In this case, it doesn't care about the triggering of the Z Max endstop at all. Just goes and crashes into the bottom.

    I've read a number of other threads about this, but the answers don't seem to jive with what I am seeing.

    Am I just using the G1 command incorrectly?



  • The M574 syntax is confusing, here is an explanation:

    The number right next to the axis letter Z1 or Z2 indicates the physical position of the home switch.
    M574 Z1 ; physical location of Z switch is low end of axis stroke
    M574 Z2 ; physical location of Z switch is high end of axis stroke

    The number after S is the logic state of the endstop input when triggered.
    M574 Zn S0 ; endstop input pin is LOW when sensor is triggered
    M574 Zn S1 ; endstop input pin is HI when sensor is triggered

    So in the second line M574 Z1 S2 we are actually asking for the Z probe to trigger when the Z reaches min limit. Not what we really want to set up for the subsequent G1 move.

    I imagine something like M574 Z2 S1 might serve you better, double check the home sensor state using M119 (or thru DWC) to ensure you have the proper S value (active hi vs active low).

    Side note, but I think the newer G1 syntax is using H instead of S. G1 Z300 H1 is the new 'standard' home-seeking command format.



  • @nhof said in Z-Max End stop? Printer ignoring it?:

    he second line M574 Z1 S2 we are actually asking for the Z probe to trigger when the Z reaches min limit. Not what we really want to set up for the subsequent G1 move.
    I imagine something like M574 Z2 S1 might serve you better, double check the home sensor state using M119 (or thru DWC) to ensure you have the proper S value

    Awesome, I will take a look at these! The G1 syntax specifically could be the issue I was seeing.



  • I have a CoreXY setup, where the trigger is setup at the bottom of the machine, which is the Z maximum. All of my endstops are active high. I am using the command:

    M574 X1 Y1 Z2 S1

    When I home the Z axis, it triggers properly. But I am unable to jog the Z axis in the negative direction. It lets me jog it in the positive direction, which causes it to crash into the frame, ignoring the Z endstop. I have tried reversing the motor direction to no avail. Does this make any sense at all?


  • Moderator

    @tkstreet I suggest starting a new thread with your issue and include your config.g and homing files.



  • I figured it out. It was just an issue with the home macro files that were generated by the configurator.


Log in to reply