[SOLVED] X/Y endstops not stopping motors, carriage grinds motor



  • Long story short, bought two Duet 2 Maestros of two Ender 5 printers. One of the boards was a refurbished board that I got a killer deal on. It worked for two months but gave up the ghost. The second D2M had not been installed yet, so I disconnected the wiring, pulled out the refurb, and reconnected the factory new one in its place. I pulled the SD card out of the refurb, and put it in the new one.

    Everything lights up correctly. Jumps right back on my network. I initialized the SD card, and I can access the data in system editor. All seems good. But when I try to home all, I get an error advising G0/G1 Insufficient axis homed.

    So I sent M564 H0 to allow me to move the motors. All motors move properly when instructed. They are all connected correctly, wired correctly and move correctly.

    Moving to the endstops, only concerned about X and Y, as Z is controlled by and BL Touch.

    I sent repeated M119 commands to retrieve the endstop state, and they are working correctly. When I manually trigger them, they illicit a response.

    But when the carriage hits them....they keep on moving.

    What could have changed between a simple board replacement. Any help, as I feel Ive uncover every rock.

    homeall.txt Config_G.txt


  • Moderator

    M574 X0 Y1 S1 ; set active high endstops

    X0 means no endstop. It should be X1 based on your homing move direction.

    https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_2_x_and_earlier


  • Moderator

    Also, don't load this in config.g G29 S1 Put it at the end of your homeall or in your slicer start gcode instead.



  • @Phaedrux said in X/Y endstops not stopping motors, carriage grinds motor:

    M574 X0 Y1 S1 ; set active high endstops

    X0 means no endstop. It should be X1 based on your homing move direction.

    https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_2_x_and_earlier

    Corrected this (I had fiddled around with these settings a lot before asking for help, must have gotten missed).

    But this still did not help. Powered up this morning, corrected this, checked my M119, endstops are in fact working and registering change. But the motor still wants to plow on through.

    Is it possible there is something stuck on the board digitally from manufacturing tests that needs to be erased? Again, I had a refurbished Maestro working fine (until it died) and simply swapped it out for a new one I had.

    Thanks.



  • Update, hoping this helps somebody solve this problem.

    The the M564 S0 in place I can manually move around the motors. So I can move the X and Y carriages to the endstops, make the click, and then send G92 X0 and G92 Y0.

    This makes the "Home X" and "Home Y" on the web interface change from orange to blue. And the motors will stop when they get to 0.00 now.

    But, when I hit "Home All", they continue to want to plow right through the endstops.

    So while M119 is registering the endstops as properly triggered, they are not instructing the motors to stop. Basically, they are not "zeroing".

    Is it possible I need to reset the board?



  • Please post your latest config.g

    G92 resets its home position, I only use G92 when I am resetting my Z axis after levelling it.

    Take the G92 out and reboot the printer before any damage is done!

    @Phaedrux created some guides for the Ender3 which are extremely helpful, I use them even with a CoreXY printer.
    Have you seen them?

    You can see the endstops triggering in DWC, under 'Machine-Specific' on the left hand side.
    When you click Machine specific or the RHS there should be a box labelled 'Endstops'
    If you manually press the endstop switches they should change their state.

    HTH

    Paul.


  • Moderator

    It kind of sounds like your coordinate system is a bit out of whack.

    Have a look through this post and verify that you have a right hand coordinate system with 0,0 in the front left corner. +X going to the right and +Y going to the back and htat your endstop locations are reflected correctly in M574 and your homing moves are also correct direction.

    https://forum.duet3d.com/topic/12676/mirrored-x-axis/9?_=1584807834877



  • @PaulHew said in X/Y endstops not stopping motors, carriage grinds motor:

    Please post your latest config.g

    G92 resets its home position, I only use G92 when I am resetting my Z axis after levelling it..
    .
    .
    .
    You can see the endstops triggering in DWC, under 'Machine-Specific' on the left hand side.
    When you click Machine specific or the RHS there should be a box labelled 'Endstops'
    If you manually press the endstop switches they should change their state.

    HTH

    Paul.

    Hi Paul,

    Couple of things. I'm only using the G92 temporarily to create the software endstop. I wanted to see if the machine would stop at 0.00, which it does. So onto the more perplexing thing.

    Since I sent M564 S0 to allow me to move the axis before homing, I can move the axis to the 0.00 point for each axis. Whether I manually trigger them, or move the axis carriages into them, they respond correctly in 'Machine Specific'. But when it is triggered, it is not telling the steppers/motors to stop.

    But it did it perfectly the previous D2M board that I had been using for 2 months.

    My CR10S is working excellently on a Duet 2 Wifi board. And my troubleshooting/researching skills are pretty solid, but this one has me baffled.


    Config.g

    ; Configuration file for Duet Maestro (firmware version 2.03)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Tue Feb 18 2020 18:08:43 GMT-0500 (Eastern Standard Time)

    ; General preferences
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"Ender5Pro - 3DimensionGames" ; set printer name
    M564 H0 ;allow movement without homing

    ; Network
    M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S0 ; disable Telnet

    ; Drives
    M569 P0 S1 ; physical drive 0 goes forwards
    M569 P1 S1 ; physical drive 1 goes forwards
    M569 P2 S0 ; physical drive 2 goes backwards
    M569 P3 S0 ; physical drive 3 goes forwards
    M584 X0 Y1 Z2 E3 ; set drive mapping
    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
    M92 X80.15 Y79.04 Z800 E410 ; set steps per mm
    M566 X900 Y900 Z30 E300 ; set jerk (mm/min)
    M203 X7200 Y7200 Z600 E6000 ; set maximum speeds (mm/min)
    M201 X1200.00 Y1200.00 Z240.00 E5000.00 ; set accelerations (mm/s^2)
    M906 X1000 Y1000 Z800 E1000 I50 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X0 Y0 Z0 S1 ; set axis minima
    M208 X235 Y235 Z260 S0 ; set axis maxima

    ; Endstops
    M574 X1 Y1 S1 ; set active high endstops
    M574 Z1 S2 ; set endstops controlled by probe

    ; Z-Probe
    M558 P9 H2 F90 T24000 ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X41 Y24 Z0.87 ; set Z probe trigger value, offset and trigger height
    M557 X45:225 Y30:210 S45 ; define mesh grid

    ; Heaters
    M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
    M305 P0 T100000 B3950 R2200 ; set thermistor + ADC parameters for heater 0
    M143 H0 S150 ; set temperature limit for heater 0 to 150C
    M305 P1 T100000 B3950 R2200 ; set thermistor + ADC parameters for heater 1
    M143 H1 S275 ; set temperature limit for heater 1 to 275C

    ; Fans
    M106 P0 S0 I0 F500 H-1 ; set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H1 T45 ; set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S1 I0 F500 H1:0 T45 ; set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

    ; Tools
    M563 P0 D0 H1 F0 ; define tool 0
    G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
    G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C

    ; Custom settings are not defined
    M501
    M572 D0 S0.18; set K-factor



  • This post is deleted!


  • @Phaedrux said in X/Y endstops not stopping motors, carriage grinds motor:

    It kind of sounds like your coordinate system is a bit out of whack.

    Have a look through this post and verify that you have a right hand coordinate system with 0,0 in the front left corner. +X going to the right and +Y going to the back and htat your endstop locations are reflected correctly in M574 and your homing moves are also correct direction.

    https://forum.duet3d.com/topic/12676/mirrored-x-axis/9?_=1584807834877

    The coordinate system is fine. It was working fine on the previous maestro board.

    Question, when an endstop is triggered, what part of the HW/SW/FW is actually telling the steppers to stop sending current to the motors?

    I can hold the endstop closed, and still move the motors around. The system is simply disregarding the endstop all together.



  • Please post you Homex.g and homey.g, lets check them!

    Also, if you are going to paste text from your config, use the </> button above, where you can set bold and italics. (I only learnt this one the other day!!)

    P.



  • @PaulHew said in X/Y endstops not stopping motors, carriage grinds motor:

    Please post you Homex.g and homey.g, lets check them!

    Also, if you are going to paste text from your config, use the </> button above, where you can set bold and italics. (I only learnt this one the other day!!)

    P.

    homex.g
    ; homex.g
    ; called to home the X axis
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Tue Feb 18 2020 18:08:46 GMT-0500 (Eastern Standard Time)
    G91 ; relative positioning
    G1 H2 Z5 F24000 ; lift Z relative to current position
    G1 H1 X-240 F8000 ; move quickly to X axis endstop and stop there (first pass)
    G1 H2 X20 F12000 ; go back a few mm
    G1 H1 X-240 F1000 ; move slowly to X axis endstop once more (second pass)
    G90 ; absolute positioning


    homey.g
    ; homey.g
    ; called to home the Y axis
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Fri Feb 14 2020 22:01:04 GMT-0500 (Eastern Standard Time)
    G91 ; relative positioning
    G1 H2 Z5 F12000 ; lift Z relative to current position
    G1 H1 Y-240 F8000 ; move quickly to Y axis endstop and stop there (first pass)
    G1 H2 Y20 F12000 ; go back a few mm
    G1 H1 Y-240 F1000 ; move slowly to Y axis endstop once more (second pass)
    G90 ; absolute positioning



  • It all seems good, and was working before.



  • @RyanP said in X/Y endstops not stopping motors, carriage grinds motor:

    M564 H0 ;allow movement without homing

    Try removing this line.

    P.



  • @PaulHew

    If I remove that, and it wasn't there before this problem, the printer will simply not move.



  • @RyanP said in X/Y endstops not stopping motors, carriage grinds motor:

    @PaulHew

    If I remove that, and it wasn't there before this problem, the printer will simply not move.

    So I uncommented that line.

    Hitting Home All or any individual axis home button gives this error:
    G28
    Error: G0/G1: insufficient axes homed

    Asking the printer to move in any direction using the buttons next to the home buttons result in this error:

    M120
    G91
    G1 Z25 F6000
    M121
    Error: G0/G1: insufficient axes homed
    Error: Pop(): stack underflow!



  • Usually stack over flow or under flow mean there is a compiling error, to my knowledge.


  • Moderator

    @RyanP Please check how you have connected the X and Y endstops. It sounds like they are reversed, or one is connected to Z endstop.

    Ian


  • Moderator

    Can you send M115 and verify what firmware version you're using?

    Endstops are only active during homing moves (G1 H1).

    Moves with G1 H2 should allow movement without using M564 H0, so this leads me to believe you are using an older firmware version that doesn't understand G1 H1/G1 H2. It used to be G1 S1/G1 S2.



  • @Phaedrux said in X/Y endstops not stopping motors, carriage grinds motor:

    Can you send M115 and verify what firmware version you're using?

    Endstops are only active during homing moves (G1 H1).

    Moves with G1 H2 should allow movement without using M564 H0, so this leads me to believe you are using an older firmware version that doesn't understand G1 H1/G1 H2. It used to be G1 S1/G1 S2.

    M115
    FIRMWARE_NAME: RepRapFirmware for Duet 2 Maestro FIRMWARE_VERSION: 2.01beta1(RTOS) ELECTRONICS: Duet Maestro 1.0 FIRMWARE_DATE: 2018-06-23b1


Log in to reply