Let's Make Robots!

4 channel motor cotroller with encoder mixing circuit

4_Channel_instruction_manual.pdf1.42 MB
Vendor's Description: 

This is the 4 channel motor controller from DAGU. Although designed for the Rover 5 chassis this controller is suitable for any small robot using Omni or Mecanum wheels.

4x low resistance FET "H" bridge rated for 4.5A stall current each.
4x Current sensing circuit with an output of aproximately 1V per amp of current draw.
4x Quadrature encoder mixing circuit.

The built in mixing circuitry mixes the 2 inputs from the quadrature encoder into a single output of twice the frequency. This allows a single interrupt pin to monitor both outputs of a quadrature encoder. Speed and distance can also be measured with twice the resolution compared to monitoring a single output. See the attached instruction manual for more details.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Hello, I am going to buy a rover 5 motor driver to drive 4 12V sevo motors with I-stall of 1,14A. I also need the encoders for feedback. Can you please guide me how to use the direction pin. I mean the other H-brigde circuits I used there were two logic-pins to control the direction of motor. Here it is only one. I also need to ask that how can I use the encoder pins? I read that only one Interrupts can be used at a time in arduinoMega. And I also can not seem to find out how to use the Current pin in programming. I mean I know what it is for.? Please Help. Thanks

The direction pin is very simple. High is one direction, Low is the other.

The current pin provides an analog output. Connect it to an analog input.

I do not know where you are getting your information from. You can use all of the external interrupts.

Have a look at my tutorial here for some more information on encoders: http://letsmakerobots.com/content/how-use-quadrature-encoder

The tutorial explains how the outputs of the encoders can be mixed so that 1 external interrupt can monitor both outputs of a quadrature encoder.



I was wondering why the board has 8 ground connections. I was hoping to jump one to the next then connect to ground for simplicity. Are there 8 ground connections to prevent cross talk in ribbon cable or something of that nature?

Also two noob questions. I am powering the motors direct from a 13000mAh 7.4v Lipo. This Lipo also powers a DF Robot 25W power regulator for the 5v logic. I am assuming that I should not connect a common ground between the regulated power and the power direct form the battery.

Finally just wanted to confirm that I am ok to have a single switch on the battery because the time between the motors being powered and the logic being powered will be negligible.


The multiple grounds are to make it easier when connecting multiple encoders, controllers etc. For example, the 4 motor version of Rover 5 has 4 encoders. Each encoder needs power and ground connections. If the motor controller only had 1 ground and 1 +5V connection then it would be difficult to connect 4 encoders to the board. All the grounds and +5V pins (Vcc) are connected together on the PCB.

Noob question 1: If you don't connect the grounds then it won't work.

Noob question 2: yes a single switch on the battery should be fine although you will need to check if the 25W power regulator will work at 6V - 7.4V. A lot of the switchmode regulators need at least 8V but a 2S LiPo will drop to 6V when it's flat. You could end up with no 5V logic, just motor power which is not recommended.

Oh thanks I get it now,

- The extra ground pins provide a connection to ground and are not required to be connected to ground for operation.

- I looked at the schematic for the DF robot power module and grounds are connected together internally on the board so no need for another connection. http://www.dfrobot.com/image/data/DFR0205/Power%20Module%20Schematic.pdf

- I will test the drop out voltage beofre use. The Datasheet for the GS2678 states "Minimum Drop Out 0.6V" my 2s Lipo "should" be safe. http://www.dfrobot.com/image/data/DFR0205/GS2678%20datasheet.pdf

Thanks again!! 


I am using this board with a rover 5, a raspberry pi and a 5v regulator. The motor voltage is dit=rect from the 6 AA battery pack and the logic is from the regulator.

it is being controlled with a Wii controler using Bluetooth.

The issue I have is that it works in reverse and turn left and turn right (turns are with motors in opposite directions) but as soon as I go forward the Raspberry Pi reboots. I can only assume there is too much curent being drawn.

Is it possible that the motors draw more current in one direction than the other?



To begin with check your power wires. You did not say if you are using alkaline batteries or NiMh.

DO NOT USE ALKALINE BATTERIES because they have a high internal resistance and their voltage can drop drastically under the load of two motors starting up.

Use good quality Alkaline batteries. A good quality AA NiMh cell can deliver about 5A. A proor quality NiMh can deliver about 2-3A.

High quality Alkaline batteries might deliver reasonable current for a few minutes but it drastically shortens their lives and the voltage quickly drops.

Thanks. The power wires are all connected OK. I have been using MiMh batteries bbut they are old so I will try some new ones.

hello i had a problem with this board the IC 10 has fried out and for what I see that problem didnt happend just to me I woud like to ask for the new board schematic becouse the one in the net is for the old one

thank you very much



I just looked and I do not have the new one either. I will hunt it down.