

The Sabertooth is a high-performance motor driver designed for controlling DC motors and stepper motors in robotics and automation applications. It is capable of driving motors with high current demands while maintaining precise control. The Sabertooth features advanced control algorithms, multiple operating modes, and built-in protection mechanisms, making it a reliable choice for demanding applications such as robotic arms, mobile robots, conveyor systems, and automated machinery.
Common applications include:








The Sabertooth motor driver is available in various models, each with different current and voltage ratings. Below are the general specifications for a typical Sabertooth model (e.g., Sabertooth 2x25):
| Parameter | Value |
|---|---|
| Operating Voltage Range | 6V to 30V |
| Continuous Current (per channel) | 25A |
| Peak Current (per channel) | 50A |
| Control Modes | Analog, R/C, Serial, Packetized Serial |
| Motor Channels | 2 |
| PWM Frequency | 24 kHz |
| Efficiency | Up to 99% |
| Protection Features | Overcurrent, thermal, and low-voltage shutdown |
| Dimensions | 76mm x 76mm x 25mm |
| Weight | ~100g |
The Sabertooth motor driver has several input and output pins for power, motor connections, and control signals. Below is a typical pin configuration:
| Pin Name | Description |
|---|---|
| VIN | Power input for the motor driver (6V to 30V). Connect to a suitable power source. |
| GND | Ground connection for the power supply and control signals. |
| M1A, M1B | Outputs for Motor 1. Connect to the terminals of the first motor. |
| M2A, M2B | Outputs for Motor 2. Connect to the terminals of the second motor. |
| S1, S2 | Control signal inputs. Used for analog, R/C, or serial control modes. |
| 5V OUT | Regulated 5V output. Can be used to power external control circuits (max 1A). |
| DIP Switches | Used to configure operating modes and settings. |
Below is an example of controlling the Sabertooth in serial mode using an Arduino UNO:
#include <SoftwareSerial.h>
// Define the TX pin for SoftwareSerial
SoftwareSerial SabertoothSerial(10, 11); // RX, TX (RX not used in this case)
void setup() {
SabertoothSerial.begin(9600); // Set baud rate to match Sabertooth configuration
}
void loop() {
// Send commands to control the motors
SabertoothSerial.write(64); // Motor 1 forward at half speed
delay(1000); // Run for 1 second
SabertoothSerial.write(192); // Motor 1 reverse at half speed
delay(1000); // Run for 1 second
}
Note: Adjust the baud rate and commands based on your specific Sabertooth model and application.
Motors not running:
Overheating:
Erratic motor behavior:
No response in serial mode:
Q: Can the Sabertooth drive stepper motors?
A: Yes, the Sabertooth can drive stepper motors in certain configurations. Refer to the user manual for details on stepper motor control.
Q: Can I use the Sabertooth with a 3.3V microcontroller?
A: Yes, the Sabertooth is compatible with 3.3V and 5V logic levels for control signals.
Q: What happens if the input voltage drops below 6V?
A: The Sabertooth will enter low-voltage shutdown mode to protect the motors and the driver.
Q: Can I control the Sabertooth wirelessly?
A: Yes, you can use an R/C receiver or a wireless serial module (e.g., Bluetooth or XBee) to control the Sabertooth.