Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Endstops Stop working

    Scheduled Pinned Locked Moved
    Using Duet Controllers
    4
    13
    430
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • dank0undefined
      dank0
      last edited by dank0

      I updated fw to 3.4.0beta5 and my endstops stop working. when i want to home any direction it doesn't stop the motion in that specific direction. I tried the gcode M119 and i get this:

      M119
      Endstops - X: not stopped, Y: not stopped, Z: no endstop, Z probe: not stopped
      

      when i hold the switch in any direction and shoot the same gcode, it sends me same response. I dont know where is the problem? should i reset the board and flash the older fw?

      === Diagnostics ===
      RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.0beta5 (2021-10-12 13:54:53) running on Duet WiFi 1.0 or 1.01 + DueX5
      Board ID: 0JD0M-9P61A-J8PSJ-6JTD0-3SD6Q-9ARGT
      Used output buffers: 3 of 24 (12 max)
      === RTOS ===
      Static ram: 23868
      Dynamic ram: 75664 of which 12 recycled
      Never used RAM 12536, free system stack 184 words
      Tasks: NETWORK(ready,13.2%,245) HEAT(notifyWait,0.0%,327) Move(notifyWait,0.0%,363) DUEX(notifyWait,0.0%,24) MAIN(running,86.3%,440) IDLE(ready,0.6%,30), total 100.0%
      Owned mutexes: WiFi(NETWORK)
      === Platform ===
      Last reset 00:02:12 ago, cause: software
      Last software reset at 2021-10-28 00:10, reason: User, GCodes spinning, available RAM 12488, slot 2
      Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
      Error status: 0x00
      Step timer max interval 0
      MCU temperature: min 33.8, current 34.3, max 34.8
      Supply voltage: min 12.0, current 12.1, max 12.2, under voltage events: 0, over voltage events: 0, power good: yes
      Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
      Driver 0: pos 0,standstill, SG min/max n/a
      Driver 1: pos 0,standstill, SG min/max n/a
      Driver 2: pos 0,standstill, SG min/max n/a
      Driver 3: pos 0,standstill, SG min/max n/a
      Driver 4: pos 0,standstill, SG min/max n/a
      Driver 5: pos 0,standstill, SG min/max n/a
      Driver 6: pos 0,standstill, SG min/max n/a
      Driver 7: pos 0,standstill, SG min/max n/a
      Driver 8: pos 0,standstill, SG min/max n/a
      Driver 9: pos 0,standstill, SG min/max n/a
      Driver 10: pos 0
      Driver 11: pos 0
      Date/time: 2021-10-28 00:12:24
      Cache data hit count 4294967295
      Slowest loop: 4.34ms; fastest: 0.17ms
      I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
      === Storage ===
      Free file entries: 10
      SD card 0 detected, interface speed: 20.0MBytes/sec
      SD card longest read time 3.2ms, write time 0.0ms, max retries 0
      === Move ===
      DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, comp offset 0.000
      === MainDDARing ===
      Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === AuxDDARing ===
      Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === Heat ===
      Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
      === GCodes ===
      Segments left: 0
      Movement lock held by null
      HTTP is idle in state(s) 0
      Telnet is idle in state(s) 0
      File is idle in state(s) 0
      USB is idle in state(s) 0
      Aux is idle in state(s) 0
      Trigger is idle in state(s) 0
      Queue is idle in state(s) 0
      LCD is idle in state(s) 0
      Daemon is idle in state(s) 0
      Autopause is idle in state(s) 0
      Code queue is empty
      === DueX ===
      Read count 1, 0.45 reads/min
      === Network ===
      Slowest loop: 81.61ms; fastest: 0.00ms
      Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
      HTTP sessions: 1 of 8
      - WiFi -
      Network state is active
      WiFi module is connected to access point 
      Failed messages: pending 0, notready 0, noresp 0
      WiFi firmware version 1.23
      WiFi MAC address 48:3f:da:87:83:23
      WiFi Vcc 3.35, reset reason Power up
      WiFi flash size 4194304, free heap 20096
      WiFi IP address 192.168.2.148
      WiFi signal strength -73dBm, mode none, reconnections 0, sleep mode modem
      Clock register ffffffff
      Socket states: 0 0 0 0 0 0 0 0
      

      my config:

      ; General preferences
      
      G90                                            	; send absolute coordinates...
      G21                                            	; Work in millimetres
      M83                                            	; ...but relative extruder moves
      M550 P"Voron"                                  	; set printer name
      M669 K1                                        	; select CoreXY mode
      M404 N1.75 D0.4                                	; Set nominal filament diameter to 1.75 and nozzle width to 0.4
      
      ; Network
      
      M551 P"kodan1"                                 	; set password
      M552 S1                                        	; enable network
      M586 P0 S1                                     	; enable HTTP
      M586 P1 S1                                     	; enable FTP
      M586 P2 S1                                     	; enable Telnet
      
      ; Drives
      
      M569 P0 S1 D2 I1                               	; physical drive 0 goes forwards
      M569 P1 S0 D2 I1                               	; physical drive 1 goes forwards
      M569 P2 S0 D2 I1                               	; physical drive 2 goes forwards
      M569 P3 S0 D2 I1                              	; physical drive 3 goes forwards
      M569 P4 S1 D2 I1                               	; physical drive 4 goes forwards
      M569 P5 S1 D2 I1                               	; physical drive 5 goes forwards
      M569 P6 S0 D2 I1                               	; physical drive 6 goes forwards
      M584 X0 Y1 Z2:5:6:4 E3                         	; set drive mapping
      M350 Z16 I0                                    	; configure microstepping without interpolation
      M350 X16 Y16 E16 I1                            	; configure microstepping with interpolation
      M671 X-75:-75:413.5:413.5 Y-47:375:375:-47 S20 	; define positions of Z leadscrews or bed levelling screws
      M92 X80.00 Y80.00 Z400.00 E411.7              	; set steps per mm
      M566 X900.00 Y900.00 Z1000.00 E3000.00         	; set maximum instantaneous speed changes (mm/min)
      M203 X30000.00 Y30000.00 Z3000.00 E4200.00     	; set maximum speeds (mm/min)
      M201 X3000.00 Y3000.00 Z1000.00 E5000.00       	; set accelerations (mm/s^2)
      M906 X900 Y900 Z900 E600 I30                   	; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                        	; Set idle timeout
      
      ; Axis Limits
      
      M208 S1 X35 Y25 Z0								; set axis lower limits
      M208 S0 X295 Y265 Z330							; set axis upper limits
      
      ; Endstops
      
      M574 X2 S1 P"xstop"                            	; configure active-high endstop for high end on X via pin xstop
      M574 Y2 S1 P"ystop"                            	; configure active-high endstop for high end on Y via pin ystop
      M574 Z1 S2 P"zstop"                            ; configure Z-probe endstop for low end on Z
      
      ; Z-Probe
      M558 P5 C"^!zprobe.in" H5 F500 T6000 A5    	   	; set Z probe type to switch and the dive height + speeds
      G31 P500 X0 Y13 Z4.012							; set Z probe trigger value, offset and trigger height
      M557 X60:320 Y85:320 P7 	    			   	; define mesh grid
      
      ; Heaters
      
      M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 	; configure sensor 0 as thermistor on pin bedtemp
      M950 H0 C"bedheat" T0                          	; create bed heater output on bedheat and map it to sensor 0
      M307 H0 B0 R0.408 C323.9 D2.25 S1.00 V12.1     	; disable bang-bang mode for the bed heater and set PWM limit
      M140 H0                                        	; map heated bed to heater 0
      M143 H0 S120                                   	; set temperature limit for heater 0 to 120C
      M308 S1 P"e0temp" Y"thermistor" T100000 B4138  	; configure sensor 1 as thermistor on pin e0temp
      M950 H1 C"e0heat" T1                           	; create nozzle heater output on e0heat and map it to sensor 1
      M307 H1 B0 R2.567 C179.5 D12.64 S1.00 V11.9    	; disable bang-bang mode for heater  and set PWM limit
      M143 H1 S280                                   	; set temperature limit for heater 1 to 280C
      
      ; Fans
      M950 F1 C"fan1" Q500 			   				; create fan 0 on pin fan0 and set its frequency
      M106 P1 C"FILAMENT COOLING" S0 H-1 X0.35 B0.1	; set fan 0 value. Thermostatic control is turned off 
      M950 F2 C"fan2" Q500 						   	; create fan 2 on pin fan1 and set its frequency
      M106 P2 C"HOTEND FAN" S1		               	; set fan 2 value. Thermostatic control is turned on
      
      ; Tools
      
      M563 P0 S"E3DV6" D0 H1 F1                      	; 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
      M572 D0 S0.06									; pressure advance
      

      UPDATE: when i reboot the printer and after reboot I hold X or Y endstop, M119 Shows they are triggered, But when i do any move the X or Y, the endstops stop working

      T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
      • T3P3Tonyundefined
        T3P3Tony administrators @dank0
        last edited by

        @dank0 what version of the firmware were you using before?

        The M574 commands look good for a switch type endstop.

        So from a fresh startup you use M119 and the endstops show to trigger when held down and un triggered when not? then if you home does it home as expected?

        www.duet3d.com

        dank0undefined 1 Reply Last reply Reply Quote 0
        • dank0undefined
          dank0 @T3P3Tony
          last edited by

          @t3p3tony 3.4.0beta4, ok so i think found the issue - when the homing goes direction Z it disable all endstops. Did you guys see this issue before?

          T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
          • T3P3Tonyundefined
            T3P3Tony administrators @dank0
            last edited by

            @dank0 i have not seen that, whats in your homez.g? Also could you try downgrading to 3.4b4 temporarily to see if the problem goes away?

            www.duet3d.com

            dank0undefined 1 Reply Last reply Reply Quote 0
            • dank0undefined
              dank0 @T3P3Tony
              last edited by

              @t3p3tony so i tried to downgrade, it was still with the same issue. I also have one SD card with configured klipper, so i tried to flash klipper and klipper works fine. But i want to use reprap fw.

              ; homez.g
              ; called to home the Z axis
              
              G90 					; absolute mode
              G1 H2 Z40 F3000   		; lift Z relative to current position
              G1 X310 Y345 F7000		; go to enprobe point
              G1 H1 Z-340 F1000  		; move Z down stopping at the endstop
              G1 H2 Z5 F1000 			; move Z back 5mm
              G1 H1 Z-10 F1000 		; move Z slowly towards the switch until it triggers
              G1 H2 Z50 F3000			; move Z up 50mm
              G1 X175 Y175 F7000		; go to the center of bed
              G90 					; back to absolute mode
              
              fcwiltundefined 1 Reply Last reply Reply Quote 0
              • dank0undefined
                dank0
                last edited by dank0

                I have another question maybe that is the issue -

                from top view my origin 0.0 position is in rear, right corner. In klipper i have same origin. In klipper my movement to left are positive so for example if i go from 0 to 200, it is + direction. Here is the minus direction so it will be -200. is that correct or i have switched motor directions?

                |-----------| 0.0
                |.............|
                |.............|
                |.............|
                |________|

                When i was installing Klipper i have to switch Z motors position so they are like this

                Z3 |-----------| Z
                      |.............|
                      |.............|
                      |.............|
                Z2 |________| Z1

                In the REPRAP the motors are defined with M584

                M584 X0 Y1 Z2:5:6:4 E3
                

                does the Z order matters?

                T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
                • T3P3Tonyundefined
                  T3P3Tony administrators @dank0
                  last edited by

                  @dank0 RepRap firmware assumes a right handed co-ordinate system

                  So for CoreXY XY motors:
                  https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter#Section_Testing_motor_movement

                  For a CoreXY or H-Bot machine, RepRapFirmware assumes that the motor connected to the X motor output moves the head in the +X and +Y directions when it runs forwards, and that the Y motor moves the head in +X and -Y directions when it runs forwards.
                  Important: make sure that you have chosen a right-hand axis system. That is, 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.

                  For the independent Z motors:
                  https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors

                  You must use the M671 command to define the X and Y coordinates of the leadscrews. The M671 command must come after the M584 command and must specify the same number of X and Y coordinates as the number of motors assigned to the Z axis in the M584 command; and these coordinates must be in the same order as the driver numbers of the associated motors in the M584 command. The M671 command must also come after any M667 or M669 command.

                  So I think you have everything backwards, however I am not convinced this is the cause of the Z homing issue.

                  www.duet3d.com

                  1 Reply Last reply Reply Quote 0
                  • fcwiltundefined
                    fcwilt @dank0
                    last edited by fcwilt

                    @dank0

                    In your homeZ.g file you have an initial G90 - it should be a G91.

                    Frederick

                    Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                    1 Reply Last reply Reply Quote 0
                    • dank0undefined
                      dank0
                      last edited by

                      Thanks @T3P3Tony and @fcwilt
                      i switched all those motors correctly by it really didn't help me with ENDSTOPs
                      . So i went back to Klipper and they all work fine, weird. I cannot firuge out RR.

                      T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
                      • T3P3Tonyundefined
                        T3P3Tony administrators @dank0
                        last edited by T3P3Tony

                        @dank0 how did they not work with the endstops? you can set where the endstops are on the axis with the M574 commands, so they can be configured as either at the min or the max of the axis.

                        Or do you mean the issue where homing Z stops the endstops working?

                        www.duet3d.com

                        1 Reply Last reply Reply Quote 0
                        • dank0undefined
                          dank0
                          last edited by

                          @t3p3tony no, the endstops become not activated. they work after reboot but when the motors make motion they become not active, i don't know why. but Klipper have no issue - in klipper i have to just add pin numbers and works but RR doesnt react properly on xstop, ystop etc. also i tried to change to other sockets without luck.

                          fcwiltundefined dc42undefined 2 Replies Last reply Reply Quote 0
                          • fcwiltundefined
                            fcwilt @dank0
                            last edited by

                            @dank0

                            Did you verify that when triggering the endstop sensors by hand that the correct state appeared in the the Object Model as displayed in the DWC?

                            Did you correct your homing code where you had the G90 that should have been a G91?

                            Frederick

                            Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                            1 Reply Last reply Reply Quote 0
                            • dc42undefined
                              dc42 administrators @dank0
                              last edited by dc42

                              @dank0 did you correct that G90 to G91 as @fcwilt pointed out?

                              Please post your homex.g, homey.g and homeall.g files too.

                              BTW your Z homing script is incorrect - although I don't think that is the cause of your issue with re-homing X and Y. When using a Z probe for homing, you should home Z using a G30 command, not a G1 H1 command, and you do not need to define a Z endstop using M574. See https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCartesianPrinter#Section_Homing_Z_using_a_Z_probe.

                              Duet WiFi hardware designer and firmware engineer
                              Please do not ask me for Duet support via PM or email, use the forum
                              http://www.escher3d.com, https://miscsolutions.wordpress.com

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post
                              Unless otherwise noted, all forum content is licensed under CC-BY-SA