High-Power Smart Car Motor Driver Module BTS7960 – 43A Current Limit Control with Semiconductor Cooling

SKU: FA2146
Input Voltage (VS)

6V – 27V DC

Peak Output Current

43A (current limited)

Continuous Output Current

15A – 43A (depends on cooling)

Path Resistance (Typical)

16 mΩ @ 25°C

Quiescent Current

7 µA typical @ 25°C

PWM Frequency

Up to 25 kHz

Logic Input Voltage

3.3V – 5V (TTL compatible)

Current Limit Level

43A typical

Operating Temperature

-40°C to +150°C (junction)

Fault Protection

Overtemperature, Overvoltage, Undervoltage, Overcurrent, Short Circuit

Module Dimensions

Approx. 50mm × 50mm × 43mm

Product Overview

The High-Power Smart Car Motor Driver Module is a professional-grade H-bridge driver board designed for demanding DC motor control applications. Built around the Infineon BTS7960 high-current half-bridge NovalithIC, this module delivers exceptional power handling capability with integrated protection features, making it the ideal choice for robotics, smart cars, industrial automation, and electric vehicle projects .

The BTS7960 is a fully integrated high-current half-bridge driver that combines a p-channel high-side MOSFET and an n-channel low-side MOSFET with a dedicated driver IC in a single package. This unique architecture eliminates the need for a charge pump, significantly reducing electromagnetic interference (EMI) and simplifying circuit design . By using two BTS7960 ICs in parallel, the module forms a complete H-bridge capable of driving high-power DC motors in both directions with smooth PWM speed control.

What sets this module apart is its comprehensive protection system and 43A current limit capability. The built-in current limitation actively monitors and limits output current to approximately 43A, protecting both the driver and the motor from damage during overload or stall conditions . Additionally, the module features overtemperature shutdown, overvoltage lockout, undervoltage protection, and short circuit protection, ensuring reliable operation even in demanding environments.

The module supports PWM frequencies up to 25kHz, enabling smooth and efficient motor speed control. Logic-level inputs (3.3V to 5V compatible) allow direct connection to Arduino, ESP32, STM32, Raspberry Pi, and other microcontrollers without level shifters . Onboard current sense outputs provide real-time current monitoring and fault diagnosis capabilities, making this module suitable for both educational projects and professional industrial applications.

Key Features

  • 43A Peak Current Capability: The module features a typical current limitation level of 43A, allowing it to drive high-torque DC motors used in robotics, e-bikes, and industrial automation .

  • Integrated H-Bridge Configuration: Uses two BTS7960 half-bridge ICs to form a complete H-bridge, enabling bidirectional motor control with forward, reverse, and brake functions .

  • Ultra-Low Path Resistance: Typical path resistance of only 16 mΩ at 25°C ensures minimal power loss and heat generation during high-current operation .

  • Wide Operating Voltage Range: Accepts input voltages from 6V to 27V DC, making it compatible with 6V, 12V, and 24V battery systems .

  • PWM Speed Control Support: Capable of PWM frequencies up to 25 kHz, with active freewheeling for smooth motor speed regulation and reduced switching losses .

  • Comprehensive Protection Features: Includes overtemperature shutdown (with latch behavior), overvoltage lockout, undervoltage shutdown, overcurrent/short-circuit protection, and switched-mode current limitation .

  • Low Quiescent Current: Consumes only 7 µA typical at 25°C when idle, making it suitable for battery-powered applications .

  • Logic-Level Inputs: Control inputs accept 3.3V to 5V logic levels, allowing direct connection to Arduino, ESP32, and other microcontrollers without external level shifters .

  • Current Sense & Diagnosis: IS pins provide analog current feedback for real-time monitoring, while status flags indicate fault conditions such as over-temperature or over-current .

  • Semiconductor Cooling Design: The module features a dedicated heatsink design with thermal vias to efficiently dissipate heat from the BTS7960 packages, supporting sustained high-current operation .

Technical Specifications

Parameter Operating Value
Input Voltage (VS) 6V – 27V DC
Peak Output Current 43A (current limited)
Continuous Output Current 15A – 43A (depends on cooling) 
Path Resistance (Typical) 16 mΩ @ 25°C 
Quiescent Current 7 µA typical @ 25°C 
PWM Frequency Up to 25 kHz 
Logic Input Voltage 3.3V – 5V (TTL compatible) 
Current Limit Level 43A typical 
Operating Temperature -40°C to +150°C (junction) 
Fault Protection Overtemperature, Overvoltage, Undervoltage, Overcurrent, Short Circuit 
Module Dimensions Approx. 50mm × 50mm × 43mm

