Software endstops?



  • How do you make a software endstop so that once the the axis is homed, you can only move away from it?

    What is happening is my CoreXY will home, but after its homed if you click the wrong movement key it will try to move passed the home location and misalign the 2 Z motors.



  • I cannot move below X-11 using this in config.g:

    M208 X-11 Y-0.75 Z0 S1 ; Set axis minima
    M208 X200 Y200 Z240 S0 ; Set axis maxima
    
    


  • What darokee said. If you set up the limits of your printer correctly with M208, the printer will not allow movement beyond these limits. Note that they are only enforced after the printer is homed. Before homing, movement in all directions is allowed without limits.

    Similarly, if you turn off the motors after homing (M84) , the limits will no longer be enforced until the next homing.



  • M667 S1 ; Select CoreXY mode
    M208 X5 Y5 Z0 S1 ; Set axis minima
    M208 X325 Y325 Z-395 S0 ; Set axis maxima

    look reasonable to you guys? and thanks



  • if it goes into idle mode after 60 sec, does it also forget the soft end stop that way?



  • No. If so, you may have the idle current set too low and it could be losing its position.


  • administrators

    @Cinpro:

    M667 S1 ; Select CoreXY mode
    M208 X5 Y5 Z0 S1 ; Set axis minima
    M208 X325 Y325 Z-395 S0 ; Set axis maxima

    look reasonable to you guys? and thanks

    You need Z395 in the second line, not Z-395. The Z coordinate is the height between the nozzle and the bed.



  • Why do you set the minimum XY at 5? If your home switch is beyond the printable area of the bed, you should make the minima negative, so the edge of the bed is at 0,0.

    RRF will reduce power to the motors after a while so the position is not lost, instead of turning them off like Marlin does. Check the I parameter of M906. If you find that the motors cannot hold when they are "idle", you can increase the idle current as required.



  • @dc42:

    @Cinpro:

    M667 S1 ; Select CoreXY mode
    M208 X5 Y5 Z0 S1 ; Set axis minima
    M208 X325 Y325 Z-395 S0 ; Set axis maxima

    look reasonable to you guys? and thanks

    You need Z395 in the second line, not Z-395. The Z coordinate is the height between the nozzle and the bed.

    okay I flipped that and the direction in M569

    I have the current set to 60% because the bed would drop a little while waiting for the bed to head up.



  • @fulg:

    Why do you set the minimum XY at 5? If your home switch is beyond the printable area of the bed, you should make the minima negative, so the edge of the bed is at 0,0.

    RRF will reduce power to the motors after a while so the position is not lost, instead of turning them off like Marlin does. Check the I parameter of M906. If you find that the motors cannot hold when they are "idle", you can increase the idle current as required.

    because I'm forever backward, lol I'll fix that now, thanks again 😄



  • since I'm batting a 1000 today, I set my height with a 0.1 automotive feeler gauge. do I want to put the offset in M208 as a negative? -0.1 so the firmware knows where I am? or leave it as 0, because I know that is the height that my PETG likes (set first layer to 100% in teh slicer)



  • GRRRR, it will still let me move toward the endstop after homing, does it have to be home all?

    M667 S1 ; Select CoreXY mode
    M208 X-10 Y-10 Z0 S1 ; Set axis minima
    M208 X325 Y325 Z395 S0 ; Set axis maxima

    height is 395 for the head position in teh machine read out, top right



  • G28 for all it won't let you, however if you run G28 Z0 it will let you, go figure 😞



  • Where have you fitted the endstop - Z min or Z max? i.e when the bed is close to the nozzle or furthest away? Also, it sounds like you need to post your homeZ and homeall files.



  • M208 defines the XYZ positions that are set when the respective min or max endstops are hit. So with your setup, if you home to X Min, after homing X will be -10. You will always be able to move back to the homing position, even if it is negative. You just won't be able to move further.

    When using a Z endstop, Z offset is usually specified with G92 after homing is completed (which sets the axis position without moving). If you use a probe, then the Z offset should be defined as the Z parameter of G31. In all cases the minima of Z is 0.

    In my mind Z=0 is when the hot nozzle is physically touching the bed, i.e. you should never travel with Z=0. Not everyone agrees though.



  • Endstop is at Z-MAX since its a CoreXY

    ; homeall.g
    ; called to home the Z axis
    ;
    ; generated by RepRapFirmware Configuration Tool on Sun Oct 29 2017 21:37:06 GMT-0400 (Eastern Standard Time)
    G91 ; relative mode
    G1 Z4 F200 ; raise head 4mm to ensure it is above the switch trigger height
    G90 ; back to absolute mode
    G1 X0 Y0 F2000 S1 ; put the head wherever you want it to be when you home Z (omit this line if it doesn't matter)
    G91 ; relative mode
    G1 Z-395 S1 F100 ; move Z down until the switch triggers
    G90 ; back to absolute mode
    G92 Z0.1 ; tell the firmware that we are at Z=0.1mm

    Fulg: I zeroed out the M208. No probe yet I want to try the Precision Piezo https://www.precisionpiezo.co.uk/ but they have been out of stock for about 2 weeks now 😞



  • You need to move towards the ends stop for it to trigger. As you have chosen to fit the end stop to Z max (furthest position away from the nozzle) then you need to move Z in a positive direction, not negative. TBH, if you can manage it, you would be wise to re-locate the Z end stop to the more conventional position which is closest to the nozzle (Z min). The reason being that most things you print will be a lot less than the maximum height of your Z travel in height and as things are at the moment, you'll have to move the bed all the way down, then all the way back up again every time you want home.



  • Z-MAX is closest to the nozzle

    https://youtu.be/ak-JUL5CwT0?t=40s



  • Z Max should be furthest away from the nozzle. If you are homing Z at the nozzle then you are homing to Z min. No wonder you are having a hard time. 🙂

    Endstop is at Z-MAX since its a CoreXY

    Why do you say this? There is no relation between the endstop locations and the printer kinematics. You can home a CoreXY on either end of each axis if you want to (X max, Y max, Z min, or whatever combination is most convenient for you).

    The only restriction with the axes is that the system you define should fit a right-hand coordinate system. As the documentation states, "looking down on the printer the +Y direction should be 90 degrees anticlockwise from the +X direction. If instead it is 90 degrees clockwise, you have a left-hand axis system, which will give you mirror-image prints."



  • @Cinpro:

    …..........................
    https://youtu.be/ak-JUL5CwT0?t=40s

    Is that your Corexy in the video?


Locked
 

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