<p>The maximum RPM depends on motor current. Higher current, lower max rpm.</p>
<p>I checked your klipper.conf and I can say that you should definitely reduce the currents for all motors. Extruder and Z motors at 0.9 A is crazy, for example. X and Y 0.7 A is enough, for Z and extruder 0.4 A is good already.</p>
<p>Also, you request F9000 which is impossible on that printer, therefore you are automatically limited by the firmware max speed. Try manually asking a more reasonable speed, like F2000. Keep decreasing until it works. Try decreasing the acceleration too: you have 120, try with 50 which is good already for Z moves. If it works, increase it progressively.</p>

CC BY-SA 4.0
2022-04-05T08:53:25.230Z
2022-04-05T12:42:48.387Z
2022-04-05T12:42:48.387Z
FarO
<p>More often than exceeding the MAX RPM, you are exceeding the instantaneous torque at the speed.  The motor torque force is determined by the strength of the magnetic fields.  The magnet field for the permanent magnet is fixed, but for the electrically driven magnet depends on the current through the coil.  The coils are inductors, and the current must charge and discharge, similar to what we expect from capacitors.  This current change is caused by the voltage applied to the coil.  A higher voltage charges the current faster.</p>
<p>Typical stepper motors are rated at a particular current through the coils.  Since the coils also have a resistance, the &quot;voltage&quot; of a stepper motor is just the voltage that causes the rated current through the coil resistance.  <span class="math-container">$Voltage = Current * Resistance$</span> -- Ohm's law.  This gives very slow charging, and a motor so driven won't have a high speed, and the torque will fall off quickly with speed.</p>
<p>Most stepper drivers drive based on the current, not the voltage.  The driver monitors the current, and if it is too low, the driver applies a charging voltage.  If the current is too low, it applies a discharging voltage.</p>
<p>The point of all this is that higher voltage is good.  And the parameter that matters more than MAX RPM is the acceleration.</p>

