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

    Issues with bed probing and leveling independent Z drivers

    Scheduled Pinned Locked Moved Solved
    General Discussion
    2
    8
    290
    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.
    • A Former User?
      A Former User
      last edited by A Former User

      I am converting my Ender 5+ over to a duet 6hc. Firmware is updated to 3.4.1, paneldue also installed and updated to current firmware. I have dual Z drivers independently driven with the idea that calling G32 would align the two Z drivers then perform bed probing. Unfortunately, I am having some issues.

      I have probe offset set as figured from CAD. When HomeZ or HomeAll run, my G30 X180 Y180 command does not move and just probes where ever it is currently located.

      Also I get an error on startup that "No valid grid defined for bed probing."

      I'm guessing I have a couple different problems in config or elsewhere but I have no idea what they are. Any help would be greatly appreciated.

      Config.g HomeAll.g HomeZ.g and Bed.g all below:

      Thanks in advance!

      ; Configuration file for Duet 3 MB 6HC (firmware version 3.3)
      ; executed by the firmware on start-up
      ;
      
      ; General preferences
      M575 P1 S1 B57600                            ; enable support for PanelDue
      G90                                          ; send absolute coordinates...
      M83                                          ; ...but relative extruder moves
      M550 P"My Printer"                           ; set printer name
      
      ; Network
      M552 P192.168.1.69 S1                        ; enable network and set IP address
      M553 P255.255.255.0                          ; set netmask
      M554 P192.168.1.254                          ; set gateway
      M586 P0 S1                                   ; enable HTTP
      M586 P1 S0                                   ; disable FTP
      M586 P2 S0                                   ; disable Telnet
      
      ; Drives
      M569 P0.0 S0                                 ; X physical drive 0.0 goes backwards
      M569 P0.1 S0                                 ; Y physical drive 0.1 goes backwards
      M569 P0.2 S1                                 ; Zl physical drive 0.2 goes forwards
      M569 P0.3 S1                                 ; Zr physical drive 0.3 goes forwards
      M569 P0.4 S1                                 ; E1 physical drive 0.4 goes forwards
      M584 X0.0 Y0.1 Z0.2:0.3 E0.4                 ; set drive mapping
      
      
      M350 X16 Y16 Z16 E16 I1                     ; configure microstepping with interpolation
      M92 X80.00 Y80.00 Z800.00 E435              ; set steps per mm
      M566 X600.00 Y600.00 Z30.00 E300.00         ; set maximum instantaneous speed changes (mm/min)
      M203 X9000.00 Y9000.00 Z500.00 E6000.00     ; set maximum speeds (mm/min)
      M201 X1500.00 Y1500.00 Z100.00 E1500.00     ; set accelerations (mm/s^2)
      M906 X550 Y1000 Z600 E500 I30                ; 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 X360 Y360 Z400 S0                       ; set axis maxima
      
      ; Endstops
      M574 X2 S1 P"io1.in"                         ; configure switch-type (e.g. microswitch) endstop for high end on X via pin io1.in
      M574 Y2 S1 P"io2.in"                         ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin io2.in
      
      ; Z-Probe
      M950 S0 C"io4.out"                           ; create servo pin 0 for BLTouch
      M558 P9 C"io4.in" H5 F80 T6000               ; set Z probe type to bltouch and the dive height + speeds
      G31 P500 X44.1 Y6.4 Z2.35                    ; set Z probe trigger value, offset and trigger height
      ;G29 X44.1 Y6.4 Z2.35                        ; set Z probe offset
      M557 X55:305 Y55:305 S50                     ; define mesh grid
      
      ; Heaters
      M308 S0 P"temp0" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin temp0
      M950 H0 C"out0" T0                           ; create bed heater output on out0 and map it to sensor 0
      M307 H0 B0 S1.00                             ; 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"temp1" Y"thermistor" T100000 B4092 ; configure sensor 1 as thermistor on pin temp1
      M950 H1 C"out1" T1                           ; create nozzle heater output on out1 and map it to sensor 1
      M307 H1 B0 S1.00                             ; disable bang-bang mode for heater  and set PWM limit
      M143 H1 S280                                 ; set temperature limit for heater 1 to 280C
      
      ; Bed adjustment screw locations
      M671 X316:316:46:46 Y295:35:295:35 P0.7      ; mark leveling screws at (316,295) (316,35) (46,295) (46,35)
      
      ; Fans
      M950 F0 C"out7" Q80                          ; create fan 0 on pin out7 and set its frequency
      M106 P0 C"PartFan" S.65 H-1              ; set fan 0 name and value. Thermostatic control is turned off
      M950 F1 C"out8" Q80                          ; create fan 1 on pin out8 and set its frequency
      M106 P1 C"HE1Fan" S.65 H-1                   ; set fan 1 name and value. Thermostatic control is turned off
      
      ; 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
      
      ; Miscellaneous
      M501                                         ; load saved parameters from non-volatile memory
      
      ; homeall.g
      ; called to home all axes
      ;
      G91                   ; relative positioning
      G1 H2 Z5 F6000        ; lift Z relative to current position
      G1 H1 X360 Y360 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
      G1 H2 X-5 Y-5 F6000   ; go back a few mm
      G1 H1 X360 Y360 F360  ; move slowly to X and Y axis endstops once more (second pass)
      G90                   ; absolute positioning
      G30 X180 Y180         ; home Z by probing the bed
      
      ; homez.g
      ; called to home the Z axis
      ;
      ; generated by RepRapFirmware Configuration Tool v3.3.12 on Sat Aug 06 2022 17:17:25 GMT-0800 (Alaska Daylight Time)
      G91                       ; relative positioning
      G29 X44.1 Y6.4 Z2.35      ; set Z probe offset
      G1 H2 Z5 F6000            ; lift Z relative to current position
      G90                       ; absolute positioning
      G30 X180 Y180 Z-99999     ; home Z by probing the bed
      
      
      ; bed.g
      ; called to perform automatic bed compensation via G32
      ;
      ; generated by RepRapFirmware Configuration Tool v3.3.12 on Sat Aug 06 2022 17:17:24 GMT-0800 (Alaska Daylight Time)
      M561                                          ; clear any bed transform
      G29 X44.1 Y6.4 Z2.35                          ; set Z probe offset
      M671 X-30:380 Y187:187 S0.5                   ; set location of left and right lead screws
      G28                                           ; home
      G90                                           ; absolute positioning
      G30 P0 X20 Y180 Z-99999                       ; probe near left lead screw
      G30 P1 X330 Y180 Z-99999 S2                   ; prober near right lead screw and calibrate two motors
      G30 Z180 Y180 Z-99999                         ; home Z by probing the bed
      G29                                           ; probe the bed and enable compensation
      M671 X316:316:46:46 Y295:35:295:35 P0.7       ; mark leveling screws at (316,295) (316,35) (46,295) (46,35)
      
      Phaedruxundefined 1 Reply Last reply Reply Quote 0
      • Phaedruxundefined
        Phaedrux Moderator @A Former User
        last edited by

        @dubdub said in Issues with bed probing and leveling independent Z drivers:

        G30 X180 Y180

        This is not a valid G30 command. In order to probe at a point, you must send a separate G1 X Y command first to position the probe before using G30 to probe at that point.

        It's a little different when using the define points like you have here:

        G30 P0 X20 Y180 Z-99999                       ; probe near left lead screw
        G30 P1 X330 Y180 Z-99999 S2                   ; prober near right lead screw and calibrate two motors
        

        Z-Bot CoreXY Build | Thingiverse Profile

        A Former User? 1 Reply Last reply Reply Quote 0
        • A Former User?
          A Former User @Phaedrux
          last edited by

          @phaedrux Thanks.

          So for G30 X180 Y180 to be a valid command for probing the center of the bed, would changing to G30 P0 X180 Y180 Z-99999 be a valid for this purpose?

          Or must the sequence be:

          G1 X(180-probeXoffest) Y(180-probeYoffset)
          G30

          Phaedruxundefined 1 Reply Last reply Reply Quote 0
          • Phaedruxundefined
            Phaedrux Moderator @A Former User
            last edited by

            @dubdub said in Issues with bed probing and leveling independent Z drivers:

            Or must the sequence be:
            G1 X(180-probeXoffest) Y(180-probeYoffset)
            G30

            This would be correct for homing.

            Z-Bot CoreXY Build | Thingiverse Profile

            A Former User? 1 Reply Last reply Reply Quote 0
            • A Former User?
              A Former User @Phaedrux
              last edited by

              @phaedrux
              Ok thank you, I will make that change. Do you perhaps have any idea why my bed grid returns an error? I believe I implemented the M557 X55:305 Y55:305 S50 command properly for defining a 6x6 grid but the error message on startup tells me otherwise.

              1 Reply Last reply Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator
                last edited by

                Please send M122 and M98 P"config.g" in the gcode console and post the results. You can also send M557 by itself to see what it reports as it's grid settings.

                When exactly do you get the No valid points error? Those grid values are only called upon when sending G29 S0 to do a mesh compensation grid.

                @dubdub said in Issues with bed probing and leveling independent Z drivers:

                G29 X44.1 Y6.4 Z2.35 ; set Z probe offset

                This isnt a valid command in your bed.g. Perhaps you wanted to use G31?

                Z-Bot CoreXY Build | Thingiverse Profile

                A Former User? 2 Replies Last reply Reply Quote 0
                • A Former User?
                  A Former User @Phaedrux
                  last edited by

                  @phaedrux

                  Ah yes, it should be G31 not G29. I will delete that line as it should be redundant with the G31 line in config.g under Z-Probe settings. That's likely at least part of the issue I have when running bed.g... I borrowed someones config files for a starting point (older version of firmware apparently) and that is one more change that I missed.

                  I receive the "Error: No valid grid defined for bed probing" in the Messages menu right after startup. Message queue is as follows after startup:

                  • 0m13 Info: successfully initialized.
                  • 0m13 HTTP is enabled on port 80
                  • 0m12 FTP is disabled
                  • 0m12 TELNET is disabled
                  • 0m12 Error: No valid grid defined for bed probing
                  • 0m11 Ethernet running. IP address = 192.168.1.69
                  • 0m10 Info status changed from Connecting to Idle

                  I will make the changes described so far, run M122 and M98"config.g" and post results when I get back home to my printer. I appreciate your help.

                  1 Reply Last reply Reply Quote 0
                  • A Former User?
                    A Former User @Phaedrux
                    last edited by

                    @phaedrux I made the changes to G codes and also realized I had my probe offsets as positive values instead of negative. With these corrections the issues of this post seem to be resolved. Thank you for your help.

                    1 Reply Last reply Reply Quote 0
                    • droftartsundefined droftarts marked this topic as a question
                    • droftartsundefined droftarts has marked this topic as solved
                    • First post
                      Last post
                    Unless otherwise noted, all forum content is licensed under CC-BY-SA