Why does my input shaper not seem to be working.
-
@SanderLPFRG said in Why does my input shaper not seem to be working.:
M566 X900 Y900 E600 Z300 ; set maximum instantaneous speed changes (mm/min)
See my reply here: https://forum.duet3d.com/post/318372
Basically, IS can't smooth out the ringing that happens at low frequencies if the axes jump straight to moving fast, causing ringing, so it's best to reduce jerk. You can increase acceleration to compensate, up to where your motors start skipping.
Ian
-
Would it be an Idea to set jerk to 600 mm/min and acceleration to 10.000 ??
And which type of IS do you recommend?
edit;
I see you recommend 300.However, In the gcode article, I see that high jerk values are only an issue for DAA input shaper. Is this also the case for The newer input shapers in 3.4 and above?
-
@SanderLPFRG I'd set it as low as it can go without causing problems printing curves. I'd guess 300mm/min would be okay. The type of IS you use depends on the frequencies you're seeing.
Ian
-
@droftarts I will try the print now with 10000 accel and 300 jerk.
Also, In the gcode article, I see that high jerk values are only an issue for DAA input shaper. Is this also the case for The newer input shaper types in 3.4 and above?
-
@SanderLPFRG said in Why does my input shaper not seem to be working.:
Also, In the gcode article, I see that high jerk values are only an issue for DAA input shaper. Is this also the case for The newer input shaper types in 3.4 and above?
Yes, from what I've been told by @dc42!
Ian
-
@droftarts
300 jerk, 10000 accel and ZVD IS absolutely no difference.. -
@droftarts said in Why does my input shaper not seem to be working.:
@SanderLPFRG said in Why does my input shaper not seem to be working.:
Also, In the gcode article, I see that high jerk values are only an issue for DAA input shaper. Is this also the case for The newer input shaper types in 3.4 and above?
Yes, from what I've been told by @dc42!
Ian
ohkee, I think that is not clearly stated in the Documentation on the gcode dictionary (under M593)
Maybe it is an idea to adjust this?
-
@SanderLPFRG Are you using bed mesh levelling? If so what spacing are you using?
-
@SanderLPFRG said in Why does my input shaper not seem to be working.:
ohkee, I think that is not clearly stated in the Documentation on the gcode dictionary (under M593)
Maybe it is an idea to adjust this?@dc42 informs me:
High jerk values are an issue for all types of IS because the theory behind IS assumes no jerk.
Another cause of IS not working is mesh compensation with a fine mesh and low acceleration. This splits the acceleration and deceleration parts of a move across multiple segments, which makes it difficult for RRF to apply IS.
A third cause is short accelerate/decelerate moves. I intend to do something about this in 3.5rc1.I have updated the documentation.
Try a print without mesh compensation, if you use it.
Ian
-
I am not using mesh levelling. However, I am doing 3-point bed alignment, but that couldn't be it, right?
My start gcode;
; General settings; G90 ; set absolute coordinates var purgelength = 15 ; Heat up for probing M104 S150 ; set extruder temp for bed leveling M140 S{param.B} ; set bed temperature M109 S150 ; wait for hotend probing temp M190 S{param.B} ; wait for bed temperature ; Prepare for automatic calibration M302 S140 ; lower cold extrusion limit to 160C G92 E0 G1 E-2 F2400 ; cold retraction M302 S170 ; restore cold extrusion limit G28 ; home printer ; Auto calibration; M98 P"0:/macros/kinematic-tramming" ;G29 ; Heat up for printing G90 ; absolute coordinates G1 X10 Y10 Z15 F9000 ; move to park position M104 S{param.E} ; set extruder temp M109 S{param.E} ; wait for extruder temp ; Extrude purge line G92 E0 ; reset E position G0 X{param.L} Y{param.F-5} F4800 ; move to purge start G1 Z0.2 F720 ; move Z to purge height G1 E2 F2400 ; deretraction G91; relative movement G1 X{var.purgelength} E{var.purgelength * 0.15} F1000 ; move right G1 Y1.5 E{1.5 * 0.15} F1000 ; move down G1 X{-var.purgelength} E{var.purgelength * 0.30} F800 ; move left G92 E0 ; Reset E G90; absolute movements
Kinematic tramming macro;
if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed ; if printer is not fully homed yet G28 ; home printer endif ; Tuning cycle 1 G1 X{move.axes[0].max / 2} Y{move.axes[1].max / 2} F9000 ; move to middle M18 Z G30 Z-99999 F1200 ; probe Z G90 G30 P0 X{move.axes[0].max / 2} Y{move.axes[1].max - 30} Z-99999 ; probe near rear leadscrew (117.5,225) G30 P1 X{move.axes[0].min + 10} Y{move.axes[1].min + 10} Z-99999 ; probe near left leadscrew left (10,10) G30 P2 X{move.axes[0].max - 10} Y{move.axes[1].min + 10} Z-99999 S3 ; probe near right leadscrew and calibrate 3 motors (225,10) ; Tuning cycle 2 ;G30 K0 P0 X{move.axes[0].max / 2} Y{move.axes[1].max - 30} Z-99999 ; probe near rear leadscrew (117.5,225) ;G30 K0 P1 X{move.axes[0].min + 10} Y{move.axes[1].min + 10} Z-99999 ; probe near left leadscrew left (10,10) ;G30 K0 P2 X{move.axes[0].max - 10} Y{move.axes[1].min + 10} Z-99999 S3 ; probe near right leadscrew and calibrate 3 motors (225,10) ;G90 ; absolute coordinates G1 X{move.axes[0].max / 2} Y{move.axes[1].max / 2} F9000 ; move to middle M18 Z G30 Z-99999 F1200 ; probe Z ;G1 Z5 F300 ; move Z down ; clear nozzles ;G1 Z{global.zsafeheight} F600 ; move nozzle to z- safe height
-
@SanderLPFRG Mesh bed levelling (enabled with G29) causes movements to be segmented, which at the moment interacts with input shaping. The same is true if you use M669 to enable segmentation. I just wanted to check to see if that might be causing your problem.
-
@gloomyandy Ahh I understand, thankyou.
I do not have the G29 active, it is uncommented.
-
@SanderLPFRG You can check to see if a mesh is in use by running M122.
-
@gloomyandy said in Why does my input shaper not seem to be working.:
M122
M122 reports bed leveling as "none
=== Move === DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, comp offset 0.000 no step interrupt scheduled
-
Great thread. The following questions may help people further.
-
If you're using M376 to taper, will input shaping resume normal behavior after that point?
-
Does your recommended jerk setting of 300mm/s apply to all printer geometries including corexy?
-
When you say input shaping isn't currently applied to short segments, just how short if you have accelration set to 5000mm/s² and a speed of 100mm/s? Does this include curves of any radius since they are nothing but short segments?
-
What other things can we troubleshoot if input shaping doesn't give us the results we expect? For example, what print artifacts can we look for that might indicate a hardware issue such as loose belts, or non concentric drive gears, bad alignment with dual rods or rails etc?
-
-
@ctilley79 Thanks for the great reply.
To add some information;
2. I am using markforged kinematics
3. I currently am printing with 300 mm/min jerk, 9000mm/s2 acceleration and 170mm/s (later will go up to 200mm/s)
4. Belt tension is tested very loose up to very tight. Only the frequency and print quality changed, but no difference between IS on and IS off. I contacted Gates and set the belt to the exact right tension advised by them. verified it by measuring the frequency on 150mm/s.
I can confidently say the belts are set right, the pulleys are running smoothly, and the frame is rigid. -
@gloomyandy Any updates or more things I can try?
-
@SanderLPFRG Check this post by @Lee
https://forum.duet3d.com/topic/32744/problems-with-input-shaping/4?_=1688471721215
Especially the last entry where he averaged his frequencies to finally get a change with IS on.
Perhaps try reducing Jerk to 100mm/min just as a test.
IS does work in the latest RRF versions so if you are not seeing any result it may be the 'wrong' frequency being used. Just a thought.
-
I tried and went as low as 100mm/min jerk, which causes the curves to stutter, but also does not give an effect....
I suspect it has to do with the kinematics. Ill open a new ticket for the BETA firmware categorie
-
-
@SanderLPFRG did you ever find a solution to this? I'm having the same issue on my RatRig VCore 3.1 400 printer. IS on or off makes no difference, ringing is identical. I've beed trying to fix this for days now..