Pinout & Connection Guide

Power Terminals

Terminal Label Function
VS VCC / Power + Connect to DC power source (6V-27V)
GND Power Ground Connect to power supply ground

Motor Output Terminals

Terminal Label Function
M+ Motor A / OUT+ Connect to one motor terminal
M- Motor B / OUT- Connect to the other motor terminal

Control Signal Inputs

Pin Label Function
RPWM Forward PWM PWM signal input for forward direction (active high) 
LPWM Reverse PWM PWM signal input for reverse direction (active high) 
R_EN Forward Enable High = forward direction enabled, Low = disabled 
L_EN Reverse Enable High = reverse direction enabled, Low = disabled 

Diagnostic Outputs

Pin Label Function
R_IS Forward Current Sense Analog output proportional to forward current; fault flag when high 
L_IS Reverse Current Sense Analog output proportional to reverse current; fault flag when high 

Power & Auxiliary

Pin Label Function
VCC +5V Output 5V regulated output for microcontroller (up to 50mA) 
GND Signal Ground Common ground reference for control signals

Important Wiring Notes:

  • Common Ground: The power supply ground (GND) must be connected to the microcontroller’s ground for proper signal reference.

  • Current Rating: For continuous operation above 15A, active cooling (fan) is highly recommended to prevent overheating .

  • Don’t Enable Both Directions Simultaneously: Never set both R_EN and L_EN HIGH at the same time, as this can create a short circuit and damage the module .

Usage Guide

Basic Operation Modes

The BTS7960 module supports two common control schemes:

Method 1 – Standard PWM Mode (Recommended) :

Function RPWM LPWM R_EN L_EN Motor Action
Forward PWM (0-100%) 0 HIGH LOW Forward speed controlled by PWM
Reverse 0 PWM (0-100%) LOW HIGH Reverse speed controlled by PWM
Brake 0 0 HIGH HIGH Motor shorted to brake
Coast 0 0 LOW LOW Motor free-runs to stop

Method 2 – Simplified Enable Mode:

Function RPWM LPWM R_EN & L_EN Motor Action
Forward PWM 0 HIGH Forward speed controlled by PWM
Reverse 0 PWM HIGH Reverse speed controlled by PWM
Stop 0 0 HIGH Brake stop
Disable X X LOW Module off, motor coasts

⚠️ Critical Warning: Never set both R_EN and L_EN HIGH simultaneously while one PWM input is high—this can short the H-bridge and destroy the module .

Wiring Diagram (Arduino Uno)

BTS7960 Module Arduino Uno Pin
RPWM D9 (PWM)
LPWM D10 (PWM)
R_EN D7
L_EN D8
VCC (5V output) 5V (optional)
GND GND
VS External 12V-24V Power Supply

Basic Arduino Example Code

cpp
// BTS7960 Motor Driver Control Example
// Pins for Motor A
#define RPWM 9   // PWM for forward direction
#define LPWM 10  // PWM for reverse direction
#define R_EN 7   // Forward enable
#define L_EN 8   // Reverse enable

void setup() {
  pinMode(RPWM, OUTPUT);
  pinMode(LPWM, OUTPUT);
  pinMode(R_EN, OUTPUT);
  pinMode(L_EN, OUTPUT);
  
  // Initialize both directions as disabled
  digitalWrite(R_EN, LOW);
  digitalWrite(L_EN, LOW);
  
  Serial.begin(9600);
}

void motorForward(int speed) {
  digitalWrite(R_EN, HIGH);
  digitalWrite(L_EN, LOW);
  analogWrite(RPWM, speed);   // Set forward PWM speed
  analogWrite(LPWM, 0);
}

void motorReverse(int speed) {
  digitalWrite(R_EN, LOW);
  digitalWrite(L_EN, HIGH);
  analogWrite(RPWM, 0);
  analogWrite(LPWM, speed);   // Set reverse PWM speed
}

void motorBrake() {
  digitalWrite(R_EN, HIGH);
  digitalWrite(L_EN, HIGH);
  analogWrite(RPWM, 0);
  analogWrite(LPWM, 0);
}

void motorCoast() {
  digitalWrite(R_EN, LOW);
  digitalWrite(L_EN, LOW);
  analogWrite(RPWM, 0);
  analogWrite(LPWM, 0);
}

void loop() {
  // Forward at 75% speed
  motorForward(191);
  delay(3000);
  
  // Brake stop
  motorBrake();
  delay(1000);
  
  // Reverse at 50% speed
  motorReverse(127);
  delay(3000);
  
  // Coast stop
  motorCoast();
  delay(1000);
}

Current Sensing & Diagnosis

The IS pins provide analog voltage output proportional to motor current:

cpp
int currentSense = analogRead(A0);  // R_IS pin
float voltage = currentSense * (5.0 / 1023.0);
float current = voltage / 3.3 * 43;  // Approximate scaling

if (digitalRead(R_EN) == HIGH && current > 40) {
  Serial.println("Overcurrent detected!");
  motorBrake();
}

Thermal Management & Power Derating

The BTS7960 chips can handle significant current, but proper cooling is essential:

Operating Condition Cooling Requirements Recommended Current
Low load (<10A) Natural convection (provided heatsink) Up to 15A
Medium load (10-20A) Good airflow, additional heatsink Up to 20A
High load (20-43A) Active cooling (fan) required Derate based on temperature

Important Note: Many commercial BTS7960 modules have a design flaw where the chips cool through the PCB rather than direct heatsink contact. For sustained high-current operation, verify that your heatsink makes proper contact with the BTS7960 packages .

Q: What is the maximum continuous current this module can handle?

The BTS7960 chip itself is rated for a current limit of 43A typical . However, the practical continuous current depends heavily on cooling. With the included heatsink and good airflow, 15A-20A is realistic for continuous operation. For the full 43A, forced-air cooling is mandatory. Many users report success with 20A-25A loads with proper heatsinking .

Q: Why does my BTS7960 module get extremely hot?

The BTS7960 chips have a typical path resistance of 16 mΩ. At 20A, power dissipation is I² × R = 400 × 0.016 = 6.4 watts per active half-bridge—significant heat! Additionally, many low-cost modules have a design flaw where chips cool through the PCB, not the heatsink. For improved cooling, apply thermal paste and clamp a heatsink directly onto the BTS7960 packages .

Q: What happens if I set both R_EN and L_EN to HIGH simultaneously?

This can short the H-bridge if the PWM inputs are active, destroying the module. Never enable both directions at the same time with PWM active. The safe sequence is: disable both, set direction PWM, then enable the correct direction .

Q: Can this module be controlled with 3.3V logic (ESP32, Raspberry Pi)?

Yes. The BTS7960’s logic-level inputs accept 3.3V to 5V signals, making it directly compatible with ESP32, ESP8266, Raspberry Pi, and STM32 without level shifters .

Q: How do I interpret the IS (current sense) pin readings?

The IS pin outputs a voltage proportional to motor current. When the voltage exceeds a threshold (~3.3V typically), it indicates a fault condition (overcurrent, overtemperature, etc.). For normal current monitoring, use an analog read and refer to the BTS7960 datasheet for exact scaling .

Q: Why does my motor not start when using PWM below a certain duty cycle?

DC motors require a minimum voltage to overcome static friction. At very low PWM duty cycles (<15-20%), the motor may not start. This is normal. Use a higher starting PWM value and reduce speed after motion begins.

Q: Can I use this module to drive a stepper motor?

While possible for larger stepper motors, this module is primarily designed for high-current DC motors. For bipolar stepper motors, you need two BTS7960 modules (one per coil) to form a stepper driver. Dedicated stepper drivers like TB6600 are generally better suited .

Q: What is the maximum PWM frequency for efficient operation?

The BTS7960 supports PWM up to 25 kHz . Typical motor control applications use 10-20 kHz. Higher frequencies reduce audible noise but increase switching losses. For most DC motors, 10-16 kHz provides a good balance.

Q: Does this module have reverse polarity protection?

The BTS7960 chip includes protection features, but many low-cost modules do not have robust reverse polarity protection on the power input. Always double-check connections and consider adding a high-current Schottky diode in series with VS for protection .

Q: What should I do if the module enters thermal shutdown?

Thermal shutdown is a built-in protection feature. The module will latch off until temperature decreases. After cooling, it may require a power cycle to reset. To prevent this, improve cooling (add a fan, larger heatsink) or reduce the load current .