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

    Bigger gantry printer: Lagging and stuttering when printing

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    3
    4
    161
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic was forked from Big gantry printer: Lagging and stuttering when printing droftarts
    This topic has been deleted. Only users with topic management privileges can see it.
    • Dutchprintingundefined
      Dutchprinting
      last edited by Dutchprinting

      @sbNielsen @dc42 @T3P3Tony @droftarts Hi guys, i know this topic is pretty old but i'm struggling with the same thing. i also have a (slightly bigger) 3d printer (picture A below) and i am scared to raise the acceleration and jerk settings. One thing i know, right now they are not correct. Even at the slight curves it slows down alot to make the curve and leaves artifacts. (picture B).

      The problem is if the accelaration / jerk gets too high in certain situations (when the Z axis has to come to a stop from a going-down movement) if the forces are too high the motors will skip or worse... the whole gantry drops down. The 4 motors on the gantry/bridge are nema42 (32nm) and there is 100kg per side counter-weight on the gantry. That makes sure the likelyhood of this happening less but it has happened to me in the past. Now we have changed the motors to the big 32nm ones but i'm still scared.

      So long story short, i dont mind it slowing down a bit, i do mind it stuttering, i must have the values wrong.
      i hope somebody can help me / advise me.

      info:
      i am printing at 85mm/s
      i am printing in a 45 degree angle
      sliced with cura (already spent alot of time with resolution settings etc.) (using custom post processor for 45degrees)
      NOTE: i print in 45 degree angle with a 'normal' printer, this means for a diagonal line / curve i'm moving all 3 axis at the same time.

      A: The printer
      Foto 23-09-2023 17 10 04.jpg

      B: Artifacts
      Afbeelding van WhatsApp op 2025-03-30 om 12.39.43_faf84f9b.jpg

      C; config

      ;!!!DRIVE-MAPPING!!!
      M584 X44.0 Y0.0:54.0 Z40.0:41.0:42.0:43.0 E55.0    ;NEW
      M92 X22.63 Y113.15 Z113.15 E50 U600   ;NEW		
      M350 X16 Y8 Z16 U16 E16 I0   ;NEW
      
      M566 X500.00 Y250.00 Z250.00 E9000		; set maximum instantaneous speed changes JERK (mm/min) 
      M203 X10000.00 Y4200.00 Z4200.00 E1000000000	; set maximum speeds (mm/min) ||1500mm/m = 25mm's || 6000 = 100 || 9000 = 150 || 
      M201 X250.00 Y75.00 Z75.00  E6000		; set accelerations (mm/s^2)
      
      M906  Y6000  I70              ; set motor currents (mA) and motor idle factor in per cent
      M84 S9999999999999999999999                                                  ; Set idle timeout in seconds
      
      ;BACKLASH COMPENSATION
      M425 X0.25 Y0.25 S10
      
      ; !!!Axis Limits!!!
      M208 X0 Y0 Z0 U0 S1                                     ; set axis minima
      M208 X3500 Y9000 Z1800 U9999999999 S0                                  ; set axis maxima
      

      Proudly running 1x 6CH mainboard, 5x 1HCL, 5x 1XD at 3.5b4 on my very large format 3D pinter.

      droftartsundefined 1 Reply Last reply Reply Quote 0
      • droftartsundefined
        droftarts administrators @Dutchprinting
        last edited by

        @Dutchprinting I've created a separate thread for this, as while it's similar to the original thread, that is marked as solved, and the fix is likely to be very different on a machine of this size. Please can you send M122 and post the response, so we know what hardware and firmware version you are using.

        Ian

        Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

        Dutchprintingundefined 1 Reply Last reply Reply Quote 0
        • Dutchprintingundefined
          Dutchprinting @droftarts
          last edited by Dutchprinting

          @droftarts Hi ian, thank you for your swift response. Here is the m122

          Duet 6ch mainboard
          4x duet 1xd for the bridge/gantry
          1x 1XD for X-axis
          1x 1XD for extruder
          1x 1HCL for Y-motor (other one on mainboard for now)
          firmware: 3.5b4

          i am actually printing at the moment and shot the next video for reference, i will make another one when it has a longer perimiter. (dont mind the wobbly hot air tubes)
          https://www.dropbox.com/scl/fi/ipg2zb2h06mb7aswqh766/Video-30-03-2025-14-35-05.mov?rlkey=4mfreacwh6p62th9tp045yr8e&st=y9515bpx&dl=0

          m122
          === Diagnostics ===
          RepRapFirmware for Duet 3 MB6HC version 3.5.0-beta.4 (2023-06-08 23:41:30) running on Duet 3 MB6HC v1.02 or later (standalone mode)
          Board ID: 08DJM-956BA-NA3TN-6J9D0-3SD6Q-1BB2T
          Used output buffers: 3 of 40 (36 max)
          === RTOS ===
          Static ram: 155012
          Dynamic ram: 120548 of which 204 recycled
          Never used RAM 67228, free system stack 136 words
          Tasks: NETWORK(1,ready,39.6%,169) ETHERNET(5,nWait,0.2%,314) HEAT(3,nWait,0.0%,353) Move(4,nWait,0.0%,243) CanReceiv(6,nWait,0.1%,771) CanSender(5,nWait,0.0%,330) CanClock(7,delaying,0.0%,349) TMC(4,nWait,8.2%,59) MAIN(1,running,51.8%,444) IDLE(0,ready,0.0%,30), total 100.0%
          Owned mutexes:
          === Platform ===
          Last reset 01:05:48 ago, cause: software
          Last software reset at 2025-03-30 12:28, reason: User, Gcodes spinning, available RAM 68104, slot 1
          Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0044a000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a
          Error status: 0x00
          Aux0 errors 0,0,1
          MCU temperature: min 25.0, current 35.1, max 35.6
          Supply voltage: min 47.6, current 47.8, max 48.2, under voltage events: 0, over voltage events: 0, power good: yes
          12V rail voltage: min 12.0, current 12.2, max 12.5, under voltage events: 0
          Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/1936/1936, gc cycles 10
          Events: 0 queued, 0 completed
          Driver 0: standstill, SG min 0, mspos 368, reads 9781, writes 21 timeouts 0
          Driver 1: standstill, SG min n/a, mspos 8, reads 9791, writes 11 timeouts 0
          Driver 2: standstill, SG min n/a, mspos 8, reads 9791, writes 11 timeouts 0
          Driver 3: standstill, SG min n/a, mspos 8, reads 9792, writes 11 timeouts 0
          Driver 4: standstill, SG min n/a, mspos 8, reads 9792, writes 11 timeouts 0
          Driver 5: standstill, SG min n/a, mspos 8, reads 9792, writes 11 timeouts 0
          Date/time: 2025-03-30 13:34:04
          Slowest loop: 130.70ms; fastest: 0.05ms
          === Storage ===
          Free file entries: 19
          SD card 0 detected, interface speed: 25.0MBytes/sec
          SD card longest read time 7.2ms, write time 67.0ms, max retries 0
          === Move ===
          DMs created 125, segments created 6, maxWait 3426434ms, bed compensation in use: none, height map offset 0.000, ebfmin 0.00, ebfmax 0.00
          next step interrupt due in 30425683 ticks, disabled
          === DDARing 0 ===
          Scheduled moves 50, completed 47, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 17], CDDA state 3
          === DDARing 1 ===
          Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
          === Heat ===
          Bed heaters -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
          === 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
          USB is idle in state(s) 0
          Aux is assembling a command 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 doing "M42 P6 S0" in state(s) 0 0, running macro
          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 0x80000003
          Queue 0 has 'M42 P4 S0' for move 49
          Queue 0 has 'M42 P6 S0' for move 50
          Queue 0 has 'M42 P5 S0' for move 50
          Queue 0 has 'M42 P4 S0' for move 50
          Queue 0 has 'M42 P6 S0' for move 50
          Queue 0 has 'M42 P5 S0' for move 50
          Queue 0 has 'M42 P4 S0' for move 50
          Queue 0 has 'M42 P6 S0' for move 50
          Queue 0 has 'M42 P5 S0' for move 50
          Queue 0 has 'M42 P4 S0' for move 50
          Queue 0 has 'M42 P6 S0' for move 50
          Queue 0 has 'M42 P5 S0' for move 50
          Queue 0 has 'M42 P4 S0' for move 50
          Queue 0 has 'M42 P6 S0' for move 50
          Queue 0 has 'M42 P5 S0' for move 50
          Queue 0 has 'M42 P4 S0' for move 50
          Q1 segments left 0, axes/extruders owned 0x0000000
          Code queue 1 is empty
          === CAN ===
          Messages queued 20007, received 300264, lost 0, boc 0
          Longest wait 1ms for reply type 6041, peak Tx sync delay 281, free buffers 50 (min 46), ts 19744/19743/0
          Tx timeouts 0,0,0,0,0,0
          === Network ===
          Slowest loop: 1158.85ms; fastest: 0.03ms
          Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
          HTTP sessions: 2 of 8
          = Ethernet =
          Interface state: active
          Error counts: 0 0 0 1 0 0
          Socket states: 5 2 2 2 2 0 0 0
          = WiFi =
          Interface state: disabled
          Module is disabled
          Failed messages: pending 0, notready 0, noresp 0
          Socket states: 0 0 0 0 0 0 0 0
          === Multicast handler ===
          Responder is inactive, messages received 0, responses 0
          

          Proudly running 1x 6CH mainboard, 5x 1HCL, 5x 1XD at 3.5b4 on my very large format 3D pinter.

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

            @Dutchprinting if long straight moves are jerky, this usually means that you are using mesh bed compensation and the maximum Z instantaneous speed change set in M566 or M205 is too low to permit the required reversal of Z direction to apply mesh bed compensation.

            If straight moves are K but curves are not OK, this probably means that the X and/or Y instantaneous speed change allowed is too low to follow the segments that the slicer generated for the curve at the speed requested by the slicer.

            If the nature of your printer and print requires the Z axis to move other than for the purpose of implementing mesh bed compensation, then I guess the Z axis M566 setting may limit the speed even without mesh bed compensation being used.

            From your config.g file I see that your M566 settings for Y and Z are rather low. We normally suggest at least 600 for X and Y.

            Bear in mind that the resolution of the curve in the GCode file also has an effect. If the curve is made from longer segments, the direction change will be greater at each point between segment boundaries, so the slowdown will be greater. If the GCode was sliced from an STL model then the segment length will have been set in the STL file; so if you want shorter segments then you may need to go back to the program that generated the STL file and reconfigure it to generate shorter output segments (i.e. higher resolution output).

            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
            • First post
              Last post
            Unless otherwise noted, all forum content is licensed under CC-BY-SA