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

    Motor Whine/Loud Movement

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    3
    10
    1.8k
    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.
    • pungoboyundefined
      pungoboy
      last edited by pungoboy

      Hey, I'm a little sad to find that after powering up and configuring my Delta for the first time, the motors are quite loud, both when moving and when idle.

      Specs: Duet 2 Wifi
      Latest firmware
      Steppers : Nema 17 Bipolar 0.9deg 65.1 oz/in 2A 2.8V 3.0mH 1.4ohm from steppers online
      24V meanwell PSU

      I've tried settings all the way from 800mA to 1800mA with little change in the sound. I'm using 1/16 interpolated µstepping.

      Current config:
      ; Drives
      M569 P0 S0 ; Drive 0 goes forwards
      M569 P1 S0 ; Drive 1 goes forwards
      M569 P2 S0 ; Drive 2 goes forwards
      M569 P3 S0 ; Drive 3 goes forwards
      M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
      M92 X160 Y160 Z160 E663 ; Set steps per mm
      M566 X1200 Y1200 Z1200 E1200 ; Set maximum instantaneous speed changes (mm/min)
      M203 X18000 Y18000 Z18000 E1200 ; Set maximum speeds (mm/min)
      M201 X1000 Y1000 Z1000 E1000 ; Set accelerations (mm/s^2)
      M906 X1400 Y1400 Z1400 E800 I30 ; Set motor currents (mA) and motor idle factor in per cent
      M84 S30 ; Set idle timeout

      Any help would be appreciated. I'd like to know how to mess with the 2660's spreadcycle parameters to see if that helps. Also, potentially the minimum step time is wrong? Idk.

      edit: Also, the whine frequency changes each time it's moved in x/y. Reminds me a lot of when I tried to set up TMC2130s on my old printer with a 12v PSU, it did the exact same thing.

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

        @pungoboy said in Motor Whine/Loud Movement:

        Any help would be appreciated. I'd like to know how to mess with the 2660's spreadcycle parameters to see if that helps. Also, potentially the minimum step time is wrong? Idk.

        In this thread: https://forum.duet3d.com/topic/5392/does-m906-set-rms-or-peak-current/18
        You can find some information on how to mess around with the chopper configuration of the drivers and some values I found to be better and some to be always worse.
        If you need it, I could upload my small tool to parametrically create the required integer bitmask.

        I recomment to first try to change TOFF and afterwards have a look at HSTRT/HEND.

        edit: Also, the whine frequency changes each time it's moved in x/y.

        According to the document linked in the other thread by dc42 it is normal to have different noise levels at different motor positions.

        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
        • pungoboyundefined
          pungoboy
          last edited by

          @wilriker said in Motor Whine/Loud Movement:

          https://forum.duet3d.com/topic/5392/does-m906-set-rms-or-peak-current/18

          I could definitely use some help generating the proper values to input, I only vaguely know the word bitmask and I'd like to not damage my nice new Duet messing about with it.

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

            @pungoboy Are you able to compile an executable with the programming language Go? I could then upload the source code somewhere. Otherwise tell me what OS and CPU you are using and I could compile a matching version for you.

            EDIT: I just uploaded the source code as well as three precompiled binaries for Windows/Linux/Mac AMD64 to https://github.com/wilriker/chopconf-generator (binaries can be found at https://github.com/wilriker/chopconf-generator/releases).

            There is also some very short usage description.

            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
            • pungoboyundefined
              pungoboy
              last edited by

              Thanks for the quick response, I'll let you know if I run into any trouble.

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

                @wilriker said in Motor Whine/Loud Movement:

                In this thread: https://forum.duet3d.com/topic/5392/does-m906-set-rms-or-peak-current/18
                You can find some information on how to mess around with the chopper configuration of the drivers and some values I found to be better and some to be always worse.
                If you need it, I could upload my small tool to parametrically create the required integer bitmask.

                I recomment to first try to change TOFF and afterwards have a look at HSTRT/HEND.

                Could you provide chopper configuration values for various TOFF values, so that users who only need to change TOFF can try them?

                BTW you should be able to use hex values for the CCR in the M569 command if you prefix them with 0x. That makes computing bitmaps easier.

                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 wilriker

                  @dc42 said in Motor Whine/Loud Movement:

                  Could you provide chopper configuration values for various TOFF values, so that users who only need to change TOFF can try them?

                  Of course:

                  • TOFF=0 -> M569 C65968 (this means motors are off!)
                  • TOFF=1 -> M569 C65969
                  • TOFF=2 -> M569 C65970
                  • TOFF=3 -> M569 C65971
                  • TOFF=4 -> M569 C65972
                  • TOFF=5 -> M569 C65973
                  • TOFF=6 -> M569 C65974
                  • TOFF=7 -> M569 C65975
                  • TOFF=8 -> M569 C65976
                  • TOFF=9 -> M569 C65977
                  • TOFF=10 -> M569 C65978
                  • TOFF=11 -> M569 C65979
                  • TOFF=12 -> M569 C65980
                  • TOFF=13 -> M569 C65981
                  • TOFF=14 -> M569 C65982
                  • TOFF=15 -> M569 C65983

                  You'll have to add at least the Pnnn parameter to specify the motor.

                  BTW you should be able to use hex values for the CCR in the M569 command if you prefix them with 0x. That makes computing bitmaps easier.

                  I will have a look at my tool tomorrow to output hex values optionally

                  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 1
                  • wilrikerundefined
                    wilriker
                    last edited by wilriker

                    Do not use these - see below


                    So here is the same list as above just with hexdecimal notation:

                    • TOFF=0 -> M569 C0x101b0
                    • TOFF=1 -> M569 C0x101b1
                    • TOFF=2 -> M569 C0x101b2
                    • TOFF=3 -> M569 C0x101b3
                    • TOFF=4 -> M569 C0x101b4
                    • TOFF=5 -> M569 C0x101b5
                    • TOFF=6 -> M569 C0x101b6
                    • TOFF=7 -> M569 C0x101b7
                    • TOFF=8 -> M569 C0x101b8
                    • TOFF=9 -> M569 C0x101b9
                    • TOFF=10 -> M569 C0x101ba
                    • TOFF=11 -> M569 C0x101bb
                    • TOFF=12 -> M569 C0x101bc
                    • TOFF=13 -> M569 C0x101bd
                    • TOFF=14 -> M569 C0x101be
                    • TOFF=15 -> M569 C0x101bf

                    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 1
                    • wilrikerundefined
                      wilriker @dc42
                      last edited by

                      @dc42 said in Motor Whine/Loud Movement:

                      BTW you should be able to use hex values for the CCR in the M569 command if you prefix them with 0x. That makes computing bitmaps easier.

                      I only now tried to use hex value but any hex value is treated like 0, e.g. M569 P2 S0 C0x101b4 (firmware defaults just explicitly provided as hex) will turn the motor off due the fact that when treated as 0x0 it will set TOFF=0 which means motors off.

                      Running M569 P2 will though output the value as hex (when provided in decimal notation the correct corresponding hex value is output otherwise 0x00000).

                      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

                        Fair enough, looks like hex input no longer works. So use the decimal values that @wilriker provided.

                        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
                        • First post
                          Last post
                        Unless otherwise noted, all forum content is licensed under CC-BY-SA