Heatsinking a Pololu A4988 / A4983 stepper driver

I have been using the Pololu A4983 / A4988 stepper drivers for quite some time to drive my timelapse dolly’s stepper motor. I used them due to their relative low cost and their ease of use as well as the fact that they support 1/16 microstepping mode which when using a toothed belt with the timelapse dolly is perfect for tiny movements such as ramping.

A note on the microstepping, the steps are so small that it can even be used for focus stacking etc moving just 0.2 mm per step.

The only problem I have with these stepper drivers is that the chip is so tiny and even though rated up to 2A, without proper cooling they are realistically only able to deliver about 0.7 A before overheating and shutting down.

Since the design I use for the dolly is one the “U” configuration with the belt secured on either end of the rail and the motor driver on the sledge itself (along with the camera of course) a failure or thermal shutdown of the driver could be catastrophic in terms of cameras crashing to the ground.

I use BIG stepper motors and in order to drive them at their highest capacity I would ideally need to run the driver at 2A. If I set this without any cooling it will overheat in about 15 seconds and will go into thermal protection mode, this is understandable if you consider the size of the chip:

For those of you who have not seen it before:

Pololu stepper driver front and back. (Image credit pololu)

There have been a few incarnations of my heatsink endeavors but they all rely on a the premise of using epoxy to fix a larger heat conducting material onto the chip with some thermal paste in between the chip and the larger piece of metal and then fixing an even larger heatsink to that.

The first heatsinks I built were the following:

Rudimentary but a lot of cooling area.

As you can see it relied on a large piece of aluminum with some rods coming out of it, they were pressed into holed slightly smaller than the rods to ensure they would hold. I used a piece of U-Bar aluminium to with a hole in it with which I could attach the large heatsink.

This method worked relatively successfully but it made the whole thing rather fragile because if that ever caught on anything the chip would be ripped right off the board (fun fact, epoxy gets harder when heated). The current I could put through the chip with this heatsink was about 0.4V on the ref pin, meaning about 1A of current to the motors. This is acceptable but the transfer of heat was not optimal and I was relying on the epoxy, bonded to the components on the board to hold the whole thing in place. This was the Maximim of this setup.

The calculation for current by using the sense pin (ref pin) is ref * 2.5. 0.5 * 2.5 = 1.25A

The case in which the electronics (screen, button pad and arduino) were housed also contained the stepper driver and the subsequent heatsink, this meant that the box had to be quite big and should have some sort of air flow else everything could get rather hot.

A4988 with 5V regulator, Chip heatsink and match

In order to minimize this whole setup I purchased some chip coolers meant for high performance PC components such as north bridges etc. These copper heatsinks come with thermaly conductive tape to attach to the chips however their sheer size means the amount of heat they can dissipate is only about 1A worth (VRef of 0.4). After this the chip will go into thermal runaway and shut down. Pity that nothing is ever that simple. As a side note, this was one of the methods that I found while researching ways to heatsink a pololu.

Finally I changed the general design of the controller-dolly setup. Previously I had the following setup:

Power cable from battery to control unit

Camera trigger cable from unit to camera (on the dolly slider)

4 cable, high current cable from stepper unit inside control unit to stepper motor

This complexity meant when out in the field you had to worry about 3 cables, it was a pain.

I changed the design to move the stepper driver onto the sledge along with the optocoupler to fire the trigger, all I had to do was to change the 3 cables to 1 8 strand cable to send the various control signals from the arduino to the stepper driver and optocoupler circuit to drive the stepper as well as control the camera and then of course send back the 5V from the regulator to the arduino / screen and button pad.

This meant only 1 cable from arduino to dolly, and only one extra to the dolly sled in the form of the power cable.

With the added freedom of design I gained I was able to design a high power heatsink as space was no longer such an issue:

Pololu with small aluminum square tube epoxied to the chip. Chip is mounted on a breadboard which I designed for ease of connection.

Note the crocodile clip, that is the one measuring the vRef.

Closer View with thermal paste on top

Partly boxed, connecting cables soldered onto the board

Using thermal paste and a large aluminium bar I secured the bar tightly via two bolts onto the aluminium tubing.

6 Responses to “Heatsinking a Pololu A4988 / A4983 stepper driver”

This is awsome, its nice to see a solution on this. I have been using a relativly low powered NEMA 23 stepper using a polulu a4988 on my timelapse system Chronos 2.0, I can get away with the lower powered stepper with the lead-screw design, but i have some new motors on thier way which run 1.7 and 2.2 amps, i might have to machine out some heatsinks. I found your post on here very informative, thank you for taking the time to put this on here.

Hey Nilsen, I just wanted to say thanks as well. I just blew two A4988s this evening and I’m trying to figure out why and how to prevent it. Also developing it for a pocket dolly (http://makerslider.com/) I’ll have to check out the vref measurements like you did here and figure out what kind of amperage is going through the motor.

Very cool, I’ve been toying with the idea of making a tiny water lock that can mount on the stepper driver and run water/coolant like some people use on the computer components. Making the darn thing small enough and water tight looks like it might be a tough nut but if all else fails I may try your method.
Did you use any kind of sealant or coating prior to pouring in the resin? They make an aerosal spray sealant specially design for use with casting resins, and I’ve heard of others running into trouble when the resin seeps into some components.