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

G29S1 not loading during print and G32 not leveling properly

Scheduled Pinned Locked Moved
IR Height Sensor
7
44
2.2k
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.
  • undefined
    moe.adams9093
    last edited by moe.adams9093 3 Nov 2021, 21:00 9 Mar 2021, 07:59

    Hello, I have a problem when I include G29S1 with my Gcode file and try to print a file and load heightmap my 4 Zaxis motors they don't move to compensate. I will post some files to help clarify the problem. I have duet ethernet and duex5 Zaxis motor connected first one at the mainboard and the other 3 connected to duex 5.

    Zbrop is DC42 IR sensor

    Config.g

    ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.4 on Tue Oct 13 2020 21:14:55 GMT-0500 (Central Daylight Time)
    ; General preferences
    G90 ; send absolute coordinates...
    M83 ; ...but relative extruder moves
    M550 P"DIVINCI-3D (MP4560)" ; set printer name
    M669 K1 ; select CoreXY mode
    ; 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 P10 R1 T3:3:10:10 S1 ; physical drive 0 goes forwards
    M569 P11 R1 T3:3:10:10 S1 ; physical drive 1 goes forwards
    M569 P3 S1 ; physical drive 3 goes forwards
    M569 P4 S0 ; physical drive 4 goes forwards
    M569 P5 S1 ; physical drive 5 goes Backwards
    M569 P6 S1 ; physical drive 6 goes Backwards
    M569 P8 S1 ; physical drive 7 goes Backwards
    M569 P2 S1 ; physical drive 9 goes backwards
    M584 X10 Y11 Z5:6:8:2 E3:4 ; set drive mapping
    M671 X50.0:450.0:450.0:50.0 Y50.0:50.0:450.0:450.0 S2 ; ZBelts Near Locations
    M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation
    M92 X40 Y40 Z412.00 E415.00:415.00 ; set steps per mm
    M566 X8000 Y8000 Z800 E450:450 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z600 E600:600 ; set maximum speeds (mm/min)
    M201 X8000 Y8000 Z80 1000:1000 ; set accelerations (mm/s^2)
    M906 X1800 Y1800 Z1000 E600:600 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 X500 Y500 Z500 S0 ; set axis maxima
    M574 X1 S1 P"!xstop" ; configure active-high endstop for low end on X via pin !xstop
    M574 Y1 S1 P"!ystop" ; configure active-high endstop for low end on Y via pin !ystop
    M574 Z1 S2 ; configure Z-probe endstop for low end on Z
    M574 Z2 S1 P"!zstop+!duex.e2stop+!duex.e3stop+!duex.e5stop" ; configure active-high endstop for high end on Z
    ; Z-Probe
    M558 P1 C"zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds
    G31 P500 X5 Y29 Z0.670 ; set Z probe trigger value, offset and trigger height
    M557 X20:460 Y20:460 S40 ; define mesh grid
    ; Heaters
    M308 S0 P"bedtemp" Y"thermistor" T100000 B4725 C7.06e-8 ; 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 A11 C99000 D2000 B1 ; enable 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"spi.cs2" Y"thermocouple-max31856" ; configure sensor 1 as thermocouple via CS pin spi.cs1
    M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
    M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
    M143 H1 S360 ; set temperature limit for heater 1 to 280C
    M308 S3 P"duex.e2temp" Y"thermistor" T10000 B3950 ; configure sensor 3 as thermistor on pin duex.e2temp
    M950 H3 C"e1heat" T3 ; create chamber heater output on duex.e2heat and map it to sensor 3
    M307 H3 A11 C99000 D2000 B1 ; enable bang-bang mode for the chamber heater and set PWM limit
    M141 H3 ; map chamber to heater 3
    ; Fans
    M950 F0 C"fan1" Q500 ; create fan 0 on pin fan1 and set its frequency
    M106 P0 C"WATER COOLING" S1 H1 T45 ; set fan 0 name and value. Thermostatic control is turned on
    M950 F1 C"duex.fan6" Q500 ; create fan 1 on pin duex.fan6 and set its frequency
    M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on
    M950 F2 C"duex.fan7" Q500 ; create fan 2 on pin duex.fan7 and set its frequency
    M106 P2 S1 H1 T45 ; set fan 2 value. Thermostatic control is turned on
    ;Led-Indicators
    M950 P6 C"duex.e2heat" Q500 ; Assign to P6
    M950 P7 C"duex.e3heat" Q500 ; Assign to P7
    M950 P8 C"duex.e4heat" Q500 ; Assign to P8
    M950 P9 C"duex.e5heat" Q500 ; Assign to P9
    M42 P6 S0;
    M42 P7 S0;
    M42 P8 S0;
    M42 P9 S0;
    ; Tools
    M563 P0 S"MAIN EXTRUDER " D1 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
    M563 P1 S"SECOND EXTRUDER" D0 H1 F0 ; define tool 1
    G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets
    G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C
    ; Custom settings are not defined
    ; Miscellaneous
    M575 P1 S1 B57600 ; enable support for PanelDue
    M501 ; load saved parameters from non-volatile memory
    M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
    T0 ; select first tool

    Bed.g

    ; bed.g
    ; called to perform automatic bed compensation via G32
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Thu Apr 30 2020 23:57:44 GMT-0500 (Central Daylight Time)
    M561 ; clear any bed transform
    M671 X50.0:450.0:450.0:50.0 Y50.0:50.0:450.0:450.0 S2 ; ZBelts Near Locations
    G30;
    G30 P0 X50 Y50 Z-99999;
    G30 P1 X450 Y50 Z-99999;
    G30 P2 X450 Y450 Z-99999; probe near a leadscrew, half way along Y axis
    G30 P3 X50 Y450 Z-99999 S4; probe near a leadscrew and calibrate 2 motors
    G29S1;

    Homeall.g

    ; homeall.g
    ; called to home all axes
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.4 on Tue Oct 13 2020 21:14:55 GMT-0500 (Central Daylight Time)
    G91 ; relative positioning
    G1 H1 Z500 F5000 ; lift Z relative to current position
    G1 H1 Y-500 F6000 ; move quickly to Y endstop and stop there (first pass)
    G1 H1 X-500 F6000 ; move quickly to X endstop and stop there (first pass)
    G1 H2 X5 F360 ; go back a few mm
    G1 H2 Y5 F360 ; go back a few mm
    G1 X245 Y250 F6000 ; Prob at Center
    M558 F600 A1 ; Dive fast once
    G30 ; probe Z
    M558 F300 A10 ; Slow second dive with more accuracy
    G30 ; probe z again

    height map file

    RepRapFirmware height map file v2 generated at 2021-03-09 01:16, min error -1.010, max error 0.630, mean -0.501, deviation 0.316
    xmin,xmax,ymin,ymax,radius,xspacing,yspacing,xnum,ynum
    20.00,460.00,20.00,460.00,-1.00,40.00,40.00,12,12
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
    -0.194, -0.234, -0.492, -0.513, -0.657, -0.777, -0.709, -0.693, -0.619, -0.663, -0.533, -0.469
    -0.347, -0.345, -0.585, -0.628, -0.748, -0.862, -0.816, -0.777, -0.746, -0.725, -0.614, -0.495
    -0.425, -0.386, -0.778, -0.825, -1.010, -0.950, -0.850, -0.739, -0.878, -0.751, -0.569, -0.708
    -0.487, -0.544, -0.717, -0.896, -0.897, -0.952, -0.931, -0.746, -0.660, -0.770, -0.620, -0.436
    -0.492, -0.552, -0.738, -0.744, -0.830, -0.950, -0.892, -0.787, -0.770, -0.703, -0.430, -0.352
    -0.479, -0.488, -0.708, -0.753, -0.768, -0.892, -0.879, -0.770, -0.682, -0.621, -0.490, -0.261
    -0.476, -0.483, -0.654, -0.817, -0.805, -0.941, -0.789, -0.619, -0.637, -0.557, -0.330, -0.180
    -0.393, -0.363, -0.523, -0.681, -0.726, -0.757, -0.706, -0.551, -0.501, -0.412, -0.187, -0.044
    -0.302, -0.293, -0.408, -0.537, -0.598, -0.647, -0.535, -0.454, -0.367, -0.246, -0.010, 0.167
    -0.079, -0.117, -0.299, -0.295, -0.340, -0.476, -0.364, -0.221, -0.135, -0.010, 0.189, 0.328
    0.099, 0.103, -0.012, -0.125, -0.188, -0.228, -0.128, 0.027, 0.057, 0.203, 0.406, 0.630
    G32
    Leadscrew adjustments made: 0.369 0.888 1.462 0.533, points used 4, (mean, deviation) before (0.813, 0.419) after (0.000, 0.000)

    so this is after running G32 at 4 points and one G30 in the center. also checked after running G32 the front left&right corners lower than the rear ones. Thank you and your help will be highly appreciated

    1 Reply Last reply Reply Quote 0
    • undefined
      jay_s_uk
      last edited by 9 Mar 2021, 08:17

      Heightmaps get unloaded whenever G28 is ran.
      You need to make sure the G29 S1 is input after your last homing takes place.
      I.e. include it as part of your start gcode, not bed.g

      Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

      undefined 1 Reply Last reply 9 Mar 2021, 12:17 Reply Quote 0
      • undefined
        moe.adams9093
        last edited by 9 Mar 2021, 08:25

        that's what I have on my gcode file

        g28;
        g32;
        g29s1;

        undefined 1 Reply Last reply 9 Mar 2021, 09:59 Reply Quote 0
        • undefined
          engikeneer @moe.adams9093
          last edited by 9 Mar 2021, 09:59

          @moe-adams9093 are you entering

          G29S1
          

          OR

          G29 S1
          

          I think you need the space in between

          If you're still having trouble, try manually sending each line from the start of a print one at a time and checking if the mesh compensation is applied/disabled via DWC

          E3D TC with D3Mini and Toolboards.
          Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
          i3 clone with a bunch of mods

          1 Reply Last reply Reply Quote 0
          • undefined
            fcwilt @jay_s_uk
            last edited by 9 Mar 2021, 12:17

            @jay_s_uk said in G29S1 not loading during print and G32 not leveling properly:

            Heightmaps get unloaded whenever G28 is ran.

            Why do you think that?

            I have not found that to be the general case.

            Frederick

            Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

            1 Reply Last reply Reply Quote 0
            • undefined
              fcwilt
              last edited by 9 Mar 2021, 12:47

              Hi,

              Your current bed.g has a single G30 before the four G30 Pn commands.

              The G30 should occur AFTER the four G30 Pn commands.

              And since bed.g is part of the bed leveling process normally you don't load your height map in it.

              M561 ; clear any bed transform
              M671 X50.0:450.0:450.0:50.0 Y50.0:50.0:450.0:450.0 S2 ; ZBelts Near Locations
              G30;
              G30 P0 X50 Y50 Z-99999;
              G30 P1 X450 Y50 Z-99999;
              G30 P2 X450 Y450 Z-99999; probe near a leadscrew, half way along Y axis
              G30 P3 X50 Y450 Z-99999 S4; probe near a leadscrew and calibrate 2 motors
              G29 S1;

              Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

              1 Reply Last reply Reply Quote 0
              • undefined
                moe.adams9093
                last edited by 10 Mar 2021, 04:50

                I'm still having an issue where when I send G32 my 4 corners are not compensated correctly it only moves the front right side, does the have to do because 3 of my Z steppers are connected to the duex 5 and the 4th one is connected to the mainboard.

                1 Reply Last reply Reply Quote 0
                • undefined
                  Veti
                  last edited by 10 Mar 2021, 05:07

                  post the output of the G32 command

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    moe.adams9093
                    last edited by 10 Mar 2021, 06:10

                    here I ran it 3 times

                    3/9/2021, 11:54:19 PM: Connected to 192.168.1.252
                    3/9/2021, 11:55:57 PM: Upload of bed.g successful after 0s
                    3/9/2021, 11:57:50 PM: G32: Leadscrew adjustments made: 0.621 1.020 1.241 0.561, points used 4, (mean, deviation) before (0.861, 0.282) after (-0.000, 0.000)
                    3/9/2021, 11:58:47 PM: G32: Leadscrew adjustments made: -0.043 -0.128 0.225 -0.002, points used 4, (mean, deviation) before (0.013, 0.131) after (0.000, 0.000)
                    3/10/2021, 12:09:35 AM: G32: Leadscrew adjustments made: -0.152 -0.343 0.219 0.043, points used 4, (mean, deviation) before (-0.058, 0.210) after (-0.000, 0.000)
                    1 Reply Last reply Reply Quote 0
                    • undefined
                      moe.adams9093
                      last edited by 10 Mar 2021, 06:14

                      and here's my updated bed.g file

                      ; bed.g
                      ; called to perform automatic bed compensation via G32
                      ;
                      ; generated by RepRapFirmware Configuration Tool v2.1.8 on Thu Apr 30 2020 23:57:44 GMT-0500 (Central Daylight Time)
                      M561 ; clear any bed transform
                      M671 X50.0:450.0:450.0:50.0 Y50.0:50.0:450.0:450.0 S2 ; ZBelts Near Locations
                      G30 P0 X50 Y50 Z-99999;
                      G30 P1 X450 Y50 Z-99999;
                      G30 P2 X450 Y450 Z-99999; probe near a leadscrew, half way along Y axis
                      G30 P3 X50 Y450 Z-99999 S4; probe near a leadscrew and calibrate 2 motors
                      G30;
                      1 Reply Last reply Reply Quote 0
                      • undefined
                        moe.adams9093
                        last edited by 10 Mar 2021, 10:11

                        so I did some modification to my M558 code I added new parameters to see if I can get some more accuracy

                        NEW CODE:

                        ; Z-Probe
                        M558 P1 C"zprobe.in" H5 R.02 A11 S2 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds
                        G31 P500 X5 Y29 Z0.77 ; set Z probe trigger value, offset and trigger height
                        M557 X50:450 Y50:450 S40 ; define mesh grid

                        and here's a screenshot of my new heightmap

                        Screenshot 2021-03-10 035751.png

                        3/10/2021, 3:47:24 AM G29
                        121 points probed, min error -0.071, max error 1.820, mean 0.505, deviation 0.402
                        Height map saved to file 0:/sys/heightmap.csv
                        RepRapFirmware height map file v2 generated at 2021-03-10 03:47, min error -0.071, max error 1.820, mean 0.505, deviation 0.402
                        xmin,xmax,ymin,ymax,radius,xspacing,yspacing,xnum,ynum
                        50.00,450.00,50.00,450.00,-1.00,40.00,40.00,11,11
                        0.609, 0.512, 0.468, 0.510, 0.401, 0.363, 0.488, 0.612, 0.703, 0.933, 1.184
                        0.446, 0.322, 0.258, 0.262, 0.228, 0.032, 0.397, 0.529, 0.573, 0.867, 1.015
                        0.361, 0.173, 0.143, 0.090, 0.066, -0.071, 0.336, 0.439, 0.575, 0.769, 1.029
                        0.306, 0.158, 0.027, 0.071, 0.042, 0.043, 0.248, 0.152, 0.499, 0.752, 1.046
                        0.215, 0.066, 0.037, 0.036, -0.064, 0.029, 0.232, 0.340, 0.570, 0.796, 1.032
                        0.188, 0.077, 0.005, 0.048, 0.101, 0.139, 0.313, 0.465, 0.567, 0.813, 1.082
                        0.252, 0.082, 0.097, 0.082, 0.022, 0.163, 0.350, 0.462, 0.618, 0.874, 1.157
                        0.343, 0.140, 0.152, 0.086, 0.141, 0.269, 0.408, 0.516, 0.711, 1.016, 1.309
                        0.384, 0.291, 0.229, 0.293, 0.258, 0.355, 0.559, 0.674, 0.884, 1.150, 1.468
                        0.468, 0.446, 0.411, 0.413, 0.439, 0.492, 0.675, 0.885, 1.018, 1.376, 1.611
                        0.842, 0.669, 0.605, 0.626, 0.705, 0.745, 0.965, 1.118, 1.340, 1.582, 1.820

                        I'm not sure how exactly M558 A & S Parameters should work on the Gcode Dictionary it doesn't explain a whole lot if somebody can share how these 2 parameters can make significant changes. Thanks in advance.

                        undefined 1 Reply Last reply 10 Mar 2021, 11:23 Reply Quote 0
                        • undefined
                          fcwilt @moe.adams9093
                          last edited by 10 Mar 2021, 11:23

                          @moe-adams9093 said in [G29S1 not loading during print and G32 not leveling properly]

                          I'm not sure how exactly M558 A & S Parameters should work on the Gcode Dictionary it doesn't explain a whole lot if somebody can share how these 2 parameters can make significant changes. Thanks in advance.

                          Perhaps an example will help.

                          With A=10 and S=0.01 the firmware will probe each point up to 10 times trying to get two consecutive readings that are within 0.01.

                          If after 10 times two such readings do not occur then all 10 readings will be averaged.

                          I use those values for A and S and they work well.

                          Frederick

                          Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            moe.adams9093
                            last edited by 10 Mar 2021, 18:21

                            Thank you for explaining it. I do have some questions changing the P500 parameter to something else may be like 525 will it help to get it lot more accurate. As you see my map it’s not leveled at all

                            undefined 1 Reply Last reply 10 Mar 2021, 19:13 Reply Quote 0
                            • undefined
                              fcwilt @moe.adams9093
                              last edited by fcwilt 3 Oct 2021, 21:11 10 Mar 2021, 19:13

                              @moe-adams9093 said in G29S1 not loading during print and G32 not leveling properly:

                              Thank you for explaining it. I do have some questions changing the P500 parameter to something else may be like 525 will it help to get it lot more accurate. As you see my map it’s not leveled at all

                              Changing the P parameter is not likely to make much difference.

                              It could be that your bed is just not very flat.

                              What is it made of?

                              Frederick

                              Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                moe.adams9093
                                last edited by 10 Mar 2021, 19:47

                                Aluminum 6 mm thick I know the bed is not 100% I would say about 70% I have some twist In some spots

                                undefined 1 Reply Last reply 10 Mar 2021, 21:12 Reply Quote 0
                                • undefined
                                  fcwilt @moe.adams9093
                                  last edited by 10 Mar 2021, 21:12

                                  @moe-adams9093 said in G29S1 not loading during print and G32 not leveling properly:

                                  Aluminum 6 mm thick I know the bed is not 100% I would say about 70% I have some twist In some spots

                                  Is it cast aluminum tool plate?

                                  Frederick

                                  Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    moe.adams9093
                                    last edited by 10 Mar 2021, 21:55

                                    No it’s aluminum 6061

                                    undefined 1 Reply Last reply 10 Mar 2021, 22:53 Reply Quote 0
                                    • undefined
                                      fcwilt @moe.adams9093
                                      last edited by 10 Mar 2021, 22:53

                                      @moe-adams9093 said in G29S1 not loading during print and G32 not leveling properly:

                                      No it’s aluminum 6061

                                      If you have the resources you may want to upgrade.

                                      This is from one of my suppliers:

                                      Cast Aluminum Plates have a precision machined surface for superior flatness, flat within .015'', and +/- .005'' thickness tolerance,

                                      Frederick

                                      Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                                      1 Reply Last reply Reply Quote 0
                                      • Phaedruxundefined
                                        Phaedrux Moderator
                                        last edited by 10 Mar 2021, 22:55

                                        If you have the means you might be able to bash it into flatness, or at least take out the worst of the peaks and valleys.

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        undefined 1 Reply Last reply 10 Mar 2021, 23:11 Reply Quote 0
                                        • undefined
                                          fcwilt @Phaedrux
                                          last edited by 10 Mar 2021, 23:11

                                          @Phaedrux said in G29S1 not loading during print and G32 not leveling properly:

                                          bash it into flatness

                                          I think machinists might cringe at that.

                                          😉

                                          Frederick

                                          Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                                          Phaedruxundefined 1 Reply Last reply 10 Mar 2021, 23:13 Reply Quote 0
                                          2 out of 44
                                          • First post
                                            2/44
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA