Endtops Low and High



  • Hi please forgive a neebie question..
    In the documentionit say to use Configuration is done in config.g using the M574 command. to set up High and Low enstops for x and y.
    but i see no example and in the config I made with the configurator I'm not sure if its correct.

    should i use
    M574 X0 Z0 S0 ; Set active low endstops
    M574 Y2 S1 ; Set active high endstops
    and then
    M574 Y0 Z0 S0 ; Set active low endstops
    M574 X2 S1 ; Set active high endstops


  • administrators

    There are two parameters to be set for each endstop:

    • The electrical type of the endstop (S parameter). This used to be just active high (S1, e.g. a normally-closed switch or opto switch), or active low (S0, e.g. normally-open switch or Hall sensor). There are now also options for using a Z probe (S2) and for using motor stall detection (S3).

    • Whether the endstop is at the minimum end or the maximum end of the axis. These are the X, Y and Z parameters. 0 means no endstop present, 1 means an endstop switch at the minimum end, 2 means an endstop switch at the maximum end of the axis.

    See also https://duet3d.com/wiki/G-code#M574:_Set_endstop_configuration.

    HTH David



  • Thanks dc42 took a quick look, but I still have one question on the controller I see the three connectorz for the end stops but if like in the hypercube I doing there is the X Low and high so where does the second opto get connected? Would that be the expation part where to connect?


  • administrators

    If you have just one X carriage, then I suggest you use just one endstop switch. If you have two X carriages, connect the second X endstop to the E1 endstop connector.



  • If I power the enstop externaly and connect only the STP Signal to the board will it work? I can't find ny optical enstops at 3.3v.


  • administrators

    @Synapsis:

    If I power the enstop externaly and connect only the STP Signal to the board will it work? I can't find ny optical enstops at 3.3v.

    I advise against that, because then the opto endstop will feed 5V into the STP pin when it is triggered.

    Some 5V opto endstops work on 3.3V. The others can be made to work on 3.3V by changing one resistor.



  • Ok modified the endstop just took out the 1K resistor connected to a 3.3v external source led lights but in the open state
    I get 1.4v not the 0v but when closed I get a 3.3v reading.
    So do you think would it still work even if the NC is not zero?


  • administrators

    The more important modification to make to the endstop input is to reduce the value of the resistor connected in series with the IR emitter. If it's a surface mount resistor, you may find it easier to connect another resistor in parallel with it.



  • Thanks got it to work now or so I think, when I try it i see in the web interface the value change to Yes from No but it still
    does not stop the motor so i must be missing something. I do see the led on the board next to the motor connector go off.
    if the beam is not completly blocked could that be the problem even if in the interface it says Yes ,
    Have to do some searching to find out.


  • administrators

    If the interface says Yes when the endstop is triggered then it should be working. However, it may be a little slow to respond if you removed the pullup resistor completely, depending on how well the beam is blocked. If that is the case, try connecting a 10K pullup resistor in place of the original 1K one.



  • Hi need some help please I'm need to know a few things so I can get it setup right.
    Not knowing some basics take more time.

    Postions: lookin from top of printer from front (Motors are front left and right)

    X max looking down on the printer from the front is left
    X min is right
    Y max is front
    y min is back
    Z min is up nearest nozzle
    Z max is down

    Where is zero back left?

    Drives and direction

    Drive 0 is = Z when you save moves forward to the left taking into consideration what was said above.
    Drive 1 is = Y
    Drive 2 is = Z
    Drive 3 is = E0

    I tried in Configuring RepRapFirmware for a CoreXY printer Movment section
    M667 S1
    M667 S2 Z3
    M569 P0 S0
    M569 P1 S0
    G91
    G1 S2 X10 F3000 it moves left towrads the front right (change the S parameter to S1 in the M569 P0 command?but it dose not move.)

    Once I get that clear maybe I could get things to work because my endstops are triggered but do not stop the movement.


  • administrators

    You have your X and Y axes back to front compared to most people, but that's OK if you want it that way. Where are your X and Y endstop switches located?



  • Righ now I have the X max end stop on the left X carrage and the Y in the front left.
    I'd rather have it like most people so when I ask questions I don't have to think bacwqards.

    So zero wouls be from top would be botoom left and moving away fro, the motor would be Y+
    Moving right X+

    if so then end stops need to be upper left for Y and right for X?

    will try it out


  • administrators

    @Synapsis:

    Righ now I have the X max end stop on the left X carrage and the Y in the front left.
    I'd rather have it like most people so when I ask questions I don't have to think bacwqards.

    So zero wouls be from top would be botoom left and moving away fro, the motor would be Y+
    Moving right X+

    That's the conventional arrangement. So switch the S parameter between 0 and 1 as needed in your M569 P0 and M569 P1 commands so that +X is to the right and +Y is towards the back.

    @Synapsis:

    if so then end stops need to be upper left for Y and right for X?

    The endstop switches can be at the min or max end of each axis. You can have one and the min end and the other at the max end if you wish. You just need to tell the firmware which end they are in the M574 command in config.g.



  • Moved the the endstops the thing is I have M574 Y1 X1 S1 ; Set active high endstops also tried M574 Y2 X2 S1 and when I check Endstop hit is no for both
    When I move the carrage and reach the endstop I see on the board the led go out and Endstop hit chages to yes. the wires are correct checked them so endstop Y when triggred turn out the Y led on the board.

    something simply which i can't see.



  • Checked the output when not triggered ther is 0.34v while when triggred its 3.23v is that ok?
    I would think so seeing the board detects the change.


  • administrators

    @Synapsis:

    Moved the the endstops the thing is I have M574 Y1 X1 S1 ; Set active high endstops also tried M574 Y2 X2 S1 and when I check Endstop hit is no for both
    When I move the carrage and reach the endstop I see on the board the led go out and Endstop hit chages to yes. the wires are correct checked them so endstop Y when triggred turn out the Y led on the board.

    something simply which i can't see.

    S1 is correct in the M574 command. Please clarify what the problem is.



  • Well maybe I 'm looking for an answer where there is none.
    Doing a test moving the X to its max I trigger the endstop if I keep pressing an advance in the X axis it will keep moving, is this normal or should moviment exceeding the stop be impossible.
    Or is it just used for homing the X axis or Y axis?

    I have what I think is correct moviment
    G91
    G1 S2 X10 F3000
    head moves diagonally in the +X and +Y directions
    G91
    G1 S2 Y10 F3000
    head moves diagonally in the +X and -Y directions


  • administrators

    Once you have homed an axis, the axis limits that you have set using M208 commands in config.g will be applied. Until you home the axis, limits are not applied. The endstops switches terminate homing moves only.



  • To elaborate on what David has said, you need to have an S1 parameter in the G1 move to check if an end stop has been hit. So something like G1 X-200 S1 will move the X axis 100mm towards the end stop, but stop if it sees the switch trigger. If you haven't already homed the printer, then G1 X-200 (without the S1 parameter) will move the X axis 200 towards the ends stop but it won't stop when the switch triggers. If you have homed the printer, then G1 X-200 will stop when X=0. That's why it's always a good idea to home the printer before you do anything else. Once homed (using the S1 parameter) then the zero position will be established and the maximum travel limit will be determined by whatever value you put in M208 for that axis.
    .


Locked
 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.