Skip to content
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

Grinding sound from extruder motor when using LIN_ADVANCE and TMC2130. #11614

Closed
larsnordstrom opened this issue Aug 22, 2018 · 25 comments
Closed

Comments

@larsnordstrom
Copy link

Description

When I set my K-value in my start script my extruder makes a grinding sound, when I set the K-value to 0 (disable lin_advance) there is no grinding. I have tried different configurations with acceleration, jerk, s_curve etc but have found that the only thing causing this problem is when lin_advanced is avtivated.

I use mostly Simplify3d but tested this with Cura too and the issue still persists.

Steps to Reproduce

  1. Install Marlin 1.1.9, 2.0 or any bugfix.
  2. Use the config from the zipfile or run TMC2130 driver with LIN_ADVANCED enabled.
  3. Print any object with the K value set in your start script.

Expected behavior:
Extruder motor should run smooth and quiet

Actual behavior:
Extruder motor make a grinding sound.

Additional Information

Video
Config-1.1.9.zip

@Lefuneste83
Copy link

Hello. I have a similar problem when feedrate value on at least one motor gets close to HYBRID_THRESHOLD value set for this axis. I am using TMC2208 which has a different library but are quite similar drivers (the libraries for both are being developed by the same courageous person).

teemuatlut/TMC2208Stepper#21 (comment)

If I set HYBRID_THRESHOLD to a very high value (ie 150 for X/Y, 10 for Z and 60 for E0) the noise disappears completely and I am able to print smoothly in STEALTHCHOP up to at least 100mm/s speeds. Notice that commenting out #define HYBRID_THRESHOLD line in configuration_adv.h does not seem to disable it properly as set values for axes still bring this grinding noise when feedrate are getting closer to the set values. Maybe commenting the line only disable the activation of SPREADCYCLE only, but still uses the axis values. This is why in order to successfully disable this grinding noise behaviour I've set HYBRID_THRESHOLD to a value way above my typical print feedrates. I've included the conf files in the issue if you want to have a look.

Give it a try, maybe linear advance changes your E0 feedrate in a way that triggers the same behaviour on your printer, or maybe it is a completely different issue. I haven't set linear advance myself (yet).

@larsnordstrom
Copy link
Author

I usually bump mine up to 120X/Y 10Z and 40E. I’ll try increase them a bit more and see if it helps.

@larsnordstrom
Copy link
Author

Increasing hybridthreshold for extruder made the grinding go away.
I had to increase all the way up to 190. Works fine👍

@Lefuneste83
Copy link

This is interesting. So there seems to be a wrongful behaviour linked with these threshold values. For documentation purposes, could you provide the HYBRID_THRESHOLD values you have set for you different axes ? I suspect that many people using TMC driers are actually getting this grinding behaviour, possibly inducing lost steps, and because it is progressive, don't realise they don't have the proper (and quietest) setting...

@larsnordstrom
Copy link
Author

Every setup is probably different but my advice is to first tune the currents for each axis according to what motors/drivers can handle and what temperatures can be tolerated by the drivers and motors.

When the currents are set, tune the feedrates, max_accel and default_accel and start pretty low. I personally started at 400 and increased until happy.

After the above step I tuned jerk until I got smooth transitional changes in directions and speed.

I have my printers in my office along with co-workers so my printer needs to be quiet and must stay in stealthchop during workhours so next step is the HYBRID_THRESHOLD settings.
Sometimes the motors have sort of a whining/vibrating sound and that is usually caused by the printspeed reaching just u to the Hybrid limits but still not fast enough to switch over. In that case either lower the values or increase if you want faster or quiet printing. Higher value means it will stay stealthy, lower means it transitions into Hybrid (louder).

Incase of grinding sounds from extruder when LIN_ADVANCED is enabled, you can either set M900 K0
in your start script to disable the feature or increase the E0_HYBRID_THRESHOLD in increments of 10 until the grinding stops.

Current config for Einsy Rambo 1.1:

X/Y/E0 CURRENT 636
Z CURRENT 900
X/Y/Z/E0 MICROSTEPS 16

X/Y HYBRID_THRESHOLD 130
Z HYBRID_THRESHOLD 10
E0 HYBRID_THRESHOLD 200

X_HOMING_SENSITIVITY 4
Y_HOMING_SENSITIVITY 6
Z_HOMING_SENSITIVITY 6

DEFAULT_MAX_FEEDRATE 300, 300, 12, 120
DEFAULT_MAX_ACCELERATION 1000, 1000, 200, 5000
DEFAULT ACCELERATION/RETRACT/TRAVEL 1000

X/Y JERK 9.0
Z JERK 0.4
E JERK 5.0

// Enabled
S_CURVE_ACCELERATION
LIN_ADVANCE
ADAPTIVE_STEP_SMOOTHING
UBL with BLTouch
Bowden with Bondtech BMG

@thinkyhead
Copy link
Member

LIN_ADVANCE was recently patched. Please try the current bugfix branches and see if they're any better.

@larsnordstrom
Copy link
Author

The issue is still there, however if I run E0_MICROSTEPS 32 I am able to lower the the E0 HYBRID_THRESHOLD to 115 from previous 200.

