I’ve just moved from a Pi 4 to Pi 5 in my project which broke a lot of good working things but one thing has remained the same… my stepper motor gets so hot in just a short time of use it’s capable of burning a hole in my desk!
To keep things simple for my first stepper motor use I got both Adafruit branded bonnet and motor since their wiring matched the pictures as I wanted to be sure I had got it connected correctly.
The sample test code here shows the calls are very straightforward and there’s seemingly not much more than I can or need to do.
I have a commented out line for a “release” call which is described as being used to “de-energise” the coils which sounded hopeful for what must be some power related insane heat I’m getting… but any use of that function also means the relative position drifts with repeated use and so would not meet my essential needs for this project.
Given everything looked good I thought I must have a motor issue and got a “pancake” style (but another brand) since that is closer to my end needs anyway but the same problem exists… so it’s not the motor then.
Out of sheer guessing I tried swapping between 5V and 12V supplies but that doesn’t make any difference either.
I can’t believe a stepper motor temperature being the same as the surface of Venus is normal so does anyone have any ideas of that’s missing/wrong here?
(btw I hate how the move to the Pi 5 broke my good working GPIO and 2811 LED code with my project pf some months development suddenly dead on all fronts)
Steppers get hot, and aren’t usually used with the frame sitting on a surface.
I can’t see that the driver has any current control, but if you found out how to set it then the first thing to do is to reduce it.
If that’s not possible them perhaps your motor simply can’t handle the default current for the driver - the fact that the wiring is compatible does not tell you anything about how it will work with the current that the driver can deliver. What is the current rating for that motor?
DOUBLE mode is a high-current mode and would normally be used at about 70% of the rated current for the motor. If you can’t adjust the driver current you would be better off avoiding double mode.
Your motors being hot enough to burn marks into your desk isn’t normal operation.
@Jeff105671 is on the ball here. The wiring being compatible is mostly a standard (not all motors but lots of steppers will use a JST connector). Try Jeff’s suggestion of changing your operating mode first. Hopefully, it can be as simple as that to cool these motors down.
Thanks yes I had hoped by using the same brands own units as per pic all things such as current draw would be handled as there are no options on the board at all.
I’ve tried the different mode and it’s at least down to surface of Mercury now and not that of Venus… but that still seems very odd to me… I don’t want it to be a factor for long term use… the end product will need to run for hours at a time and hopefully years as a client purchase…
There must be more I need to do/change and will have to keep looking into it…
Yes I would have thought the same too as being very un-normal.
I’ve tried the mode change and also diff power supply to 5V now (motor rating says up to 1A/phase 5.9V) … still way too hot to the touch but my desktop is no longer burning up immediately but I’m still concerned with such temps…
While there seems to be little else I can do in terms of options I will keep looking into it and see what else might be a solution… it would have to be power based I would have thought as the heat has to come from somewhere… but the board is something of a black box and reputable brand with matching motor… sigh
Perhaps the driver does not have a current limiting option. In the days when steppers were driven from H bridges made from discrete components high-wattage low-value resistors were always inserted in series. They are still used where it is necessary to match a driver with a motor.
I am afraid my involvement with RPi is reading the posts on the Forum.
What you just said is a very good reason fo staying away from the RPi circus and as I said I have not done so (yet). I still might have a dabble.
Reading the posts there does not seem to be much in the way of backward compatibility which does not sit well with me personally.
But I stress that is only me.
A lot of people might like to pull their hair out but I have not got enough left for that luxury.
But I would expect that if you purchased a stepper and driver as a package they would be compatible. On the other hand how hot is hot. In the electronics business hot to the touch does not necessarily mean a problem. If you look at some semiconductor specs the acceptable junction and package temperature would frighten you. Well over 100ºC which to the touch is VERY hot. On the other hand I don’t think your stepper should burn your table like that.
Do you have a thermocouple type thermometer to measure the actual temperature. If so stick it on with some heat sink compound to get a good transfer. Or not so common are some little stickers which change colour when a trigger temperature is reached. These are often found inside commercial devices to assist with warranty claim investigations involving heat. Like that little moisture detector sticker inside your phone.
You might possible find that even though this motor feels very hot it is within spec, that is if you can find this spec published. All steppers will increase temperature when stopped as the only opposition to current flow is the DC resistance of the coil activated at the time.
Cheers Bob
It’s not running fast at all… in fact I put in a sleep factor to give it a leisurely change in angle which is what I want it to have.
In the pics I had just moved over to the Pi 5 so it’s relatively barebones… I was just bringing back 2 of the hats first before the individual wired GPIO… this heating issue was on the 4 as well but with the move I wanted to address it so I can systematically work on the rest in turn.
The overall project that I had running on the Pi 4 does have quite a few devices such as laser distance finder, 2 cont servo, 1 ang servo, 2 x LED strips, tiny OLED, stepper… and likely a few more things to be slipped in yet such as controllable induction coils etc… there is quite a list of tried and discarded devices along the way (radar, acoustic, FSR…) to reach this combination I’m happy with the performance delivered.
It’s just over 6,000 lines of code so it does a fair bit with it all… but right now I want the move to the 5 to be done and the high temps to be worked out before I can push on with the rest.
I’ll have to bust out the drone which has a thermal camera and point at it to get a reading lol…
I super suprised at the breaking of such fundamentals with the 5… given the vast reliance on libraries and the good road leading to here and the community of developers and businesses it’s not good to throw it all out like that…
If needs must I’ll search for work arounds, or change design but I was expecting just to keep up the momentum and only deal with expected issues such as things not being plugged back in properly etc… I really was expecting to just turn it all back on an continue with things as I was up to… not deal with a sudden fundamental show stopper that’s for sure
There are some nice things I like about the 5 hardware and options on the board… but broken software wasn’t one of them…
Could be a clue here. Each coil is spending too much time at maximum current thus getting hotter. Try increasing the speed temporarily and see if it runs cooler.
Measure the temperature if you can. Dn’t rely on the wet finger method.
Cheers Bob
2 Likes
And you can get our latest projects and tips straight away by following us on: