Dagu 4 Channel Motor Controller - Motor Speed vs Direction, Current Sensing

I purchased a Dagu 4-Channel Motor Controller (product code RB-Dag-55) from RobotShop a little over a year ago and finally got around to using it. The version I have has a red PCB. I am using this with an Arduino Mega 2560 to drive all 4 motors and monitor all 4 encoders on a Dagu Rover 5 4WD platform.

When I originally posted I observed a difference between the motor speed in the forward (DIR=HIGH) vs. reverse (DIR=LOW) directions. Turns out that I had a line of code that always set the reverse direction speed to PWM=64, even though I intended to set it to PWM=128. So I mistakenly thought that the reverse speed was always much lower than the forward speed. My bad.

However, I did notice a minor anomaly. There is always a small current output (about 15mA) on CH4, even when the CH4 motor is off (PWM=0) or disconnected. I tried reading the CH4 current from a different analog input pin on the Mega and got the same result. The current value is also higher on CH4 than on CH3 for the same motor driven at the same PWM, with the difference ranging from a high of 93mA at PWM=255 in the reverse direction to 44mA at PWM=64 in the forward direction. This amounts to about a 15%-28% error in the current between CH4 and CH3. Current on all the other channels seem to be in agreement with each other.

Anyone else have issues with the current sensing on CH4? I can accept that this might be normal variations between the channels. The bigger issue for me was the speed vs. direction, which turned out to be a non-issue due to my programming error.

I visually inspected the board under high magnification but did not find anything that would explain the CH4 current issue. I saw the same 15mA current with Vbatt (motor power) disconnected and at PWM=0 and PWM=128. So it appears that the current leakage is from Vcc, not from Vbatt as I originally suspected.

I’m planning to use the CUR outputs to make sure my motors are not being overdriven, so a less than 0.1A difference for a 2.5A stall current should not make a meaningful difference. I’m just curious at this point as to whether this is a inherent issue on all Dagu 4-channel motor controllers, a defective component on the board, or something I’m doing wrong (especially the latter).

I will keep looking. I may just get myself another one of these motor controllers just to see if the issue repeats. Anyone care to comment if they have this issue (or not) on their board?

No, it’s not (yet) an issue for me. Thanks for the offer though. I’ll continue to play with it and post again if I run into any issues. Thanks again for your help.

Update 4/15/2013 - Purchased a 2nd motor controller and did not have any issues with the current sensing. With PWM=0 to all motors, all current values are zero. With PWM>0 current values are reasonably close to each other. Issue appears to be only with 1st motor controller.

If I read the datasheet correctly, it does not seem normal for the SP8M3 to leak 15mA when DIR=0 and PWM=0. Maybe 10µA (0.01mA) at most. Could a defective SP8M3 cause this problem? It appears to be isolated to CH4 since the other 3 channels show no current when PWM=0, and lower current values than CH4 when PWM>0.

The CH4 motor controller works in both the forward and reverse direction, so the H-bridge appears to be functioning okay. In most cases, the motor speed is within 5% when driven using CH3 vs. CH4. It is only the current output (CH4 CUR) that is off. Could this be due to a defective LM358 (U12A on the schematic)?

I will attempt to visually inspect the board and solder joints, as well as my wiring, to see if I find anything unsual. This will be a little difficult with my not-so-good vision. I’m open to any other suggestions on how to resolve this issue, or possible explanations as to why the current reading on CH4 is higher than on the other channels.

The extra current drain can be normal indeed and caused perhaps by a variation in a discrete component (resistor, capacitor, etc).

Here is the driver datasheet: media.digikey.com/pdf/Data%20Sheets/Rohm%20PDFs/SP8M3.pdf

You can check if the current drain is within the chip specifications.

BTW, we are glad that you solved your speed issue.

The drain could indeed be caused by the components being a bit damaged or slightly out of specifications. If this truly causes a problem for you we can consider replacing the unit. If we understand correctly, the extra drain is not causing issues, correct?