Increase Torque, lower RPM and obtain same speed for 2 DC motors

Hey guys,

I’m newbie with these stuffs, hope you guys can help with some questions.

Simple project, rotating 2 DC motors with 60 degrees offset with one another (low RPM, high torque for carry lot of weight). Right now I am just testing around.

2x DC motors (E30-400-G) -
2x Syren 50 motor driver - SyRen 50A regenerative motor driver - analog, R/C, and serial motor control
Arduino Uno

I have done some research before posting but I am still very confused on how exactly to change the torque (or i guess current control) and another issue is that when i set 2 motors to run at the same speed, they aren’t. One is drawing more current than the other.

#include <SoftwareSerial.h>
#include <SyRenSimplified.h>

SoftwareSerial SWSerial(NOT_A_PIN, 11); // RX on no pin (unused), TX on pin 11 (to S1).
SyRenSimplified SR(SWSerial); // Use SWSerial as the serial port.

SoftwareSerial SW2Serial(NOT_A_PIN, 12); // RX on no pin (unused), TX on pin 11 (to S1).
SyRenSimplified SR2(SW2Serial); // Use SWSerial as the serial port.
int power = 30;
int power2 = 30;

void setup()

void demoOne() {

void loop()

this is what i got so far, obviously very basic since I am still doing a lot of testing and researching.
I am sure there are few extra parts I need to purchase to make it all happen but can you guys point me in the direction on how to increase torque while lowering the RPM as well as correctly set the motor to run at the same speed.

Great Great Great appreciation! thanks!

Well, you can control speed by varying voltage, or torque by varying current (Amps), but not both at the same time, to sync motor speeds will require tach generators or encoders on both motors and a master / slave arrangement. More info please :)

As @756E6c has said you will need some form of feedback so that the Arduino can detect the speed of each motor and adjust the output to keep the speed constant. Two otherwise identical DC motors are unlikely to run at the same speed with the same current setting.


Interesting project first. But i have some questions in my mind. I think you want 2 motor to turn at same speed or a speed relation between them. But you also want that load on each motor be variable or not same weight and shape right? So there are different power requirements for each motor.

Electric motors has a stall torque which means the max torque at zero speed. Since power = torque x speed, your torque is variable according to your desired speed which depends second motor somehow. Also Power = V x I . Same relation like torque and speed.(your link show these charts) So you need to change only speed and hope motors power is sufficient to rotate the weight at that speed. You know the torque and you know the max speed, so your operation envelope should be clear. However, you need to control the speed with sth like a tacho to match two motor speed. Futhermore, If Load's Inertia and speeds are not excatly same for two motor, you need to use a PID control to compansate it.

I try to make comment according to what i understand from your post. If you share more info, maybe we can help more.

How to control Voltage in a dc motor (via PWM or other method) is clear I think. But how you can control only the current of a motor without touching the voltage ? Is it possible ? I think that the current depends of the load (resistance/empedance) and voltage.

Now, in your question akpleNolan0810, the only way to have absolute control of a motor speed (or torque) is with a closed loop system, with ancoder and propapbly PID. Not very easy if you don't know what is PID and how to set the values of the equation. I had a similar project and I gave up (ok i didn't spent more time to search it more becouse I have no free time). I decided to go with stepper motors instead.

Sounds like you want position control, ie two servomotors kept in sync? Which means having two separate servomotor setups, whether bought in or built from motor driver / PID loop / encoder

What speeds, torques/powers, precision are we talking about? ('low rpm' and 'high torque' is far too vague)

Hi, Welcome to the forum.

What are you using for you motor power supply? Have you set the current limit pot on the motor controller and if using Li-Po the battery cutoff set switches?

Tom.... :)