@Lyr3x
Copy link

Lyr3x commented Sep 17, 2018

I can confirm that a E0_HYBRID_THRESHOLD of 200 removes grinding noises. Tested on Marlin 2.0 from yesterday evening.

@larsnordstrom
Copy link
Author

I have found that when JUNCTION_DEVIATION is enabled the E0_HYBRID_THRESHOLD have no effect on the grinding sound. Only way is to set K value to 0 or not use JUNCTION_DEVIATION at all.

@Lyr3x
Copy link

Lyr3x commented Oct 11, 2018

Tried 49d4ed4 today. Now the threshold of 200 istn woprking anymore. I'm getting retrtaction problems(more retraction then extruding) with weird sounds but a threshold of about 30 is working okay.

Update: that was too quick. It was just for an specific print.

Update2: when setting the threshold to 200 my extruder starts skipping on larger retraction with Lin adv. turned on.

@thinkyhead
Copy link
Member

Rumor has it that lowering the jerk setting is helpful for Linear Advance.

@larsnordstrom
Copy link
Author

From what I understand, jerk is disabled when junction deviation is enabled so how could it have anything to do with it?

@InsanityAutomation
Copy link
Contributor

Linear advance still uses the jerk e value even when junction deviation is on.

@larsnordstrom
Copy link
Author

Looking at the 2.0 branch there’s conditionals around XY jerk, E jerk does not. I’ll play around with that and see if there’s a “sweetspot” value.

@Lyr3x
Copy link

Lyr3x commented Jan 14, 2019

In my experience a E-Jerk value of 15-20 eliminates the grinding noise (without stealthchop)

@boelle
Copy link
Contributor

boelle commented Feb 20, 2019

@larsnordstrom problem solved with latest bugfix 2.0?

@larsnordstrom
Copy link
Author

@boelle you know what, I haven´t tested with the version I just updated to about a week ago.
I made some changes to my printer too, switched back from bowden to directdrive with the new Bondtech MK3 and I'm also using LDO 0.9 pancake steppermotor. I'll give it a try in the morning and I'll get back.

@larsnordstrom
Copy link
Author

larsnordstrom commented Feb 21, 2019

@boelle I did run a couple of prints with LIN_ADVANCE today and I did not notice the same kind of issues I had before. Since last, there have been updates to both Marlin and the TMC library and also there is an option to use Prusa MK3 chopper timings.
This is pretty much where it's at right now;

M92 X100.00 Y100.00 Z400.00 E830.00
M203 X200.00 Y200.00 Z12.00 E120.00
M201 X1000.00 Y1000.00 Z200.00 E5000.00
M204 P1250.00 R1250.00 T1250.00
M205 B20000.00 S0.00 T0.00 J0.03
M906 X636 Y636 Z900 E500 
M913 X120 Y120 Z10 E30
M914 X8 Y8 Z8
M900 K0.22

@boelle
Copy link
Contributor

boelle commented Feb 21, 2019

so this one is solved?

@boelle
Copy link
Contributor

boelle commented Mar 6, 2019

@thinkyhead i think we can close this one

@sergeysi779
Copy link

Please dont't close the issue.
I'm experiencing this right now on Ender-3 with MKS Gen L and TMC2130 in SPI mode. Strangely enough I have CR-10S wiith similar setup (TMC2130 drivers are from other vendor) and there is no such grinding noise when using Linear Advance. Both printers are on 24V.
I'll investigate further and report whether the issue persists.

@sergeysi779
Copy link

sergeysi779 commented Mar 30, 2019

Well, the issue is there. I've tested it on two boards:

  1. Board: MKS Gen L. Drivers: TMC2130 in SPI mode.
    With Linear Advance K-factor greater than 0 extruder motor makes grinding noise. It doesn't matter whether driver is configured as SPI or standalone mode. It doesn't make grinding noise when it's in spreadCycle mode. Issue appears both in Marlin 1.1.9 and latest (2019-03-30) Marlin 2.0. I tried Prusa Mk3 and standard 24V chopper settings, it didn't help.

  2. Board: SKR v1.3. Drivers: TMC2130 in SPI mode.
    With Linear Advance feature enabled extruder motor doesn't spin at all. However there is some holding current going through motor. It doesn't matter whether K-factor is 0 or not. It doesn't matter whether driver is in stealthChop or spreadCycle mode. After flashing firmware without Linear Advance feature extruder motor works normally. Looks like I'm not the only one: [BUG] [bugfix-2.0.x] Extruder 0 doesn't rotate with TMC2130 SPI driver #13463

Can someone else confirm either of those bugs? Maybe it's better to create separate issue?

As for other printer with similar setup, I don't currently have access to it to confirm that it works without issues. Maybe there was grinding noise too, and I just didn't notice.

@harleycarr
Copy link

It is not solved, there is another issue about 2208's and it's the same result and reproduce. #13535

@boelle
Copy link
Contributor

boelle commented Jun 22, 2019

missing label

@github-actions
Copy link

github-actions bot commented Jul 5, 2020

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.

@github-actions github-actions bot locked and limited conversation to collaborators Jul 5, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants