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

    Does M906 set RMS or peak current?

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    6
    46
    8.0k
    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.
    • wilrikerundefined
      wilriker @dc42
      last edited by

      @dc42 said in Does M906 set RMS or peak current?:

      I reckon on reaching 60mm/sec retraction speed, however that's for a Bowden extruder. With a direct drive extruder you will use much less retraction, so you don't need such high retraction speeds.

      Yeah, retraction speed... I never thought of that part. Always ever thought of "how much mm/s will I ever need while pushing out filament when printing". That is great reminder and probably the one point where the extruder is fastest. Thanks!

      How you use coolStep is up to you, it depends on how much torque you need.

      My though here was: let the driver decide how much torque is needed because it will probably be better in sensing required torque then I could ever calculate/estimate it.
      There is a video from Trinamic that explains stallGuard and coolStep where they even let the driver go up to 150% of the rated current for a short period of time. I do not currently plan on pushing the steppers that far but could I do that by just setting M906 to 150% of the rated current (I assume yes).

      Manuel
      Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
      with probably always latest firmware/DWC (incl. betas or self-compiled)
      My Tool Collection

      1 Reply Last reply Reply Quote 0
      • wilrikerundefined
        wilriker @whosrdaddy
        last edited by

        @whosrdaddy Thanks for your input. I was struggling a bit to use such a "weak" stepper because according to https://duet3d.dozuki.com/Wiki/Choosing_an_extruder_drive one should aim for at least 10N and with a 3:1 gearing it would require at least 17Ncm.

        Speaking of which: I commented on that page that I assume the formula for 0.9° steppers is missing another zero to be correct. Am I right in that assumption?

        Manuel
        Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
        with probably always latest firmware/DWC (incl. betas or self-compiled)
        My Tool Collection

        whosrdaddyundefined 1 Reply Last reply Reply Quote 0
        • whosrdaddyundefined
          whosrdaddy @wilriker
          last edited by

          @wilriker : You are aware that E3D sells a 0.9deg pancake stepper that only has 12Ncm? I have one on my P3Steel and is a bit weaker than the OMC's on my CoreXY....

          wilrikerundefined 1 Reply Last reply Reply Quote 0
          • wilrikerundefined
            wilriker @whosrdaddy
            last edited by

            @whosrdaddy Yeah, I know but at least it is not the one they sell in the bundle (anymore?!) and say something like "hey, look here, we have a stepper that has a lot of power but still is lighter than the regular ones without beeing a total weak-o". 😉

            I am not long enough into 3D printing to have an educated meaning on E3D but I know (and probably everyone does) that sometimes sellers just sell things out of customer's demand and not because it is the best product/combination, so I have trusted the wiki here a little more than the wide product range of E3D. 😄

            Is a 0.9° stepper on a geared extruder really an additional improvement, I am wondering?

            Manuel
            Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
            with probably always latest firmware/DWC (incl. betas or self-compiled)
            My Tool Collection

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

              The minimum extrusion force that I give in the wiki page is set at a value that makes it unlikely that you will be short of extruder force. I am not saying that you can't extrude with lower force but it depends on your hot end, filament, print speed and print temperature (including how much the extruder temperature drops when the print cooling fan turns on). For a directly coupled extruder such as the Titan Aero it would certainly be worth trying a lighter pancake motor that provides less than 10N force in order to reduce weight, but preferably make sure your print head design will accommodate a slightly longer motor too in case it proves inadequate.

              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

              wilrikerundefined 1 Reply Last reply Reply Quote 0
              • wilrikerundefined
                wilriker @dc42
                last edited by

                @dc42 Thanks for clarifying. I now ordered a Titan (actually I have to admit it is a clone) and the included motor has 12 Ncm with slightly better values for resistance and inductance than the short pancake that @whosrdaddy has. This will through the gearing already give me about 2N more force than my current extruder which is ungeared.

                My extruder carriage is not restricting motor size, so I could upgrade to a larger/stronger one later.

                Oh, and thanks for fixing the formula on the wiki page. 🙂

                Manuel
                Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                with probably always latest firmware/DWC (incl. betas or self-compiled)
                My Tool Collection

                1 Reply Last reply Reply Quote 0
                • AlexLinundefined
                  AlexLin
                  last edited by

                  I found the e3d pancake getting very hot, so I switched to the e3d compact one which works better for me. Direct drive normally printing at 70mm/s and .4 nozzle, .2 layer height

                  1 Reply Last reply Reply Quote 0
                  • wilrikerundefined
                    wilriker
                    last edited by

                    One question that came to my mind: will any one or a combination of the factors rated current, resistance and inductance have an effect on the noise level of a motor?

                    My final goal is to modify my printer to be the most silent as possible at a given speed. The TMC2660 already do a great job in reducing noise level (I know that TMC2130/2208 would have been even more silent using stealthChop but I could not resist adding the very best board out there to one of the most low-end printers available 😄 ) but can a specific selection of motor specs also reduce the noise level even further?

                    Manuel
                    Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                    with probably always latest firmware/DWC (incl. betas or self-compiled)
                    My Tool Collection

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

                      @wilriker said in Does M906 set RMS or peak current?:

                      One question that came to my mind: will any one or a combination of the factors rated current, resistance and inductance have an effect on the noise level of a motor?

                      The answer is yes, but I don't yet know what the best choice is. Also we may be able to reduce the noise level for particular motors by adjusting the chopper configuration register settings.

                      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

                      wilrikerundefined 1 Reply Last reply Reply Quote 0
                      • wilrikerundefined
                        wilriker @dc42
                        last edited by

                        @dc42 said in Does M906 set RMS or peak current?:

                        Also we may be able to reduce the noise level for particular motors by adjusting the chopper configuration register settings.

                        Is there something I can do to help testing this out?

                        Manuel
                        Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                        with probably always latest firmware/DWC (incl. betas or self-compiled)
                        My Tool Collection

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

                          @wilriker said in Does M906 set RMS or peak current?:

                          @dc42 said in Does M906 set RMS or peak current?:

                          Also we may be able to reduce the noise level for particular motors by adjusting the chopper configuration register settings.

                          Is there something I can do to help testing this out?

                          Yes! See section 2 of https://www.trinamic.com/fileadmin/assets/Support/Appnotes/AN001-spreadCycle.pdf for guidance on tuning the chopper configuration register settings. You can change the value of the chopper configuration register in firmware 2.0RC5 using the C parameter of the M569 command.

                          PS - the default chopper configuration register value is:

                          // Chopper control register defaults

                          // 0x901B4 as per datasheet example

                          // CHM bit not set, so uses spread cycle mode

                          const uint32_t defaultChopConfReg =
                          TMC_REG_CHOPCONF
                          | TMC_CHOPCONF_TBL(2) // blanking time 36 clocks which is about 2.4us typical (should maybe use 16 or 24 instead?)
                          | TMC_CHOPCONF_HDEC(0) // no hysteresis decrement
                          | TMC_CHOPCONF_HEND(3) // HEND = 0
                          | TMC_CHOPCONF_HSTRT(3) // HSTRT = 4
                          | TMC_CHOPCONF_TOFF(4); // TOFF = 9.2us

                          Only the lowest 17 bits of the value you give in the M569 command are used.

                          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

                          wilrikerundefined 2 Replies Last reply Reply Quote 0
                          • wilrikerundefined
                            wilriker @dc42
                            last edited by

                            @dc42 I will look at the documentation and see what I can do. My biggest problem here might be that the real inductance of the motors I currently still have is unknown (stock Anet A8 motors - you already researched a bit about them and guessed they would be aroun 8-10mH). Should I wait until I replaced the motors with something where all specs are known for sure or can I already go with the estimated inductance?

                            Also, is there any simple way to measure the inductance? I guess not, but still want to ask.

                            Manuel
                            Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                            with probably always latest firmware/DWC (incl. betas or self-compiled)
                            My Tool Collection

                            1 Reply Last reply Reply Quote 0
                            • wilrikerundefined
                              wilriker @dc42
                              last edited by wilriker

                              @dc42 said in Does M906 set RMS or peak current?:

                              PS - the default chopper configuration register value is:

                              // Chopper control register defaults

                              // 0x901B4 as per datasheet example

                              // CHM bit not set, so uses spread cycle mode

                              const uint32_t defaultChopConfReg =
                              TMC_REG_CHOPCONF
                              | TMC_CHOPCONF_TBL(2) // blanking time 36 clocks which is about 2.4us typical (should maybe use 16 or 24 instead?)
                              | TMC_CHOPCONF_HDEC(0) // no hysteresis decrement
                              | TMC_CHOPCONF_HEND(3) // HEND = 0
                              | TMC_CHOPCONF_HSTRT(3) // HSTRT = 4
                              | TMC_CHOPCONF_TOFF(4); // TOFF = 9.2us

                              Do the drivers use their internal clock at 15Mhz or is an external clock used as recommended in section 13 of the datasheet for TMC2660? And if the latter is the case what frequency does it have?

                              Manuel
                              Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                              with probably always latest firmware/DWC (incl. betas or self-compiled)
                              My Tool Collection

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

                                The drivers use the internal clock. We were originally going to use an external clock, however the drivers would be likely to blow up if the clock failed for any reason (e.g. because you flashed bad firmware to the Duet); so we reverted to internal clock.

                                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

                                wilrikerundefined 1 Reply Last reply Reply Quote 0
                                • wilrikerundefined
                                  wilriker @dc42
                                  last edited by wilriker

                                  @dc42 Yeah, I just read the big fat warning about external clocking being turned off (out of whatever reason) without taking the necessary precautions... They say on the one hand, if you need the most precise chopper, using external clock - but that makes it prone to blow up also... 😄

                                  Manuel
                                  Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                                  with probably always latest firmware/DWC (incl. betas or self-compiled)
                                  My Tool Collection

                                  1 Reply Last reply Reply Quote 0
                                  • wilrikerundefined
                                    wilriker
                                    last edited by

                                    @dc42 Section 2.2 of the Parameterization of spreadCycle document says

                                    Use highest possible microstep resolution for your tests.

                                    Should I use native 256 microstepping or would this also work with 16+interpolation?

                                    Manuel
                                    Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                                    with probably always latest firmware/DWC (incl. betas or self-compiled)
                                    My Tool Collection

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

                                      @wilriker said in Does M906 set RMS or peak current?:

                                      @dc42 Section 2.2 of the Parameterization of spreadCycle document says

                                      Use highest possible microstep resolution for your tests.

                                      Should I use native 256 microstepping or would this also work with 16+interpolation?

                                      I suggest you work with x16 with interpolation, because that is what most people use.

                                      The particular issue that some users have is that the drives are noisy at standstill. Section 2.4 of the app note suggests reducing TOFF in this situation.

                                      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

                                      wilrikerundefined 1 Reply Last reply Reply Quote 0
                                      • wilrikerundefined
                                        wilriker @dc42
                                        last edited by

                                        @dc42 OK, I will further read the document and will test over the next couple of days and then report my findings.

                                        The particular issue that some users have is that the drives are noisy at standstill.

                                        Should I set the standstill current via M917 to a specific value for this?

                                        An interesting note in Table 1 says that current in standby could even be reduced to 0 depending on the setup. I saw that M906 allows a range of 0..100 for the I parameter. Will using 0 really set idle current to 0mA? That would be basically the same as using M18/M84 just without requirement to rehome (given enough trust in the positions not having changed out of any reason).

                                        Manuel
                                        Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                                        with probably always latest firmware/DWC (incl. betas or self-compiled)
                                        My Tool Collection

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

                                          Setting standstill current with M917 doesn't yet work on the Duet 2. But you might want to temporarily increase the idle current to 100% in M906 so that the motor current doesn't get reduced after 230 seconds of inactivity, making the standstill noise easier to hear.

                                          Setting M906 I parameter to zero will reduce the current to 100mA.

                                          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

                                          wilrikerundefined 1 Reply Last reply Reply Quote 0
                                          • wilrikerundefined
                                            wilriker @dc42
                                            last edited by

                                            @dc42 said in Does M906 set RMS or peak current?:

                                            Setting standstill current with M917 doesn't yet work on the Duet 2. But you might want to temporarily increase the idle current to 100% in M906 so that the motor current doesn't get reduced after 230 seconds of inactivity, making the standstill noise easier to hear.

                                            I have my timeout even reduced to 15s. Which reminds me of another question that came to my mind: is idle current reduction also applied while printing (from SD card)? I ask because that might mean that with this rather short timeout I have set it would reduce the Z motors to idle current for any layer above 10mm height (mesh level taper) that takes longer then my timeout.

                                            Setting M906 I parameter to zero will reduce the current to 100mA.

                                            OK, I will add this to GCode description so it will be known when reading documentation about M906

                                            Manuel
                                            Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                                            with probably always latest firmware/DWC (incl. betas or self-compiled)
                                            My Tool Collection

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