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

    Input shaper causing stutters and blobs on curves RRF3.5.0-rc.1

    Scheduled Pinned Locked Moved Solved
    Beta Firmware
    10
    52
    3.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.
    • rex_slundefined
      rex_sl @A Former User
      last edited by rex_sl

      @Threepwood

      Will try it this evening. Never ever had i tried it without your informations❤️ Will increase double amount like 20-40-80….. hope it works

      1 Reply Last reply Reply Quote 0
      • Arminasundefined
        Arminas @A Former User
        last edited by

        @Threepwood let us know if it works in a long term. Because I had this issue not with every print.

        Adrian52undefined 1 Reply Last reply Reply Quote 0
        • Adrian52undefined
          Adrian52 @Arminas
          last edited by

          @Arminas I reported a similar problem with my delta (https://forum.duet3d.com/topic/33508/3-5-0rc1-input-shaping-poor-quality/1), and found that L100 works well for me. Perhaps the default L value should be higher, at least for 3.5rc1 on.?

          Arminasundefined 1 Reply Last reply Reply Quote 0
          • Arminasundefined
            Arminas @Adrian52
            last edited by

            @Adrian52 I see, looks like it might help, since a few people managed to eliminate this issue with L parameter. But I don't really understand the L parameter - should I calculate it depending on my printer's acceleration settings?

            A Former User? 1 Reply Last reply Reply Quote 0
            • A Former User?
              A Former User @Arminas
              last edited by

              @Arminas The way I decided on an L value was to create an STL that consistently exhibits the blobs and print it with settings which do the same. I started the print and listened for the knock sounds the printhead makes when stopping. I started inputting values into the console "M593 P"zvdd" F49 Lnnn" and slowly increased the number until the problem went away. For me it was at 500, but I added a margin.

              Not sure if the M201 acceleration values are linked to this problem, but I am using 10000 acceleration for X and Y.

              As far as I understand it, the L value will not be enabled on a corner if the overall accelleration is reduced below the value set.

              From my testing so far, I can't see any difference in ringing with L800. But that may only apply to an M201 of 10000. @dc42 might be able to clarify.

              1 Reply Last reply Reply Quote 0
              • rex_slundefined
                rex_sl @A Former User
                last edited by rex_sl

                @Threepwood

                News.

                Tried 3 different shaper on 60hz 0.1 and l20-1000. stuttering getting worse over 600 and on 1000 i get emergency shutdown from the board.

                So still no working shaper for me

                Edit

                Switched back to rrf 3.4.6 and running zvddd 60hz 0.1 l250 without any blobs and nearly perfekt print

                A Former User? 1 Reply Last reply Reply Quote 0
                • Phaedruxundefined Phaedrux marked this topic as a question
                • A Former User?
                  A Former User @rex_sl
                  last edited by

                  @rex_sl Frustrating that in your case that you weren't able to get things working well.

                  I found moving to L100 from the default 10 seemed to make the problem worse for me. I did try up to L1500 in a ringing test, but didn't have any issues with shutdown.

                  It is probably better to stick with the stable release for now. But at least we have added some documentation for development.

                  rex_slundefined 1 Reply Last reply Reply Quote 0
                  • rex_slundefined
                    rex_sl @A Former User
                    last edited by rex_sl

                    @Threepwood

                    Thats part of testing new releases. After thinking about it for 2 days there must be a user missinterpretatation of the shaper readings. We have to concentrate on 40-80 Hz and dont have to cancel over 80hz. Maybe the total wrong shaper and way too much damping on the end.

                    I will take more tests with a printer i dont need for daily work. And ordered a raspberry to look at klipper.

                    Now iam at

                    Mzv 60hz 0.1 l500
                    M566 x500 y500 e600
                    M201 x8000 y8000 e3000
                    Max speed 20000

                    1 Reply Last reply Reply Quote 0
                    • A Former User?
                      A Former User
                      last edited by A Former User

                      Important update. I've gone back to 3.4.6 (Edit: I hadn't gone back to 3.4.6. See below) and removed the L value from M593 and I am getting blobbing and jolting of the print head again. No idea what's going on here.

                      Below are the settings I'm using.

                      M566 X600.00 Y600.00 Z300.00 E300.00                   ; set maximum instantaneous speed changes (mm/min)
                      M203 X27000.00 Y27000.00 Z6000.00 E6000.00             ; set maximum speeds (mm/min)
                      M201 X10000.00 Y10000.00 Z2000.00 E10000.00            ; set accelerations (mm/s^2)cent
                      M572 D0 S0.028                                         ; set pressure advance value (slows down very high speed prints)
                      M593 P"mzv" F66                                        ; use MZV input shaping to cancel ringing at 66Hz
                      

                      And these are the settings I used before I installed the new print head and I never noticed and knocking sounds or blobbing.

                      M566 X600.00 Y600.00 Z300.00 E250.00                   ; set maximum instantaneous speed changes (mm/min)
                      M203 X27000.00 Y27000.00 Z12000.00 E800.00             ; set maximum speeds (mm/min)
                      M201 X10000.00 Y10000.00 Z2000.00 E3500.00             ; set accelerations (mm/s^2)
                      M572 D0 S0.032                                         ; set pressure advance value (slows down very high speed prints)
                      M593 P"zvddd" F50                                      ; use ZVDDD input shaping to cancel ringing at 50Hz
                      

                      I've run another blob test and I have to increase the L value to 1300 to stop the blobbing again in 3.4.6.

                      A Former User? 1 Reply Last reply Reply Quote 0
                      • A Former User?
                        A Former User @A Former User
                        last edited by A Former User

                        After printing yet another benchy in OrcaSlicer, I'm still getting blobbing on the chimney. It otherwise looks good. It looks like I might also be getting similar blobs on other sharp corners. These are not seams. The seam is aligned on the back of the chimney from the perspective of this photo.

                        Chimney blobs.jpg

                        This is very frustrating. Weirdly. I didn't get this in SuperSlicer, but I prefer some of the other features in Orca. I feel like all my fixes have been patching the symptoms, but not the root cause.

                        I've checked the speeds and they are exactly the same in Orca and Superslicer.

                        Could this be a limitation on the processor on the Duet 3 Mini 5+ once input shaper and pressure advance are enabled and we print at high speeds with sharp corners? Is there a way to check the CPU utilisation in the object model?

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

                          Post the results of M122 after a print has completed to see if you're overwhelming the MCU, but I suspect it's not the case unless you're also running very high steps per mm.

                          Perhaps share your full config.g

                          Z-Bot CoreXY Build | Thingiverse Profile

                          A Former User? 1 Reply Last reply Reply Quote 0
                          • A Former User?
                            A Former User @Phaedrux
                            last edited by A Former User

                            @Phaedrux Here are the M122 after a blobbing/stuttering print. I have temporarily disabled the M593 L command. It reports 3.5.0-rc.1, but I can confirm that I'm now back on 3.4.6. (Edit: I wasn't back on 3.4.6. See posts below)

                            M122
                            === Diagnostics ===
                            RepRapFirmware for Duet 3 Mini 5+ version 3.5.0-rc.1 (2023-08-31 16:16:56) running on Duet 3 Mini5plus Ethernet (standalone mode)
                            Board ID:
                            Used output buffers: 1 of 40 (32 max)
                            === RTOS ===
                            Static ram: 102836
                            Dynamic ram: 124244 of which 0 recycled
                            Never used RAM 10448, free system stack 130 words
                            Tasks: NETWORK(1,ready,22.8%,139) ETHERNET(5,nWait,0.2%,566) HEAT(3,nWait,0.1%,329) Move(4,nWait,2.8%,258) CanReceiv(6,nWait,0.0%,939) CanSender(5,nWait,0.0%,337) CanClock(7,delaying,0.0%,342) TMC(4,nWait,1.4%,74) MAIN(1,running,71.9%,700) IDLE(0,ready,0.0%,29) AIN(4,delaying,0.9%,264), total 100.0%
                            Owned mutexes:
                            === Platform ===
                            Last reset 00:05:55 ago, cause: software
                            Last software reset at 2023-10-02 20:05, reason: User, Gcodes spinning, available RAM 14336, slot 1
                            Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
                            Error status: 0x00
                            MCU revision 3, ADC conversions started 355607, completed 355607, timed out 0, errs 0
                            MCU temperature: min 34.8, current 43.3, max 43.6
                            Supply voltage: min 23.7, current 24.2, max 24.3, under voltage events: 0, over voltage events: 0, power good: yes
                            Heap OK, handles allocated/used 99/1, heap memory allocated/used/recyclable 2048/24/0, gc cycles 0
                            Events: 0 queued, 0 completed
                            Driver 0: standstill, SG min 0, read errors 0, write errors 0, ifcnt 30, reads 22271, writes 3, timeouts 0, DMA errors 0, CC errors 0
                            Driver 1: standstill, SG min 0, read errors 0, write errors 0, ifcnt 30, reads 22273, writes 1, timeouts 0, DMA errors 0, CC errors 0
                            Driver 2: standstill, SG min 0, read errors 0, write errors 0, ifcnt 30, reads 22272, writes 1, timeouts 0, DMA errors 0, CC errors 0
                            Driver 3: standstill, SG min 0, read errors 0, write errors 0, ifcnt 36, reads 22272, writes 1, timeouts 0, DMA errors 0, CC errors 0
                            Driver 4: standstill, SG min 0, read errors 0, write errors 0, ifcnt 36, reads 22273, writes 1, timeouts 0, DMA errors 0, CC errors 0
                            Driver 5: standstill, SG min 0, read errors 0, write errors 0, ifcnt 36, reads 22272, writes 1, timeouts 0, DMA errors 0, CC errors 0
                            Driver 6: standstill, SG min 0, read errors 0, write errors 0, ifcnt 36, reads 22272, writes 1, timeouts 0, DMA errors 0, CC errors 0
                            Date/time: 2023-10-02 20:11:25
                            Cache data hit count 515038510
                            Slowest loop: 20.53ms; fastest: 0.11ms
                            === Storage ===
                            Free file entries: 18
                            SD card 0 detected, interface speed: 22.5MBytes/sec
                            SD card longest read time 4.2ms, write time 1.1ms, max retries 0
                            === Move ===
                            DMs created 83, segments created 43, maxWait 67678ms, bed compensation in use: mesh, height map offset 0.000, ebfmin -1.00, ebfmax 1.00
                            no step interrupt scheduled
                            Moves shaped first try 555, on retry 0, too short 1781, wrong shape 5079, maybepossible 1568
                            === DDARing 0 ===
                            Scheduled moves 13275, completed 13275, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                            === DDARing 1 ===
                            Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                            === Heat ===
                            Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
                            Heater 0 is on, I-accum = 0.4
                            Heater 1 is on, I-accum = 0.6
                            === GCodes ===
                            Movement locks held by null, null
                            HTTP is idle in state(s) 0
                            Telnet is idle in state(s) 0
                            File is idle in state(s) 0, sync state 1
                            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
                            File2 is idle in state(s) 0
                            Queue2 is idle in state(s) 0
                            Q0 segments left 0, axes/extruders owned 0x0000803
                            Code queue 0 is empty
                            Q1 segments left 0, axes/extruders owned 0x0000000
                            Code queue 1 is empty
                            === Filament sensors ===
                            Extruder 0: pos 325.90, errs: frame 0 parity 0 ovrun 0 pol 0 ovdue 0
                            === CAN ===
                            Messages queued 2205, received 0, lost 0, boc 0
                            Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 26 (min 26), ts 1225/0/0
                            Tx timeouts 0,0,1225,0,0,980 last cancelled message type 30 dest 127
                            === Network ===
                            Slowest loop: 11.83ms; fastest: 0.04ms
                            Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
                            HTTP sessions: 1 of 8
                            = Ethernet =
                            Interface state: active
                            Error counts: 0 0 0 0 0 0
                            Socket states: 5 2 2 2 2 0 0 0
                            
                            G90                                                    ; send absolute coordinates...
                            M83                                                    ; ...but relative extruder moves
                            M550 P"Voron"                                          ; set printer name
                            M669 K1                                                ; select CoreXY mode
                            M950 E1 C"io3.out" T1
                            M950 E0 C"LED" T2
                            M150 E0 R25 U50 B127 W0 S19		               ; set LED main lighting colours
                            M918 P2 E-4 F2000000                                   ; configure direct-connect display
                            M150 E1 R255 U255 B0 S3                                ; set screen LED colours
                            M150 E1 R18 U21 B0 S2
                            
                            ; Network
                            M551 P
                            M552 P0.0.0.0 S1                                       ; enable network and acquire dynamic address via DHCP
                            M586 P0 S1                                             ; enable HTTP
                            M586 P1 S0                                             ; disable FTP
                            M586 P2 S0                                             ; disable Telnet
                            
                            ; Drives
                            M569 P0.2 S1                                           ; physical drive 0.2 goes forwards
                            M569 P0.1 S1                                           ; physical drive 0.1 goes forwards
                            M569 P0.3 S1                                           ; physical drive 0.3 goes forwards
                            M569 P0.0 S0                                           ; physical drive 0.0 goes forwards
                            M584 X0.2 Y0.1 Z0.3:4:5:6 E0.0                         ; set drive mapping
                            M350 X16 Y16 Z16 E16 I1                                ; configure microstepping with interpolation
                            M92 X80.00 Y80.00 Z400.00 E713.00                      ; set steps per mm
                            M566 X600.00 Y600.00 Z300.00 E300.00                   ; set maximum instantaneous speed changes (mm/min)
                            M203 X27000.00 Y27000.00 Z6000.00 E6000.00             ; set maximum speeds (mm/min)
                            M201 X10000.00 Y10000.00 Z2000.00 E10000.00            ; set accelerations (mm/s^2)
                            M906 X1700 Y1700 Z1400 E800 I70                        ; set motor currents (mA) and motor idle factor in per cent
                            M84 S1800                                              ; Set idle timeout
                            
                            ; Axis Limits
                            M208 X0 Y0 Z0 S1                                       ; set axis minima
                            M208 X300 Y300 Z250 S0                                 ; set axis maxima
                            
                            ; Endstops
                            M574 X2 S1 P"io5.in"                                   ; configure active-high endstop for high end on X via pin io5.in
                            M574 Y2 S1 P"io6.in"                                   ; configure active-high endstop for high end on Y via pin io6.in
                            M574 Z1 S2                                             ; configure Z-probe endstop for low end on Z
                            
                            ; Z-Probe
                            M558 P5 C"io4.in" H5 F800 T27000                       ; set Z probe type and the dive height + speeds
                            G31 P1 X0 Y-24 Z2.26                                   ; set Z probe trigger value, offset and trigger height
                            M557 X24:276 Y24:276 S14                               ; define mesh grid
                            
                            ; Heaters
                            M308 S0 P"temp1" Y"thermistor" T100000 B4582 C1.013e-7 ; configure sensor 0 as thermistor on pin temp1
                            M950 H0 C"out0" T0 Q10                                 ; create bed heater output on out0 and map it to sensor 0
                            M307 H0 B0 S0.90                                       ; disable bang-bang mode for the bed heater and set PWM limit
                            M140 H0                                                ; map heated bed to heater 0
                            M143 H0 S135                                           ; set temperature limit for heater 0 to 135C
                            M570 H0 P10                                            ; allow 10 seconds before heater fault
                            M308 S1 P"temp0" Y"pt1000"                             ; configure sensor 1 as PT1000 on pin temp0
                            M950 H1 C"out1" T1                                     ; create nozzle heater output on out1 and map it to sensor 1
                            M307 H1 B0 S0.80                                       ; disable bang-bang mode for heater and set PWM limit
                            M143 H1 S305                                           ; set temperature limit for heater 1 to 305C
                            M308 S2 P"temp2" Y"thermistor" T100000 B4582 C1.013e-7 
                            M308 S2 A"Chamber"
                            
                            ; Fans
                            M950 F0 C"out6" Q2000                                  ; create fan 0 on pin out6 and set its frequency
                            M106 P0 C"Part fan" S0 H-1 L0.15                       ; set fan 0 value. Thermostatic control is turned on
                            M950 F1 C"!out3+out3.tach" Q25000                      ; create fan 3 on pin out3 and set its frequency
                            M106 P1 X0.7 H1 T55 C"Hotend radiator fan"             ; set fan 3 value. Thermostatic control is turned on
                            M950 F2 C"out4" Q60                                    ; create fan 2 on pin out4 and set its frequency
                            M106 P2 S0 H0 T60 C"Filter fan"                        ; set fan 2 value. Theromostatic control is turned on
                            
                            
                            ; Tools
                            M563 P0 S"Hotend" D0 H1 F0                             ; define tool 0
                            G10 P0 X0 Y0 Z0                                        ; set tool 0 axis offsets
                            G10 P0 R0 S0                                           ; set initial tool 0 active and standby temperatures to 0C
                            
                            ; Miscellaneous
                            M501                                                   ; load saved parameters from non-volatile memory
                            T0                                                     ; select first tool
                            
                            M569 P0 D2
                            M569 P1 D2
                            M569 P2 D2
                            M569 P3 D3
                            M569 P4 D3
                            M569 P5 D3
                            M569 P6 D3
                            
                            M572 D0 S0.028                                         ; set pressure advance value
                            
                            M671 X-46:-46:345:345 Y9:368:368:9 S20	               ; Z leadscrews positions
                            
                            M376 H2                                                ; set mesh compensation height limit to 2mm during a print
                            
                            ;G4 S1												   ; 1 second pause to allow accelerometer to wake
                            ;M955 P0 C"io2.out+io2.in" I60						   ; configure accelerometer
                            
                            M593 P"mzv" F66 ;L3000                                  ; use MZV input shaping to cancel ringing at 66Hz
                            
                            M591 D0 P3 C"io0.in" S1 L25.42 R40:300 E40 A0          ; filament sensing
                            
                            ;OLD ;M592 D0 A-0.00597 B0.00135                             ; Configure non-linear extrusion
                            
                            1 Reply Last reply Reply Quote 0
                            • A Former User?
                              A Former User
                              last edited by A Former User

                              I've noticed something else which I think is related. (TLDR; This problem also seems to be causing skipping steps due to the violent movement.)

                              When I ran the blob test last, I started missing steps on X and Y. Which is very weird because I'm using the same acceleration and jerk as I have done for months, and I have just reduced the X carriage from about 1100g to 555g.

                              Well, I thought I would find a lower M201 and M566 value that doesn't skip. Obviously, none of it really makes any sense, since I've reduced my mass by half.

                              I didn't want to waste more plastic, so I removed the heat up from the same gcode file and set things moving. Which of course sends constant "Warning: Tool 0 was not driven because its heater temperatures were not high enough or it has a heater fault" but stills sends all X, Y and Z movement commands.

                              It never skipped.

                              It seems that as soon as extrusion is added into the calculations, not only does the print head stop for a fraction of a second repeatedly, but these movements are not staying within the jerk/acceleration limits given.

                              It seems something is not playing right between my extrusion settings and my X and Y commands.

                              I didn't have any issues before I moved over to 3.5.0-rc.1. I have flashed back to 3.4.6. Could there be residual parts of 3.5.0-rc.1 left on the firmware?

                              gloomyandyundefined 1 Reply Last reply Reply Quote 0
                              • gloomyandyundefined
                                gloomyandy @A Former User
                                last edited by

                                @Threepwood Are you 100% sure you have gone back to 3.4.6? The M122 you posted earler showed 3.5. If M122 shows 3.5 then you are running 3.5.

                                There is no carry over from "previous" firmware installs, the only thing that will carry over is any changes you made to your config.g files. You seem to be running with a relatively low extruder jerk setting, you may want to try increasing that.

                                A Former User? 1 Reply Last reply Reply Quote 0
                                • A Former User?
                                  A Former User @gloomyandy
                                  last edited by A Former User

                                  @gloomyandy As far as I can tell. Edit: Oh hang on. I just realised, does DWC not come with RRF? I think that's where I've gone wrong.

                                  7579933d-4fb2-4264-9de5-6aa8e04c3440-image.png

                                  015804c2-0a80-4100-b435-fefaefa64037-image.png
                                  5d8d2480-fcf1-4f88-9cba-42db89b1ccf6-image.png

                                  I tried increasing extruder jerk, but once I went above about 450, I started getting really bad extrusion problems. Huge holes in test prints and overall only extruding about 20% of what I should be getting. No idea what was going on with that. I'm running a Hextrudort and Goliath from VZbot, so I would expect to be able to go higher. Once I get all these problems sorted, I'll try increasing it again.

                                  A Former User? gloomyandyundefined 2 Replies Last reply Reply Quote 0
                                  • A Former User?
                                    A Former User @A Former User
                                    last edited by

                                    @Threepwood Okay now I'm back on 3.4.6 RRF, not just DWC.

                                    1 Reply Last reply Reply Quote 0
                                    • gloomyandyundefined
                                      gloomyandy @A Former User
                                      last edited by

                                      @Threepwood None of those are showing the version number of the actual firmware. You need to look in the printer specific section of DWC or just run M122 in the console. Just to be clear DWC is not the same as RRF, they are two different components.

                                      1 Reply Last reply Reply Quote 1
                                      • A Former User?
                                        A Former User
                                        last edited by

                                        Now that I am actually back on 3.4.6. My problems seem to be gone again. Thanks @gloomyandy

                                        Hopefully the next release of 3.5.0 will solve all these issues.

                                        Arminasundefined 1 Reply Last reply Reply Quote 1
                                        • Arminasundefined
                                          Arminas @A Former User
                                          last edited by Arminas

                                          @Threepwood I had some issues with jerk settings today. I have increased it to 1800 and I had messed up print (I had some XY movement problems of round object perimeter and have found that it's caused by pressure advance and not high enough jerk), but the movement got even worse. Lowered to 600 and looks good for now. The only thing I am really missing right now is some explanation of correlation between acceleration and jerk settings 😄

                                          A Former User? 1 Reply Last reply Reply Quote 0
                                          • A Former User?
                                            A Former User @Arminas
                                            last edited by

                                            @Arminas Are you talking about extruder jerk?

                                            I've just run a test with increasing extruder jerk values from 300 to 1400. I'm getting gaps in the print from 600 to 1400, but they don't get any worse between 600 and 1400. There was no clicking or anything from the extruder either.

                                            This makes me think that the issue could be related to the extruder jerk allowing X and Y movement speeds/acc/jerk to increase, which is what is really causing the issues. Although, saying that, I think my acceleration and jerk are quite conservative for my Voron/VZbot setup. I am trying to print this test at 300mm/s though.

                                            I'm not sure how to go about finding a good value for extruder jerk and acceleration. I've read people on here using 3600 extruder jerk.

                                            Should I keep pushing it and listen for when it starts getting too clicky?

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