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

    Issues with pressure advance since RRF 3.4

    Scheduled Pinned Locked Moved
    General Discussion
    46
    308
    37.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.
    • Argoundefined
      Argo @dc42
      last edited by Argo

      @dc42

      I just flashed RRF 3.4 beta 2 as this is the first beta that mentions input shaping and I assume PA has been rewritten for input shaping.

      Here is the result. PLA, direct extruder (Bondtech LGX) and PA value of 0.068 which is already too high for direct extruder printing PLA in my opinion as you can see in the example below, the infill line is too thin at the end. But the corners are still bulging. It almost looks like PA isn't applied at all for corners compared to RRF 3.3.
      Input shaping was off (for all tests in this thread).

      photo_2022-07-07 16.25.30.jpeg

      M122 right after the test print:

      M122
      === Diagnostics ===
      RepRapFirmware for Duet 3 Mini 5+ version 3.4.0beta2 (2021-08-03 12:43:05) running on Duet 3 Mini5plus WiFi (standalone mode)
      Board ID: W0DS5-R296U-D65J0-40KM6-LU03Z-Z3F72
      Used output buffers: 6 of 40 (40 max)
      === RTOS ===
      Static ram: 102724
      Dynamic ram: 107996 of which 16 recycled
      Never used RAM 27832, free system stack 118 words
      Tasks: NETWORK(ready,10.6%,214) HEAT(delaying,0.0%,343) Move(notifyWait,0.0%,255) CanReceiv(notifyWait,0.0%,773) CanSender(notifyWait,0.0%,369) CanClock(delaying,0.0%,347) TMC(delaying,1.2%,72) MAIN(running,87.3%,432) IDLE(ready,0.0%,29) AIN(delaying,0.8%,264), total 100.0%
      Owned mutexes: WiFi(NETWORK)
      === Platform ===
      Last reset 00:27:44 ago, cause: power up
      Last software reset at 2022-07-07 15:54, reason: User, GCodes spinning, available RAM 31492, slot 1
      Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
      Error status: 0x04
      Aux0 errors 0,0,0
      MCU revision 3, ADC conversions started 1664433, completed 1664432, timed out 0, errs 0
      Step timer max interval 725
      MCU temperature: min 39.3, current 39.3, max 39.6
      Supply voltage: min 24.4, current 24.5, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes
      Heap OK, handles allocated/used 99/1, heap memory allocated/used/recyclable 2048/144/132, gc cycles 0
      Driver 0: position 90080, standstill, SG min/max 0/0, read errors 0, write errors 0, ifcnt 9, reads 54, writes 0, timeouts 0, DMA errors 0
      Driver 1: position 1120, standstill, SG min/max 2/2, read errors 0, write errors 0, ifcnt 27, reads 54, writes 0, timeouts 0, DMA errors 0
      Driver 2: position 16852, standstill, SG min/max 2/2, read errors 0, write errors 0, ifcnt 27, reads 54, writes 0, timeouts 0, DMA errors 0
      Driver 3: position 0, standstill, SG min/max 2/2, read errors 0, write errors 0, ifcnt 28, reads 54, writes 0, timeouts 0, DMA errors 0
      Driver 4: position 0, standstill, SG min/max 0/0, read errors 0, write errors 0, ifcnt 27, reads 54, writes 0, timeouts 0, DMA errors 0
      Driver 5: position 0, standstill, SG min/max 2/2, read errors 0, write errors 0, ifcnt 27, reads 54, writes 0, timeouts 0, DMA errors 0
      Driver 6: position 0, standstill, SG min/max 2/2, read errors 0, write errors 0, ifcnt 27, reads 54, writes 0, timeouts 0, DMA errors 0
      Date/time: 2022-07-07 16:27:48
      Cache data hit count 3022789118
      Slowest loop: 3.08ms; fastest: 0.12ms
      === Storage ===
      Free file entries: 10
      SD card 0 detected, interface speed: 22.5MBytes/sec
      SD card longest read time 0.0ms, write time 0.0ms, max retries 0
      === Move ===
      DMs created 83, segments created 12, maxWait 0ms, bed compensation in use: mesh, comp offset 0.000
      === MainDDARing ===
      Scheduled moves 3313, completed moves 3313, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === AuxDDARing ===
      Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === Heat ===
      Bed heaters = 0 -1, chamberHeaters = -1 -1
      Heater 0 is on, I-accum = 0.2
      Heater 1 is on, I-accum = 0.0
      === GCodes ===
      Segments left: 0
      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
      USB is idle in state(s) 0
      Aux is idle in state(s) 0
      Trigger is idle in state(s) 0
      Queue is idle in state(s) 0
      LCD is idle in state(s) 0
      SBC is idle in state(s) 0
      Daemon is idle in state(s) 0
      Aux2 is idle in state(s) 0
      Autopause is idle in state(s) 0
      Code queue is empty
      === Filament sensors ===
      Extruder 0: no data received
      === CAN ===
      Messages queued 5, received 6, lost 0, longest wait 0ms for reply type 0, peak Tx sync delay 3, free buffers 17 (min 17), ts 3/3/0
      Tx timeouts 0,0,0,0,0,0
      === Network ===
      Slowest loop: 201.07ms; fastest: 0.06ms
      Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
      HTTP sessions: 1 of 8
      - WiFi -
      Network state is active
      WiFi module is connected to access point 
      Failed messages: pending 0, notready 0, noresp 19
      WiFi firmware version 1.26
      WiFi MAC address f0:08:d1:02:e7:b3
      WiFi Vcc 3.36, reset reason Power up
      WiFi flash size 2097152, free heap 24936
      WiFi IP address 192.168.1.120
      WiFi signal strength -72dBm, mode 802.11n, reconnections 0, sleep mode modem
      Clock register 00002002
      Socket states: 0 0 0 0 0 0 0 0
      

      Duet 1LC:

      M122 B121
      Diagnostics for board 121:
      Duet TOOL1LC firmware version 3.4.0beta2 (2021-08-03 10:00:09)
      Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1)
      Never used RAM 2204, free system stack 2719 words
      Tasks: Move(notifyWait,0.0%,99) HEAT(delaying,0.2%,105) CanAsync(notifyWait,0.0%,57) CanRecv(notifyWait,0.1%,74) CanClock(notifyWait,0.0%,65) ACCEL(notifyWait,0.0%,61) TMC(delaying,2.8%,57) MAIN(running,91.9%,352) IDLE(ready,0.0%,27) AIN(delaying,4.9%,142), total 100.0%
      Last reset 00:27:40 ago, cause: power up
      Last software reset time unknown, reason: AssertionFailed, available RAM 3392, slot 0
      Software reset code 0x0120 ICSR 0x00000000 SP 0x2000415c Task  Freestk 129 bad marker
      Stack: 00000544 00022ffc 00019b65 20003134 00016cff 20003134 000163d1 20000ed0 00000000 00000001 00008275 200071c8 200071c8 200071e0 00000000 20000f50 00011647 000223b8 00022474 00021ac8 00019b05 200071c8 200071c8 20000f50 000083ed 200071d8 000009c7
      Driver 0: position 500392, 400.0 steps/mm, standstill, SG min/max 2/2, read errors 0, write errors 0, ifcnt 13, reads 386, writes 0, timeouts 0, DMA errors 0, steps req 0 done 0
      Moves scheduled 2364, completed 2364, in progress 0, hiccups 0, step errors 0, maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0
      Peak sync jitter -1/4, peak Rx sync delay 183, resyncs 0/0, no step interrupt scheduled
      VIN: 24.2V
      MCU temperature: min 34.4C, current 46.0C, max 46.6C
      Ticks since heat task active 49, ADC conversions started 1659491, completed 1659489, timed out 0, errs 0
      Last sensors broadcast 0x00000002 found 1 54 ticks ago, loop time 0
      CAN messages queued 47, send timeouts 0, received 15, lost 0, free buffers 37, min 37, error reg 0
      dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
      Accelerometer detected: yes, status: 00
      I2C bus errors 0, naks 0, other errors 0
      === Filament sensors ===
      Interrupt 4 to 8us, poll 9 to 177us
      Driver 0: pos 339.61, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0
      
      1 Reply Last reply Reply Quote 1
      • Tinchusundefined
        Tinchus
        last edited by

        I will add a little comment here based on my past experience tunning PA: it works very well whilw the requested speed ks close to the real speed. The further you go and the results starts to be less effective. In yor slicer config i can see a perimeter speed of 120mm s, and your infill has 260 mm s. In your pictures i see what it looks like a test cube .
        If that cube is small, you will never reach 120, that would be the requested speed. Firmware will give so ething smaller.
        But later in tbe infill the requested 260 speed will never be reached either but the difference between requeste and real speed will be muuuuuch bigger, so probably you wont bave very good results.
        I would suggest to retune PA with a model that let you reach real values closer to the requested speed and retest to see if there is any difference

        Argoundefined 1 Reply Last reply Reply Quote 1
        • jackantubisundefined
          jackantubis
          last edited by

          I have same kind of issues since 3.4.
          Maybe the Pressure Advance don't have a 3rd order compensation for speed variation, could be a good update.
          Made 4 measurements at different speed, make the equation in excel.
          Can we add this with "Duet programming Gcode" ?

          Argoundefined 1 Reply Last reply Reply Quote 0
          • Argoundefined
            Argo @Tinchus
            last edited by

            @tinchus

            Thanks for your theory but requested speeds are reached.

            1 Reply Last reply Reply Quote 1
            • CCS86undefined
              CCS86
              last edited by

              This is very interesting. I had noticed some of these artifacts too but hadn't pinned it down to PA changes in the 3.4 releases. Good job zeroing in on this!

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

                same experience, lurking for update

                1 Reply Last reply Reply Quote 0
                • CCS86undefined
                  CCS86
                  last edited by

                  Well, that sucked... I tried to downgrade to 3.3 for a back to back print test and that almost destroyed my Mosquito hot end. The hot end fan spooled up with its normal blip, but then slowly wound down to zero at my normal PWM setting. The entire heat sink ended up packed with molten filament and had to be drilled out. The hot end fan won't stay running at any other PWM value than 255.

                  Off topic, but what changed between 3.3 and 3.4 on this? I'm back on 3.4 and it runs fine again.

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

                    @ccs86 How did you have it configured?

                    When a fan is configured as thermostatic using M106, the S parameter is now ignored. If a single T value is given, then when the temperature is above the T parameter the fan will run at the PWM specified by the X (maximum PWM) parameter (default 1.0).

                    From the 3.4 notes.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    jumpedwithbothfeetundefined 1 Reply Last reply Reply Quote 0
                    • Argoundefined
                      Argo @jackantubis
                      last edited by

                      @jackantubis @gnydick @CCS86

                      Could you also please provide some examples? So we can be sure we are having the same issue.

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

                        @argo https://forum.duet3d.com/post/289116

                        gloomyandyundefined 1 Reply Last reply Reply Quote 0
                        • jumpedwithbothfeetundefined
                          jumpedwithbothfeet @Phaedrux
                          last edited by

                          @phaedrux said in Issues with pressure advance since RRF 3.4:

                          @ccs86 How did you have it configured?

                          When a fan is configured as thermostatic using M106, the S parameter is now ignored. If a single T value is given, then when the temperature is above the T parameter the fan will run at the PWM specified by the X (maximum PWM) parameter (default 1.0).

                          From the 3.4 notes.

                          Apologies for going off topic, but by that statement M106 in GCode dictionary could very much do with a rewrite 🙂

                          6HC Voron Trident based, 6XD CNC, Mini 5 polar printer

                          1 Reply Last reply Reply Quote 0
                          • gloomyandyundefined
                            gloomyandy @gnydick
                            last edited by

                            @gnydick Can I just check, I think in the your other thread you reported that going back to 3.3 did not make any difference to the results you are seeing? Is that correct or was the regression test you did just to 3.4?

                            gnydickundefined 1 Reply Last reply Reply Quote 0
                            • Argoundefined
                              Argo @dc42
                              last edited by

                              @dc42
                              Have you already had time to look into this or can I provide you with more data/examples...?

                              dc42undefined 1 Reply Last reply Reply Quote 0
                              • Argoundefined
                                Argo
                                last edited by

                                @paanjii2

                                All details are in this thread and in this one: https://forum.duet3d.com/topic/26062/3-4-0beta7-new-input-shaper-disturb-pressure-advance

                                If you want any specific information please ask.

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

                                  @gloomyandy that is correct, didn't see a difference.

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

                                    @argo this is close to the top of my list to look into. What's a good print to test this on - is a hollow square tube sufficient?

                                    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

                                    Argoundefined 1 Reply Last reply Reply Quote 0
                                    • Argoundefined
                                      Argo @dc42
                                      last edited by Argo

                                      @dc42

                                      You could just create a shape box in Prusa Slicer (or similar slicer that can generate shapes) with the following measurements:

                                      X: 50mm
                                      y: 20mm
                                      Z: 5mm

                                      Perimeters: 3
                                      Top Layer: 0
                                      Bottom Layer: 4
                                      Infill: Grid 20%
                                      Layer time goal: 0s (so it does not slow down the print)

                                      My speed settings: https://forum.duet3d.com/post/288649

                                      If you are using a direct drive extruder with PLA a PA value around 0.055 is usually a good value.
                                      I would not print it hollow so you can compare the quality of infill lines and corners.
                                      The issue I'm having is healthy infill lines and bulging corners or sharp(ish) corners but starving infill lines (example in this posting: https://forum.duet3d.com/post/288686).

                                      f926d756-1e69-43aa-9182-493e76b1758a-image.png

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

                                        I confirm there is an issue with pressure advance in RRF 3.4. It works better in 3.3 but I think it is still not quite right. We'll issue another 3.4.2rc release when we have fixed it.

                                        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 6
                                        • dc42undefined
                                          dc42 administrators
                                          last edited by

                                          Further to my previous message: I made a mistake in my test program. Currently I can't see any difference in how PA behaves between 3.3 and 3.4 with input shaping disabled. I will investigate further next week.

                                          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

                                          ctilley79undefined 1 Reply Last reply Reply Quote 1
                                          • ctilley79undefined
                                            ctilley79 @dc42
                                            last edited by

                                            @dc42 Try it with input shaping enabled. A problem people are having is tuning PA after enabling IS.

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