Arduino As a Potentiometer (To Control PWM)


I have a 30 amp PWM that I use to control the speed of a 12v blower motor.

Turn up or down the pot and the fan speeds up and slows down accordingly.

What I’d like to be able to do is control the PWM (fan speed) based on temperature readings from the Arduino.

Is there a way that the Arduino can act as the pot (0k - 5k resistance)? Perhaps using some other hardware as well?

I don’t want to control a servo or stepper to actually turn the existing pot.

Any ideas?


I hate it when I look and look, then find the answer right after posting:

If there is a better way to do this, great, if not I'll pursue this way.


That would be a good way of doing it :-)

I don't want to control a servo or stepper to actually turn the existing pot.

now wouldn't this would actuallly be the arduino way? we'd love it..

a digital pot is good if you want to use your existing hardware ( the 30A PWM thing). but since it's a quite expensive piece of hardware and your arduino can do (low current) PWM you may want to look into (high speed) power mosfets and heat sinks.

30A is quite much if you really need them. maybe you can find something to start from in the robotics/RC scene.


If you are going down the digital pot rout make sure that the pot you are replacing hasn't got larger voltages on it that the digital pot can handle. Do some measurements on your system first, also make sure there is no direct connection with the mains between to pot you want to replace.

Great information everyone. Thanks!

The Arduino community is every bit as great and amazing as the Arduino itself.