Sabertooth 2x5

The Sabertooth 2x5 Dual 5A 6V-18V Regenerative Motor Drive is a great way to control 2 DC motors with an Arduino for a differential wheeled robot.

Hardware Setup


For this example we have an Arduino Nano, the Sabertooth 2x5 board, two DC motors, and an external power supply. An external power supply is necessary for a project like this, the Arduino cannot supply enough power to run the DC motors. Set up your wiring to match the diagram below:



Plug your two motors into the side "M" ports. It doesn't really matter if you get the wires backwards, just flip them if your motor runs the wrong way.

Plug the positive voltage of your external power supply to the B+ port and the negative to B-.

The S1 input controls motor 1 and S2 controls motor 2. Connect these to PWM enabled pins.

Very Important: Make sure to connect the 0V port on the Sabertooth board to the Ground pin on the Arduino!

While working in Embrio in design mode, you'll have your Arduino plugged into your computer's serial port where it will be drawing power. Once your project is complete and you want it to run disconnected from your computer, you can plug the 5V port on the Sabertooth into the VIN pin on the Arduino to power it.

Lastly, make sure you have the configuration switches set up correctly on the Sabertooth, in this case they should be Off, On, On, Off, On, Off.

Using the Node



The Sabertooth 2x5 Embrio node controls only one motor, if you are creating a project with 2 motors you will need two copies of the node. Ideally, you will create two Agents, one called "Motor 1" and one called "Motor 2", each with its own copy of the Sabertooth 2x5 node with it's pin configured.

The input activation uses the negative portion and defaults as 0. Dragging the activation to -1 will cause the motor to spill at full speed in reverse, dragging it to 1 will make it spin full speed forward, and anywhere in between. If your motor spins the wrong way, you can either flip the wires connecting the motor to the Sabertooth, or use a Flip Activation node before passing the activation value to the Sabertooth node.

Supported Products

View discussion page on forum

To use this node in your Embrio project, either add it from the Library toolbar or copy the XML in the below box and paste it into a node screen.