-
-
Notifications
You must be signed in to change notification settings - Fork 19.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Z Stealthchop is destroying baby steps #16617
Comments
Please test the |
this w as tested on a firmware from the 18th.. |
i've updated the bug when i said 18 i mean from the 18th this month as in marlin 2.0.x |
This issue is confirmed. For now the solution is to lower your babystep multiplier setting and re-flash. Try dividing it in half as a starting-point. |
I have been unable to reproduce this. I tried with my original SKR 1.3 configuration, then with several modifications to get closer to the posted configs. I even swapped out my 2208 for the specific module I was using to test shutdowns with linear advance. During my tests I had visible Z activity due to bed leveling, and also tested in vase mode to allow testing during continuous Z movement. I'm out of ideas to get it to happen on my machine. My goal was to reproduce the issue, the do a mixed-signal capture of the motor outputs and the step pulses at the same time. My hypothesis is that prior to shutdown, we will see two step pulses unreasonably close together just before the motors turn off. |
Can somebody experiencing this issue post an STL and sliced gcode that you can reproduce it with? Maybe there is capability used in the file (Z-hop maybe?) that behaves poorly along with babystepping. |
perhaps it's an issue with 1.4? i don't think it's related to a specific g-code i have several of them |
Mine hasn't made it here from China yet unfortunately.... |
I also have a 1.4 on the way, I doubt that is the issue. The 1.3 and 1.4 just aren't that different. It has also been seen on the TH3D EZBoard. @emaayan, can you confirm that your 1.4 is the non-turbo version? I know that is what your config says, but perhaps things could misbehave if your board has an LPC1769 (turbo) and you build for LPC1768 (non-turbo). |
Your slicer is undoubtedly configured differently than mine, so having a file known to cause issues on your printer might help reproduce it on mine. |
i have pure g-code that also causes this happen, also i have skr 1.4
non-turbo.
…On Wed, Jan 22, 2020 at 10:44 AM Jason Smith ***@***.***> wrote:
i don't think it's related to a specific g-code i have several of them
Your slicer is undoubtedly configured differently than mine, so having a
file known to cause issues on your printer might help reproduce it on mine.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#16617?email_source=notifications&email_token=ADGP5MARFQTPU3WKBHHPXJDQ7ABQBA5CNFSM4KI4O632YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEJSWP4Q#issuecomment-577071090>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADGP5MATHHN2NS62MTS7PWDQ7ABQBANCNFSM4KI4O63Q>
.
|
a lot of updates and fixing has happend in the last week, is the problem still there? |
@emaayan — If the issue is still occurring, that G-code would be good to check out. Did you ever try reducing the babystep multiplier on your machine, and what value made it work? And, what is your Z steps-per-mm value? |
Dropping steps/mm from 800 to 400 (by halving the driver step rate from 1/16 to 1/8) does not show the issue. That is what we did for 800steps/mm machines with the TMC drivers. Have not had an issue since. So there is something going on (maybe driver timings being too quick) when the steps/mm are higher than 400 steps/mm. You can still run interpolated mode on the TMC driver and there is nothing of value lost running at 1/8 vs 1/16 until the cause of the drivers shutting down when steps on Z are higher than 400steps/mm. |
maybe similar experience today - in my start script i do a prime-nozzle-line, i normaly do babystepping while this line is printing, G1 X5 Y15
G1 Z0.2
G1 X250 E20 F800
G1 Z10 always successful today i was to late - after last line in startscript abort the print, do G28: X home ok, Y home ok, Z home - travel to Z-safe-homing-point, no Z move. |
yes the issue is still happening, i just tried with marlin 2.0.3, i tried
it what my my eternal ball and chain (A.K.A bed leveling model, which is
what i've been doing for that last couple of months, printing flat
rectangular)
…On Sat, Feb 1, 2020 at 5:32 AM Scott Lahteine ***@***.***> wrote:
@emaayan <https://github.com/emaayan> — If the issue is still occurring,
that G-code would be good to check out. Did you ever try reducing the
babystep multiplier on your machine, and what value made it work? And, what
is your Z steps-per-mm value?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#16617?email_source=notifications&email_token=ADGP5MAQPTXYMPLEBES2HM3RATUNBA5CNFSM4KI4O632YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKQSPHQ#issuecomment-580986782>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADGP5MGXKBUKF2YYRY7LGB3RATUNBANCNFSM4KI4O63Q>
.
|
i should also add that now, even even in spreadcycle mode, after a while
the baby stepping mode just hangs, the lcd and z motor stop responding to
the knob , but after i stop the print the z axis does respond
…On Sun, Feb 2, 2020 at 1:29 AM Elhanan Maayan ***@***.***> wrote:
yes the issue is still happening, i just tried with marlin 2.0.3, i tried
it what my my eternal ball and chain (A.K.A bed leveling model, which is
what i've been doing for that last couple of months, printing flat
rectangular)
On Sat, Feb 1, 2020 at 5:32 AM Scott Lahteine ***@***.***>
wrote:
> @emaayan <https://github.com/emaayan> — If the issue is still occurring,
> that G-code would be good to check out. Did you ever try reducing the
> babystep multiplier on your machine, and what value made it work? And, what
> is your Z steps-per-mm value?
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <#16617?email_source=notifications&email_token=ADGP5MAQPTXYMPLEBES2HM3RATUNBA5CNFSM4KI4O632YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKQSPHQ#issuecomment-580986782>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/ADGP5MGXKBUKF2YYRY7LGB3RATUNBANCNFSM4KI4O63Q>
> .
>
|
my settings:
```cpp
*/
#define BABYSTEPPING
#if ENABLED(BABYSTEPPING)
#define BABYSTEP_WITHOUT_HOMING
//#define BABYSTEP_XY // Also enable X/Y
Babystepping. Not supported on DELTA!
#define BABYSTEP_INVERT_Z false
// Change if Z babysteps should go the other way
#define BABYSTEP_MULTIPLICATOR_Z 10
// Babysteps are very small. Increase for faster motion.
#define BABYSTEP_MULTIPLICATOR_XY 1
#define DOUBLECLICK_FOR_Z_BABYSTEPPING
// Double-click on the Status Screen for Z Babystepping.
#if ENABLED(DOUBLECLICK_FOR_Z_BABYSTEPPING)
#define DOUBLECLICK_MAX_INTERVAL 1250
// Maximum interval between clicks, in milliseconds.
// Note: Extra time may be
added to mitigate controller latency.
#define BABYSTEP_ALWAYS_AVAILABLE
// Allow babystepping at all times (not just during movement).
//#define MOVE_Z_WHEN_IDLE // Jump to the move Z menu
on doubleclick when printer is idle.
#if ENABLED(MOVE_Z_WHEN_IDLE)
#define MOVE_Z_IDLE_MULTIPLICATOR 1
// Multiply 1mm by this factor for the move step size.
#endif
#endif
```
|
I have similar problem. Babystepping not working after G28, just not move to down. Move to up is OK. The number on the LCD is changing, but the Z-axis motors just twitch.
|
I just tried: |
today it happend again on a different printer. i did babystepping while a Z move was done. |
The original issue reminds me that stealthChop has to be on for this failure to occur. If you find that The thing is, Marlin doesn't do anything differently when stealthChop is on or off, so perhaps these SKR boards have some kind of flaw or addition that can't handle out-of-time pulses when stealthChop is enabled. |
That won't help the many people that use 2208s in standalone mode, though. Obscene delays surrounding babystepping might be the only option there. I guess standalone users are probably mostly on 8-bit boards, which might not exhibit the same issue (I'm unsure on this).
From what I've observed in my traces, they don't seem to have issues when the pulses are spaced out a bit (hundreds of microseconds), even when the direction is alternating with every pulse. It's really only when there are two sudden closely-spaced pulses, whether there is a direction change or not. |
It has not yet been demonstrated that this would work.
Easier said than done, unfortunately. The obvious solution is to add a global array that stores the processor tick of the last pulse done on each axis before exiting the ISR, and then add a needed delay in front of any babystep that would be too close to that pulse. We don't know when the next stepper ISR pulse might be, so after every babystep there would need to be a delay corresponding to the worst case. Because the "obvious" solution adds overhead to every stepper pulse and imposes extra delay on the steppers that are not involved in the babystepping, it is considered a bit of a last resort. |
just a question, i was wondering what caused it in the first place?
cause it seems like a something a lot of people would detect early on?
…On Tue, Feb 11, 2020 at 3:12 AM Scott Lahteine ***@***.***> wrote:
Obscene delays surrounding babystepping might be the only option there.
It has not yet been demonstrated that this would work.
From what I've observed in my traces, they don't seem to have issues when
the pulses are spaced out a bit
Easier said than done, unfortunately. The obvious solution is to add a
global array that stores the processor tick of the last pulse done on each
axis before exiting the ISR, and then add a needed delay in front of any
babystep that would be too close to that pulse. We don't know when the next
stepper ISR pulse might be, so after every babystep there would need to be
a delay corresponding to the worst case.
Because the "obvious" solution adds overhead to every stepper pulse and
imposes extra delay on the steppers that are not involved in the
babystepping, it is considered a bit of a last resort.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#16617?email_source=notifications&email_token=ADGP5MGX34NOJ7TQHRGMFK3RCH3QDA5CNFSM4KI4O632YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELK435A#issuecomment-584437236>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADGP5MASMQKL4K52IHDSJXTRCH3QDANCNFSM4KI4O63Q>
.
|
@emaayan — 32-bit boards. And many more TMC220x drivers. |
I did some more tests from above after #16857. With a G1 Z100 i hear a typical sound from steppermotors depanding on speed during move. edit: no driver shutdown |
@thinkyhead in relation to #16941 (comment) //#define INTEGRATED_BABYSTEPPING shutdown persits. |
same good news with: |
I will need to test again on my setup. I've been very busy with work and was out of town last week, so couldn't continue my earlier testing. |
I'm glad to hear it works with just |
There may be a misunderstanding due to my non-professional english. Just INTEGRATED_BABYSTEPPING has to be enabled. Otherwise it comes to shutdown. |
Oh, okay! I wasn't aware that It will be good to keep testing with bed leveling both on and off, because the extra Z motion can exacerbate the shutdown problem. |
@thinkyhead do you have a proposal for a scope for beginners? |
Play around and have fun. The squiggly lines start to make sense after a while. |
No good news guys, Z driver shutdown persists while using UBL. |
I found this thread while trying to find a solution for a frustrating ABL problem. G29 is in the start script and Z-Offset is saved to the EEPROM during first layer. No following print makes good use of the saved Z-Offset. Consecutive prints run the nozzle into the bed as if ~0.2mm were just subtracted from the Z-offset. Z-Offset adjusted again and saved. Next print, same problem. Working the numbers between -1.7 to -1.6 to -1.5 Is it possible that the baby steps needed for proper Z-offset are "killed"? The print job itself does execute without problem once the first hurdles are taken. |
is it possible that trying to fix this bug also caused this bug in version
2.0.4.4 and beyond?
this only happens when stealhchop xy is engaged
#17206
…On Wed, Mar 4, 2020 at 3:15 PM Alphaelectric ***@***.***> wrote:
I found this thread while trying to find a solution for a frustrating ABL
problem.
BTT E3 DIP 1.0 with 4x TMC2208 in Stealthchop / BLTouch 3.1 / Prusaslicer
2.1.0
G29 is in the start script and Z-Offset is saved to the EEPROM during
first layer.
No following print makes good use of the saved Z-Offset. Consecutive
prints run the nozzle into the bed as if ~0.2mm were just subtracted from
the Z-offset. Z-Offset adjusted again and saved. Next print, same problem.
Working the numbers between -1.7 to -1.6 to -1.5
Upon restarting the machine, first layer is air-printing....
Is it possible that the baby steps needed for proper Z-offset are "killed"?
The print job itself does execute without problem once the first hurdles
are taken.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#16617?email_source=notifications&email_token=ADGP5MDBMN7GSWZN2AQ6H5DRFZIAPA5CNFSM4KI4O632YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOENXZKIA#issuecomment-594515232>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADGP5MDEKUN72XOIVDW3Z6TRFZIAPANCNFSM4KI4O63Q>
.
|
i actually it's the same as in here i believe
MarlinFirmware/Configurations#62 (havn't tried it
yet)
…On Sun, Apr 26, 2020 at 4:41 AM Adam Segal ***@***.***> wrote:
@emaayan <https://github.com/emaayan> try what's suggested here: #17323
<#17323>
It helped a similar issue I was having
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#16617 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADGP5MGOQARCTHE6HPQSLKLROOGOBANCNFSM4KI4O63Q>
.
|
@emaayan |
This issue is stale because it has been open 30 days with no activity. Remove stale label / comment or this will be closed in 5 days. |
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. |
Bug Description
when StealthChop for z is enabled trying to do babystepping doesn't work, initially the motor will move just a little then it will stop moving completely and even after the build it won't move at all unless reset
My Configurations
this is marlin build 2.0.x from 18.01.2020
Marlin.zip
Steps to Reproduce
Expected behavior:
z axis moving according the knob
Actual behavior:
z axis stops moving after a few turns and is completely disabled afterwords
Additional Information
hardware is tmc 2208 skr 1.4
The text was updated successfully, but these errors were encountered: