

The JHEMCU EM-120A 4 IN1 ESC is a compact and efficient electronic speed controller designed specifically for multi-rotor drones. By integrating four ESCs into a single unit, it simplifies wiring, reduces weight, and saves valuable space in drone builds. This ESC is ideal for hobbyists and professionals building quadcopters or other multi-rotor platforms.
Important Note: While the product is labeled as "120A," the actual current rating may be lower. Users are advised to verify the specifications and ensure compatibility with their drone's motors and power requirements.








| Parameter | Specification |
|---|---|
| Manufacturer | JHEMCU |
| Part ID | EM-120A 4 IN1 ESC |
| Input Voltage Range | 2S–6S LiPo (7.4V–25.2V) |
| Continuous Current (per ESC) | ~30A (verify actual rating) |
| Burst Current (per ESC) | ~40A (for a few seconds) |
| Firmware | BLHeli_S |
| Signal Input | DShot, PWM, OneShot, MultiShot |
| Dimensions | 36mm x 36mm (30.5mm mounting holes) |
| Weight | ~12g |
| Connector Type | XT60 (power input), solder pads (motors) |
The EM-120A 4 IN1 ESC features solder pads for motor connections and a connector for signal input. Below is the pin configuration:
| Pin Number | Label | Description |
|---|---|---|
| 1 | GND | Ground |
| 2 | VBAT | Battery voltage (for telemetry) |
| 3 | M1 | Signal input for Motor 1 |
| 4 | M2 | Signal input for Motor 2 |
| 5 | M3 | Signal input for Motor 3 |
| 6 | M4 | Signal input for Motor 4 |
| Pad Label | Description |
|---|---|
| M1+ / M1- | Positive and negative terminals for Motor 1 |
| M2+ / M2- | Positive and negative terminals for Motor 2 |
| M3+ / M3- | Positive and negative terminals for Motor 3 |
| M4+ / M4- | Positive and negative terminals for Motor 4 |
Power Connection:
Motor Connections:
Signal Input:
Firmware Configuration:
Testing:
While the EM-120A is typically used with flight controllers, it can also be controlled using an Arduino UNO for testing purposes. Below is an example code snippet to control one motor using PWM:
// Example code to control one motor using Arduino UNO and EM-120A ESC
// Connect the ESC signal wire (e.g., M1) to Arduino pin 9
#include <Servo.h> // Include Servo library for PWM control
Servo motor1; // Create a Servo object for the motor
void setup() {
motor1.attach(9); // Attach ESC signal wire to pin 9
motor1.writeMicroseconds(1000); // Send minimum throttle signal
delay(2000); // Wait for ESC to initialize
}
void loop() {
motor1.writeMicroseconds(1500); // Set throttle to mid-range
delay(5000); // Run motor for 5 seconds
motor1.writeMicroseconds(1000); // Stop motor
delay(5000); // Wait for 5 seconds
}
Note: Ensure the ESC is powered by a suitable LiPo battery when testing with Arduino.
Motors Not Spinning:
Overheating:
Motor Stuttering or Jerking:
ESC Not Recognized by BLHeli_S:
Q: Can I use this ESC with a 7-inch quadcopter?
A: Yes, as long as the motors' current draw does not exceed the ESC's rated capacity (~30A continuous).
Q: Is this ESC compatible with DShot1200?
A: No, the EM-120A supports DShot600 and lower protocols.
Q: Can I use this ESC with a 4S LiPo battery?
A: Yes, the ESC supports 2S–6S LiPo batteries, including 4S.
Q: How do I reverse motor direction?
A: Use the BLHeli_S software to reverse the motor direction for any of the four ESCs.
By following this documentation, users can effectively integrate and operate the JHEMCU EM-120A 4 IN1 ESC in their drone builds.