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

    My "2 Wifi" is un-baby-stepping

    Scheduled Pinned Locked Moved
    General Discussion
    7
    66
    5.2k
    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.
    • gnydickundefined
      gnydick
      last edited by gnydick

      I apply baby-steps during a print, with no bed compensation what-so-ever, and this is what happens. I've even placed my fingers on the coupler and fought the motor trying to turn it back. It's not a slip. I can feel the pulses.

      Anti babystep

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

        Is that a pancake stepper?

        Can you include some more information?
        https://forum.duet3d.com/topic/5909/guide-for-posting-requests-for-help

        Z-Bot CoreXY Build | Thingiverse Profile

        gnydickundefined 1 Reply Last reply Reply Quote 0
        • gnydickundefined
          gnydick @Phaedrux
          last edited by

          @phaedrux Yah...

          They are pancake motors, They're on the weak side, but with the right config, they work. What's funny is, what I'm printing out in that video is a gearing system to make them stronger and give me more Z height by taking the motors out from beneath the lead screw.

          • Duet 2 Wifi
          • CoreXY
          • Dual Z motor
          • 0_1550455467026_config.g
          • 0_1550455325057_30db694d-4d26-4087-b094-91def4fb0e82-image.png
          • start gcode...
          G28
          M561 ;Clear the mesh level info (will load below)
          
          M109 S[first_layer_temperature_0]
          M190 S[bed_temperature]
          
          ;Intro Line Near Right
          G1 X0 Y0 Z20 F2000 ; move to left front edge
          G1 X0 Y0 Z.3 E20 F3000
          
          G92 E0 ; zero extruder
          G1 Y100 E35 F750 ; intro line
          G1 Y125 F3000 ; ooze it out buddy
          G1 Y150 F5000 ; wipe off the ooze
          G1 Z.1
          G1 Y175 Z0 F7500 ; scrape off the crap
          G1 Y200 F7500
          
          G1 Y210 Z0 F7500
          G1 Y240 F15000
          G1 Z1
          
          G92 E0 ;zero extruder
          M117 Ready to Print
          

          repro:
          All I did was start a print and after it was not at the right offset, I click baby-step (-). I click it multiple times, no matter how many times, same thing happens.

          It does NOT happen when the print is not executing. So, if I pause the print and click baby-step (+/-), it moves and stays. Once the print starts again, it will rewind the baby steps I entered while paused.

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

            M350 X64 Y64 E256:256 I0 ; Configure microstepping without interpolation
            M350 Z4

            ;M92 X2536.087 Y2536.087 Z6405.819 E185.69:185.69 ; Set steps per mm
            M92 X639.4571 Y639.4571 Z198.8 E2941.62:2941.62 ; Set steps per mm

            M566 X1500.00 Y1500.00 Z750.00 E5000.00:5000.00 ; Set maximum instantaneous speed changes (mm/min)
            M203 X36000.00 Y36000.00 Z1000.00 E36000.00:36000.00 ; Set maximum speeds (mm/min)
            M201 X3000.00 Y3000.00 Z50.00 E9000.00:9000.00 ; Set accelerations (mm/s^2)
            M906 X1800.00 Y1800.00 E1680.00:1680.00 I60 ; Set motor currents (mA) and motor idle factor in per cent
            M906 Z2600.00 I80
            M84 S30 ; Set idle timeout

            You've got some kinda crazy values in here for the z axis. Crazy high steps per mm with only 4 microstepping. Maximum current to a pancake motor. Very aggressive acceleration and jerk values. I'm not surprised it's behaviour is weird.

            Sorry, was on mobile and didn't see the semi colon on the high M92 and misread the acceleration line. But the rest still stands.

            I'm curious if you run an M122 after it's done this do you see any hiccups reported?

            Z-Bot CoreXY Build | Thingiverse Profile

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

              So I had a chance to take a look at your config on a proper screen now, and I still think there are some things that could definitely be causing you issues.

              M350 X64 Y64 E256:256 I0 ; high enough microstepping  to cause hiccups
              M350 Z4 ; Low microstepping on z axis
              M566 Z750 ; high jerk for z axis
              M203 Z1000 ; high max speed for z axis
              M906 Z2600 ; max motor current into a tiny pancake motor
              

              Combined with all of your quoted commanded Z moves would be requesting the full max z speed.

              I think you might have best results with x16 microsteps across the board with interpolation to 256. Possibly higher for the extruder if it results in less than 400 steps per mm. I wouldn't be surprised if your microstepping settings are high enough to trigger hiccups and possibly missed steps.

              Reduce the max Z speed to 300mm/min.
              Reduce Z jerk to 50mm/min

              It's not clear to me if you are using the Za and Zb motor connectors, or if you're using independent drivers for your Z axis. either way you may want to revisit your current settings to see what the motors are actually receiving, as your M906 Z2600 would seem very high at first glance.

              Z-Bot CoreXY Build | Thingiverse Profile

              gnydickundefined 2 Replies Last reply Reply Quote 0
              • gnydickundefined
                gnydick @Phaedrux
                last edited by gnydick

                @phaedrux I am using the a&b setup on the same driver. The reason for the settings like that are because the pancakes are not strong. So the larger the microstep the more torque it can handle.

                Also, the current is high because there are 2 motors. As far as I understand, if you double the motors on a circuit, you double the current to compensate. Is that correct.?

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

                  Sure, I get what you're trying to do with the low microsteps but the high feed rate and jerk settings are kind of working against you. Lowering those might help reduce the initial torque required to get moving. You've already got a nice low acceleration value.

                  Things can also behave strangely at low microstep values like that. Things like motor direction flipping from what would be expected.

                  Maybe try x8 microstepping. The amount of torque lost won't be as much as you'd think.

                  If you have a free driver, why not give each motor its own? Keep in mind that the Za and Zb connectors are internally wired in series, not parallel, so they should be getting the full current each, not half. At least that's my understanding. Maybe I have it backwards, but I think that's why the Duet has them wired that way internally in the first place.

                  A stepper motor may be wired in either series or parallel, depending on the needs of the application. A series-wired motor will deliver more stall torque, but torque drops quickly as velocity increases. A parallel-wired motor typically maintains its (lower-than-series) torque to a higher velocity.

                  Do you have the specs on the motor? Someone more versed in stepper motors than I could probably tell you whether they would be better used in series or parallel.

                  Z-Bot CoreXY Build | Thingiverse Profile

                  gnydickundefined 1 Reply Last reply Reply Quote 0
                  • gnydickundefined
                    gnydick @Phaedrux
                    last edited by gnydick

                    @phaedrux

                    Yeah, the jerk can change, the feed rate being that high isn't ever used.

                    The problem I'm experience isn't an effect though. It's definitely being executed. I've converted the Z to a 3-to-1 gearing, so it's much more visible because the motor has to spin further to get the same distance. I've tried pretty much every different microstepping setting.

                    I don't think I have a free driver?? X, Y, Zab, E0, E1

                    https://e3d-online.dozuki.com/Document/124/.pdf

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

                      Yeah if you're using both extruders then no free driver.

                      I still think 2600ma is overboard considering they are rated at 1700ma Have you tried 1200ma? Or even 1700ma? Are the motors getting hot?
                      Especially if you're using 3:1 gearing now.

                      Other than that I'm out of ideas. Definitely odd behaviour.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      gnydickundefined 1 Reply Last reply Reply Quote 0
                      • gnydickundefined
                        gnydick @Phaedrux
                        last edited by

                        @phaedrux Yeah, they're getting hot. They're undergeared, 20 teeth on the motor, 60 teeth on the lead screw.

                        wilrikerundefined 1 Reply Last reply Reply Quote 0
                        • aidarundefined
                          aidar
                          last edited by

                          If you are using Za and Zb for motors, than they are wired in series, that means you must NOT double current. Double current is needed when motors are wired in parallel.

                          1 Reply Last reply Reply Quote 0
                          • deckingmanundefined
                            deckingman @gnydick
                            last edited by

                            @gnydick said in My "2 Wifi" is un-baby-stepping:

                            ............... I've tried pretty much every different microstepping setting...............

                            That must have been a pain because the way you have things configured, each time you change the micro stepping, you have to re-calculate and enter the the steps per mm for that micro stepping. So here is a little tip. Set the steps per mm for 16X in M92 but put that line before the M350 micro stepping line. Then you can change the micro-stepping in M350 and the firmware will automatically re-calculate the steps per mm.

                            As others have said, if you set micro-stepping too high, especially with the gearing you have, then you'll run the risk of hitting the step pulse frequency limit which is about 200KHz. So I'd suggest you start with 16X with interpolation which should be fine.

                            Ian
                            https://somei3deas.wordpress.com/
                            https://www.youtube.com/@deckingman

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

                              @gnydick said in My "2 Wifi" is un-baby-stepping:

                              @phaedrux Yeah, they're getting hot.

                              Depending on how long you have already run them at 171% of their rated current (1.4A according to the linked datasheet and 2.4A maximum current that the drivers on the Duet will put out - even if you command higher values) they might already have gotten to a temperature where their internal magnets have suffered and thus even further reducing their torque. So I would not count on them still being able to provide 13N.cm of torque anyway.

                              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
                              • gnydickundefined
                                gnydick @deckingman
                                last edited by gnydick

                                @deckingman

                                OOOOOOHhhhhhh. That's a great tip for ordering the commands. Yes, it was a pain, because even though it was powers of 2, it never worked out exactly and I had to measure every time. Luckily, I have a spreadsheet where I just plug in the settings and the measurement and it tells me the new setting to put in to fix it.

                                But, there seems to be a chicken and egg problem. Are you saying that the default is 16x and that's what I'm measuring if I were to not even specify microstepping?

                                deckingmanundefined 1 Reply Last reply Reply Quote 0
                                • gnydickundefined
                                  gnydick @Phaedrux
                                  last edited by

                                  @phaedrux I switched my extruder to x16 + 256 interp, and now the surface of my prints are pretty poor. They're rippled along the entirety of the path, not just beginning or end.

                                  Phaedruxundefined 1 Reply Last reply Reply Quote 0
                                  • deckingmanundefined
                                    deckingman @gnydick
                                    last edited by

                                    @gnydick said in My "2 Wifi" is un-baby-stepping:

                                    @deckingman

                                    OOOOOOHhhhhhh. That's a great tip for ordering the commands. Yes, it was a pain, because even though it was powers of 2, it never worked out exactly and I had to measure every time. Luckily, I have a spreadsheet where I just plug in the settings and the measurement and it tells me the new setting to put in to fix it.

                                    But, there seems to be a chicken and egg problem. Are you saying that the default is 16x and that's what I'm measuring if I were to not even specify microstepping?

                                    To save me typing - check this out - https://duet3d.dozuki.com/Wiki/GCode#Section_M350_Set_microstepping_mode

                                    Ian
                                    https://somei3deas.wordpress.com/
                                    https://www.youtube.com/@deckingman

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

                                      @gnydick said in My "2 Wifi" is un-baby-stepping:

                                      @phaedrux I switched my extruder to x16 + 256 interp, and now the surface of my prints are pretty poor. They're rippled along the entirety of the path, not just beginning or end.

                                      With your other axis at x16 you have open budget to increase the extruder micro steps. It's recommended to get your extruder steps per mm value in the 400 to 1000 range. Try x64 microsteps.

                                      You can use this tool to determine what your max retraction speed with your microstep settings can be before getting skipped steps.

                                      https://wilriker.github.io/microstep-calculator/

                                      Z-Bot CoreXY Build | Thingiverse Profile

                                      gnydickundefined 1 Reply Last reply Reply Quote 0
                                      • gnydickundefined
                                        gnydick @Phaedrux
                                        last edited by

                                        @phaedrux gotcha. Thanks!

                                        1 Reply Last reply Reply Quote 0
                                        • gnydickundefined
                                          gnydick
                                          last edited by

                                          So, it's still happening. It looks as though rapid baby-stepping is undone, but slow, infrequent baby-stepping isn't

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

                                            Can you provide a GCode file and a sequence of steps to reproduce this?

                                            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

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