All 5 steppers extremely hot when not in use after 2 hours

Just bought a whole kit, minus the printed parts from V1. This includes a rambo board. Long story short had issues with milling, did a bunch of troubleshooting. Decided to call it quits for the night watched a movie, with the board still plugged in but not in use. After said movie ended I decided to try one more thing. I touched one of the stepper motors and it was extremely hot. I checked all 5 all had a constant temp range of 125 degrees F +/-. The machine sat idle for at least 2 hours with only power to the board. Does anyone have any ideas on how to fix this? Thanks in advance!!

Even while idle the machine draws current to positively hold it’s position. It sounds like the currents on your stepper drivers are a bit high. You can get them to 40C on an mpcnc before worrying. That is due to the pla mounts. The steppers themselves can take 80C all day.

What drivers do you have?

1 Like

The command M84 will cut power tot he steppers, so that they don’t draw current when idle.

Be aware though that if you add this to the ending Gcode for your programs, Marlin will forget the current position. Your machine might also drop the Z axis down onto the workpiece, so I generally send the command when I’m done and ready to walk away and not use the machine.

Still, my motors don’t get super hot. I’d guess that you need to adjust the drivers on that RAMBo board. Those are set in firmware, but I’m not sure where, since I don’t have one of those.

1 Like

I believe that 125 degrees F measured at the case is within the safe operating temperature of the steppers. The issue here is that the steppers were still at that temperature two hours after you finished your job. This implies that your steppers are still holding after two hours when the teppers should have been disabled after 20 minutes.

The default stepper shutdown is controlled by these defines in Marlin’s configuration_adv.h, and the value is measured in seconds:

/**
 * Idle Stepper Shutdown
 * Set DISABLE_INACTIVE_? 'true' to shut down axis steppers after an idle period.
 * The Deactive Time can be overridden with M18 and M84. Set to 0 for No Timeout.
 */
#define DEFAULT_STEPPER_DEACTIVE_TIME 1200
#define DISABLE_INACTIVE_X true
#define DISABLE_INACTIVE_Y true
#define DISABLE_INACTIVE_Z false
#define DISABLE_INACTIVE_E true

It is possible that your g-code is overriding this value. Search your g-code for an M18 or and M84. If you find either one, it is likely being added as either start or end code. These sections of code should be editable, and the place you need to do the editing is most likely to be in your g-code sender.

I would advise against adjusting your stepper current. The values in the V1 maintained firmware are conservative enough that I’ve never seen anyone on the forum need to turn them down when using V1 purchased hardware. I have seen a few people bump them up a bit. If you want to adjust the current on a full Rambo board, it is set in this line of configuration_adv.h:

#define DIGIPOT_MOTOR_CURRENT { 138, 138, 138, 138, 138 }

I believe a value of 138 is a setting of 0.85A RMS, and changing these values will require you to compile the firmware and re-flash your board.

2 Likes

One quick addition is that if you use TMC drivers you can set current via gcode. You could add a statement to the end of a job to lower the current to a lower holding level and reupp it on the start of the next project.

Not sure what this would solve though as they would still get hot during a job and they heat up pretty quick.

Thanks for the heads up on that, everyone! I guess I jumped the gun, this is my 2nd build, the 1st being the burly and this one being the primo. With the burly I never accidentally leaned into the stepper because it was mounted inboard, with the primo it is outboard. The steppers are within range, I shot a 40c with my IR thermometer while in operation and currently close to 50c while not in use. I will use this info if the temps get really out of hand.

I’m not super tech savvy, so I’m not 100% on the drivers. I have a Ramdo board running Arduino and Marlin. Did the Arduino software install and did install the drivers when asked.

What led me to this question is that I am having issues while milling text. I was hoping for a simple the steppers are too hot solution but it seems that wont be the case. I did however find a loose grub screw and that actually took care of 99% of my problem. I don’t have an issue cutting a straight line along the x axis the issue is on the y I get two lines where there should only be 1 I measured everything I could think of, I moved the machine around and checked my distance, all were within 1mm of each other. I will search the forums for an answer, I may have to start another post on that issue.

Thanks everyone for the info.


The new version of the software will turn them off after 20 mins of idle. You can get is from MarlinBuilder releases and flash it with Xloader instead of arduino. But this may not be a good enough reason to update.

That may be worth it in the future, but I think your right, I can hold off on the update for now, I do like the idea of the steppes shutting off after 20 minutes of idle. Its just as easy for me to power everything down after I’m finished, I usually do just left it powered up as I was trying to troubleshoot some issues.

If you are running an older version of the firmware that does not disable the steppers, just add the following line to your CAM or g-code sender start or end code:

M18 S1200

This will disable the steppers after 20 minutes of inactivity.

1 Like

I prefer manual stepper disable vs automatic. There are times when something interrupts me in the middle of setting up the machine for a second operation on a part. There would be extra work if that diversion lasted long to where the steppers shut down and I lose position; in the case of a second operation, perfect alignment with the previous operation would be lost forever. I forget stuff more often than the average joe, so I get the idea of auto-shutoff. However in this case I think the best way is have the motors setup so they could be left on all day if wanted/on accident without causing problems. On an MPCNC using the recommended hardware, this is certainly possible. This way you could even call it a night while midprocess on a part, and come back the next morning to do further operations on the same part with perfect alignment.