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

    Help needed with Duet 3 6hc TMC5160 StealthChop config

    Scheduled Pinned Locked Moved Unsolved
    Tuning and tweaking
    16
    86
    12.9k
    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.
    • empi00undefined
      empi00
      last edited by

      @fractalengineer
      Can you post your full motor related config.
      My motors are extremly noisy on my MGN Cube.
      I DIsassembled everything the last 2 days, and reassembled the full frame, and it is still 100% the same.

      When i switch beteen spreadcycle and stealthchop, i can not hear any difference, and i dont know why...

      fractalengineerundefined 1 Reply Last reply Reply Quote 1
      • danym21undefined
        danym21 @fractalengineer
        last edited by danym21

        @fractalengineer
        you mean I have to configure motor stall detection to get Stealthchop running?
        This I have never tried,

        What I do not understand what T1 means 😞
        is this TCOOLTHRS?

        TCOOLTHRS ≥ TSTEP ≥ THIGH:

        • CoolStep is enabled, if configured
        • StealthChop voltage PWM mode is disabled

        @empi00 I think the problem is that the vibration comes from the motors for a temporary solution I have add some Stepper damper to the X/Y Motors that has helped a lot. But you can still feel the vibration on the Motors with the hand, this will not fix the vibration problem it is only a "not so nice" work around.
        and I was hoping that @dc42 will find the problem. My feeling was that stealthchoop is enabled but only up to F119 (that is verry slow) on F120 I had strange noices like it is jumping between steahltchop and spreadcycle. and F121 is noisy like only spreadcycle. When no motors are moving all is fine then spreadcycle (D2) is more noisy as steahltchop (D3).
        Any M569 V and H parameters does nothing here for me.
        The funny thing is when I use a other board with TMC5160 and klipper it was working, so I´m pretty sure it is not a hardware issue.
        When I have time I and I have understand what the T parameter is doing on M915 I will play with.

        1 Reply Last reply Reply Quote 0
        • empi00undefined
          empi00
          last edited by empi00

          Well,

          i will post my story tommorow.
          I was building a BLV MGN Cube.
          https://www.blvprojects.com/blv-mgn-cube-3d-printer

          Starting point:
          Duet2 Wifi clone with Moon motors.
          Terrible loud noise.
          Running with 27 Volts.

          • tried different current. Lower current are "better" but still very loud.
          • I bought than the Ferrari, a Duet3 original with TMC 5660.
            --> Not improvement, but i am not sure of stealchop is running well
          • I bough in total 4 different stepper types with different cables. Different noise frequencies but still very loud (Stepper Online 1,8 + 0,9, Sunsomething 1,8 degree, Moon 0,9 degree)
          • Dampers made it dead silent, but the steppers were bending. The design has also a bearing to help the stepper shafts on staibility and they are not possible anymore. This would be my last wished solution. (Expecially as this built was made by many people, and other seems to have this not problem.)
          • Disassembled the full frame the last 4 days. Filled the profiles with sand and epoxy, to improve the vibration damping.
            Though that i made maybe something wring.
            You can shake now the profile (without electronics) and you hear nothing. (no "lost" nut or anything)

          AND:
          Still the same noise....

          Ordered just right now a SKR 1.4 Turbo with TMC2209 and see how this goes.

          I really like the Duet in general, especially from the usability.
          But honestly, I would expect from the software a "easier" enabeling from Stealthchop, as it seem that something is not easy here.

          I am still searching for the "guilty" think in my case.

          • Steppers, closed, as all 4 types have the same problem
          • "Electronic noise". closed, as dampers are helping
          • Defect TMCs, shitty Duet2 Clone,... closed, as I have now a Duet 3 with the same Problem

          First of all, I just want to figure that "guilites" out.
          So I want a way, just to enable stealchop for 100% and nothing else, to see if it helps.
          But even that seems not to be so easy.

          I am somehow lost....

          danym21undefined 1 Reply Last reply Reply Quote 0
          • fractalengineerundefined
            fractalengineer @empi00
            last edited by

            @empi00 @danym21

            Got it; ok so there are a few things I've learned:

            -There is some info on the RRF Gcode page, but it's still pretty vague so if you're gonna be pioneering there is more in the Trinamic 5160 datasheet.

            -The default M569 V parameter is pretty high; it controls from what speed the driver switches from StealchC to SpreadC. Like 15mm/s iirc. Lowering it will enable SleathC to run at higher speeds. Check my config down below.

            -You must also implement a proper calibration sequence in your homing files; it's detailed in the datasheet but @dc42 broke it down well some posts above

            -Then if you still can't hear a difference try that M915 line I included above; which seems to enable it but for the life of me I can't understand how lol

            -By now you can try running it at low speed and switching between M569 D2 and D3 (I made macros that include both lines for both X/Y steppers) to hear whether it's working

            And it should be rather noticeable; StealthC sounds more like a humm rather than the Bzzz in SpreadC lol

            Last thing, when switching from D2 to D3 there is a jump that is expected; it's in the datasheet

            That's it I just dumped about all I know on this occult topic haha; it's still not running exactly as I wish and that's the thread Dc was referring to, but this made me progress a lot

            ; General Setup - RailCore RRF on a SBC for Duet3
            G21										; Work in millimetres
            G90										; Send absolute coordinates...
            M83										; ...but relative extruder moves
            
            ; Debugging
            M111 S0									; Debug (S0 is off; S1 is on)
            M929 P"eventlog.txt" S1					; start logging to file eventlog.txt
            M915 X Y S10 F0 R1						; log motor stalls (added 5/4/2019)
            
            
            ; Stepper configuration
            M569 P0 S1 D3							; Drive 0 X / Rear
            M569 P1 S0 D3							; Drive 1 Y / Front
            M569 P2 S1 D3							; Drive 2 Z Front Left
            M569 P3 S1 D3							; Drive 3 Z Rear Left
            M569 P4 S1 D3							; Drive 4 Z Right
            M569 P5 S0 D3							; Drive 5 Extruder
            
            ; Trinamic Drive Tuning
            ; Tune tpwmthrs (V) so stealthchop runs at appropriate speeds
            ; and tune thigh (H) to avoid shifting into fullstep mode
            M569 P0 V30   H23                                    ; X            - Set tpwmthrs so StealthChop runs up to 70mm/sec (try V47)
            M569 P1 V30   H23                                    ; Y            - Set tpwmthrs so StealthChop runs up to 70mm/sec
            M569 P2 V15   H5                                    ; Z Right      - Set tpwmthrs so StealthChop runs up to 15.6mm/sec
            M569 P3 V15   H5                                    ; Z Left Rear  - Set tpwmthrs so StealthChop runs up to 15.6mm/sec
            M569 P4 V15   H5                                    ; Z Left Front - Set tpwmthrs so StealthChop runs up to 15.6mm/sec
            M569 P5 V125  H5                                    ; E            - Set tpwmthrs so StealthChop runs up to 7.2mm/sec
            
            ; Stealthchop parameters
            M915 P0 S3 F1 H153 T1 R0				
            M915 P1 S3 F1 H153 T1 R0
            
            
            ; Axis configuration
            M669 K1									; Corexy mode
            M584 X0 Y1 Z2:3:4 E5					; Map X to drive 0 Y to drive 1, Z to drives 2, 3, 4, and E to drive 5
            
            
            ; Leadscrew locations
            M671 X-10:-10:333  Y22.5:277.5:150 S7.5
            
            
            ; Steppers Settings
            M350 X16 Y16 Z16 I1						; Set 16x microstepping for axes with interpolation
            M350 Z16 I1
            M350 E16 I0								; Set 8x microstepping for Flex3Drive extruder interpolation OFF
            M906 X1820 Y1820 Z1008 E420 I35			; Set motor currents (mA) and motor idle factor (%) // X/Y 65% of rated 2800mA
            M84 S30 								; Idle timeout 30s
            M201 X1600 Y1600 Z100 E120				; Accelerations (mm/s^2) (Was 2500)
            M203 X24000 Y24000 Z900 E2400			; Maximum speeds (mm/min) 
            M566 X800 Y800 Z100 E6					; Maximum jerk speeds mm/minute 
            M208 X290 Y303 Z325						; Set axis maxima and high homing switch positions (adjust to suit your machine)
            M208 X-27 Y0 Z0 S1						; Set axis minima and low homing switch positions (adjust to make X=0 and Y=0 the edges of the bed)
            M92 X160 Y160 Z1600 E4130				; Steps/mm
            
            ; End Stops
            M574 X1 S1 P"io0.in"					; Map the X endstop to io1.in
            M574 Y1 S1 P"io3.in"					; May the Y endstop to io2.in
             
            
            ; Define Bed
            M140 H0
            M557 X5:290 Y30:300 P8:8 				; Probe from X=5 to 290, Y=30 to 300mm with 8x8 points
            
            
            ; Thermistors
            M308 S0 P"temp0" Y"thermistor" A"Keenovo" T100000 B4240 H0 L0 						; Bed thermistor - connected to temp0
            M308 S1 P"temp1" Y"thermistor" A"Mosquito" T4606017 B5848 C5.548428e-8 H0 L0			; Dyze 500c thermistor - connected to e0_heat
            
            
            ; Define Heaters
            M950 H0 C"out0" T0						; Bed heater is on out0
            M950 H1 C"out1" T1						; Hotend heater is on out1
            
            
            ; Heater model parameters
            M307 H0 A158.5 C366.7 D2.1 S1.0 V24.0 B0 	; Keenovo duet 3 configuration
            M307 H1 A324.0 C114.3 D4.4 S1.0 V23.9 B0    ; Heating process parameters for 24V a system
            
            
            ; Heater Fault Parameters
            M570 H1 P10 T15 S180					; Hotend allows 10sec for anomaly, permits 15deg excursion, abandons print after 180s
            M143 S350								; Set max hotend temperature			
            
            
            ; Fans
            M950 F0 C"out5"							; Hotend fan on "out5" connector
            M106 P0 S1.0 H1 T75 					; Enable thermostatic mode for hotend fan (S225)
            M950 F1 C"out4"							; Layer fan on "out4" connector
            M106 P1 S0 								; Layer Fan
            
            
            ; Tool definitions
            M563 P0 D0 H1 F1                       	; Define tool 0
            G10 P0 S0 R0                        	; Set tool 0 operating and standby temperatures
            
            
            ; BLTouch
            M558 P9 C"io7.in" H5 R1 F120 T6000 A5 S0.02 B1			; Define the bltouch input on io7.in
            M950 S0 C"io7.out"										; Define the bltouch servo on io7.out
            G31 X Y25 Z1.95 P25 										; Set the offsets for the bltouch
            
            
            ; Duet3 Cooling
            M308 S2 Y"drivers" A"DRIVERS"  			; Configure sensor 2 as temperature warning and overheat flags on the TMC2660 on Duet
            M308 S3 Y"mcu-temp" A"MCU"				; Configure sensor 3 as thermistor on pin e1temp for left stepper
            M950 F2 C"out6" Q100 					; Create fan 2 on pin fan2 and set its frequency                        
            M106 P2 C"ElectroBox" H1 L0.0 X1.0 B0.3 T70:160 			; Set fan 2 value
            
            ; Filament Sensor
            M591 D0 P7 C"io6.in" S0 E50 L1.25 R25:175 A1
            
            T0										; Select first hot end
            
            ; Mesh Bed Compensation
            G29 S1 									; Load height map from SD card
            M376 H3									; Set taper height 3mm
            
            ; Dynamic Acceleration Adjustment
            M593 F52
            
            ; Logging
            M929 P"eventlog.txt" S1 				; start logging to file eventlog.txt
            

            Railcore II ZL

            Touchthebitumundefined 1 Reply Last reply Reply Quote 0
            • Touchthebitumundefined
              Touchthebitum @fractalengineer
              last edited by Touchthebitum

              @fractalengineer
              So it means that Stealthchop is active on x/y till 70mm/sec ?

              Sparkcube XL V 1.1 300x300x190, Radds, Raspberry, Keenovo silicone bedheat 220v, Big Booster Extruder, DIY building
              BLV Cube 665mm Direct Drive with Duet3/SBC (RPi 4) Mosquito Magnum/Bond Tech Extruder/Vanadium Nozzle, Keenovo silicone bedheat 220v

              fractalengineerundefined 1 Reply Last reply Reply Quote 0
              • fractalengineerundefined
                fractalengineer @Touchthebitum
                last edited by

                @Touchthebitum said in Help needed with Duet 3 6hc TMC5160 StealthChop config:

                @fractalengineer
                So it means that Stealthchop is active on x/y till 70mm/sec ?

                Depends on your config; steps/mm, microstepping.

                You're supposed to enter a V value then check it in the console by entering M569 Px without anything else. It will return the complete config with actual belt speeds

                V value is the speed at which the mode switches from Stealthchop to SpreadC
                H value is the speed at which it switches to Full step

                Railcore II ZL

                Touchthebitumundefined 1 Reply Last reply Reply Quote 0
                • Touchthebitumundefined
                  Touchthebitum @fractalengineer
                  last edited by

                  @fractalengineer

                  Drive 0 runs in reverse, active low enable, step timing fast, mode stealthChop, ccr 0x08053, toff 3, tblank 1, hstart/hend/hdec 5/0/0, pos 0, tpwmthrs 130 (28.8 mm/sec), thigh 50 (75.0 mm/sec)

                  I have this result, does it seem correct ?

                  Sparkcube XL V 1.1 300x300x190, Radds, Raspberry, Keenovo silicone bedheat 220v, Big Booster Extruder, DIY building
                  BLV Cube 665mm Direct Drive with Duet3/SBC (RPi 4) Mosquito Magnum/Bond Tech Extruder/Vanadium Nozzle, Keenovo silicone bedheat 220v

                  fractalengineerundefined 1 Reply Last reply Reply Quote 0
                  • fractalengineerundefined
                    fractalengineer @Touchthebitum
                    last edited by

                    @Touchthebitum

                    Ok so what you can see here is "tpwmthrs 130" means your M569 V parameter is 130, meaning is will only run Stealthchop up to 28.8mm/sec

                    Railcore II ZL

                    Touchthebitumundefined 1 Reply Last reply Reply Quote 0
                    • Touchthebitumundefined
                      Touchthebitum @fractalengineer
                      last edited by

                      @fractalengineer
                      ok ,thanks

                      Sparkcube XL V 1.1 300x300x190, Radds, Raspberry, Keenovo silicone bedheat 220v, Big Booster Extruder, DIY building
                      BLV Cube 665mm Direct Drive with Duet3/SBC (RPi 4) Mosquito Magnum/Bond Tech Extruder/Vanadium Nozzle, Keenovo silicone bedheat 220v

                      1 Reply Last reply Reply Quote 0
                      • danym21undefined
                        danym21 @empi00
                        last edited by

                        @empi00
                        your storry is particle also my Storry 😉
                        I have started with a Tevo Tornado Gold, steppers are loud, this machine has a MKS Gen L V1.0 Board so I replaced the drivers with TMC2800, installed Klipper and used Repetier Server as frontend on the raspberry.
                        I was amazed, the steppers you can not hear anymore when the machine is printing, on quick moves the drivers use SpreadCycle and you can hear the differnces.
                        So I was really happy with the machine, but I would have more speed.

                        Then I started to build the BLV with the new BTT SKR Pro 1.1 with TMC5160 sound was ok but regarding the new Type of printer it was louder as the Tevo, this is clear regarding the MGN Hiwin Rails.

                        But I had sometimes the problem that I lost a stepper after a while of printing (now I know it is a Hardware defect on the board, first driver sockel gets disconnect when the machine gets warm so I think it is a solder problem).
                        So I decided to try a Duet Wifi clone, but I had not read the full documentation so I missed that stealthchop is not availabe.
                        I was chocked how loud the machine can be with the 2660 drivers, but the machine was stable.
                        Then the Duet 3 comes out with TMC5160 and direct connection to a raspberry.
                        So I was hoping I can get all my wisches now.
                        But the noise of the printer is nearly the same, only when the steppers are not moving you can hear a difference 😞
                        I have tested the motors alone, not build in to the printer and you can feel the vibration of the motors when a duet board is
                        connected.
                        When I connect a different board like the SKR Pro or now the GTR with TMC5160 and Klipper installed the motors are smoother on the same speed etc.
                        I have two ideas what can be behind.

                        As first Klipper/Marlin etc. use for the SenseResistor 0.075 and the duet Firmware use 0.050 this means that you can use motors with higher current on a duetboard but I think this change also the wave so that the sound that the motors creating
                        are different and maybe louder is normal and it can be changed only when we get a option in the firmware to select as example 0.075 with the correct wave like all other firmware does. But I have not enough knowledge and measuring devices
                        for checking and testing. So it can be that I´m on the wrong way at all here.

                        As second what I do not understand is why is there a big noice change between the speed 119mm/min and 121mm/min on 0.9° motors.
                        When you check my first post you can see that M569 say´s the change should be at 110.3 mm/sec
                        and @dc42 had confirmed that my settings are correct.
                        I have tried many different homing scripts but nothing changed.
                        at the moment I´m a little bit frustrated at all.
                        what I would wish for the best Board and firmware:

                        • the gui from Repetierserver on a local touchscreen (sorry but the gui from the duet does not really work for a touchscreen, but is not so bad on the browser. The preview of the print model is missing at all on the duet)
                        • a mix of the config from Klipper and reprep (the settings for the TMC´s are to complicated like the threshold for stealthchop, the firmware has all information to calculate it from stepper speed like klipper and marlin does)
                        • the hardware from duet 3 with the direct connection between Raspberry and the board. I like when I stop / pause a print it does directly. On Klipper the printer has a buffer so it pause and cancel when the buffer is empty and not directly.

                        Sorry for the long text but I have the feeling it goes not forward since month. I understand that Duet3d must look for business and creating new things but it would be helpfull to have all functions that are promised are also correct working
                        before new things are started.

                        dc42undefined empi00undefined 2 Replies Last reply Reply Quote 0
                        • Touchthebitumundefined
                          Touchthebitum
                          last edited by Touchthebitum

                          I think many people mainly buyed this Duet3 for this Stealthchop feature. It is a pity we can't use because it is a great improvement on noise.
                          I saw some videos and the difference is huge.

                          Sparkcube XL V 1.1 300x300x190, Radds, Raspberry, Keenovo silicone bedheat 220v, Big Booster Extruder, DIY building
                          BLV Cube 665mm Direct Drive with Duet3/SBC (RPi 4) Mosquito Magnum/Bond Tech Extruder/Vanadium Nozzle, Keenovo silicone bedheat 220v

                          1 Reply Last reply Reply Quote 0
                          • fractalengineerundefined
                            fractalengineer
                            last edited by

                            @empi00 @Touchthebitum

                            I mean guys did u try the settings that were advised? What were the results?

                            Railcore II ZL

                            Touchthebitumundefined cjackson234undefined 2 Replies Last reply Reply Quote 0
                            • dc42undefined
                              dc42 administrators @danym21
                              last edited by

                              @danym21 said in Help needed with Duet 3 6hc TMC5160 StealthChop config:

                              As second what I do not understand is why is there a big noice change between the speed 119mm/min and 121mm/min on 0.9° motors.
                              When you check my first post you can see that M569 say´s the change should be at 110.3 mm/sec

                              The calculation of the speed for changeover form stealthChop to spreadCycle is not exact, because the timing is done by a 12MHz oscillator inside the TMC5160. The tolerance of that oscillator is +/- 4.2% at 50C. I suspect that there is also an element of rounding error when tpwmthrs is low.

                              Unfortunately I don't have time to look at this again at present, but one of my colleagues will.

                              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

                              1 Reply Last reply Reply Quote 0
                              • Touchthebitumundefined
                                Touchthebitum @fractalengineer
                                last edited by

                                @fractalengineer

                                I tried various values on V, H and M915 but without big changes on noise...

                                Sparkcube XL V 1.1 300x300x190, Radds, Raspberry, Keenovo silicone bedheat 220v, Big Booster Extruder, DIY building
                                BLV Cube 665mm Direct Drive with Duet3/SBC (RPi 4) Mosquito Magnum/Bond Tech Extruder/Vanadium Nozzle, Keenovo silicone bedheat 220v

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

                                  Did you adjust the homing procedure to meet the stealthChop tuning requirements, as I explained in a previous post?

                                  btw in the imminent RRF 3.2beta you will be able to read out the values of the PWM_SCALE and PWM_AUTO registers, to see the result of stealthChop tuning.

                                  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

                                  Touchthebitumundefined empi00undefined 3 Replies Last reply Reply Quote 0
                                  • Touchthebitumundefined
                                    Touchthebitum @dc42
                                    last edited by Touchthebitum

                                    @dc42
                                    Not yet, do you mean adding gcode : G4 P50 ?

                                    Sparkcube XL V 1.1 300x300x190, Radds, Raspberry, Keenovo silicone bedheat 220v, Big Booster Extruder, DIY building
                                    BLV Cube 665mm Direct Drive with Duet3/SBC (RPi 4) Mosquito Magnum/Bond Tech Extruder/Vanadium Nozzle, Keenovo silicone bedheat 220v

                                    dc42undefined 1 Reply Last reply Reply Quote -1
                                    • dc42undefined
                                      dc42 administrators @Touchthebitum
                                      last edited by dc42

                                      @Touchthebitum said in Help needed with Duet 3 6hc TMC5160 StealthChop config:

                                      @dc42
                                      Not yet, do you mean adding gcode : G4 P50 ?

                                      I mean make a very small movement (1 microstep is enough) to power up the motors using e.g. G91 G1 H2 X0.02 G90, then the G4 command, then the homing move. The TMC5160 datasheet is quite definite about needing the correct tuning procedure.

                                      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

                                      dc42undefined 1 Reply Last reply Reply Quote 0
                                      • empi00undefined
                                        empi00 @danym21
                                        last edited by

                                        @danym21
                                        Matching qoute well our stories!
                                        Tried also with just the frame and nothing else on the rack.
                                        No MGN Rails, No X/Y/Z Axis assembled.
                                        And still the same.

                                        The motors are "shaking" a lot when you but them just on the floor.
                                        I am limited in time today, but when i will find some, i will post the Videos etc, what i made the last 2 weeks here.

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

                                          PS - I've also considered whether a better tuning procedure might be:

                                          • Home the printer in spreadCycle mode (you could reduce motor current for this if you find it noisy)
                                          • Restore motor current to 100%
                                          • Switch to stealthChop
                                          • Pause (to satisfy the tuning requirements)
                                          • Make a normal move away from the endstop at moderate speed (to satisfy the tuning requirements)

                                          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

                                          Touchthebitumundefined 1 Reply Last reply Reply Quote 0
                                          • Touchthebitumundefined
                                            Touchthebitum @dc42
                                            last edited by

                                            @dc42
                                            Ok, so we would have config.g with Stealthchop settings and homingx.g with anothers for example ? Which one has priority ?
                                            If I'm wrong, what would be the strategy ?
                                            Thanks

                                            Sparkcube XL V 1.1 300x300x190, Radds, Raspberry, Keenovo silicone bedheat 220v, Big Booster Extruder, DIY building
                                            BLV Cube 665mm Direct Drive with Duet3/SBC (RPi 4) Mosquito Magnum/Bond Tech Extruder/Vanadium Nozzle, Keenovo silicone bedheat 220v

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