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 @BStump
      last edited by

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

      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.

        ef723a46-c836-403a-afe9-2861fbaf6271-image.png

        2d5cb744-c6bb-42bc-b404-9a6a08f7b90a-image.png

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

          That center panel looks low given when this was generated. I am not sure the bed was fully heated or if the ceter was heated sufficiently.

          1 Reply Last reply Reply Quote 0
          • 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 small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. 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 small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. 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 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 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 small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. 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
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA