Closed VanessaE closed 6 years ago
Are you using JUNCTION_DEVIATION? Does turning that off make any difference? I ask because from this thread https://github.com/MarlinFirmware/Marlin/issues/9917 there are still problems with the calculation of ejerk values. Posting your configuration may help others to investigate further.
No, I have that disabled.
Things that might be worth trying until someone who really knows this stuff comes along...
I'm sure @ejtagle will want to take a look at this at some point. What stepper drivers are you using?
You have a max E acceleration of 10000, which may be too high I'd be tempted to set that to something lower.
My E acceleration has been set that way for quite a looooong time - in fact that's Marlin's default.
Does lowering the acceleration and retract acceleration help?
During a print, my acceleration is explicitly set to 1500 mm/s² for X/Y moves, and I guess E/retract stays at its default of 2000 (I'm not sure if Slic3r changes E accel along with X/Y or not).
Is the MAXIMUM_STEPPER_RATE figure of 500000 correct? Does lowering it help?
I use A4988's, so according the code comments above that setting, it's correct; I have not tried to lower it.
There have been a lot of changes in the minimum pulse setting area, so perhaps raising that might help.
It's already set appropriately for my driver modules.
From other discussions of Linear Advance it is clear from the author of that code that the default setting of 10000 is almost certainly not correct for most hardware. When I asked about it on the Junction Deviation thread it was suggested that a value of 2100 was a more realistic starting point.
My understanding is that the new pulse code is supposed to produce more accurate pulse lengths and frequencies (which are possibly shorter/higher than before), perhaps this means that settings like acceleration, top speed and jerk now need to be more accurately configured?
On other threads related to lost steps with the new pulse code one of the things that @ejtagle has asked users to try is to adjust the minimum pulse settings upwards (and the max stepper rate downwards) as the current code calculates things differently. There was also a correction to the pulse generation code made two days ago: https://github.com/MarlinFirmware/Marlin/commit/48a15d1c7e78eaa716bedecb80feeae780c7234a#diff-b1e3f1b10558445963aa5bbf4d20249c not sure if your tests included that or not?
It may be that none of the above makes any difference, but if you have the time then having the extra data points will probably help determine what the underlying problem is.
perhaps this means that settings like acceleration, top speed and jerk now need to be more accurately configured?
I don't see how that should matter. All these step timing changes were supposed to be about jitter, resolution, and the like, if I understand things correctly, and not absolute number of steps per second, so acceleration and peak speeds should be unaffected.
Besides, it only affects the first extruder move or two, after a retract (well, that's as accurate as I can be, it moves too fast for me to be 100% sure), when the stepper has effectively no load, thus extruder acceleration should be able to go much higher than 2000 mm/s².
not sure if your tests included that or not?
I bisected from 2ba198a624d0bf0b00b044ef0d26514ab54d2a3f to 48a15d1c7e78eaa716bedecb80feeae780c7234a, so yeah, that commit was included.
This pull request may be of interest: https://github.com/MarlinFirmware/Marlin/pull/11098 In particular this change: https://github.com/MarlinFirmware/Marlin/pull/11098/commits/8b1f494b1918ed66056435c2007f0885c1d941c6
which will introduce extra delays for the A4988 if configured.
What exactly is the visible result of the problem you are seeing? I've been running tests with the latest code and have not seen anything obvious, but I may have missed it. But I'm probably not running as fast as you especially things like the max Z and E feedrates.
What exactly is the visible result of the problem you are seeing?
As I wrote in my opening post, "[t]he result is the extruder doing more successful backward moves than forward moves, in retract-heavy parts of the print anyway."
...which leads to basically zero nozzle pressure.
But I'm probably not running as fast as you especially things like the max Z and E feedrates.
Z at 30 mm/s and E at 60 mm/s is not fast at all.
This bug report is invalid -- I found the problem. Somehow my E module's current got turned down from the usual 625mA to (what to me seems like) a weakling 300 mA. Probably when I took my E modules off to change their microstep settings. I must have swapped the spare, which I know was turned down, with the active one.
Corrected the current setting, pulled to HEAD, works now.
Not sure why this showed up when it did, BUT that module's only been in this state for like, a week, so I wonder if I've run into a variant of the "skips steps on Y" issue many of us have seen? Shouldn't 300 mA on a 5.222:1 geared extruder be enough (mind you, I'm perfectly happy to keep it where it is).
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Normal forward extruder moves are being interrupted, or something :smiley:, particularly the first move or two after a retract -- including the corresponding unretract move. Seems to be a conflict between linear advance, retraction moves, and Slic3r's wipe function.
Listening very closely, I can hear a brief, quiet extruder whine with each failed forward move -- not a typical stall in the middle of a move, more like "tried to go way too fast for the whole move".
The result is the extruder doing more successful backward moves than forward moves, in retract-heavy parts of the print anyway.
git bisect
process:The result: