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

    3.5.0-rc.4 Z (print head) crashes into bed at end of print

    Scheduled Pinned Locked Moved
    Beta Firmware
    3
    11
    325
    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.
    • Nate.Nygrenundefined
      Nate.Nygren
      last edited by

      Expected result
      At end of print, my GCODE is:
      ...
      G28 X
      ...
      G90 ;absolute positioning
      G1 Y200 ;move Y forward to present print

      Observed result
      DWC displayed "Error: G1: intermediate position outside machine limits" in Console
      G1 Y200 was never executed, print head crashed into bed after homing X.

      Steps to reproduce
      Type in G28 X into DWC command line produced same result.

      Config.g

      ; Configuration file for RepRapFirmware on Duet 3 Mini 5+ Ethernet
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v3.5.0-rc.3+2 on Fri Apr 05 2024 23:17:08 GMT-0500 (Central Daylight Time)
      
      ; General
      G90 ; absolute coordinates
      M83 ; relative extruder moves
      M550 P"Prusa Bear" ; set hostname
      M911 S19.8 R22 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
      
      ; Accessories
      ;M918 P2 E4 F2000000 C30 R6 ; configure direct-connect display
      ;M150 X2 R255 U255 B255 S3   ; set all 3 LEDs to white
      
      ; Network
      M552 S1 ; configure network
      M586 P0 S1 ; enable HTTP
      
      ; Smart Drivers
      M569 P0.0 S0 D3 V10 ; driver 0.0 goes backwards (X axis)
      M915 P0.0 S6 ; set StallGuard threshold
      M569 P0.1 S1 D3 V10 ; driver 0.1 goes forwards (Y axis)
      M915 P0.1 S1 ; set StallGuard threshold
      M569 P0.2 S0 D3 V38 ; driver 0.2 goes backwards (Z axis)
      M569 P0.3 S1 D2 ; driver 0.3 goes forwards (extruder 0)
      M569 P0.4 S0 D3 V38 ; driver 0.4 goes backwards (Z axis)
      
      ; Motor Idle Current Reduction
      M906 I30 ; set motor current idle factor
      M84 S30 ; set motor current idle timeout
      
      ; Axes
      M584 X0.0 Y0.1 Z0.2:0.4 ; set axis mapping
      M671 X-50:305 Y0:0 P2 S10 ; define dual driven z-axis with 8mm pitch for leadscrews
      M350 X16 Y16 Z16 I1 ; configure microstepping with interpolation
      M906 X1200 Y1200 Z1200 ; set axis driver currents
      M92 X100 Y100 Z400 ; configure steps per mm
      M208 X-8:250 Y-8:210 Z0:210 ; set minimum and maximum axis limits
      M566 X480 Y480 Z480 ; set maximum instantaneous speed changes (mm/min) X and Y can be 600
      M203 X9000 Y9000 Z960 ; set maximum speeds (mm/min)
      ;M201 X500 Y500 Z20 ; set accelerations (mm/s^2)
      M201 X500 Y500 Z250
      
      ; Extruders
      M584 E0.3 ; set extruder mapping
      M350 E16 I1 ; configure microstepping with interpolation
      M906 E800 ; set extruder driver currents
      M92 E140 ; configure steps per mm
      M566 E360 ; set maximum instantaneous speed changes (mm/min)
      M203 E3600 ; set maximum speeds (mm/min)
      M201 E500 ; set accelerations (mm/s^2)
      
      ; Kinematics
      M669 K0 ; configure Cartesian kinematics
      
      ; Probes
      M558 P5 C"io3.in" H2 F800:300 T6000 A3 ; configure digital probe via slot #0
      G31 P1000 X0 Y0 Z1.0966 ; set Z probe trigger value, offset and trigger height with steel TEXTURED sheet
      ;G31 P1000 X0 Y0 Z0.9003 ; set Z probe trigger value, offset and trigger height with steel SMOOTH sheet
      
      ; Endstops
      M574 X1 S3 ; configure X axis endstop
      M574 Y1 S3 ; configure Y axis endstop
      M574 Z1 S2 ; configure Z axis endstop
      M574 Z2 S3 ; top end Z ?
      
      ; sensorless homing
      M915 X S6 F0 H112 R0                                   ; set X axis Sensitivity
      M915 Y S1 F0 H112 R0                                   ; set Y axis Sensitivity
      
      ; Mesh Bed Compensation
      M557 X13:217 Y1:198 P3 ; define grid for mesh bed compensation
      M376 H2	; Fade height 2mm
      
      ; Sensors
      M308 S0 P"temp0" Y"thermistor" A"Bed" T100000 B4725 C7.06e-8 ; configure sensor #0
      M308 S1 P"temp1" Y"thermistor" A"Nozzle" T100000 B4725 C7.06e-8 ; configure sensor #1
      
      ; Heaters
      M950 H0 C"out0" T0 ; create heater #0
      M143 H0 P0 T0 C0 S120 A0 ; configure heater monitor #0 for heater #0
      ;M307 H0 R2.43 D5.5 E1.35 K0.56 B1 ; configure model of heater #0
      M950 H1 C"out1" T1 ; create heater #1
      M143 H1 P0 T1 C0 S280 A0 ; configure heater monitor #0 for heater #1
      ;M307 H1 R2.43 D5.5 E1.35 K0.56 B0 ; configure model of heater #1
      M307 H1 R2.203 K0.332:0.243 D6.51 E1.35 S1.00 B0 V24.2
      
      ; Heated beds
      M140 P0 H0 ; configure heated bed #0
      
      ; Fans
      M950 F0 C"out5" ; create fan #0
      M106 P0 S0 L0 X1 B0.1 ; configure fan #0
      M950 F1 C"out6" ; create fan #1
      M106 P1 S0 B0.1 H1 T55 ; configure fan #1
      
      ; Tools
      M563 P0 D0 H1 F0 ; create tool #0
      M568 P0 R0 S0 ; set initial tool #0 active and standby temperatures to 0C
      
      ; Miscellaneous
      M501 ; load saved parameters from non-volatile memory
      T0 ; select first tool
      
      ; Accelerometer for Input Shaping
      ;M955 P0 C"spi.cs2+spi.cs1" ; all wires connected to temp DB connector
      
      ; Custom settings
      M572 D0 S0.045       ; Pressure Advance
      M207 S0.65 F2400 Z0  ; firmware retraction
      M593 P"zvddd" F61    ; use input shaping to cancel ringing
      
      gloomyandyundefined 1 Reply Last reply Reply Quote 0
      • gloomyandyundefined
        gloomyandy @Nate.Nygren
        last edited by

        @Nate-Nygren I think we would need to see your homex.g file as well.

        Nate.Nygrenundefined 1 Reply Last reply Reply Quote 0
        • Nate.Nygrenundefined
          Nate.Nygren @gloomyandy
          last edited by Nate.Nygren

          @gloomyandy
          Using the Home X button in DWC works fine, no Z crash.

          homex.g

          ; homex.g
          ; called to home the X axis
          ;
          ; generated by RepRapFirmware Configuration Tool v3.5.0-rc.3+2 on Fri Apr 05 2024 23:17:10 GMT-0500 (Central Daylight Time)
          
          ; lift Z
          G91 ; relative positioning
          G1 H2 Z2 ; move Z relative to current position to avoid dragging nozzle over the bed
          G90 ; absolute positioning
          
          ; home X
          var maxTravel = move.axes[0].max - move.axes[0].min + 5 ; calculate how far X can travel plus 5mm
          G1 H1 X{-var.maxTravel} F6000 ; coarse home in the -X direction
          G1 H2 X5 F6000 ; move back 5mm
          G1 H1 X{-var.maxTravel} F3000 ; fine home in the -X direction
          G1 H2 Z-2 F6000 ; lower Z again
          
          gloomyandyundefined 1 Reply Last reply Reply Quote 0
          • gloomyandyundefined
            gloomyandy @Nate.Nygren
            last edited by

            @Nate-Nygren I'm not sure you correctly understand what the H2 parameter to a move is doing. So for instance it looks like you expect that the final G1 H2 Z-2 move to be a relative move, it will not be. Instead it will be moving Z to -2 (which is probably what is causing your crash). So for many of those moves you need to be setting relative mode before you make them. I'd also suggest removing the H2 parameter from most of those moves, it probably is not needed.

            Nate.Nygrenundefined gloomyandyundefined 2 Replies Last reply Reply Quote 0
            • Nate.Nygrenundefined
              Nate.Nygren @gloomyandy
              last edited by

              @gloomyandy I agree the H2 doesn't need to be there, but this homex.g file was generated by the RepRapFirmware Config tool, and like I mentioned above it works fine if it's called by the Home X button in DWC, so I didn't edit them out.

              1 Reply Last reply Reply Quote 0
              • gloomyandyundefined
                gloomyandy @gloomyandy
                last edited by

                @gloomyandy Well something is wrong with it, look at the first Z move it is relative, but the second one isn't. I'm pretty sure that last z move is what is causing your problem. Why not try making the changes and see if it fixes the problem?

                Nate.Nygrenundefined 2 Replies Last reply Reply Quote 0
                • Nate.Nygrenundefined
                  Nate.Nygren @gloomyandy
                  last edited by

                  @gloomyandy I'm already on it 🙂 I commented out the last G1 move in the homex.g file, which isn't really necessary anyway, and am heating up for a quick print test.

                  1 Reply Last reply Reply Quote 0
                  • Nate.Nygrenundefined
                    Nate.Nygren @gloomyandy
                    last edited by

                    @gloomyandy Bingo, commenting out the last G1 move was the key. Thank!

                    gloomyandyundefined 1 Reply Last reply Reply Quote 0
                    • gloomyandyundefined
                      gloomyandy @Nate.Nygren
                      last edited by

                      @Nate-Nygren You might be better off moving the G90 to the end of the file, it looks to me like all of those moves are intended to be relative moves.

                      Nate.Nygrenundefined 1 Reply Last reply Reply Quote 0
                      • Nate.Nygrenundefined
                        Nate.Nygren @gloomyandy
                        last edited by

                        @gloomyandy 👍 I'll suggest that in the report to the ConfigTool repo.

                        chrishammundefined 1 Reply Last reply Reply Quote 2
                        • chrishammundefined
                          chrishamm administrators @Nate.Nygren
                          last edited by

                          @Nate-Nygren Thanks for reporting this, I just fixed it in the configtool.

                          Duet software engineer

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