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

    Bed mesh compensation not applied to all the tools

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    5
    33
    1.4k
    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.
    • duetloverundefined
      duetlover
      last edited by

      Hi everybody

      I'm using E3D Tool Changer :
      Board: Duet 2 Ethernet (2Ethernet)
      Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet 3.1.1 (2020-05-19b2)

      I discovered that bed mesh compensation is not applied to tool 3.

      My gcode contains G29 S1 at the beginning of file.

      I see bed compensation on tool 2, but not on tool 3.

      This print uses only T2 and T3. Print starts with T2.

      What is the reason ? How could I solve it ?

      Thanks !

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

        @sylvain said in Bed mesh compensation not applied to all the tools:

        I see bed compensation on tool 2, but not on tool 3.

        What do you mean by this? What makes you think it's not active? When you send M122 does it say compensation: mesh?

        Can you provide your config.g and tool change files?

        Z-Bot CoreXY Build | Thingiverse Profile

        Phaedruxundefined 1 Reply Last reply Reply Quote 0
        • duetloverundefined
          duetlover
          last edited by

          I see Z screw turning when T2 is active, not turning when T3 is active.

          M122 says "Bed compensation in use: mesh, comp offset 0.000"

          Thanks !

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

            @Phaedrux said in Bed mesh compensation not applied to all the tools:

            Can you provide your config.g and tool change files?

            The more config files you can share the better we can see what's going on with the gcode otherwise we're just guessing in the dark.

            Z-Bot CoreXY Build | Thingiverse Profile

            1 Reply Last reply Reply Quote 0
            • duetloverundefined
              duetlover
              last edited by duetlover

              config.g

              ; Configurat; Configuration file for Duet WiFi / Ethernet
              ; executed by the firmware on start-up
              
              ; General preferences
              M111 S0 						; Debugging off
              G21 							; Work in millimetres
              G90 							; Send absolute coordinates...
              M83 							; ...but relative extruder moves
              M555 P2 						; Set firmware compatibility to look like Marlin
              
              ; Network
              ; Read https://duet3d.dozuki.com/Wiki/Gcode#Section_M587_Add_WiFi_host_network_to_remembered_list_or_list_remembered_networks
              M550 P"ToolChanger" 	; Set machine name
              M552 S1							  ; Enable Networking
              M586 P0 S1 						; Enable HTTP
              M586 P1 S0 						; Disable FTP
              M586 P2 S0 						; Disable Telnet
              
              M667 S1 						; Select CoreXY mode	
              
              ; Endstops
              ;M574 Y1 S3 						; Set X / Y endstop stall detection
              M574 X1 S1 P"^xstop"
              M574 Y1 S1 P"^ystop"
              M574 Z1 S2 						; Set Z endstop probe
              M558 P8 C"zstop" H5 F120 T10000 A5 S0.01 
              ;M558 P7 X0 Y0 Z2 H3 F360 I0 T20000 			; Set Z probe type to switch, the axes for which it is used and the dive height + speeds
              G31 P200 X0 Y0 Z0	 				; Set Z probe trigger value, offset and trigger height
              M557 X10:290 Y20:180 S40 				; Define mesh grid
              
              ; Drive direction
              M569 P0 S0 						; Drive 0 X
              M569 P1 S0 						; Drive 1 Y
              M569 P2 S1 						; Drive 2 Z
              M569 P3 S0 						; Drive 3 E0
              M569 P4 S0 						; Drive 4 E1
              M569 P5 S1 						; Drive 5 E2
              M569 P6 S1 						; Drive 6 E3
              M569 P7 S0 						; Drive 7 COUPLER
              M569 P8 S0 						; Drive 8 UNUSED
              M569 P9 S0 						; Drive 9 UNUSED
              
              M584 X0 Y1 Z2 C7 E3:4:5:6 				; Apply custom drive mapping
              M208 X-35:328.5 Y-49:243 Z0:300 C0:500 S0 		; Set axis maxima & minima
              ;M350 E8:8:8:8 C8 I0 					; Configure microstepping without interpolation
              M350 E16:16:16:16 I1
              M350 C8 I0
              
              M350 X16 Y16 Z16 I1					; Configure microstepping with interpolation
              M92 X100 Y100 Z1600 C100 E837:837:837:837		; Set steps per mm (old 417)
              M566 X400 Y400 Z8 C2 E2:2:2:2				; Set maximum instantaneous speed changes (mm/min)
              M203 X35000 Y35000 Z1200 C5000 E5000:5000:5000:5000	; Set maximum speeds (mm/min)
              M201 X6000 Y6000 Z400 C400 E2500:2500:2500:2500		; Set accelerations (mm/s^2)
              ;M906 X2000 Y2000 Z1330 C400 E1680:1680:1680:1680 I30 	; Set motor currents (mA) and motor idle factor in percent
              M906 X1000 Y1000 Z1330 C400 E900:900:900:900 I30 
              M84 S120 												; Set idle timeout
              
              ;Stall Detection
              M915 C S5 F0 H200 R4700					; Coupler
              
              ;Stall Detection
              ;M915 Y S5 F0 H400 R4700				; X / Y Axes
              
              ; Heaters
              ;xxxxxxxxxxxx
              ;M305 P0 T100000 B4138 C0 				; Set thermistor 
              ;M143 H0 S225 						; Set temperature limit for heater 0 to 225C
              
              ;M305 S"T0" P1 R4700 T100000 B4388 			; Set thermistor
              ;M143 H1 S300 						; Set temperature limit for heater 1 to 300C
              
              ;M305 S"T1" P2 R4700 T100000 B4388			; Set thermistor
              ;M143 H2 S300 						; Set temperature limit for heater 2 to 300C
              
              ;M305 S"T2" P3 R4700 T100000 B4388			;Set thermistor
              ;M143 H3 S300 						; Set temperature limit for heater 3 to 300C
              
              ;M305 S"T3" P4 R4700 T100000 B4388 			; Set thermistor 
              ;M143 H4 S300 						; Set temperature limit for heater 4 to 300C
              ;xxxxxxxxxxxx
              
              ; Heaters RFF3
              
              M308 S0 P"bedtemp" Y"thermistor" A"Bed" T100000 B4138 C0   ; Set thermistor 
              M950 H0 C"bedheat" T0                                      ; Bed heater
              M140 H0                                                    ; Add heater to bed after RRF3.01 RC10
              M143 H0 S120                                               ; Set temperature limit for heater 0 to 120C
              
              M308 S1 P"e0temp" Y"thermistor" A"T0" T100000 B4725 C7.06e-8 ; Set thermistor
              M950 H1 C"e0heat" T1                                         ; Extruder 0 heater
              M143 H1 S300                                                 ; Set temperature limit for heater 1 to 300C
              
              M308 S2 P"e1temp" Y"thermistor" A"T1" T100000 B4725 C7.06e-8 ; Set thermistor
              M950 H2 C"e1heat" T2                                         ; Extruder 0 heater
              M143 H2 S300                                                 ; Set temperature limit for heater 2 to 300C
              
              M308 S3 P"e2temp" Y"thermistor" A"T2" T100000 B4725 C7.06e-8 ; Set thermistor
              M950 H3 C"duex.e2heat" T3                                    ; Extruder 0 heater
              M143 H3 S300                                                 ; Set temperature limit for heater 3 to 300C
              
              ;M308 S4 P"e3temp" Y"thermistor" A"T3" T100000 B4725 C7.06e-8 ; Set thermistor
              ;M950 H4 C"duex.e3heat" T4                                    ; Extruder 0 heater
              ;M143 H4 S300                                                 ; Set temperature limit for heater 4 to 300C
              
              
              ; Tools
              M563 P0 S"T0" D0 H1 					; Define tool 0
              ;G10 P0 X0 Y0 Z0 					; Reset tool 0 axis offsets
              G10 P0 R0 S0 						; Reset initial tool 0 active and standby temperatures to 0C
              
              M563 P1 S"T1" D1 H2 					; Define tool 1
              ;G10 P1 X0 Y0 Z0 					; Reset tool 1 axis offsets
              G10 P1 R0 S0 						; Reset initial tool 1 active and standby temperatures to 0C
              
              M563 P2 S"T2" D2 H3 					; Define tool 2
              ;G10 P2 X0 Y0 Z0 					; Reset tool 2 axis offsets
              G10 P2 R0 S0 						; Reset initial tool 2 active and standby temperatures to 0C
              
              M563 P3 S"T3" 					; Define tool 3
              ;G10 P3 X0 Y0 Z0 					; Reset tool 3 axis offsets
              G10 P3 R0 S0 						; Reset initial tool 3 active and standby temperatures to 0C
              
              ; Fans
              ;xxxxxxxxxxxx
              ;M106 P0 S0						; UNUSED
              ;M106 P1 S255 H1 T50					; T0 HE
              ;M106 P2 S0						; T0 PCF
              ;M106 P3 S255 H2 T50 					; T1 HE
              ;M106 P4 S0						; T1 PCF 
              ;M106 P5 S255 H3 T50 					; T2 HE 
              ;M106 P6 S0 						; T2 PCF
              ;M106 P7 S255 H4 T50					; T3 HE
              ;M106 P8 S0						; T3 PCF
              ;xxxxxxxxxxxx
              
              ; Fans RFF3
              ; Fan0 output is not used
              M950 F1 C"fan1"
              M950 F2 C"fan2"
              M950 F3 C"duex.fan3"
              M950 F4 C"duex.fan4"
              M950 F5 C"duex.fan5"
              M950 F6 C"duex.fan6"
              ;M950 F7 C"duex.fan7"
              ;M950 F8 C"duex.fan8"
              
              M106 P1 S255 H1 T50             ; T0 HE
              M106 P2 S0                      ; T0 PCF
              M106 P3 S255 H2 T50             ; T1 HE
              M106 P4 S0                      ; T1 PCF 
              M106 P5 S255 H3 T50             ; T2 HE 
              M106 P6 S0                      ; T2 PCF
              ;M106 P7 S255 H4 T50             ; T3 HE
              ;M106 P8 S0                      ; T3 PCF
              
              M593 F50						; cancel ringing at 50Hz (https://forum.e3d-online.com/threads/accelerometer-and-resonance-measurements-of-the-motion-system.3445/)
              
              M376 H15						; bed compensation taper
              ;https://forum.duet3d.com/topic/6800/doubts-about-mesh-bed-compensation-taper-height-solved
              
              ;tool offsets
              G10 P0 X-9.0	Y39.0	Z-4.8					; T0
              G10 P1 X-9.0	Y39.8	Z-4.8					; T1
              G10 P2 X-9.2	Y39.5	Z-4.8					; T2
              G10 P3 X-0.5	Y36.7	Z-35.26				; T3
              
              
              ;deselect tools
              T-1
              
              ;M572 D0 S0.2 						; pressure advance T0
              ;M572 D1 S0.2 						; pressure advance T1
              ;M572 D2 S0.2 						; pressure advance T2
              ;M572 D3 S0.2 						; pressure advance T3
              
              M950 J0 C"^duex.e2stop" ; assign duex.e2stop pin to sensors.gpIn[0], inverted and pull-up activated
              M950 J1 C"!^duex.e3stop" ; dock 0
              M950 J2 C"!^duex.e4stop" ; dock 1
              M950 J3 C"!^duex.e5stop" ; dock 2
              M950 J4 C"!^duex.e6stop" ; dock 3
              
              M950 S9 C"duex.pwm5" ;
              M280 P9 S0; initialization
              
              ;panel
              M575 P1 S1 B57600
              
              

              tfree :

              ; tfree2.g
              ; called when tool 2 is freed
              
              ;Drop the bed
              G91
              G1 Z4 F1000
              G90
              
              ;mesh levelling off
              G29 S2
              
              ;Purge nozzle
              ;M98 Ppurge.g
              
              ;Move In
              G1 Y170 F5000
              G53 G1 X212.9 F5000
              G53 G1 X212.9 Y200 F5000
              G53 G1 X212.9 Y220 F5000
              G53 G1 X212.9 Y240 F5000
              
              ;Open Coupler
              M98 P/macros/Coupler - Unlock
              
              ;fan off
              M106 P6 S0
              
              ;Move Out
              G53 G1 X212.9 Y175 F5000
              
              M400
              G4 P500
              
              
              

              tpre :

              ; tpre2.g
              ; called before tool 2 is selected
              
              ;Ensure no tool is selected
              ;T-1
              
              M400
              G4 P1000
              
              
              ;Unlock Coupler
              M98 P/macros/Coupler - Unlock
              
              ;Move to location
              G1 Y170 F5000
              G1 X212.9 F5000
              
              ;Move in
              G1 X212.9 Y230 F5000
              
              ;Collect
              G1 X212.9 Y240 F2500
              
              ;Close Coupler
              M98 P/macros/Coupler - Lock
              
              ;WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
              ;if you are using non-standard length hotends ensure the bed is lowered enough BEFORE undocking the tool!
              G91
              G1 Z4 F1000
              G90
              
              
              
              
              

              tpost

              ; tpost2.g
              ; called after tool 2 has been selected
              
              M400
              G4 P500
              
              
              
              ;heatup
              M116 P2
              
              ;;;;;;;
              ;Move Out
              ;G1 X212.9 Y150 F4000
              G1 Y150 F4000
              ;;;;;;;;
              
              
              ;prime nozzle
              ;M98 Pprime.g
              
              ;mesh levelling on
              G29 S1
              
              ;PCF fan on
              ;M106 P6 S255
              
              G1 R2 X5 Y5 F5000 ; Y.. ok pour north
              G1 R2 Z0 F1500
              G1 E0.4
              
              1 Reply Last reply Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator
                last edited by

                Why is mesh levelling disabled in tfree and then reenabled in tpost?

                Z-Bot CoreXY Build | Thingiverse Profile

                1 Reply Last reply Reply Quote 0
                • duetloverundefined
                  duetlover
                  last edited by

                  This is default configuration of E3D Tool Changer bundle.

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

                    Can you try commenting out those lines? I'm not sure why it would be desirable to disable and re-enable mesh compensation during a tool change.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    1 Reply Last reply Reply Quote 0
                    • duetloverundefined
                      duetlover
                      last edited by

                      I already tried commenting all G29 in tfree and tpost wihtout success

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

                        Can you upload all of the tool files. (drag and drop into the post window show do it)

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 1
                        • duetloverundefined
                          duetlover
                          last edited by duetlover

                          Job starts with T2, I see bed compensation running

                          then T3 becomes active.
                          gcode file :

                          T3
                          
                          G91
                          G1 Z5 F600
                          G90
                          

                          As you can see I use G91 / G90 afteer T3 selection.
                          Could this explain that after this bed compensation doesn't work ?

                          Thanks

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

                            @sylvain said in Bed mesh compensation not applied to all the tools:

                            As you can see I use G91 / G90 afteer T3 selection.
                            Could this explain that after this bed compensation doesn't work ?

                            I don't think so.

                            I do think maybe there is a command to disable compensation in your tool changes, but I can't see the files to check.

                            Z-Bot CoreXY Build | Thingiverse Profile

                            1 Reply Last reply Reply Quote 0
                            • duetloverundefined
                              duetlover
                              last edited by duetlover

                              Here it is.

                              Board: Duet 2 Ethernet (2Ethernet)
                              Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet 3.1.1 (2020-05-19b2)

                              tpost1.g tpost0.g tfree3.g tfree2.g tfree1.g tfree0.g tpre3.g tpre2.g tpre1.g tpre0.g tpost3.g tpost2.g

                              I made severall tests again.

                              I can see bed levelling on T2 (the fist tool used).
                              When switched to T3, no bed levelling.

                              Thanks !

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

                                Do you get any errors if you send M98 P"config.g"?

                                Z-Bot CoreXY Build | Thingiverse Profile

                                1 Reply Last reply Reply Quote 0
                                • sebkritikelundefined
                                  sebkritikel @duetlover
                                  last edited by sebkritikel

                                  @sylvain said in Bed mesh compensation not applied to all the tools:

                                  Here it is.

                                  Board: Duet 2 Ethernet (2Ethernet)
                                  Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet 3.1.1 (2020-05-19b2)

                                  tpost1.g tpost0.g tfree3.g tfree2.g tfree1.g tfree0.g config.g tpre3.g tpre2.g tpre1.g tpre0.g tpost3.g tpost2.g

                                  I made severall tests again.

                                  I can see bed levelling on T2 (the fist tool used).
                                  When switched to T3, no bed levelling.

                                  Thanks !

                                  G29 S1 is commented out (turned off) in your tpost3.g (and your tpost2.g you just uploaded!!!) whereas it is not commented out (turned on) in your tpost1.g.

                                  In addition to that, like @Phaedrux said, some of your tfree files have G29 S2 still active. Going from T0 to some other tool, you are disabling mesh compensation via tfree0.g, but then because it is G29 S1 is commented out in T2 and T3 it wont turn back on.

                                  Large(ish?) IDEX - 6HC, 1HCL
                                  Stratasys Dimension 1200es to 6HC Conversion

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

                                    Tfree1 tfree0 still has

                                    ;mesh levelling off
                                    G29 S2

                                    And you've commented out all the G29 S1 to turn them on. Just remove all references to G29 in your tool files.

                                    Z-Bot CoreXY Build | Thingiverse Profile

                                    1 Reply Last reply Reply Quote 1
                                    • duetloverundefined
                                      duetlover
                                      last edited by

                                      @Phaedrux said in Bed mesh compensation not applied to all the tools:

                                      M98 P"config.g"?

                                      => no error

                                      I will test with all G29 commented.

                                      But as I told you I only use T2 and T3.

                                      How could G29 in T0 or T1 could affect my print ?

                                      All the more the print starts with T2 and bed levelling is active for this first tool.

                                      Keep you updated !

                                      sebkritikelundefined 1 Reply Last reply Reply Quote 0
                                      • sebkritikelundefined
                                        sebkritikel @duetlover
                                        last edited by

                                        @sylvain said in Bed mesh compensation not applied to all the tools:

                                        @Phaedrux said in Bed mesh compensation not applied to all the tools:

                                        M98 P"config.g"?

                                        => no error

                                        I will test with all G29 commented.

                                        But as I told you I only use T2 and T3.

                                        How could G29 in T0 or T1 could affect my print ?

                                        All the more the print starts with T2 and bed levelling is active for this first tool.

                                        Keep you updated !

                                        How high (in millimeters) is the object you are printing when the printer changes from T2 to T3?

                                        Large(ish?) IDEX - 6HC, 1HCL
                                        Stratasys Dimension 1200es to 6HC Conversion

                                        1 Reply Last reply Reply Quote 0
                                        • duetloverundefined
                                          duetlover
                                          last edited by duetlover

                                          The change to T3 is done at about 3 mm.

                                          I also thought at M376 H15

                                          but the bed levlling is stopped before.

                                          Thanks

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

                                            You have T-1 in your config to deselect all tools, so perhaps that's when the tfree files are getting called.

                                            Removing all references should tell us.

                                            Z-Bot CoreXY Build | Thingiverse Profile

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