Jerk/accel settings not working for me
-
After playing with it this last week, I think I will be switching back to the rambo board with Marlin shortly since the only fix I've found for this jerk issue is printing at half of my normal speed which really isn't acceptable to me.
I will probably check back in a few months to see if any firmware updates have fixed the issue.
Thank you for all your help guys! I am still up for suggestions if you guys have any. I'd like to use this board over the rambo since the hardware capabilities are far superior.
-
@Ret,
1. Before you do that, could you try an earlier version of firmware - prior to 1.20 (say 1.19). The reason I suggest it is that there are similarities in the behaviour that you are seeing and something I saw back in January. It's in this very long thread which is mostly related to pressure advance behaviour with multiple extruders (mixing hot end). https://www.duet3d.com/forum/thread.php?id=1999&p=3. Unfortunately I went off on my travels and since then I haven't had chance to do much printing this year. I'm still on 1.20 RC "something" so things may have changed again. At that time, David had recently changed something in the firmware that I think was to do with pressure advance behaviour but the result was that I was getting jerky behaviour on arcs. My memory is a bit hazy but IIRC it seemed that the firmware had become more sensitive to gcode which produced varying segment sizes for arcs.
2, If you do go back to Rambo / Marlin, please report back if it fixes your problem. I'm sure David will "pull out all the stops" to implement a fix if it can be shown that another board/firmware does something better than Duet.
-
@Ret, please share the gcode that Cura generated, so that I can see whether it has the same issue as the S3D gcode.
-
I sliced the model STL sample that was posted earlier in Slic3r PE and the extruder moves were to 5 decimal places. Without the full model it's hard to know what the orientation it is printed in, but to test it I rotated it so that the flat part of the circle is to the bed. I did a test print of the first few mm.
The part is very thin, and I suspect that S3D is trying to lay a line thinner than the nozzle diameter and is breaking it up into small sections of extruding and not extruding.
You can force Slic3r to do similar behavior by turning off detect thin walls, which merges the inner walls into a single gap fill move. Slic3r seems to handle it a lot better.
That's just a thought though.
Here is what Slic3r generated
-
Are the segments lengths for each curve all more of less the same size? I've had issues with Slic3R (PE) where they are not. This seems to cause havoc with printing curves, especially if pressure advance is employed.
-
The main problem with the file that @deckingman refers to news that the ratio of extrusion amount to XY movement amount was varying wildly, especially for the very short segments.
Another issue that causes jerky movements is when S3D inserts tiny G0 moves (no extrusion) in between extruding moves. It seems to do this always when generating curves in the skirt, but so far I haven't seen it do it in the main part of the print.
-
Deckingman,
I will give an earlier version a shot within the next day or so, thank you!dc42,
https://drive.google.com/file/d/1bpdNy6O7MxUwSIXr4ZoWXPekSAoUQRRx/view?usp=sharing
This isn’t an exact copy of the other model used in the gcode link I sent with s3d. It is the same part but started at a different position. I still am unclear what you mean by little segments, but to me, visually, the outer layers look similar, maybe slightly cleaner with Cura.Phaedrux,
Those varying internal extrusion widths are how I set it up. The problem occurs on all parts of the print(outer layers, inner layers, and infill). The outer and inner layers are consistent, but the infill segments vary to fill the space since it’s a unique geometry.
–---------
I have attempted printing with pressure advance (0.01-0.3), with no real notable change in quality. I did however have to modify jerk settings as I went higher with the pressure advance, but I believe that’s as to be expected. -
I went back to 1.19, no real significant changes between the item printed (same gcode) on 1.21. 1.19 seemed to stutter more, at least it looked like it. There’s nothing smooth about the movements as opposed to my previous marlin.
DC42, have you ever looked into the acceleration and jerk code in marlin? You also did mention the extrusion value needed to be 5 decimal, instead of 4. Is that just a preference or does it actually NEED to be 5 for your firmware? Of course 5 will be quite a bit more accurate, but it seemed to work just great with the other firmware I was running. Cura using 5 has no noticeable impact as opposed to S3D’s 4 in my experiments with the duet.
-
This is on my list to look at. I strongly suspect that Marlin doesn't do extruder jerk planning at all.
-
I don't know if this is related, but I sliced a model using S3D that runs very badly on my printer. However, the printer runs fine if I comment out every other line in the gcode during cornering.
My custom printer running 2.0 alpha 1 printer makes loud noise at corners.
https://youtu.be/ZIlCNwHtu50[[language]] ; layer 2, Z = 0.400 ; inner perimeter G1 X145.299 Y113.132 F4800 ; G1 Z10.400 F4800 G1 E0.7500 F3600 G1 X145.042 Y113.252 E0.0113 F3360 G1 X144.705 Y113.343 E0.0139 G1 X125.894 Y116.763 E0.7631 G1 X125.448 Y116.900 E0.0186 G1 X124.994 Y117.166 E0.0210 G1 X124.656 Y117.477 E0.0183 G1 X124.392 Y117.838 E0.0179 G1 X124.193 Y118.265 E0.0188 G1 X124.021 Y119.092 E0.0337 G1 X123.902 Y119.508 E0.0173 G1 X123.749 Y119.901 E0.0168 G1 X123.562 Y120.278 E0.0168 G1 X123.342 Y120.636 E0.0168 G1 X123.090 Y120.974 E0.0168 G1 X122.807 Y121.290 E0.0169 G1 X122.493 Y121.582 E0.0171 G1 X122.164 Y121.838 E0.0166 G1 X121.816 Y122.062 E0.0165 G1 X121.451 Y122.253 E0.0164 G1 X121.073 Y122.412 E0.0164 G1 X120.682 Y122.536 E0.0164 G1 X120.280 Y122.626 E0.0164 G1 X119.869 Y122.680 E0.0165 G1 X119.425 Y122.700 E0.0177 G1 X57.478 Y122.700 E2.4725 G1 X56.976 Y122.675 E0.0201 G1 X56.514 Y122.606 E0.0187 G1 X56.064 Y122.491 E0.0185 G1 X55.629 Y122.334 E0.0185 G1 X55.212 Y122.134 E0.0185 G1 X54.816 Y121.893 E0.0185 G1 X54.442 Y121.612 E0.0186 G1 X54.094 Y121.291 E0.0189 G1 X53.789 Y120.947 E0.0184 G1 X53.520 Y120.579 E0.0182 G1 X53.290 Y120.188 E0.0181 G1 X53.099 Y119.779 E0.0180 G1 X52.949 Y119.354 E0.0180 G1 X52.840 Y118.914 E0.0181 G1 X52.774 Y118.462 E0.0182 G1 X52.750 Y117.973 E0.0196 G1 X52.750 Y82.028 E1.4346 G1 X52.775 Y81.526 E0.0201 G1 X52.844 Y81.064 E0.0187 G1 X52.959 Y80.614 E0.0185 G1 X53.116 Y80.179 E0.0185 G1 X53.316 Y79.762 E0.0185 G1 X53.557 Y79.366 E0.0185 G1 X53.838 Y78.992 E0.0187 G1 X54.159 Y78.645 E0.0189 G1 X54.503 Y78.338 E0.0184 G1 X54.871 Y78.070 E0.0182 G1 X55.262 Y77.840 E0.0181 G1 X55.671 Y77.649 E0.0180 G1 X56.096 Y77.499 E0.0180 G1 X56.536 Y77.390 E0.0181 G1 X56.987 Y77.324 E0.0182 G1 X57.477 Y77.300 E0.0196 G1 X119.425 Y77.300 E2.4725 G1 X119.880 Y77.321 E0.0182 G1 X120.300 Y77.378 E0.0169 G1 X120.711 Y77.472 E0.0168 G1 X121.111 Y77.603 E0.0168 G1 X121.497 Y77.769 E0.0168 G1 X121.868 Y77.969 E0.0168 G1 X122.222 Y78.204 E0.0169 G1 X122.556 Y78.472 E0.0171 G1 X122.857 Y78.761 E0.0166 G1 X123.129 Y79.073 E0.0165 G1 X123.371 Y79.406 E0.0164 G1 X123.582 Y79.758 E0.0164 G1 X123.761 Y80.127 E0.0164 G1 X123.908 Y80.512 E0.0164 G1 X124.021 Y80.910 E0.0165 G1 X124.118 Y81.415 E0.0205 G1 X124.232 Y81.840 E0.0176 G1 X124.481 Y82.303 E0.0210 G1 X124.781 Y82.652 E0.0183 G1 X125.132 Y82.929 E0.0179 G1 X125.531 Y83.132 E0.0179 G1 X125.906 Y83.239 E0.0155 G1 X144.704 Y86.657 E0.7626 G1 X145.049 Y86.750 E0.0143 G1 X145.312 Y86.875 E0.0116 G1 X145.548 Y87.044 E0.0116 G1 X145.763 Y87.265 E0.0123 G1 X145.932 Y87.510 E0.0119 G1 X146.050 Y87.768 E0.0113 G1 X146.122 Y88.043 E0.0113 G1 X146.151 Y88.391 E0.0139 G1 X146.151 Y89.800 E0.0562 G1 X147.250 Y89.800 E0.0439 G1 X147.250 Y110.200 E0.8142 G1 X146.151 Y110.200 E0.0439 G1 X146.151 Y111.608 E0.0562 G1 X146.121 Y111.965 E0.0143 G1 X146.045 Y112.246 E0.0116 G1 X145.921 Y112.509 E0.0116 G1 X145.743 Y112.759 E0.0123 G1 X145.532 Y112.969 E0.0119 G1 X145.299 Y113.132 E0.0113 G1 X145.540 Y113.550 F4800 G1 X145.207 Y113.705 E0.0147 F3360 G1 X144.810 Y113.812 E0.0164 G1 X126.008 Y117.231 E0.7627 G1 X125.642 Y117.342 E0.0153 G1 X125.281 Y117.554 E0.0167 G1 X125.016 Y117.798 E0.0144 G1 X124.807 Y118.084 E0.0141 G1 X124.652 Y118.417 E0.0147 G1 X124.488 Y119.207 E0.0322 G1 X124.357 Y119.662 E0.0189 G1 X124.189 Y120.095 E0.0186 G1 X123.983 Y120.510 E0.0185 G1 X123.740 Y120.906 E0.0185 G1 X123.462 Y121.278 E0.0186 G1 X123.150 Y121.626 E0.0187 G1 X122.804 Y121.948 E0.0188 G1 X122.441 Y122.230 E0.0183 G1 X122.058 Y122.477 E0.0182 G1 X121.656 Y122.688 E0.0181 G1 X121.238 Y122.863 E0.0181 G1 X120.807 Y123.000 E0.0181 G1 X120.364 Y123.099 E0.0181 G1 X119.912 Y123.159 E0.0182 G1 X119.436 Y123.180 E0.0190 G1 X57.466 Y123.180 E2.4734 G1 X56.928 Y123.153 E0.0215 G1 X56.419 Y123.077 E0.0206 G1 X55.923 Y122.951 E0.0204 G1 X55.443 Y122.777 E0.0204 G1 X54.983 Y122.556 E0.0204 G1 X54.546 Y122.291 E0.0204 G1 X54.135 Y121.981 E0.0206 G1 X53.752 Y121.627 E0.0208 G1 X53.414 Y121.249 E0.0202 G1 X53.118 Y120.843 E0.0201 G1 X52.864 Y120.412 E0.0199 G1 X52.654 Y119.961 E0.0199 G1 X52.488 Y119.492 E0.0199 G1 X52.368 Y119.007 E0.0199 G1 X52.295 Y118.509 E0.0201 G1 X52.270 Y117.984 E0.0210 G1 X52.270 Y82.016 E1.4356 G1 X52.297 Y81.478 E0.0215 G1 X52.373 Y80.969 E0.0206 G1 X52.499 Y80.472 E0.0204 G1 X52.673 Y79.993 E0.0204 G1 X52.894 Y79.533 E0.0204 G1 X53.159 Y79.096 E0.0204 G1 X53.469 Y78.684 E0.0206 G1 X53.822 Y78.302 E0.0208 G1 X54.201 Y77.964 E0.0202 G1 X54.607 Y77.668 E0.0201 G1 X55.038 Y77.414 E0.0199 G1 X55.489 Y77.204 E0.0199 G1 X55.958 Y77.038 E0.0199 G1 X56.443 Y76.918 E0.0199 G1 X56.941 Y76.845 E0.0201 G1 X57.466 Y76.820 E0.0210 G1 X119.436 Y76.820 E2.4733 G1 X119.923 Y76.842 E0.0195 G1 X120.387 Y76.905 E0.0187 G1 X120.840 Y77.009 E0.0186 G1 X121.281 Y77.153 E0.0185 G1 X121.707 Y77.336 E0.0185 G1 X122.116 Y77.557 E0.0186 G1 X122.505 Y77.816 E0.0187 G1 X122.873 Y78.112 E0.0188 G1 X123.204 Y78.430 E0.0183 G1 X123.504 Y78.774 E0.0182 G1 X123.771 Y79.141 E0.0181 G1 X124.004 Y79.529 E0.0181 G1 X124.202 Y79.936 E0.0181 G1 X124.364 Y80.360 E0.0181 G1 X124.489 Y80.799 E0.0182 G1 X124.586 Y81.308 E0.0207 G1 X124.681 Y81.662 E0.0146 G1 X124.879 Y82.029 E0.0167 G1 X125.114 Y82.303 E0.0144 G1 X125.392 Y82.522 E0.0141 G1 X125.708 Y82.683 E0.0141 G1 X126.015 Y82.771 E0.0127 G1 X144.810 Y86.188 E0.7624 G1 X145.216 Y86.298 E0.0168 G1 X145.556 Y86.460 E0.0150 G1 X145.862 Y86.679 E0.0150 G1 X146.135 Y86.959 E0.0156 G1 X146.350 Y87.272 E0.0152 G1 X146.504 Y87.606 E0.0147 G1 X146.597 Y87.961 E0.0147 G1 X146.631 Y88.371 E0.0164 G1 X146.631 Y89.320 E0.0379 G1 X147.730 Y89.320 E0.0439 G1 X147.730 Y110.680 E0.8525 G1 X146.631 Y110.680 E0.0439 G1 X146.631 Y111.628 E0.0379 G1 X146.595 Y112.048 E0.0168 G1 X146.498 Y112.412 E0.0150 G1 X146.337 Y112.752 E0.0150 G1 X146.110 Y113.071 E0.0156 G1 X145.841 Y113.339 E0.0152 G1 X145.540 Y113.550 E0.0147
-
@deckingman I think I have seen this recently when printing some PETG with a higher pressure advance value. Jerky motion on curves leading to vertical banding where the extruder pauses/slows down very briefly on the curve.
-
Please do let me know what you find out, @dc42, after looking at marlin.
@Shen, I haven’t manually modified g-code to alleviate any issues yet, but that’s an interesting find. It seems like this firmware especially dislikes how S3D handles things. Marlin didn’t have any jerky issues for me pre-duetWifi upgrade.
For now though, I’m left with no choice but to go back to my old board running marlin until some improvements come out. It’s been tough completing orders with one printer down. However, on weekends I’d have no problem going back to the duet to try any suggestions anyone might have.
Thanks guys!
-
@Ret, For me there are workarounds to the problem. Such as slowing down perimeters, lower jerk/acceleration, but I don't know if you are willing to sacrifice the speed. I had to slow down to 2mm/s jerk and 1500mm/s^2 acceleration for the noise to go away, but before I switch to the internal drivers, with the filter function of my external driver I was able to achieve 10mm/s + jerk and 3000mm/s^2 + acceleration without any issue.
-
@shen I did find slowing things down a lot helped significantly, but it just throws me off that Marlin was able to do it so successfully without any signs of funny jerky motions. I've had to cut my speed in half to get okay results, but even then, they're not as good as prior. I can't afford to lose half the speed I normally print at. I am however glad to hear that I'm not the only one who is having this problem. Thank you for your reply!
-
I hope to find time to try this print today.
-
@ret said in Jerk/accel settings not working for me:
Sorry for taking a bit to reply, I had to put my old board on for a bit to finish a project. 60 does seem low after looking at everyone else's, but it worked PERFECT on marlin which really throws me off that this firmware is so different when it comes to the jerk and accel. I have attempted it with 2 slicers, S3D and Idea maker, both same jerky motion, nothing is smooth. Here is my gcode though, feel free to check it out!
https://drive.google.com/file/d/1dwXWh0slnOdZQeG-oGh5iy_89H0ujWp4/view?usp=sharing
I just tried printing that file from SD card on my Cartesian printer. It prints smoothly for me, except when it does tiny "stitching" movements to do the infill between the two circular perimeters. I had to increase the extrusion factor to 250%, so I think you are probably using 3mm filament (I am using 1.75mm).
I have been assuming that you are printing the file from SD card. If instead you are printing over USB then there are some flow control settings in your host program that should be changed.
-
@phaedrux said in Jerk/accel settings not working for me:
@deckingman I think I have seen this recently when printing some PETG with a higher pressure advance value. Jerky motion on curves leading to vertical banding where the extruder pauses/slows down very briefly on the curve.
TBH, I've given up trying to use pressure advance. For whatever reason, my Diamond hot end needs high values and whilst pressure advance works really well for straight lines, I've never been able to get smooth curves. Initially it seemed it was just when using multiple extruders (mixing hot end) but later firmware seems to give me problems even when using a single extruder.
-
@deckingman said in Jerk/accel settings not working for me:
@phaedrux said in Jerk/accel settings not working for me:
@deckingman I think I have seen this recently when printing some PETG with a higher pressure advance value. Jerky motion on curves leading to vertical banding where the extruder pauses/slows down very briefly on the curve.
TBH, I've given up trying to use pressure advance. For whatever reason, my Diamond hot end needs high values and whilst pressure advance works really well for straight lines, I've never been able to get smooth curves. Initially it seemed it was just when using multiple extruders (mixing hot end) but later firmware seems to give me problems even when using a single extruder.
Hi Ian,
After I am back from Sweden next week, please provide an example single-extrusion GCode file and config.g settings for me to run on my bench system.
-
@dc42 said in Jerk/accel settings not working for me:
@deckingman said in Jerk/accel settings not working for me:
@phaedrux said in Jerk/accel settings not working for me:
@deckingman I think I have seen this recently when printing some PETG with a higher pressure advance value. Jerky motion on curves leading to vertical banding where the extruder pauses/slows down very briefly on the curve.
TBH, I've given up trying to use pressure advance. For whatever reason, my Diamond hot end needs high values and whilst pressure advance works really well for straight lines, I've never been able to get smooth curves. Initially it seemed it was just when using multiple extruders (mixing hot end) but later firmware seems to give me problems even when using a single extruder.
Hi Ian,
After I am back from Sweden next week, please provide an example single-extrusion GCode file and config.g settings for me to run on my bench system.
Hi David,
Yes I can do that but at the end of this very long thread https://forum.duet3d.com/topic/1935/more-strange-pressure-advance-behaviour/60, on 21st Jan you said this
"Ian, I have just tried slicing my test circles using Cura 3.1 instead of S3D and the extrusion speed consistency is much better, about 1% instead of 8.4%. So until I change the pressure advance code to better handle changes in extrusion rate that shouldn't be there, you might like to try slicing your models with Cura instead of S3D. I think that will fix most of the problem."
However, Cura and S3D aren't viable options for me because they aren't good for multi (more than 2) coloured objects. I guess I could use one or other but then I'm reduced to using 1 or maybe 2 colours and that's not what my printer is designed for. So, no offence intended, but it's just easier for me to stick with Slic3R and just not use pressure advance.
-
I've added a page on known causes of jerky printing on the Troubleshooting section of the wiki, at https://duet3d.dozuki.com/Wiki/Jerky_movement_when_printing.