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

    v2.0 consistently increasing probe heights

    Scheduled Pinned Locked Moved Unsolved
    Smart effector for delta printers
    5
    20
    690
    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.
    • dc42undefined
      dc42 administrators @oarjjj
      last edited by

      @oarjjj the bug in 3.6 that I mentioned is now fixed. I expect to release 3.6.0-beta.1 this week.

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      oarjjjundefined 1 Reply Last reply Reply Quote 1
      • oarjjjundefined
        oarjjj @dc42
        last edited by

        @dc42 The problem goes away when connecting drives to the main board, bypassing the expansions boards and CAN bus. I'll be happy to test the update when it's ready!

        dc42undefined 1 Reply Last reply Reply Quote 0
        • dc42undefined
          dc42 administrators @oarjjj
          last edited by

          @oarjjj this is fixed in the forthcoming 3.6.0 beta 1 build.

          Duet WiFi hardware designer and firmware engineer
          Please do not ask me for Duet support via PM or email, use the forum
          http://www.escher3d.com, https://miscsolutions.wordpress.com

          oarjjjundefined 2 Replies Last reply Reply Quote 0
          • oarjjjundefined
            oarjjj @dc42
            last edited by

            @dc42 awesome I'll keep an eye on the beta forum for a link to download the new firmware

            1 Reply Last reply Reply Quote 0
            • oarjjjundefined
              oarjjj @dc42
              last edited by oarjjj

              @dc42 said in v2.0 consistently increasing probe heights:

              @oarjjj this is fixed in the forthcoming 3.6.0 beta 1 build.

              Looks I'm still facing the problem after updating to 3.6.0b1. For some reason it would not update the boards initially:

              There are 5 outdated boards:
              - Duet 3 MB6HC (3.6.0-alpha.5+1 -> 3.6.0-beta.1)
              - Duet 3 Expansion EXP1HCL (3.6.0-alpha.5 -> 3.6.0-beta.1) @ CAN address 121
              - Duet 3 Expansion EXP1HCL (3.6.0-alpha.5 -> 3.6.0-beta.1) @ CAN address 122
              - Duet 3 Expansion EXP1HCL (3.6.0-alpha.5 -> 3.6.0-beta.1) @ CAN address 123
              - Duet 3 Expansion EXP1HCL (3.6.0-alpha.5 -> 3.6.0-beta.1) @ CAN address 124
              Would you like to update them all (Y/n)? y
              Updating firmware on board #121... Error: JsonTypeInfo metadata for type 'DuetControlServer.Commands.Code' was not provided by TypeInfoResolver of type 'DuetAPI.Commands.CommandContext'. If using source generation, ensure that all root types passed to the serializer have been annotated with 'JsonSerializableAttribute', along with any types that might be serialized polymorphically.
              Updating firmware on board #122... Error: JsonTypeInfo metadata for type 'DuetControlServer.Commands.Code' was not provided by TypeInfoResolver of type 'DuetAPI.Commands.CommandContext'. If using source generation, ensure that all root types passed to the serializer have been annotated with 'JsonSerializableAttribute', along with any types that might be serialized polymorphically.
              Updating firmware on board #123... Error: JsonTypeInfo metadata for type 'DuetControlServer.Commands.Code' was not provided by TypeInfoResolver of type 'DuetAPI.Commands.CommandContext'. If using source generation, ensure that all root types passed to the serializer have been annotated with 'JsonSerializableAttribute', along with any types that might be serialized polymorphically.
              Updating firmware on board #124... Error: JsonTypeInfo metadata for type 'DuetControlServer.Commands.Code' was not provided by TypeInfoResolver of type 'DuetAPI.Commands.CommandContext'. If using source generation, ensure that all root types passed to the serializer have been annotated with 'JsonSerializableAttribute', along with any types that might be serialized polymorphically.
              Updating firmware on mainboard... Error: JsonTypeInfo metadata for type 'DuetControlServer.Commands.Code' was not provided by TypeInfoResolver of type 'DuetAPI.Commands.CommandContext'. If using source generation, ensure that all root types passed to the serializer have been annotated with 'JsonSerializableAttribute', along with any types that might be serialized polymorphically.
              

              So I did the following:

              • Attempted to downgrade to stable via apt, and got the same error.
              • Reimaged the PI SD card with the latest lite image.
              • Attempted an update to unstable via apt, same errors.
              • Downgraded to stable duet packages.
              • I was now able to downgrade to stable firmware via deb package.
              • Updated to 3.6.0b1 using the deb package while on stable duet3d packages.
              • Updated to unstable duet3d packages.

              Upon reconnecting the steppers to the expansion boards I got a similar result as before:

              ** encoders disabled **
              G32 bed probe heights: 0.103 0.112 0.119 0.123 0.134 0.140 0.148 0.159 0.167 0.175 0.189 0.200 0.216 0.224 0.228 0.236 0.247 0.250 0.266 0.269, mean 0.185, deviation from mean 0.053
              
              ** encoders enabled **
              Driver 123.0 basic tuning succeeded, measured backlash 0.048 step
              Driver 122.0 basic tuning succeeded, measured backlash 0.060 step
              Driver 121.0 basic tuning succeeded, measured backlash 0.046 step
              G32 bed probe heights: 0.082 0.089 0.096 0.099 0.111 0.118 0.127 0.133 0.140 0.152 0.164 0.164 0.172 0.182 0.186 0.197 0.208 0.216 0.227 0.238, mean 0.155, deviation from mean 0.047
              

              I have also tried:

              • Replacing the smart effector v2 with a new v4.
              • Replacement also resulted in me repinning the connectors on the effector.

              I am starting to think it may be an issue with the E3d Lite6, possibly its spring is compressing? I'm not sure.

              I tried running the script a few more times:

              G32 bed probe heights: 0.082 0.089 0.096 0.099 0.111 0.118 0.127 0.133 0.140 0.152 0.164 0.164 0.172 0.182 0.186 0.197 0.208 0.216 0.227 0.238, mean 0.155, deviation from mean 0.047
              G32 bed probe heights: 0.242 0.250 0.253 0.266 0.277 0.284 0.291 0.299 0.309 0.307 0.317 0.325 0.328 0.343 0.344 0.359 0.359 0.365 0.371 0.377, mean 0.313, deviation from mean 0.041
              G32 bed probe heights: 0.399 0.408 0.419 0.426 0.437 0.442 0.456 0.459 0.472 0.479 0.487 0.490 0.497 0.508 0.512 0.519 0.528 0.538 0.549 0.554, mean 0.479, deviation from mean 0.046
              G32 bed probe heights: 0.562 0.569 0.577 0.584 0.594 0.599 0.610 0.618 0.622 0.636 0.636 0.651 0.654 0.666 0.674 0.684 0.688 0.703 0.711 0.715, mean 0.638, deviation from mean 0.047
              G32 bed probe heights: 0.883 0.891 0.898 0.902 0.913 0.917 0.926 0.933 0.943 0.951 0.959 0.962 0.974 0.978 0.986 0.993 1.001 1.003 1.012 1.018, mean 0.952, deviation from mean 0.042
              G32 bed probe heights: 1.023 1.033 1.037 1.044 1.056 1.059 1.071 1.079 1.086 1.098 1.104 1.109 1.119 1.124 1.127 1.136 1.149 1.154 1.162 1.173, mean 1.097, deviation from mean 0.045
              

              The end result of all this is mesh bed leveling is ever increasing in one direction.

              config.g

              ; Configuration file for Duet 3 MB 6HC (firmware version 3.3)
              ; executed by the firmware on start-up
              ;
              ; generated by RepRapFirmware Configuration Tool v3.4.1 on Sat Sep 14 2024 13:39:54 GMT-0600 (Mountain Daylight Time)
              
              ; General preferences
              G90                                                     ; send absolute coordinates...
              M83                                                     ; ...but relative extruder moves
              M550 P"Duet 3"                                          ; set printer name
              M665 L490.910:490.930:490.86 r230 B195 H714             ; Set delta radius, diagonal rod length, printable radius and homed height
              M666 X0 Y0 Z0                                           ; put your endstop adjustments here, or let auto calibration find them
              
              ; Drives
              M584 X122.0 Y123.0 Z121.0 E124.0                       ; set drive mapping
              M569 P122.0 S0                                         ; physical drive 122.0 goes backwards
              M569 P123.0 S0                                         ; physical drive 123.0 goes backwards
              M569 P121.0 S0                                         ; physical drive 121.0 goes backwards
              
              
              ;M584 Z0.0 X0.1 Y0.2 E124.0                              ; set drive mapping
              ;M569 P0 S0                                              ; Drive 0 (Z) goes backwards
              ;M569 P1 S0                                              ; Drive 1 (X) goes backwards
              ;M569 P2 S0                                              ; Drive 2 (Y) goes backwards
              
              M569 P124.0 S1                                          ; physical drive 124.0 goes forwards
              M350 E16 I0                                             ; configure microstepping without interpolation
              M350 X16 Y16 Z16 I1                                     ; configure microstepping with interpolation
              M92 X266.66 Y266.66 Z266.66 E572.00                     ; set steps per mm
              M566 X20 Y20 Z20                                        ; set maximum instantaneous speed changes (mm/min)
              M203 X7200 Y7200 Z7200 E3600                            ; set maximum speeds (mm/min)
              M201 X200.00 Y200.00 Z200.00 E800.00                    ; set accelerations (mm/s^2)
              M906 X2400 Y2400 Z2400 E500 I60                         ; set motor currents (mA) and motor idle factor in per cent
              M84 S900                                                ; Set idle timeout
              
              ; Axis Limits
              M208 Z0 S1                                              ; set minimum Z
              
              ; Endstops
              M574 X2 S1 P"122.io0.in"                               ; configure switch-type (e.g. microswitch) endstop for high end on X via pin 122.io0.in
              M574 Y2 S1 P"123.io0.in"                               ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin 123.io0.in
              M574 Z2 S1 P"121.io0.in"                               ; configure switch-type (e.g. microswitch) endstop for high end on Z via pin 121.io0.in
              
              ;M574 Z2 S1 P"io0.in"                                   ; configure switch-type (e.g. microswitch) endstop for high end on Z via pin 121.io0.in
              ;M574 X2 S1 P"io1.in"                                   ; configure switch-type (e.g. microswitch) endstop for high end on X via pin 122.io0.in
              ;M574 Y2 S1 P"io2.in"                                   ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin 123.io0.in
              
              ; Z-Probe
              M558 P8 R0.4 C"io3.in+io3.out" H8 F1200 T3000           ; set Z probe type to effector and the dive height + speeds 
              G31 P100 X0 Y0 Z-0.39                                   ; set Z probe trigger value, offset and trigger height
              
              ; Heaters
              M308 S0 P"temp0" Y"thermistor" T100000 B4267            ; configure sensor 0 as thermistor on pin temp0
              M950 H0 C"out0" T0                                      ; create bed heater output on out0 and map it to sensor 0
              M307 H0 B0 S1.00                                        ; disable bang-bang mode for the bed heater and set PWM limit
              M140 H0                                                 ; map heated bed to heater 0
              M143 H0 S120                                            ; set temperature limit for heater 0 to 120C
              M308 S1 P"temp2" Y"thermistor" T100000 B4267            ; configure sensor 1 as thermistor on pin temp2
              M950 H1 C"out1" T1                                      ; create nozzle heater output on out1 and map it to sensor 1
              M307 H1 B0 S1.00                                        ; disable bang-bang mode for heater  and set PWM limit
              M143 H1 S280                                            ; set temperature limit for heater 1 to 280C
              
              ; Fans
              M950 F0 C"out7" Q55                                     ; create fan 0 on pin out7 and set its frequency
              M106 P0 S0 H-1                                          ; set fan 0 value. Thermostatic control is turned off
              
              ; Tools
              M563 P0 D0 H1 F0                                        ; define tool 0
              G10 P0 X0 Y0 Z0                                         ; set tool 0 axis offsets
              G10 P0 R0 S0                                            ; set initial tool 0 active and standby temperatures to 0C
              
              ; Custom settings
              M912 P0 S-9.5                                           ; mcu temperature calibration
              G4 S1                                                   ; wait for expansion boards to start
              M557 R180 S18
              
              ; Miscellaneous
              M501                                                    ; load saved parameters from non-volatile memory
              T0                                                      ; select first tool
              

              homedelta.g

              ; homedelta.g
              ; called to home all towers on a delta printer
              ;
              ; generated by RepRapFirmware Configuration Tool v3.3.16 on Fri Oct 06 2023 14:23:27 GMT-0600 (Mountain Daylight Time)
              M569 P121.0 D0           			; Make sure we are in open loop mode
              M569 P122.0 D0           			; Make sure we are in open loop mode
              M569 P123.0 D0           			; Make sure we are in open loop mode
              
              G91                        			; relative positioning
              G1 H1 X1000 Y1000 Z1000 F1800 			; move all towers to the high end stopping at the endstops (first pass)
              G1 H2 X-5 Y-5 Z-5 F360    			; go down a few mm
              G1 H1 X10 Y10 Z10 F360     			; move all towers up once more (second pass)
              G1 Z-20 F360            			; Move to a known-safe position
              M400                    			; Wait for the move to complete
              G4 P200                 			; Wait for the motor to settle
              
              M569.1 P121.0 T2 C2500 S400	R100 H25 I650 D0.085 A50000 V60 ; Configure Z closed loop
              M569.5 P121.0 S2000 A0 R2000 D24830 V0
              M569 P121.0 D4 S0 					; Configure the motor on the 1HCL at can address 121 as being in closed-loop drive mode (D4) and reversed (S0)
              M400                    			; Wait for the move to complete
              G4 P200                 			; Wait for the motor to settle
              M569.6 P121.0 V1					; Perform closed-loop calibration
              
              M569.1 P122.0 T2 C2500 S400	R100 H25 I650 D0.085 A50000 V60 ; Configure X closed loop
              M569.5 P122.0 S2000 A0 R2000 D24830 V0
              M569 P122.0 D4 S0 					; Configure the motor on the 1HCL at can address 122 as being in closed-loop drive mode (D4) and reversed (S0)
              M400                    			; Wait for the move to complete
              G4 P200                 			; Wait for the motor to settle
              M569.6 P122.0 V1					; Perform closed-loop calibration
              
              M569.1 P123.0 T2 C2500 S400	R100 H25 I650 D0.085 A50000 V60 ; Configure Y closed loop
              M569.5 P123.0 S2000 A0 R2000 D24830 V0
              M569 P123.0 D4 S0 					; Configure the motor on the 1HCL at can address 123 as being in closed-loop drive mode (D4) and reversed (S0)
              M400                    			; Wait for the move to complete
              G4 P200                 			; Wait for the motor to settle
              M569.6 P123.0 V1					; Perform closed-loop calibration
              
              G90                        			; absolute positioning
              G1 Z700 X0 Y0
              

              macro

              g1 x0 y0 z20
              var x=0
              var y=0
              
              var numProbes=20
              g30 s-1
              
              while iterations < var.numProbes-1
                G30 P{iterations} X{var.x} Y{var.y} Z-9999
              G30 P{var.numProbes-1} X{var.x} Y{var.y} Z-9999 S-1
              
              dc42undefined shaunpplundefined 2 Replies Last reply Reply Quote 0
              • Phaedruxundefined Phaedrux marked this topic as a question
              • dc42undefined
                dc42 administrators @oarjjj
                last edited by

                @oarjjj gave you verified that all the boards are now running 3.6.0-beta.1 ?

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                oarjjjundefined 3 Replies Last reply Reply Quote 0
                • oarjjjundefined
                  oarjjj @dc42
                  last edited by

                  @dc42 Yes.

                  FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.6.0-beta.1 ELECTRONICS: Duet 3 MB6HC v1.0 or earlier FIRMWARE_DATE: 2024-09-24 10:07:51
                  Duet EXP1HCL rev 1.0a or earlier firmware version 3.6.0-beta.1 (2024-09-24 08:50:54)
                  Duet EXP1HCL rev 1.0a or earlier firmware version 3.6.0-beta.1 (2024-09-24 08:50:54)
                  Duet EXP1HCL rev 1.0a or earlier firmware version 3.6.0-beta.1 (2024-09-24 08:50:54)
                  Duet EXP1HCL rev 1.0a or earlier firmware version 3.6.0-beta.1 (2024-09-24 08:50:54)
                  

                  Screenshot 2024-09-29 at 8.39.38 AM.png

                  oarjjjundefined 1 Reply Last reply Reply Quote 0
                  • oarjjjundefined
                    oarjjj @oarjjj
                    last edited by

                    I wonder if there's something wrong on the CAN bus causing unexpected latency? I didn't use a premade cable.

                    Screenshot 2024-09-29 at 8.57.15 AM.png

                    1 Reply Last reply Reply Quote 0
                    • oarjjjundefined
                      oarjjj @dc42
                      last edited by

                      @dc42 said in v2.0 consistently increasing probe heights:

                      @oarjjj gave you verified that all the boards are now running 3.6.0-beta.1 ?

                      Any other ideas?

                      1 Reply Last reply Reply Quote 0
                      • oarjjjundefined
                        oarjjj @dc42
                        last edited by

                        @dc42 I updated to the beta 2 firmware. The increasing values appear to be more consistent now. Almost exactly .010 over each probe. I've tried connecting the smart effector to the IO pins on the expansion boards. Also re-did the configuration from scratch using the RRF config tool.

                        Screenshot 2024-12-25 at 3.13.40 PM.png

                        oarjjjundefined 1 Reply Last reply Reply Quote 0
                        • oarjjjundefined
                          oarjjj @oarjjj
                          last edited by

                          @dc42 Interesting when running the board in standalone mode the offset decreases from 0.010 to 0.005. Appears to be a hardware problem. Can we do an RMA?

                          G32 bed probe heights: 0.096 0.101 0.106 0.111 0.121 0.121 0.131 0.136 0.141 0.146 0.151 0.156 0.161 0.166 0.171 0.176 0.181 0.186 0.191 0.196, mean 0.147, deviation from mean 0.030
                          G32 bed probe heights: 0.201 0.206 0.211 0.216 0.221 0.226 0.236 0.241 0.241 0.246 0.251 0.261 0.261 0.271 0.271 0.281 0.286 0.291 0.296 0.301, mean 0.250, deviation from mean 0.030
                          G32 bed probe heights: 0.306 0.316 0.316 0.326 0.331 0.331 0.341 0.346 0.351 0.356 0.361 0.366 0.371 0.376 0.376 0.381 0.391 0.396 0.401 0.406, mean 0.357, deviation from mean 0.029
                          G32 bed probe heights: 0.406 0.416 0.421 0.426 0.431 0.436 0.441 0.446 0.451 0.456 0.461 0.466 0.471 0.476 0.481 0.486 0.491 0.496 0.501 0.506, mean 0.458, deviation from mean 0.029
                          G32 bed probe heights: 0.511 0.516 0.521 0.526 0.531 0.536 0.541 0.546 0.551 0.556 0.561 0.566 0.571 0.576 0.581 0.586 0.591 0.596 0.601 0.606, mean 0.558, deviation from mean 0.029
                          G32 bed probe heights: 0.616 0.616 0.621 0.631 0.631 0.641 0.646 0.646 0.656 0.661 0.666 0.671 0.676 0.681 0.686 0.691 0.696 0.701 0.706 0.711, mean 0.662, deviation from mean 0.030
                          G32 bed probe heights: 0.711 0.721 0.726 0.731 0.736 0.741 0.746 0.751 0.756 0.761 0.771 0.771 0.781 0.786 0.791 0.796 0.801 0.806 0.811 0.816, mean 0.765, deviation from mean 0.031
                          G32 bed probe heights: 0.826 0.831 0.836 0.841 0.846 0.846 0.856 0.861 0.866 0.871 0.876 0.881 0.886 0.891 0.896 0.901 0.906 0.911 0.911 0.921, mean 0.873, deviation from mean 0.029
                          G32 bed probe heights: 0.931 0.936 0.941 0.946 0.951 0.956 0.961 0.966 0.971 0.976 0.981 0.986 0.991 0.996 1.001 1.006 1.011 1.016 1.016 1.026, mean 0.978, deviation from mean 0.028
                          
                          
                          oarjjjundefined 1 Reply Last reply Reply Quote 0
                          • oarjjjundefined
                            oarjjj @oarjjj
                            last edited by

                            Here is my configtool.json

                            oarjjjundefined 1 Reply Last reply Reply Quote 0
                            • oarjjjundefined
                              oarjjj @oarjjj
                              last edited by

                              I also tried turning off segmentation with M669 and the hotend hit the bed so hard it wrecked my E3D Revo 6.

                              Screenshot 2024-12-25 at 4.04.54 PM.png

                              1 Reply Last reply Reply Quote 0
                              • shaunpplundefined
                                shaunppl
                                last edited by

                                This post is deleted!
                                1 Reply Last reply Reply Quote 0
                                • shaunpplundefined
                                  shaunppl @oarjjj
                                  last edited by

                                  @oarjjj said in v2.0 consistently increasing probe heights:

                                  I am starting to think it may be an issue with the E3d Lite6, possibly its spring is compressing? I'm not sure.

                                  There should be no compression available on the E3D lite 6 with a Revo nozzle as the compression spring is there to hold the nozzle heat-break assembly tight against the thread of the body after hand tightening it, so when in constant use it does not come undone and also to allow the heater element a degree of heat expansion.
                                  The only case i have ever had with a loose nozzle was with a customer who had not tightened it it up fully and they kept getting a very inconsistent filament laydown and jagged edges as it would oscillate as it was moving. I am running 3 Delta printers all Anycubic Predators converted to linear rails and all using version 3.5 on Mini + 5 boards and all the motors directly from the motherboard with the Hemera sx extruders without any expansions as I have never needed them nor have i ever any issues to warrant using expansion board as I get extremely good prints.

                                  1 Reply Last reply Reply Quote 0
                                  • ironhydroxideundefined ironhydroxide referenced this topic
                                  • First post
                                    Last post
                                  Unless otherwise noted, all forum content is licensed under CC-BY-SA