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

Extruder motor stops during print…

Scheduled Pinned Locked Moved
General Discussion
7
91
10.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.
  • undefined
    dc42 administrators
    last edited by 23 Jan 2018, 21:27

    I suggest you start by upgrading the firmware to 1.20. It provides better monitoring of the stepper drivers, so it may warn you if the driver is reporting an unusual status.

    If the issue recurs, after it has happened and before rebooting, please send M122 to get a diagnostic report. Also send M906 without any parameters and confirm that the current is still set correctly.

    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
      ofloveandhate
      last edited by 23 Jan 2018, 21:33

      ok, thanks. will report back in a few days.

      1 Reply Last reply Reply Quote 0
      • undefined
        ofloveandhate
        last edited by 27 Jan 2018, 22:04

        another failure




        M906
        Motor current (mA) - X:1000, Y:1000, Z:1000, E:400:400:400:400:400:400:400:400:400, idle factor 30%
        M122
        === Diagnostics ===
        Used output buffers: 3 of 32 (9 max)
        === Platform ===
        RepRapFirmware for Duet Ethernet version 1.20 running on Duet Ethernet 1.0
        Board ID: 08DDM-9FAMU-JW4S4-6JKD8-3SD6L-TMXMS
        Static ram used: 11992
        Dynamic ram used: 98816
        Recycled dynamic ram: 3880
        Stack ram used: 1216 current, 8448 maximum
        Never used ram: 7936
        Last reset 27:23:06 ago, cause: power up
        Last software reset at 2018-01-26 12:31, reason: User, spinning module GCodes, available RAM 10464 bytes (slot 0)
        Software reset code 0x0003 HFSR 0x00000000, CFSR 0x00000000, ICSR 0x0441f000, BFAR 0xe000ed38, SP 0xffffffff
        Error status: 0
        Free file entries: 10
        SD card 0 detected, interface speed: 20.0MBytes/sec
        SD card longest block write time: 0.0ms
        MCU temperature: min 41.0, current 41.2, max 60.2
        Supply voltage: min 23.8, current 24.4, max 24.9, under voltage events: 0, over voltage events: 0
        Driver 0: standstill, SG min/max 0/1023
        Driver 1: standstill, SG min/max 0/1023
        Driver 2: standstill, SG min/max 0/1023
        Driver 3: standstill, SG min/max 0/1023
        Driver 4: standstill, SG min/max not available
        Date/time: 2018-01-27 15:56:14
        Cache data hit count 4294967295
        Slowest main loop (seconds): 0.607014; fastest: 0.000045
        === Move ===
        MaxReps: 5856, StepErrors: 0, FreeDm: 240, MinFreeDm 120, MaxWait: 2357420531ms, Underruns: 0, 1
        Scheduled moves: 0, completed moves: 0
        Bed compensation in use: none
        Bed probe heights: 0.000 0.000 0.000 0.000 0.000
        === Heat ===
        Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
        Heater 0 is on, I-accum = 0.0
        Heater 1 is on, I-accum = 0.5
        === GCodes ===
        Segments left: 0
        Stack records: 2 allocated, 0 in use
        Movement lock held by null
        http is idle in state(s) 0
        telnet is idle in state(s) 0
        file is idle in state(s) 0
        serial is idle in state(s) 0
        aux is idle in state(s) 0
        daemon is idle in state(s) 0
        queue is idle in state(s) 0
        autopause is idle in state(s) 0
        Code queue is empty.
        === Network ===
        State: 5
        HTTP sessions: 1 of 8
        Responder states: HTTP(1) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)

        what should i try next? i have not yet tried the other extruder pins on my board. i also have a wifi i can try, but that's pretty invasive, and it makes connecting a PITA.

        1 Reply Last reply Reply Quote 0
        • undefined
          ofloveandhate
          last edited by 27 Jan 2018, 22:39

          ok, so i tried something. with the machine in its errored state, i swapped the extruder motor pins to E1, instead of E0. then, i made a new tool in the web interface.

          switching to the new tool on the other pins allowed me to extrude! then, as a sanity check, i swapped the pins back to E0, changed back to the original tool, and was unable to extrude. ok, i am not insane. switch to new tool on E1, extruding is ok.

          i think i will try printing on E1.

          1 Reply Last reply Reply Quote 0
          • undefined
            ofloveandhate
            last edited by 28 Jan 2018, 19:48

            i printed on E1 last night, to no avail. still failed. i am unable to connect to the printer, "due to the duet firmware". wish i had a screencap of the page – did a refresh, and now get nothing. i am unable to connect to the printer through any other means. my normal fallback of repetier host, simplify3d, and all other programs fail to connect.

            i have now wasted about two kg of plastic due to this problem...

            1 Reply Last reply Reply Quote 0
            • undefined
              ofloveandhate
              last edited by 29 Jan 2018, 14:58

              so, i swapped boards to my wifi board, with firmware 1.19.2. another failure.

              i updated on the wifi to 1.20, and am reprinting now.

              1 Reply Last reply Reply Quote 0
              • undefined
                ofloveandhate
                last edited by 29 Jan 2018, 19:17

                another failure, on my wifi, 1.20. we can safely say:

                • either neither of my duet boards are defective, or both are

                • if this is a firmware problem, it exists in 1.19.2 and 1.20

                i additionally believe that

                • we can rule out my wiring as a problem. otherwise, when i switched E0 to E1, the extruder would not have moved without a restart. however, if my wiring is causing this fault, it should be firmware detectable… ideally

                one problem i have observed is that the firmware is unable to detect if the extruder motor comes disconnected. you can unplug, and replug, no errors. should this not be observable?

                1 Reply Last reply Reply Quote 0
                • undefined
                  ofloveandhate
                  last edited by 29 Jan 2018, 22:57

                  is this the same problem as i am experiencing?

                  https://community.ultimaker.com/topic/4733-print-stops-or-fails-halfway-through/

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    ofloveandhate
                    last edited by 29 Jan 2018, 22:58

                    it seemed so at first, but no, my fans work fine. that post was about heat creep, not the motor stopping.

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      dc42 administrators
                      last edited by 29 Jan 2018, 23:20

                      Does extrusion stop at the same point in the print each time?

                      The stepper drivers on the Duet can in theory detect when a motor wire is disconnected, but in practice we found it gave false positives, so I disabled that facility. If I can find a way to filter out the false positives, I will enable it 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

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        ofloveandhate
                        last edited by 29 Jan 2018, 23:42

                        another thought i had – maybe i should put a fan on the duet? is the board overheating?

                        https://www.duet3d.com/wiki/Connecting_and_configuring_fans

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          ofloveandhate
                          last edited by 29 Jan 2018, 23:43

                          no, it is not the same point every time.

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            ofloveandhate
                            last edited by 29 Jan 2018, 23:45

                            here's a snippet of what my gcode looks like:

                            G1 X-9.773 Y20.202 E0.0240
                            G1 X-8.049 Y19.083 E0.0845
                            G1 X-7.228 Y18.592 E0.0393
                            G1 X-5.829 Y17.806 E0.0660
                            G1 X-2.005 Y15.805 E0.1774
                            G1 X-1.749 Y15.664 E0.0120
                            G1 X-0.741 Y15.031 E0.0489
                            G1 X-0.182 Y14.575 E0.0297
                            G1 X0.225 Y14.087 E0.0261
                            G1 X0.746 Y12.742 E0.0593
                            G1 X0.847 Y12.526 E0.0098
                            G1 X0.864 Y12.365 E0.0066
                            G1 X0.745 Y10.941 E0.0588
                            G1 X0.342 Y9.133 E0.0761
                            G1 X-0.212 Y7.194 E0.0829
                            G1 X-1.216 Y3.878 E0.1424
                            G1 X-1.686 Y2.198 E0.0717
                            G1 X-1.997 Y1.061 E0.0484
                            G1 X-2.338 Y-0.306 E0.0579
                            G1 X-2.657 Y-1.687 E0.0582
                            G1 X-3.138 Y-4.143 E0.1029
                            G1 X-3.300 Y-5.092 E0.0396
                            G1 X-3.519 Y-6.570 E0.0614
                            G1 X-3.767 Y-8.725 E0.0892
                            G1 X-3.921 Y-10.510 E0.0736
                            G1 X-4.038 Y-12.900 E0.0984
                            G1 X-4.060 Y-14.016 E0.0459
                            G1 X-4.047 Y-16.295 E0.0937
                            G1 X-3.986 Y-17.935 E0.0674
                            G1 X-3.894 Y-19.398 E0.0602
                            G1 X-3.771 Y-20.858 E0.0602

                            so it is a sequence of short extrusion moves the whole file. no long linear extrudes, just this.

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              ofloveandhate
                              last edited by 29 Jan 2018, 23:52

                              here are my four attempts at 'seepferdchen'

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                ofloveandhate
                                last edited by 29 Jan 2018, 23:54

                                another thought: should i prefer absolute or relative extrusions? i have only been using relative through this whole process.

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  ofloveandhate
                                  last edited by 2 Feb 2018, 17:21

                                  i am starting to think there is a bug in the reprap firmware, in the part that processes relative extrusion distances. i printed the same model, same supports and all settings, last night. only change was that in simplify3d, i switched to absolute extrusion.

                                  ok, there was another difference that i should have not let happen, and that was that i printed this one without the https://www.thingiverse.com/thing:2567240 bottom corner plates.

                                  i am re-printing the same file now. if it fails again, then we know that the relative / absolute distances had nothing to do with my problem. if it succeeds, we have stronger evidence that it is a firmware bug.

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    ofloveandhate
                                    last edited by 5 Feb 2018, 14:34

                                    i am now convinced that there is a bug in the firmware dealing with relative extruder distances

                                    another success with absolute extruder distances, print time was 36h 21m

                                    video:
                                    https://youtu.be/7BCaq2k_oJk

                                    pic:

                                    a little problem at the top. caused due to top layers being set to 0 for that process in simplify3d. (6 processes used total, to reduce the amount of plastic used by varying the infill %)

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      dc42 administrators
                                      last edited by 6 Feb 2018, 00:02

                                      Most Duet users - including me - only ever use relative extrusion distances.

                                      Did you turn off "Allow zeroing of extrusion distance" in S3D? You should do that when using relative extrusion, although AFAIK it doesn't matter if you leave it enabled.

                                      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
                                        ofloveandhate
                                        last edited by 6 Feb 2018, 23:51

                                        zeroing was indeed allowed in s3d, both in my relative and absolute prints.

                                        brad at ultibots indicated that he thinks people mostly use absolute, where you think it is relative…

                                        i have > 70 hours of absolute distance printing with no errors now, so am growing in confidence that i was experiencing something problematic with relative. i think some stress-test kinds of gcode files are merited. i was thinking that cylindrical circles or ellipses with ever-smaller faces might be useful, and mix in the zeroing.

                                        are there known smallest distances that the extruder should be asked to perform? i read the code in the reprap firmware, and nothing immediately jumped out at me as risking underflow or rounding error. i was however concerned in GCodes.cpp at lines 2044 or so,

                                        const float moveArg = eMovement[0] * distanceScale;
                                        float requestedExtrusionAmount;
                                        if (gb.MachineState().drivesRelative)
                                        {
                                        requestedExtrusionAmount = moveArg;
                                        }
                                        else
                                        {
                                        requestedExtrusionAmount = moveArg - virtualExtruderPosition;
                                        virtualExtruderPosition = moveArg;
                                        }

                                        that in one case, the value of virtualExtruderPosition is adjusted, and not in the other. is it assumed to be always 0 if relative? where is it adjusted?

                                        i just want to know exactly how to manifest this problem, as i am not content with absolute distances as a workaround.

                                        1 Reply Last reply Reply Quote 0
                                        • undefined
                                          garyd9
                                          last edited by 7 Feb 2018, 00:33

                                          Taking a WAG based solely on the code you posted:

                                          If doing relative extrusion, the "virtualExtruderPosition" variable is meaningless (simply because it's not needed: It's a variable only used to calculate requestedExtrusionAmount if and only if absolute extrusions.)

                                          If relative, then the value of "E" is the amount that is extruded in this step.

                                          If absolute, then the value of "E" (moveArg) is the amount that is extruded in this step and all the previous steps combined. So, in order to know how much THIS step extrudes (requestedExtrusionAmount), you have to subtract "all the previous steps combined" (virtualExtruderPosition) from moveArg. At that point, "all the previous steps combined" (virtualExtruderPosition) needs to be updated to reflect the added amount THIS step extrudes (requestedExtrusionAmount.)

                                          That could be written any of the following ways, and all would be accurate:

                                          virtualExtruderPosition = virtualExtruderPosition + requestedExtrusionAmount;

                                          virtualExtruderPosition += requestedExtrusionAmount;

                                          virtualExtruderPosition = moveArg; // because moveArg == (virtualExtruderPosition + requestedExtrusionAmount)

                                          "I'm not saying that you are wrong - I'm just trying to fit it into my real world simulated experience."

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