CC BY-SA 4.0
2024-04-28T13:30:01.010Z
2024-04-29T03:18:49.300Z
2024-04-29T03:18:49.300Z
cmm
<p>I haven't had time to view the video, but in general, the symptom you're seeing means you're trying to drive the stepper above the max RPM it can handle. Roughly speakling, coils (in the motor) resist a change in current, and past a certain point, a given voltage is insufficient to change the coil currents to perform a step before it's time for the next step. Typical steppers in cheap 3D printers max out around 1500-2000 RPM and lose power (meaning they'll likely work under no load) a little bit before that.</p>
<p>To figure out your motor RPM, multiply the axis speed (in mm/s) by steps per mm (full steps, not microsteps, so divide by number of microsteps per step) to get steps/s, then convert to rotations/min by multiplying by 60 and dividing by 200 (steps per rotation for a 1.8° stepper).</p>

CC BY-SA 4.0
2022-03-05T01:07:32.167Z
Ok so my printer worked with the same settings before at least for the extruder (can't say this about z cause of the lead screw upgrade) and my extruder steps per mm are 400 and the retract speed is 30mm/s so that would put the RPM at 3600 so I guess if that is something the TMC2209s can't handle then I might go back to the TMC2208s
Dexter Grif
CC BY-SA 4.0
2022-03-05T01:35:07.057Z
@DexterGrif: Keep in mind steps/mm here means full steps not microsteps. I'll clarify that in an edit later. So it might not be as high as you calculated. 30 mm/s retract should be no problem with an ungeared extruder; only with a very high reduction ratio would that be problematic.
R.. GitHub STOP HELPING ICE
CC BY-SA 4.0
2022-03-05T01:57:12.837Z
it is using a titan extruder so I am unsure how that changes things. also I am using 16 microsteps
Dexter Grif
CC BY-SA 4.0
2022-03-05T04:38:07.327Z
@DexterGrif: That should just be 25 full steps per mm and thereby 225 RPM.
R.. GitHub STOP HELPING ICE
CC BY-SA 4.0
2022-03-05T11:07:26.270Z
ok so the output of M203 (Max Feedrates mm/s) is:
M203 X250.00 Y250.00 Z30.00 E55.00
so the RPMs are
RPM=(((x*x_steps)*60)/200)/16
X=476.85
Y=472.5
Z=907.3
E=437.8

so that looks like it is within the limits.
Dexter Grif
CC BY-SA 4.0
2022-03-05T12:48:48.100Z
@DexterGrif: Are you sure you don't have any start gcode or anything overriding those limits on a per-print basis?
R.. GitHub STOP HELPING ICE
CC BY-SA 4.0
2022-03-05T13:46:51.120Z
Let us [continue this discussion in chat](https://chat.stackexchange.com/rooms/134596/discussion-between-dexter-grif-and-r-github-stop-helping-ice).
Dexter Grif
CC BY-SA 4.0
2022-03-04T18:35:05.817Z
2022-03-05T12:40:26.260Z
2022-03-05T12:40:26.260Z
R.. GitHub STOP HELPING ICE
<p>OK here's some background of the problem:</p>
<p>Symptoms:</p>
<ul>
<li><p>All retracts on the extruder produce a screeching noise. The extruder extrudes normally all other times.</p>
</li>
<li><p>Any fast move on the Z-axis also produces a screeching noise and the Z-axis will move normally at all other times.</p>
</li>
<li><p>This appears to happen regardless of any printing state whether the heaters are on or not it will still occur it even happens during the ABL process.</p>
</li>
</ul>
<p>Specifications of the printer:</p>
<ul>
<li>Mainboard: MKS Gen L V2</li>
<li>Drivers: TMC2209 UART</li>
<li>Stepper motors: Stepperonline 17HS15-1504S 1.8 deg 1.5A</li>
<li>Pulleys: GT2 16T</li>
<li>Leadscrew: 2 mm pitch T8</li>
<li>Hotend: E3D V6</li>
</ul>
<p>OK so basically I performed an upgrade of my stepper drivers as well as the leadscrew and pulleys on my 3D printer which was originally a Tevo tornado and at the start of every print I would experience a loud screeching noise coming from the Z-axis and I originally identified it to be a single line in my G-code that would only trigger the screech if it was preceded by another line and by commenting out the first line I was able to start printing</p>
<p>Lines in question:</p>
<pre><code>G1 X3 Y1 Z15 F9000 ; Move safe Z height to shear strings
G0 X1 Y1 Z0.2 F9000 ; Move in 1mm from edge and up [z] 0.2mm
</code></pre>
<p>However, while I was able to start printing, I soon found out that the extruder was doing the same thing with every retract it would create a loud screech and the filament wouldn't be retracted this caused heavy stringing as well as poor layer adhesion resulting in prints failing. I figured the problem was with the version of Marlin I was using so I attempted to use the latest bug fix. However, I was still experiencing the same problems. I attempted to see if the stepper current was the problem and after identifying that the stepper current was not the cause of the problem, I figured I needed to replace the stepper motors and after replacing the stepper motors the problem still remained. I figured the problem must be with Marlin so I attempted to use Klipper. However, I am still experiencing the same and now I can't even complete a mesh bed leveling as the movements that Klipper uses are triggering the loud screeching and causing the steppers to freeze up.</p>
<p>I am unsure as to what could be causing this as I think I've checked everything that could be causing it so I'm not quite sure how to proceed I've also made a video that should show the problem in action. So I guess I'm wondering what's my next troubleshooting step?</p>
<p><div class="youtube-embed"><div>
                <iframe width="640px" height="395px" src="https://www.youtube.com/embed/v_vXF8f9GdQ?start=0"></iframe>
            </div></div></p>
<p>I have tried changing the drivers back to TMC2208s there have been no changes on both Klipper and Marlin.</p>
<p>I tried switching to an MKS Gen L V2.1 in case it was a mainboard problem, still experiencing problems.</p>

<p>The only other thing I think I can try is running the TMC2209s in standalone mode</p>

CC BY-SA 4.0
2022-03-05T18:03:35.087Z
I can't find anything suspicious in the Klipper config. Aside: this isn't your issue, but the non-whole-number rotation distances for X, Y, and Z are almost surely wrong because of how timing belts and lead screws work. If you measured X and Y errors that you were trying to correct for, they're almost certainly extrusion width errors (which don't scale with object size, unlike esteps errors that would scale with object size) or backlash that needs to be fixed mechanically. Likewise Z is almost surely a bed height error.
R.. GitHub STOP HELPING ICE
CC BY-SA 4.0
2022-03-06T02:34:08.963Z
just tried fixing that still no change.
Dexter Grif
CC BY-SA 4.0
2022-03-06T15:25:30.523Z
Yes, I wasn't proposing that as a solution to your problem here, just a note about something else that will come back to bite you if you care about dimensional accuracy.
R.. GitHub STOP HELPING ICE
CC BY-SA 4.0
2022-03-06T15:26:30.540Z
I've watched the  video now, BTW, and I don't immediately have any other ideas for solving this. I'll follow up later if I think of anything else.
R.. GitHub STOP HELPING ICE
<troubleshooting><extruder><z-axis><stepper-driver><stepper>
Stepper motors on the extruder and Z-axis seem to freeze up during any fast movements
Dexter Grif
# Stepper motors on the extruder and Z-axis seem to freeze up during any fast movements

(Asked by: username_0 on 2022-03-04)

OK here's some background of the problem:

Symptoms:

* All retracts on the extruder produce a screeching noise. The extruder extrudes normally all other times.
* Any fast move on the Z-axis also produces a screeching noise and the Z-axis will move normally at all other times.
* This appears to happen regardless of any printing state whether the heaters are on or not it will still occur it even happens during the ABL process.

Specifications of the printer:

* Mainboard: MKS Gen L V2
* Drivers: TMC2209 UART
* Stepper motors: Stepperonline 17HS15-1504S 1.8 deg 1.5A
* Pulleys: GT2 16T
* Leadscrew: 2 mm pitch T8
* Hotend: E3D V6

OK so basically I performed an upgrade of my stepper drivers as well as the leadscrew and pulleys on my 3D printer which was originally a Tevo tornado and at the start of every print I would experience a loud screeching noise coming from the Z-axis and I originally identified it to be a single line in my G-code that would only trigger the screech if it was preceded by another line and by commenting out the first line I was able to start printing

Lines in question:

```
G1 X3 Y1 Z15 F9000 ; Move safe Z height to shear strings
G0 X1 Y1 Z0.2 F9000 ; Move in 1mm from edge and up [z] 0.2mm

```

However, while I was able to start printing, I soon found out that the extruder was doing the same thing with every retract it would create a loud screech and the filament wouldn't be retracted this caused heavy stringing as well as poor layer adhesion resulting in prints failing. I figured the problem was with the version of Marlin I was using so I attempted to use the latest bug fix. However, I was still experiencing the same problems. I attempted to see if the stepper current was the problem and after identifying that the stepper current was not the cause of the problem, I figured I needed to replace the stepper motors and after replacing the stepper motors the problem still remained. I figured the problem must be with Marlin so I attempted to use Klipper. However, I am still experiencing the same and now I can't even complete a mesh bed leveling as the movements that Klipper uses are triggering the loud screeching and causing the steppers to freeze up.

I am unsure as to what could be causing this as I think I've checked everything that could be causing it so I'm not quite sure how to proceed I've also made a video that should show the problem in action. So I guess I'm wondering what's my next troubleshooting step?

I have tried changing the drivers back to TMC2208s there have been no changes on both Klipper and Marlin.

I tried switching to an MKS Gen L V2.1 in case it was a mainboard problem, still experiencing problems.

The only other thing I think I can try is running the TMC2209s in standalone mode

**Tags:** troubleshooting, extruder, z-axis, stepper-driver, stepper

> **Comments:**
> **username_1**: I can't find anything suspicious in the Klipper config. Aside: this isn't your issue, but the non-whole-number rotation distances for X, Y, and Z are almost surely wrong because of how timing belts and lead screws work. If you measured X and Y errors that you were trying to correct for, they're almost certainly extrusion width errors (which don't scale with object size, unlike esteps errors that would scale with object size) or backlash that needs to be fixed mechanically. Likewise Z is almost surely a bed height error.  
> **username_0**: just tried fixing that still no change.  
> **username_1**: Yes, I wasn't proposing that as a solution to your problem here, just a note about something else that will come back to bite you if you care about dimensional accuracy.  
> **username_1**: I've watched the  video now, BTW, and I don't immediately have any other ideas for solving this. I'll follow up later if I think of anything else.  

---

## 3 answers

### Answer by username_2 on 2022-04-05. Score: 3

The maximum RPM depends on motor current. Higher current, lower max rpm.

I checked your klipper.conf and I can say that you should definitely reduce the currents for all motors. Extruder and Z motors at 0.9 A is crazy, for example. X and Y 0.7 A is enough, for Z and extruder 0.4 A is good already.

Also, you request F9000 which is impossible on that printer, therefore you are automatically limited by the firmware max speed. Try manually asking a more reasonable speed, like F2000. Keep decreasing until it works. Try decreasing the acceleration too: you have 120, try with 50 which is good already for Z moves. If it works, increase it progressively.


---

### Answer by username_3 on 2024-04-28. Score: 1

More often than exceeding the MAX RPM, you are exceeding the instantaneous torque at the speed. The motor torque force is determined by the strength of the magnetic fields. The magnet field for the permanent magnet is fixed, but for the electrically driven magnet depends on the current through the coil. The coils are inductors, and the current must charge and discharge, similar to what we expect from capacitors. This current change is caused by the voltage applied to the coil. A higher voltage charges the current faster.

Typical stepper motors are rated at a particular current through the coils. Since the coils also have a resistance, the "voltage" of a stepper motor is just the voltage that causes the rated current through the coil resistance. $Voltage = Current \* Resistance$ -- Ohm's law. This gives very slow charging, and a motor so driven won't have a high speed, and the torque will fall off quickly with speed.

Most stepper drivers drive based on the current, not the voltage. The driver monitors the current, and if it is too low, the driver applies a charging voltage. If the current is too low, it applies a discharging voltage.

The point of all this is that higher voltage is good. And the parameter that matters more than MAX RPM is the acceleration.


---

### Answer by username_1 on 2022-03-04. Score: 1

I haven't had time to view the video, but in general, the symptom you're seeing means you're trying to drive the stepper above the max RPM it can handle. Roughly speakling, coils (in the motor) resist a change in current, and past a certain point, a given voltage is insufficient to change the coil currents to perform a step before it's time for the next step. Typical steppers in cheap 3D printers max out around 1500-2000 RPM and lose power (meaning they'll likely work under no load) a little bit before that.

To figure out your motor RPM, multiply the axis speed (in mm/s) by steps per mm (full steps, not microsteps, so divide by number of microsteps per step) to get steps/s, then convert to rotations/min by multiplying by 60 and dividing by 200 (steps per rotation for a 1.8° stepper).

> **Comments:**
> **username_0**: Ok so my printer worked with the same settings before at least for the extruder (can't say this about z cause of the lead screw upgrade) and my extruder steps per mm are 400 and the retract speed is 30mm/s so that would put the RPM at 3600 so I guess if that is something the TMC2209s can't handle then I might go back to the TMC2208s  
> **username_1**: @username_0: Keep in mind steps/mm here means full steps not microsteps. I'll clarify that in an edit later. So it might not be as high as you calculated. 30 mm/s retract should be no problem with an ungeared extruder; only with a very high reduction ratio would that be problematic.  
> **username_0**: it is using a titan extruder so I am unsure how that changes things. also I am using 16 microsteps  
> **username_1**: @username_0: That should just be 25 full steps per mm and thereby 225 RPM.  
> **username_0**: ok so the output of M203 (Max Feedrates mm/s) is: M203 X250.00 Y250.00 Z30.00 E55.00 so the RPMs are RPM=(((x*x_steps)*60)/200)/16 X=476.85 Y=472.5 Z=907.3 E=437.8  so that looks like it is within the limits.  
> **username_1**: @username_0: Are you sure you don't have any start gcode or anything overriding those limits on a per-print basis?  
> **username_0**: Let us [continue this discussion in chat](https://chat.stackexchange.com/rooms/134596/discussion-between-username_0-username_0-and-r-github-stop-helping-ice).  

---

