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

RRF 3.1.1 M572 breaks M591

Scheduled Pinned Locked Moved Unsolved
General Discussion
5
33
1.3k
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
    gnydick
    last edited by 20 Jun 2020, 02:36

    Since installing a DIY pulsing filament sensor, it's been an awesome experience watching that little thing work. It's been totally trustworthy, working perfectly.

    As soon as I enabled pressure advance, the filament sensing function would pause the printer at each calculation cycle.

    undefined 1 Reply Last reply 21 Jun 2020, 22:17 Reply Quote 0
    • undefined
      gnydick @gnydick
      last edited by 21 Jun 2020, 22:17

      @dc42 gentle bump

      1 Reply Last reply Reply Quote 1
      • undefined
        T3P3Tony administrators
        last edited by 22 Jun 2020, 17:12

        please post the settings you are using for both PA and filament sensing.

        www.duet3d.com

        1 Reply Last reply Reply Quote 0
        • undefined
          dc42 administrators
          last edited by 22 Jun 2020, 21:21

          When you enable pressure advance, depending on the speed and acceleration you use, the extruder may reverse during the last part of a printing move. So it's important that the filament monitor senses the direction of motion and passes it to the Duet along with the amount of motion, as the Duet3D filament monitors do. If the filament monitor just sends motion pulses with no direction information, then the reverse motion will be misinterpreted as forward motion; so it will appear to RRF that there is too much filament motion. Is this what is happening?

          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 2 Replies Last reply 22 Jun 2020, 22:44 Reply Quote 0
          • undefined
            gnydick @dc42
            last edited by 22 Jun 2020, 22:44

            @dc42 It could, I'll have to see if it is a "too low" extrusion fault and let you know.

            1 Reply Last reply Reply Quote 0
            • undefined
              gnydick @dc42
              last edited by 26 Jun 2020, 01:59

              @dc42 with A1, only forward extrusions will be measured, so why would retractions from M572 register at all? Is forward and reverse detected at the sensor instead of positive or negative extrusion?

              1 Reply Last reply Reply Quote 0
              • undefined
                dc42 administrators
                last edited by 26 Jun 2020, 08:50

                A1 means that extrusion will not be measured during retraction moves. it will still be measured during the whole of a move in which extrusion is commanded, even if pressure advance causes the end of that move to turn into retraction.

                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 26 Jun 2020, 20:07 Reply Quote 0
                • undefined
                  gnydick @dc42
                  last edited by 26 Jun 2020, 20:07

                  @dc42 right, so firmware induced (M572) retractions aren't identified by the M591 code?

                  If there is pulsing sensor, that would break things as it would see extra extrusion.

                  If there is a directional sensor then that would break also as it would see extra retraction.

                  So, shouldn't the M591 code be aware of what M572 is doing?

                  undefined 1 Reply Last reply 26 Jun 2020, 23:01 Reply Quote 0
                  • undefined
                    dc42 administrators @gnydick
                    last edited by 26 Jun 2020, 23:01

                    @gnydick said in RRF 3.1.1 M572 breaks M591:

                    @dc42 right, so firmware induced (M572) retractions aren't identified by the M591 code?

                    Correct, because this type of retraction isn't a separate move. It happens when pressure advance causes the extrusion speed to decelerate to zero and then go negative before the end of an extruding move.

                    If there is pulsing sensor, that would break things as it would see extra extrusion.

                    Correct, unless the resolution of the sensor is low enough that these short retractions won't usually cause a pulse.

                    If there is a directional sensor then that would break also as it would see extra retraction.

                    The extra retraction is balanced by extra extrusion elsewhere at the start of the move or a previous move, so the total extrusion doesn't change. When the sensor sends a position report, the firmware captures the microstep count of the extruder, so that it knows the exact filament movement up to that point.

                    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 2 Replies Last reply 27 Jun 2020, 01:01 Reply Quote 0
                    • undefined
                      gnydick @dc42
                      last edited by 27 Jun 2020, 01:01

                      @dc42 Are you saying that when pressure advance is in use that every triggered retraction while be followed by effectively an "extra restart length" (to borrow a term from slicers)?

                      Also, I would be interested in seeing some telemetry from the board that compares the length of pressure advance retractions vs the extrusion length to see if it's large enough to actually impact the count enough. My range on M591 was from 50% to 150% acceptable. I can't imaging that pressure advance would bump it out of that range.

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        gnydick @dc42
                        last edited by 12 Jul 2020, 03:02

                        @dc42 ..bump..

                        1 observation and 2 questions

                        O: when I use the sensor without PA, and intentionally misconfigure the mm/pulse, it takes quite some time for the print to pause. When PA is enabled, it seems to pause instantly as soon as the first calibration data is returned. I don't believe the extra pulses from PA are causing the problem.

                        Q1: Is it possible to measure the negative extrusions and extra positive extrusion in order to compare it to the non PA extrusion readings?

                        Q2: Is it acceptable to you that the pulsing sensor is incompatible with PA? I know not all features are necessarily compatible with each other, but this seems like a gap to me.

                        undefined 1 Reply Last reply 12 Jul 2020, 14:35 Reply Quote 0
                        • undefined
                          dc42 administrators @gnydick
                          last edited by 12 Jul 2020, 14:35

                          @gnydick said in RRF 3.1.1 M572 breaks M591:

                          O: when I use the sensor without PA, and intentionally misconfigure the mm/pulse, it takes quite some time for the print to pause. When PA is enabled, it seems to pause instantly as soon as the first calibration data is returned. I don't believe the extra pulses from PA are causing the problem.

                          Why don't you think the extra pulses due to PS performing retraction at the end of some moves is causing the problem?

                          Q1: Is it possible to measure the negative extrusions and extra positive extrusion in order to compare it to the non PA extrusion readings?

                          I'm not clear what you mean by this; please explain.

                          Q2: Is it acceptable to you that the pulsing sensor is incompatible with PA? I know not all features are necessarily compatible with each other, but this seems like a gap to me.

                          We designed our own filament monitors to distinguish between forward and backwards motion precisely because we knew that it would otherwise be a problem for a high-resolution filament monitor.

                          Some of the pulse-generating monitors have much lower resolution than our sensors do. Using a low resolution sensor, you would be unlucky to get an extra pulse when there is a short retraction.

                          One way I can think of to avoid the problem is to have the firmware ignore moves that end with retraction when comparing motion reported by a pulse-generating filament monitor. That would mean that when the printer is doing lots of short moves that end in retraction, such as zigzag infill, the filament monitor would in effect not be operating.

                          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 2 Replies Last reply 14 Jul 2020, 00:08 Reply Quote 0
                          • undefined
                            gnydick @dc42
                            last edited by 14 Jul 2020, 00:08

                            @dc42

                            Re: observation:

                            I think it's not the PA extra moves because of what I stated in my observation. On top of that, let's take an example of what I think is an exaggerated scenario.

                            If my print is 60,000mm long, and 400 layers, that's roughly 150mm per layer. Let's say there are 20 PA induced moves per layer at 1mm in each direction, that's an extra 40mm of pulses. That's just above 25% too many pulses. My settings were at 50% minimum and 150% maximum. Since you said those numbers are pulses/mm %-age, then my hypothetical print should have been well within the limits.

                            Re: Q1:

                            Is it possible to record the PA induced movements and send them to a file or console or something? I have to imagine that part of your development must include the ability to debug what's actually happening?

                            undefined 1 Reply Last reply 14 Jul 2020, 07:45 Reply Quote 0
                            • undefined
                              dc42 administrators @gnydick
                              last edited by 14 Jul 2020, 07:45

                              @gnydick said in RRF 3.1.1 M572 breaks M591:

                              Is it possible to record the PA induced movements and send them to a file or console or something? I have to imagine that part of your development must include the ability to debug what's actually happening?

                              It's possible to get a record of all movements by enabling both Move and DDA debugging using M111. This causes all DDAs to be output to USB. You can tell if PA reverses the movement because if it does, reverseStartStep in the extruder DDA will be less than totalSteps. However, sending so much data to USB will slow the print down when there are short segments.

                              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 14 Jul 2020, 23:31 Reply Quote 0
                              • undefined
                                gnydick @dc42
                                last edited by 14 Jul 2020, 23:31

                                @dc42 that's cool, I don't mind if it slows down. How do I safely connect to usb without creating a ground loop?

                                undefined 1 Reply Last reply 5 Aug 2020, 20:21 Reply Quote 0
                                • ?
                                  A Former User
                                  last edited by 14 Jul 2020, 23:34

                                  could try asking google?
                                  https://www.google.com/search?q=duet+ground+loop

                                  tl;dr get an usb isolator

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    gnydick @dc42
                                    last edited by 14 Jul 2020, 23:35

                                    @dc42 I can also change my sensor to be much lower resolution, btw

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      gnydick @gnydick
                                      last edited by 5 Aug 2020, 20:21

                                      @dc42 bump, USB ground loop?

                                      1 Reply Last reply Reply Quote 0
                                      • Phaedruxundefined
                                        Phaedrux Moderator
                                        last edited by 5 Aug 2020, 21:36

                                        To avoid a ground loop use a laptop running on battery or if using a PC ensure you're on the same outlet as the printer.

                                        Or get a USB isolator.

                                        More info here: https://duet3d.dozuki.com/Wiki/USB_ground_loops

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        undefined 1 Reply Last reply 8 Aug 2020, 04:56 Reply Quote 0
                                        • undefined
                                          gnydick @Phaedrux
                                          last edited by 8 Aug 2020, 04:56

                                          @Phaedrux thanks!

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