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

    Verifying mesh levelling

    Scheduled Pinned Locked Moved
    General Discussion
    6
    71
    4.6k
    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.
    • Phaedruxundefined
      Phaedrux Moderator
      last edited by

      With a bed like that I'd probably leave taper off entirely unless you're more concerned about wear and tear on the z axis. Otherwise try 50mm

      Take a look at this to see if it might fit into your work flow.

      https://forum.duet3d.com/topic/15302/cura-script-to-automatically-probe-only-printed-area

      This way you could maximize the 440 points into the exact area you're printing on, with the downside of needing to probe before each print. Though if the area is smaller you could probably get away with fewer than the full 441.

      Can you also post your config.g again? I can't seem to find it scrolling up. There are potentially improvements we can make to the probing settings.

      Z-Bot CoreXY Build | Thingiverse Profile

      BStumpundefined 2 Replies Last reply Reply Quote 0
      • BStumpundefined
        BStump @Phaedrux
        last edited by

        @phaedrux said in Verifying mesh levelling:

        @bstump Post an image of your current heightmap with the values shown.

        I am wondering if the taper has some limits built in for how much or how little it can handle. Maybe given the overall bed size the variation is too much to deal with with one are it is apply a 0.00001mm taper adjustment and at another it needs a 0.01 per layer.

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

          @bstump

          I don't use taper at all.

          Frederick

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

          BStumpundefined 1 Reply Last reply Reply Quote 0
          • BStumpundefined
            BStump @fcwilt
            last edited by

            @fcwilt said in Verifying mesh levelling:

            @bstump

            I don't use taper at all.

            Frederick

            We do jigs and fixtures and prototypes with this. Or that is the intention. given the flatness of the best not using taper could be an issue. But so is not adhering.

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

              @bstump

              I use cast tool plate for the beds of my printers which from my supplier is spec'd to be flat within 0.4 mm but is usually much better.

              I have found that bed adhesion is affected by many factors but these are what work for me:

              • use the best cast tool plate you can find
              • get the bed level within 0.005mm
              • use 400 point mesh compensation
              • use a first layer printing speed 10%-20% of the normal print speed
              • turn off the part cooling fan for the first layer

              Frederick

              Here is the height map from my modified FT5 printer:

              FT5 FULL HEIGHT MAP.jpg

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

              Phaedruxundefined BStumpundefined 2 Replies Last reply Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator @fcwilt
                last edited by

                @fcwilt said in Verifying mesh levelling:

                use the best cast tool plate you can find

                1 square meter of cast tooling plate may be a bit expensive.

                Z-Bot CoreXY Build | Thingiverse Profile

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

                  @phaedrux said in Verifying mesh levelling:

                  @fcwilt said in Verifying mesh levelling:

                  use the best cast tool plate you can find

                  1 square meter of cast tooling plate may be a bit expensive.

                  Very - but I don't see much point in building such a printer if it cannot be used to print things.

                  My goto vendor would want appx:

                  • $260 for 3000mm by 3000mm by 6mm
                  • $270 for 3000mm by 3000mm by 12mm
                  • $470 for 3000mm by 3000mm by 24mm

                  I find it interesting that 12mm is close in price to 6mm.

                  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 1
                  • BStumpundefined
                    BStump @fcwilt
                    last edited by

                    @fcwilt said in Verifying mesh levelling:

                    @bstump

                    I use cast tool plate for the beds of my printers which from my supplier is spec'd to be flat within 0.4 mm but is usually much better.

                    I have found that bed adhesion is affected by many factors but these are what work for me:

                    • use the best cast tool plate you can find
                    • get the bed level within 0.005mm
                    • use 400 point mesh compensation
                    • use a first layer printing speed 10%-20% of the normal print speed
                    • turn off the part cooling fan for the first layer

                    Frederick

                    Here is the height map from my modified FT5 printer:

                    Always 400 point mesh.

                    The first layer speed is typically ~50% of the other layer speed.

                    We have 0% fans for the first 10 layers to improve bed adhesion and reduce warping.

                    Our bed is made from three rectangular Aluminum plate. And on that are three PEI sheets. The overall bed if 1010 x 1010, and suffers for bubbles in the attachment of the PEI sheet to the bed.

                    1dd006f4-5ae4-4084-82ca-ff054f8319c2-image.png

                    1 Reply Last reply Reply Quote 0
                    • BStumpundefined
                      BStump
                      last edited by

                      I am very intrigued by this post where several made scripts for Curs, S3D, and Slicr to probe only the area under the actual print. Not being a coder I need to modify moth the Cura and Simplified #d ones to keep the number of probe points under 400 and not probe less than about 10mm spacing.

                      I think this may solve our issues. Not sure how this would be applied when you have a multi part print where ideally it probes under each individually.

                      https://forum.duet3d.com/topic/15302/cura-script-to-automatically-probe-only-printed-area

                      1 Reply Last reply Reply Quote 0
                      • BStumpundefined
                        BStump @Phaedrux
                        last edited by

                        @phaedrux said in Verifying mesh levelling:

                        With a bed like that I'd probably leave taper off entirely unless you're more concerned about wear and tear on the z axis. Otherwise try 50mm

                        Take a look at this to see if it might fit into your work flow.

                        https://forum.duet3d.com/topic/15302/cura-script-to-automatically-probe-only-printed-area

                        This way you could maximize the 440 points into the exact area you're printing on, with the downside of needing to probe before each print. Though if the area is smaller you could probably get away with fewer than the full 441.

                        Can you also post your config.g again? I can't seem to find it scrolling up. There are potentially improvements we can make to the probing settings.

                        Thanks on that, I found it also. Very intriguing. See my comment above.

                        1 Reply Last reply Reply Quote 0
                        • BStumpundefined
                          BStump @Phaedrux
                          last edited by

                          @phaedrux said in Verifying mesh levelling:

                          With a bed like that I'd probably leave taper off entirely unless you're more concerned about wear and tear on the z axis. Otherwise try 50mm

                          Take a look at this to see if it might fit into your work flow.

                          https://forum.duet3d.com/topic/15302/cura-script-to-automatically-probe-only-printed-area

                          This way you could maximize the 440 points into the exact area you're printing on, with the downside of needing to probe before each print. Though if the area is smaller you could probably get away with fewer than the full 441.

                          Can you also post your config.g again? I can't seem to find it scrolling up. There are potentially improvements we can make to the probing settings.

                          ; Configuration file for Duet WiFi (firmware version 3)
                          ; executed by the firmware on start-up
                          ; 
                          ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu Jun 24 2021 09:31:20 GMT-0600 (Central Standard Time)
                          
                          ; General preferences
                          G90                                                      ; send absolute coordinates...
                          M83                                                      ; ...but relative extruder moves
                          M550 P"modix_big_meter"                                  ; set printer name
                          
                          ; 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 S0                                               ; physical drive 0	X1				reverse
                          M569 P1 S1                                               ; physical drive 1	X2				forward
                          M569 P2 R-1                                              ; Physical drive 2	not used
                          M569 P3 S1                                               ; physical drive 3	E0				forward
                          M569 P4 S0                                               ; physical drive 4	E1				reverse
                          ; additional drives on duex5 expansion board
                          M569 P5 S0                                               ; Physical drive 5	Y				reverse
                          M569 P6 S0                                               ; Physical drive 6	Z1 (0,1000)		reverse 
                          M569 P7 S0                                               ; Physical drive 7	Z2 (0,0) 		reverse 
                          M569 P8 S0                                               ; Physical drive 8	Z3 (1000,0)		reverse  
                          M569 P9 S0                                               ; Physical drive 9	Z4 (1000,1000)	reverse  
                          
                          
                          M584 X0:1 Y5 Z6:7:8:9 E3:4 P3							 ; map motors to axis
                          M671 X-181:-181:1049:1049 Y1066:-58:-58:1066 S10	  	 ; CCW positions of Z motors
                          
                          M350 X16 Y16 Z16 E16 U16 I1								 ; Configure microstepping with interpolation
                          M92 X100.00 Y100.00 Z2000.00 E412.32 U100.00			 ; Set steps per mm
                          ;M566 X240 Y360 Z30.00 E120.00 U240 P1					 ; Set maximum instantaneous speed changes (mm/min)
                          M566 X120 Y360 Z30.00 E120.00 U240 P1					 ; Set maximum instantaneous speed changes (mm/min)
                          M203 X9000.00 Y9000.00 Z200.00 E1200.00 U9000.00		 ; Set maximum speeds (mm/min)
                          ;M201 X1000 Y1000 Z120.00 E250.00 U1000					 ; Set accelerations (mm/s^2)
                          M201 X500 Y1000 Z120.00 E250.00 U1000					 ; Set accelerations (mm/s^2)
                          M204 P500 T1000											 ; Set print and travel accelerations  (mm/s^2)
                          M906 X1800 Y1800.00 E1000.00 U1800 I30 					 ; Set motor currents (mA) and motor idle factor in per cent
                          M906 Z1800.00 I50 										 ; Set motor currents (mA) and motor idle factor in per cent
                          M84 S60 X Y U E0 E1										 ; Set idle timeout - one minute
                          
                          ; Axis Limits
                          M208 X0 Y0 Z0 U0 S1										 ; set axis minima
                          M208 X1000 Y1000 Z1000 U1000 S0						     ; set axis maxima
                          
                          ; Endstops
                          ; X1 = X end stop low end
                          ; Y2 = Y end stop high end
                          ; U1 = U end stop low end (U is second X)
                          ; S1 = all active high
                          ; no Z end stop
                          
                          M574 X1 S1 P"xstop+e0stop" ; combined X axis endstops
                          M574 Y2 S1 P"ystop" 
                          
                          ; Z-Probe
                          M950 S0 C"duex.e6heat"                                  ; create servo pin 0 for BLTouch
                          M558 P9 C"^zprobe.in" H5 F120 T9000 R0.7                ; set Z probe type to bltouch and the dive height + speeds
                          ; heater 7 output used for PWM of BL touch (e6 heat)
                          G31 P500 X-14 Y21 Z1.000                    		    ; Set Z probe trigger value, offset and trigger height(Z-offset)
                          M557 X-14:974 Y21:1009 S52 		                        ; Define mesh grid. 400 Points
                          ;M376 H10			                    				; Height (mm) over which to taper off the bed compensation
                          M376 H0			                    					; compensation taper disabled TEST
                          
                          ; Heaters
                          M140 H-1                                                ; disable heated bed (overrides default heater mapping)
                          ; tool 0 heater
                          M308 S0 P"spi.cs1" Y"rtd-max31865" R395 F60
                          M950 H1 C"e0heat" T0          							; heater 0 uses the e0_heat pin and sensor 1
                          M307 H1 B0 S1.00                                        ; disable bang-bang mode for heater  and set PWM limit
                          M143 H1 S285                                            ; set temperature limit for heater 0 to 285C
                          ; tool 1 heater
                          M308 S1 P"e1temp" Y"thermistor" T100000 B4725 C7.06e-8  ; configure sensor 1 as thermistor on pin e1temp
                          M950 H2 C"e1heat" T1                                    ; create nozzle heater output on e1heat and map it to sensor 1
                          M307 H2 B0 S1.00                                        ; disable bang-bang mode for heater  and set PWM limit
                          M143 H2 S285                                            ; set temperature limit for heater 1 to 285C
                          
                          ; Fans
                          M950 F0 C"fan0" Q500      ; T0                          ; create fan 0 on pin fan0 and set its frequency
                          M106 P0 S0 H-1                                          ; set fan 0 value. Thermostatic control is turned off
                          M950 F1 C"fan1" Q500      ; T1                          ; create fan 1 on pin fan1 and set its frequency
                          M106 P1 S0 H-1                                          ; set fan 1 value. Thermostatic control is turned off
                          M950 F2 C"fan2" Q500                                    ; create fan 2 on pin fan2 and set its frequency
                          M106 P2 S0 H-1                                          ; set fan 2 value. Thermostatic control is turned off
                          M950 F3 C"duex.fan3" Q500                               ; create fan 3 on pin duex.fan3 and set its frequency
                          M106 P3 I-1                                             ; set fan 3 value. Thermostatic control is turned off
                          M950 F4 C"duex.fan4" Q500                               ; create fan 4 on pin duex.fan4 and set its frequency
                          M106 P4 I-1                                             ; set fan 4 value. Thermostatic control is turned off
                          M950 F5 C"duex.fan5" Q500                               ; create fan 5 on pin duex.fan5 and set its frequency
                          M106 P5 S1 H0 T46                                       ; extruder 0           ; set fan 5 value. Thermostatic control is turned on
                          M950 F6 C"duex.fan6" Q500                               ; create fan 6 on pin duex.fan6 and set its frequency
                          M106 P6 S1 H1 T46                                       ; extruder 1           ; set fan 6 value. Thermostatic control is turned on
                          ; apparently these disabled defines still seize the IO; don't define so we can use for LED later
                          ;M950 F7 C"duex.fan7" Q500                              ; create fan 7 on pin duex.fan7 and set its frequency
                          ;M106 P7 I-1                                            ; set fan 7 value. Thermostatic control is turned off
                          M950 F8 C"duex.fan8" Q500                               ; create fan 8 on pin duex.fan8 and set its frequency
                          M106 P8 I-1                                             ; set fan 8 value. Thermostatic control is turned off
                          
                          ; Tools
                          M563 P0 S"E0 Primary" D0 H1 F0                          ; define tool 0, E0 drive, heater 1, fan 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"E1 SEcondary" D1 H2 F1                        ; define tool 1
                          G10 P1 X-0.2 Y52.5 Z0                                   ; set tool 1 axis offsets
                          G10 P1 R0 S0                                            ; set initial tool 1 active and standby temperatures to 0C
                          
                          ; Miscellaneous
                          M575 P1 S1 B57600                                       ; enable support for PanelDue
                          M501                                                    ; load saved parameters from non-volatile memory
                          
                          ; Automatic power saving____________________________________________
                          M911 S22.5 R29.0 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000"   ; Set voltage thresholds and actions to run on power loss. Power Failure Pause
                          	
                          ;M591 D0:1 P1 C4 S1		   			       	    		 ; Regular filament sensor for E0 and E1
                          ; disabled, fixme
                          
                          
                          ; _______________GPIOs____________________
                          ; LED strip on GPIO 'P1', duex fan7 output
                          M950 P1 C"duex.fan7" Q500
                          
                          Phaedruxundefined 1 Reply Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator @BStump
                            last edited by

                            @bstump Try adding these bits to your M558

                            A10 S0.005

                            That force it to probe each point at least twice and will tighten the tolerance between consecutive probings and if they aren't within 0.005mm of each other it will probe again until two probe results are up to 10 times.

                            You can also reduce your dice height from 5mm to 3mm and save some probing time.

                            Also try changing G31 P500 to G31 P25

                            Z-Bot CoreXY Build | Thingiverse Profile

                            BStumpundefined 1 Reply Last reply Reply Quote 0
                            • BStumpundefined
                              BStump @Phaedrux
                              last edited by

                              @phaedrux said in Verifying mesh levelling:

                              @bstump Try adding these bits to your M558

                              A10 S0.005

                              That force it to probe each point at least twice and will tighten the tolerance between consecutive probings and if they aren't within 0.005mm of each other it will probe again until two probe results are up to 10 times.

                              You can also reduce your dice height from 5mm to 3mm and save some probing time.

                              Also try changing G31 P500 to G31 P25

                              Dice height?

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

                                @bstump said in Verifying mesh levelling:

                                Dice height?

                                Yes - how high off the table the dice are when you release them - it improves your chances of winning.

                                😉

                                Dice -> Dive

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

                                BStumpundefined 1 Reply Last reply Reply Quote 0
                                • BStumpundefined
                                  BStump @fcwilt
                                  last edited by

                                  @fcwilt said in Verifying mesh levelling:

                                  @bstump said in Verifying mesh levelling:

                                  Dice height?

                                  Yes - how high off the table the dice are when you release them - it improves your chances of winning.

                                  😉

                                  Dice -> Dive

                                  I kind of figured that but need to figure out where it is set. ATM I am digging in how to modify the locig in that python sript to set the x and y spaying and keep the number of points below 441

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

                                    Sorry, dive height. M558 H

                                    Z-Bot CoreXY Build | Thingiverse Profile

                                    BStumpundefined 1 Reply Last reply Reply Quote 0
                                    • BStumpundefined
                                      BStump @Phaedrux
                                      last edited by

                                      @phaedrux
                                      Yes, anything to improve the time is probing would be good. take near 45 mins now to do 400 points

                                      Phaedruxundefined fcwiltundefined 2 Replies Last reply Reply Quote 0
                                      • Phaedruxundefined
                                        Phaedrux Moderator @BStump
                                        last edited by

                                        @bstump Your max Z speed is set to 200. You could probably probe at that speed reliably especially if you're double probing each point. You already have a dwell time between probe moves to allow it to settle.

                                        The dive height just needs to be high enough for the pin to reliably drop and the z axis reach steady motion before it triggers.

                                        Your trigger height is 1.0mm which seems too perfect. Have you actually measured it?

                                        https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe#Section_Calibrate_the_Z_probe_trigger_height

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        BStumpundefined 1 Reply Last reply Reply Quote 1
                                        • BStumpundefined
                                          BStump @Phaedrux
                                          last edited by

                                          @phaedrux said in Verifying mesh levelling:

                                          @bstump Your max Z speed is set to 200. You could probably probe at that speed reliably especially if you're double probing each point. You already have a dwell time between probe moves to allow it to settle.

                                          The dive height just needs to be high enough for the pin to reliably drop and the z axis reach steady motion before it triggers.

                                          Your trigger height is 1.0mm which seems too perfect. Have you actually measured it?

                                          https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe#Section_Calibrate_the_Z_probe_trigger_height

                                          I do not know if the guys have verified the trigger height or not.

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

                                            @bstump said in Verifying mesh levelling:

                                            @phaedrux
                                            Yes, anything to improve the time is probing would be good. take near 45 mins now to do 400 points

                                            There is little to do to drastically improve the time.

                                            The biggest "timesaver" would find a way to create and install a bed so flat that mesh compensation isn't needed.

                                            If you solve that problem let me know - I could use a totally flat bed.

                                            Frederick

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

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