

The SHIELD-MDD10 by Cytron Technologies is a robust motor driver shield designed to control DC motors with a current rating of up to 10 Amps and a voltage range of 7V to 30V. This shield is compatible with Arduino and other microcontroller platforms, making it an excellent choice for robotics, automation, and other motor control applications. It supports both speed and direction control, enabling precise motor operation.








| Parameter | Specification |
|---|---|
| Manufacturer | Cytron Technologies |
| Part ID | SHIELD-MDD10 |
| Motor Voltage Range | 7V to 30V |
| Continuous Current | 10A per channel |
| Peak Current | 30A per channel (for 10 seconds) |
| Control Signal Voltage | 3.3V or 5V logic |
| PWM Frequency | Up to 20 kHz |
| Dimensions | 84mm x 61mm x 25mm |
| Weight | 70g |
The SHIELD-MDD10 has a straightforward pin layout for easy integration with Arduino or other microcontrollers. Below is the pin configuration:
| Pin Name | Description |
|---|---|
| VIN | Power input for the motor driver (7V to 30V). |
| GND | Ground connection. |
| M1A, M1B | Motor 1 output terminals for connecting the first DC motor. |
| M2A, M2B | Motor 2 output terminals for connecting the second DC motor. |
| DIR1, DIR2 | Direction control pins for Motor 1 and Motor 2, respectively. |
| PWM1, PWM2 | PWM input pins for speed control of Motor 1 and Motor 2, respectively. |
| EN | Enable pin to activate the motor driver (active HIGH). |
| Current Sense | Outputs proportional voltage for current sensing (1V = 1A). |
Below is an example Arduino sketch to control two DC motors using the SHIELD-MDD10:
// Define motor control pins
const int DIR1 = 7; // Direction pin for Motor 1
const int PWM1 = 6; // PWM pin for Motor 1
const int DIR2 = 4; // Direction pin for Motor 2
const int PWM2 = 5; // PWM pin for Motor 2
const int EN = 8; // Enable pin for the shield
void setup() {
// Set pin modes
pinMode(DIR1, OUTPUT);
pinMode(PWM1, OUTPUT);
pinMode(DIR2, OUTPUT);
pinMode(PWM2, OUTPUT);
pinMode(EN, OUTPUT);
// Enable the motor driver
digitalWrite(EN, HIGH);
}
void loop() {
// Example: Run Motor 1 forward at 50% speed
digitalWrite(DIR1, HIGH); // Set direction forward
analogWrite(PWM1, 128); // Set speed (128 = 50% duty cycle)
// Example: Run Motor 2 backward at 75% speed
digitalWrite(DIR2, LOW); // Set direction backward
analogWrite(PWM2, 192); // Set speed (192 = 75% duty cycle)
delay(5000); // Run for 5 seconds
// Stop both motors
analogWrite(PWM1, 0);
analogWrite(PWM2, 0);
delay(2000); // Wait for 2 seconds before repeating
}
Motors Not Running:
Overheating:
Erratic Motor Behavior:
Current Sensing Not Working:
Q: Can I use the SHIELD-MDD10 with a Raspberry Pi?
A: Yes, the SHIELD-MDD10 supports 3.3V logic, making it compatible with Raspberry Pi GPIO pins. However, ensure proper PWM signal generation using libraries like pigpio.
Q: What happens if the current exceeds 10A?
A: The shield can handle up to 30A for short durations (10 seconds). Prolonged overcurrent may trigger thermal shutdown or damage the shield.
Q: Can I control brushless motors with this shield?
A: No, the SHIELD-MDD10 is designed for brushed DC motors only. For brushless motors, consider using a dedicated brushless motor driver.
Q: Is reverse polarity protection included?
A: No, the SHIELD-MDD10 does not have reverse polarity protection. Ensure correct polarity when connecting the power supply.