getM1CurrentMilliamps() always returns zero

I have a 12V pump connected to a Due via the Pololu controller. I’ve tried the demo application and the pump speeds up and slows down fine. However the current reading returned by getM1CurrentMilliamps() is always zero.

I’ve tried connecting it to M2 instead of M1.

I also connected a wired from A0 to A10 and altered _CS1 and _CS2 in the library code in case there was a problem with my Due’s A0. Still get zero. I then tried connecting it to V3.3. I then get a correct reading for a 3.3V source.

Any ideas what the problem could be? Seems to me like a broken track or bad solder joint somewhere.


I am sorry you are having problems using your board. It is unclear which board you are using with your Arduino Due; the getM1CurrentMilliamps() function is not unique to just one of our products. Could you tell me which board you are using? I suspect you are using either our VNH5019 or MC33926 motor driver shield. If so, please note that the voltage levels the current sense pins will exceed the Due’s 3.3 V limit at certain current draws (you can read more about this in their user’s guides).

Additionally, could you tell me the maximum current you expect your pump to draw? Could you try measuring the CS pins with a voltmeter and see if the output changes as your pump speeds up? Could you also post pictures of your setup and both sides of the board?

- Jeremy