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

Y Axis homing in reverse direction if acceleration increased

Scheduled Pinned Locked Moved
Tuning and tweaking
8
37
2.1k
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.
  • undefined
    dc42 administrators @tsitalon1
    last edited by 11 May 2021, 08:19

    @tsitalon1 the most common cause of a motor going in either direction is that only one phase is working. But in that case, the torque provided is also very low.

    To check that it isn't a driver issue, you could move the Y motor cable to a different driver output on the Duet (with power off, of course) and make a corresponding change to the M584 command in config.g. Then see if the behaviour is any different.

    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
    • undefined
      tsitalon1
      last edited by tsitalon1 5 Nov 2021, 15:56 11 May 2021, 15:51

      Getting very frustrated and starting to suspect a bad board.

      I'll do my best to explain in clear terms, printer is setup as follows:
      Core XY
      Motors in front thus front left should be 0:0

      Expected homing behavior:
      print head should move to far left and then to the very front.

      I was able to tweak the acceleration, homing speed, and homing current to get it somewhat consistent, meaning with the below parameters, I was able to get it to home over and over again properly - about 10 times... not printing in between, just home-all, move head via dashboard buttons to ~ 150:180 and home-all again

      M201 X2000 Y2000 Z100 E3500                                			      ; Set accelerations (mm/s^2)
      
      M913 X30 Y25 ; reduce motor current to 25% to prevent belts slipping
      G91 ; relative positioning
      G1 H2 Z5 F4000 ; lift Z relative to current position
      G1 H1 X-333 F5000 ; home X axis
      G1 H1 Y-333 F5500 ; home Y axis
      G1 X5 Y30 F4000 ; go back a few mm
      ;G90 ; absolute positioning
      G30 ; home Z by probing the bed
      M913 X100 Y100

      I heated the bed to 65 and the nozzle to 230, performed the same test above and got very inconsistent results:
      Print head moved straight forward, did not move left at all.
      next homing sequence the print head moved far left, but then moved backwards.
      Tried a few more times with no changes and it worked as expected.

      Printed a very small amount - less than 1 minute of printing, after which I immediately tried to print the same model by using the print again button, results during homing:
      Print head moved straight forward, did not move left at all.

      I am beyond shocked at these results... no clue what to do now..

      undefined undefined 2 Replies Last reply 11 May 2021, 17:22 Reply Quote 0
      • undefined
        dc42 administrators @tsitalon1
        last edited by 11 May 2021, 17:22

        @tsitalon1 have you read my earlier reply?

        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

        undefined 1 Reply Last reply 11 May 2021, 18:15 Reply Quote 0
        • undefined
          tsitalon1 @dc42
          last edited by 11 May 2021, 18:15

          @dc42 said in Y Axis homing in reverse direction if acceleration increased:

          @tsitalon1 have you read my earlier reply?

          Yes, but I'm unsure how to.

          So you are suggesting I use my Extruder 1 driver and map the Extruder 1 to the Y axis using the M584 command?

          If so, what else would I need to change to test that? I assume I would need to comment out other things..

          undefined 1 Reply Last reply 11 May 2021, 19:15 Reply Quote 0
          • undefined
            fcwilt @tsitalon1
            last edited by 11 May 2021, 19:15

            @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

            So you are suggesting I use my Extruder 1 driver and map the Extruder 1 to the Y axis using the M584 command?

            • Power off
            • swap Y and E cables at the Duet
            • Power on
            • edit M584 to match the new cable connections

            That should do it.

            Of course if you have some sort of problem with the Duet the E stepper may begin to malfunction.

            Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

            undefined 1 Reply Last reply 11 May 2021, 20:18 Reply Quote 0
            • undefined
              tsitalon1 @fcwilt
              last edited by 11 May 2021, 20:18

              Used M584 to map drive 4 to Y.

              Homing worked fine 4 times straight.

              Tried a print, after printing I tried the "print again" button and this time when homing it went straight forward without even attempting to move left or right.

              It only happens when homing, but could this be a bad motor?

              undefined 1 Reply Last reply 11 May 2021, 20:19 Reply Quote 0
              • undefined
                Phaedrux Moderator @tsitalon1
                last edited by 11 May 2021, 20:19

                @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                but could this be a bad motor?

                Do you have a spare motor to test with?

                Were you using the same cabling?

                Z-Bot CoreXY Build | Thingiverse Profile

                undefined 1 Reply Last reply 11 May 2021, 20:23 Reply Quote 0
                • undefined
                  tsitalon1 @Phaedrux
                  last edited by 11 May 2021, 20:23

                  @phaedrux said in Y Axis homing in reverse direction if acceleration increased:

                  @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                  but could this be a bad motor?

                  Do you have a spare motor to test with?

                  Were you using the same cabling?

                  not another 0.9º motor. I have plenty of 1.8º steppers, I recently moved to these for finer resolution. These have integrated wiring, so I had cut my harness and make connectors for them. there's about 6-8" of wire with two connectors for each motor

                  Switching back to the 1.8º steppers is doable, but non PnP at this point.

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    tsitalon1
                    last edited by 11 May 2021, 21:31

                    Swapped the X and Y motors, ran another test - same outcome.

                    was hoping it would follow the bad motor but it did not...

                    could be wiring, but then why only does it act this way during homing..

                    could something in my slicer end Gcode cause this issue to manifest on the next homing routine?

                    I wouldn't think so since home-all resets all movement methods (relative vs absolute).

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      tsitalon1
                      last edited by 12 May 2021, 01:39

                      So some interesting news..

                      I switched back to the 1.8º steppers, reconfigured my steps to 80 steps/mm.

                      power cycled and tried homing, print head moved left and then backward on Y.

                      I increased homing current to 40% from the initial 30% and it homed correctly. Tried homing 10 times and 10 times it was perfect.

                      Tried the 2 prints back to back to see if after the 1st print it would misbehave on the homing sequence. to my surprise it did not, it's working flawlessly.

                      Thinking the back to back print outcome was a fluke, I tried it 3 more times, and all 3 times it was perfect.

                      The fact that even with the 1.8º steppers I saw backwards movement on Y until I changed homing current (same as I saw with the 0.9º steppers) makes me think my 0.9 steppers are fine, especially since they print without any issues.

                      Does this mean I have a bad board that is super sensitive to inductance and current draw of stepper motors, or is this expected behavior?

                      I couldn't for the life of me find a homing speed/current combination that produced consistent results with the 0.9º steppers.

                      I would prefer to go back to the 0.9º steppers as they are finer resolution and quieter.

                      undefined 1 Reply Last reply 12 May 2021, 02:53 Reply Quote 0
                      • undefined
                        fcwilt @tsitalon1
                        last edited by 12 May 2021, 02:53

                        @tsitalon1

                        I take it you are trying to use sensorless homing on X and Y thus the reduction in current?

                        If so I would suggest simply installing endstop sensors - no need to reduce current - problem goes away - even with 0.9 steppers.

                        Just FYI, I would never use sensorless homing - it seems to me it is akin to stopping your car by running into the car in front of you instead of using the brakes.

                        Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                        undefined 1 Reply Last reply 12 May 2021, 03:13 Reply Quote 0
                        • undefined
                          tsitalon1 @fcwilt
                          last edited by 12 May 2021, 03:13

                          @fcwilt

                          I hear you and I don't completely disagree, but I did spend a good chunk of money for one of the most advanced 3d printer main boards on the market and I believe I should be able to use the advertised features of this board.

                          Since we are making comparisons, that's like buying a new Corvette and detuning the motor just to save gas money... Doesn't really make sense.

                          Sensorless homing should work and seems like it does with 1.8° steppers. So there's really no reason it shouldn't with 0.9° steppers.

                          I searched this forum for the same model 0.9° steppers I'm using and I couldn't find a single post that wasn't my post... Seems like I bought some steppers that either no one uses, or at least no one bothered to mention in the forum.

                          Who knows, maybe I just bought the wrong steppers.

                          I would but new 0.9° steppers tomorrow if we (the group) believe my board is fine and I just possibly ran into a compatibility issue.

                          undefined 1 Reply Last reply 12 May 2021, 04:27 Reply Quote 0
                          • undefined
                            Phaedrux Moderator
                            last edited by Phaedrux 5 Dec 2021, 04:44 12 May 2021, 03:46

                            @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                            42BTGHM809

                            http://cdn.sparkfun.com/datasheets/Robotics/42BYGHM809.PDF

                            This the one?

                            Based on the specs they seem like they should be fine.

                            Up to what current have you been running the 0.9 motors during homing? 25% of 1300ma? That's only 300ma

                            Have you tried running them higher yet? Was it that low just to get a reliable stall? What was your stall detection tuning process?

                            https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing

                            Z-Bot CoreXY Build | Thingiverse Profile

                            undefined 1 Reply Last reply 12 May 2021, 12:58 Reply Quote 0
                            • undefined
                              fcwilt @tsitalon1
                              last edited by 12 May 2021, 04:27

                              @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                              Since we are making comparisons, that's like buying a new Corvette and detuning the motor just to save gas money... Doesn't really make sense.

                              Not really a valid comparison.

                              Sensorless homing doesn't provide any performance benefits over physical endstop sensors.

                              I use IR beam break endstop sensors which will never wear out and if properly installed cannot be broken by excessive axis travel.

                              On the other hand sensorless homing requires excessive axis travel to occur with enough energy to be reliably detectable - banging into the limit of the travel strikes me as a rather brute force way to home an axis.

                              And as you have found out it can have issues.

                              But the important thing is that you are happy with your printer and it does what you want it to they way you want it to do that.

                              So keeping tweaking the parameters until you get it sorted.

                              Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                              1 Reply Last reply Reply Quote 1
                              • undefined
                                o_lampe @tsitalon1
                                last edited by o_lampe 5 Dec 2021, 07:19 12 May 2021, 07:02

                                @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                                M913 X30 Y25 ; reduce motor current to 25% to prevent belts slipping
                                G91 ; relative positioning
                                G1 H2 Z5 F4000 ; lift Z relative to current position
                                G1 H1 X-333 F5000 ; home X axis
                                G1 H1 Y-333 F5500 ; home Y axis
                                G1 X5 Y30 F4000 ; go back a few mm
                                ;G90 ; absolute positioning
                                G30 ; home Z by probing the bed
                                M913 X100 Y100

                                I might be wrong, but AFAIK a CoreXY requires a different homing sequence:

                                ...
                                G1 H2 Z5 F4000 ; lift Z relative to current position
                                G1 H1 X-333 Y-333 F5000 ; home both axes at once <= insert this line
                                G1 H1 X-33 F5000 ; home X axis
                                G1 H1 Y-33 F5500 ; home Y axis
                                ...

                                Especially the line I marked is important, maybe someone can confirm this? @Phaedrux

                                Here's the link to the Wiki page

                                //edit Does that also explain, why increasing acceleration changed the behaviour. The motors simply hit the 'endstops' at a different time?

                                undefined 1 Reply Last reply 12 May 2021, 16:03 Reply Quote 0
                                • undefined
                                  dc42 administrators
                                  last edited by 12 May 2021, 08:05

                                  @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                                  So some interesting news..

                                  I switched back to the 1.8º steppers, reconfigured my steps to 80 steps/mm.

                                  power cycled and tried homing, print head moved left and then backward on Y.

                                  I increased homing current to 40% from the initial 30% and it homed correctly. Tried homing 10 times and 10 times it was perfect.

                                  Tried the 2 prints back to back to see if after the 1st print it would misbehave on the homing sequence. to my surprise it did not, it's working flawlessly.

                                  Thinking the back to back print outcome was a fluke, I tried it 3 more times, and all 3 times it was perfect.

                                  The fact that even with the 1.8º steppers I saw backwards movement on Y until I changed homing current (same as I saw with the 0.9º steppers) makes me think my 0.9 steppers are fine, especially since they print without any issues.

                                  Does this mean I have a bad board that is super sensitive to inductance and current draw of stepper motors, or is this expected behavior?

                                  I couldn't for the life of me find a homing speed/current combination that produced consistent results with the 0.9º steppers.

                                  I would prefer to go back to the 0.9º steppers as they are finer resolution and quieter.

                                  At only 30% current the torque will be very low, so it is not surprising that the motor cannot maintain normal acceleration. I think your options are:

                                  1. Try again to find speed, current and stall sensitivity settings with which sensorless homing works using your 0.9deg motors, with the current higher than 30%; or
                                  2. In your homing files, use the M201 command to reduce the acceleration limit at the start, and restore it at the end using M201 again.

                                  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

                                  undefined 1 Reply Last reply 12 May 2021, 13:26 Reply Quote 1
                                  • undefined
                                    tsitalon1 @Phaedrux
                                    last edited by 12 May 2021, 12:58

                                    @phaedrux said in Y Axis homing in reverse direction if acceleration increased:

                                    @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                                    42BTGHM809

                                    http://cdn.sparkfun.com/datasheets/Robotics/42BYGHM809.PDF

                                    This the one?

                                    Based on the specs they seem like they should be fine.

                                    Up to what current have you been running the 0.9 motors during homing? 25% of 1300ma? That's only 300ma

                                    Have you tried running them higher yet? Was it that low just to get a reliable stall? What was your stall detection tuning process?

                                    https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing

                                    Yep 42BTGHM809, I agree, they should be fine, but I do appear to be the only one using them or at least posted anything on these forums with that model number.

                                    I used the procedure you linked to, and tried between 25% to 50% current, trying all different speeds. I will try again now that I believe the board is fine.

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      tsitalon1 @dc42
                                      last edited by tsitalon1 5 Dec 2021, 13:27 12 May 2021, 13:26

                                      @dc42 said in Y Axis homing in reverse direction if acceleration increased:

                                      @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                                      So some interesting news..

                                      I switched back to the 1.8º steppers, reconfigured my steps to 80 steps/mm.

                                      power cycled and tried homing, print head moved left and then backward on Y.

                                      I increased homing current to 40% from the initial 30% and it homed correctly. Tried homing 10 times and 10 times it was perfect.

                                      Tried the 2 prints back to back to see if after the 1st print it would misbehave on the homing sequence. to my surprise it did not, it's working flawlessly.

                                      Thinking the back to back print outcome was a fluke, I tried it 3 more times, and all 3 times it was perfect.

                                      The fact that even with the 1.8º steppers I saw backwards movement on Y until I changed homing current (same as I saw with the 0.9º steppers) makes me think my 0.9 steppers are fine, especially since they print without any issues.

                                      Does this mean I have a bad board that is super sensitive to inductance and current draw of stepper motors, or is this expected behavior?

                                      I couldn't for the life of me find a homing speed/current combination that produced consistent results with the 0.9º steppers.

                                      I would prefer to go back to the 0.9º steppers as they are finer resolution and quieter.

                                      At only 30% current the torque will be very low, so it is not surprising that the motor cannot maintain normal acceleration. I think your options are:

                                      1. Try again to find speed, current and stall sensitivity settings with which sensorless homing works using your 0.9deg motors, with the current higher than 30%; or
                                      2. In your homing files, use the M201 command to reduce the acceleration limit at the start, and restore it at the end using M201 again.

                                      I did try up to 50% with the 0.9º steppers, but I will try again, thank you.

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        Phaedrux Moderator @o_lampe
                                        last edited by 12 May 2021, 16:03

                                        @o_lampe said in Y Axis homing in reverse direction if acceleration increased:

                                        @tsitalon1 said in Y Axis homing in reverse direction if acceleration increased:

                                        M913 X30 Y25 ; reduce motor current to 25% to prevent belts slipping
                                        G91 ; relative positioning
                                        G1 H2 Z5 F4000 ; lift Z relative to current position
                                        G1 H1 X-333 F5000 ; home X axis
                                        G1 H1 Y-333 F5500 ; home Y axis
                                        G1 X5 Y30 F4000 ; go back a few mm
                                        ;G90 ; absolute positioning
                                        G30 ; home Z by probing the bed
                                        M913 X100 Y100

                                        I might be wrong, but AFAIK a CoreXY requires a different homing sequence:

                                        ...
                                        G1 H2 Z5 F4000 ; lift Z relative to current position
                                        G1 H1 X-333 Y-333 F5000 ; home both axes at once <= insert this line
                                        G1 H1 X-33 F5000 ; home X axis
                                        G1 H1 Y-33 F5500 ; home Y axis
                                        ...

                                        Especially the line I marked is important, maybe someone can confirm this? @Phaedrux

                                        Here's the link to the Wiki page

                                        //edit Does that also explain, why increasing acceleration changed the behaviour. The motors simply hit the 'endstops' at a different time?

                                        That's not technically required for coreXY. The only reason to do it that way is to save some time as it moves both axis together until one of the axis endstops are hit, which stops both, then the following homing moves will home the remaining axis that hasn't yet hit the endstop. If you wanted you could do each axis independently without issue.

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        1 Reply Last reply Reply Quote 0
                                        • undefined
                                          tsitalon1
                                          last edited by 12 May 2021, 18:16

                                          So I've spent a good part of my day trying different combinations with the 0.9º steppers.

                                          Setting my homing-all file to the below was the only real way I could get it to consitently home:

                                          M913 X25 Y25 ; reduce motor current to 25% to prevent belts slipping
                                          G91 ; relative positioning
                                          G1 H2 Z5 F4000 ; lift Z relative to current position
                                          G1 H1 X-333 F5000 ; home X axis
                                          G1 H1 Y-333 F5000 ; home Y axis
                                          G1 X5 Y30 F4000 ; go back a few mm
                                          ;G90 ; absolute positioning
                                          G30 ; home Z by probing the bed
                                          M913 X100 Y100

                                          As soon as I go over 25% on the Y axis, it starts moving the wrong way on the Y axis.

                                          But here's the kicker, even though I seem to have gotten it 100% consistent during homing, all that goes compltely out the window if I actual print something..

                                          here's how that goes:

                                          • power on printer
                                          • Home-all
                                          • Print
                                          • once print is done I click print again
                                          • this time during the homing sequence, it ignores the X movement and only initiates Y towards the front of the printer.

                                          I don't think it matters, but here is my end code in my slicer:

                                          M915 X Y S2 F0 R0 ; Stall detection - disable reporting
                                          M104 S0 ;extruder heater off
                                          M140 S0 ;heated bed heater off (if you have it)
                                          G91
                                          G1 H2 Z5 F4000
                                          G90
                                          G0 Z5 X290 Y290 F3000
                                          M84
                                          undefined undefined undefined 3 Replies Last reply 13 May 2021, 06:14 Reply Quote 0
                                          18 out of 37
                                          • First post
                                            18/37
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA