

The BTS 7960 Motor Driver, manufactured by Infineon Technologies (Part ID: B0D732VYGZ), is a high-performance H-bridge motor driver designed for controlling DC motors with a maximum current of 43A. This robust driver integrates advanced protection features, including overcurrent, overtemperature, and short-circuit protection, making it ideal for demanding motor control applications.








The BTS 7960 is designed to handle high-current loads while maintaining efficiency and reliability. Below are its key technical specifications:
| Parameter | Value |
|---|---|
| Operating Voltage Range | 5.5V to 27V |
| Maximum Continuous Current | 43A |
| Peak Current | 50A |
| Logic Input Voltage | 3.3V to 5V (TTL compatible) |
| PWM Frequency | Up to 25kHz |
| Overcurrent Protection | Yes |
| Overtemperature Protection | Yes |
| Short-Circuit Protection | Yes |
| Dimensions | 43mm x 43mm x 15mm |
The BTS 7960 module typically includes the following pins for interfacing:
| Pin Name | Type | Description |
|---|---|---|
| VCC | Power Input | Connect to the motor power supply (5.5V to 27V). |
| GND | Ground | Connect to the ground of the power supply and control circuit. |
| RPWM | Logic Input | PWM signal for controlling motor rotation in one direction. |
| LPWM | Logic Input | PWM signal for controlling motor rotation in the opposite direction. |
| R_EN | Logic Input | Enable pin for the right half-bridge (active HIGH). |
| L_EN | Logic Input | Enable pin for the left half-bridge (active HIGH). |
| IS | Analog Output | Current sensing output (proportional to motor current). |
| Motor+ | Power Output | Connect to the positive terminal of the motor. |
| Motor- | Power Output | Connect to the negative terminal of the motor. |
The BTS 7960 motor driver is straightforward to use in motor control applications. Below are the steps and best practices for integrating it into your circuit:
Below is an example of how to control a DC motor using the BTS 7960 with an Arduino UNO:
// Define pin connections for the BTS 7960 motor driver
const int RPWM = 5; // PWM pin for forward rotation
const int LPWM = 6; // PWM pin for reverse rotation
const int R_EN = 7; // Enable pin for right half-bridge
const int L_EN = 8; // Enable pin for left half-bridge
void setup() {
// Set motor driver pins as outputs
pinMode(RPWM, OUTPUT);
pinMode(LPWM, OUTPUT);
pinMode(R_EN, OUTPUT);
pinMode(L_EN, OUTPUT);
// Enable both half-bridges
digitalWrite(R_EN, HIGH);
digitalWrite(L_EN, HIGH);
}
void loop() {
// Rotate motor forward at 50% speed
analogWrite(RPWM, 128); // 50% duty cycle (0-255)
analogWrite(LPWM, 0); // No reverse rotation
delay(2000); // Run for 2 seconds
// Rotate motor backward at 75% speed
analogWrite(RPWM, 0); // No forward rotation
analogWrite(LPWM, 192); // 75% duty cycle (0-255)
delay(2000); // Run for 2 seconds
// Stop the motor
analogWrite(RPWM, 0);
analogWrite(LPWM, 0);
delay(1000); // Pause for 1 second
}
Motor Not Spinning
Driver Overheating
Erratic Motor Behavior
No Current Sensing Output
Q: Can I use the BTS 7960 with a 3.3V microcontroller?
A: Yes, the logic inputs are compatible with both 3.3V and 5V systems.
Q: What is the maximum motor voltage supported?
A: The BTS 7960 supports motor voltages up to 27V.
Q: Can I control two motors with one BTS 7960 module?
A: No, the BTS 7960 is designed to control a single DC motor.
Q: How do I stop the motor?
A: Set both RPWM and LPWM to 0 to stop the motor.
By following this documentation, you can effectively integrate the BTS 7960 motor driver into your projects and achieve reliable motor control.