Controlling Pierburg CWA50 pump using Arduino successfull

After successfully checking and showing the temperatures, the next step was translating them into pump speeds.

According to the specification the motor and controller need a coolant flow of 13 to 16 litres per minute. About the motor I’ve read “It withstands great abuse to the degree you cool it.” so depending on the usage conditions some spare capacity can be nice.

For the Pierburg CWA50 pump I found that the min. to max. flow of the pump corresponds with a PWM duty cycle from 13% to 85%. Below 13% it does not properly work. In the documentation of Tecomotive who have TinyCWA, a stand alone controller for the pump I read that at 50% the output should be between 13 to 15 liter per minute. Therefore I created the following curves.

koel curves PWM

Once in the car I can further fine-tune those based on actual flow due to pressure drop. I translated this into my sketch/software.

arduino sketch

Did a small test. Included a scenario that sets the pump to 100% in case a measurement error occurs.

temperature to duty cycle

And a short movie:

Next step was to actually control a pump. I created a setup. The pump connector I ordered from BMW.

BMW pomp connector

Furthermore I improvised an overflow vessel.

overflow vessel

Setup ready, testing time!


After some fine-tuning it worked!

LCD aansturing pomp

The setup in action.

The main question was: How much power does the pump consume at a lower flow rate. The good news is that at 19 liters/minute it is only 2 Amps.

19 liter per minuut 2 ampere
And at 25 liters/minute 6 Amps.

25 liter per minuut 6 ampere

Below another video the the sensor cooling down and slowing the pump.

Next step is adding two more pumps, perhaps a bigger screen and controlling the valves.

Leave a Comment


OldVolvo is a classic Volvo hobby blog by Lars Rengersen.

Also electric?

Do you also want to convert your car (Volvo or another brand) to full electric? As a spin-off of my own EV conversion project I started EVcreate for 'enabling EV conversions'

More info