

The MG90S is a small, lightweight servo motor commonly used in robotics and hobby projects. It features a metal gear for improved durability and provides precise control of angular position, making it ideal for applications requiring movement and positioning. This servo motor is widely appreciated for its reliability, compact size, and ease of use.








The MG90S servo motor is designed to deliver high performance in a compact form factor. Below are its key technical details:
| Parameter | Specification |
|---|---|
| Operating Voltage | 4.8V to 6.0V |
| Stall Torque | 1.8 kg·cm (4.8V), 2.2 kg·cm (6.0V) |
| Operating Speed | 0.1 sec/60° (4.8V), 0.08 sec/60° (6.0V) |
| Gear Type | Metal |
| Weight | 13.4 g |
| Dimensions | 22.8 × 12.2 × 28.5 mm |
| Control Signal | PWM (Pulse Width Modulation) |
| PWM Pulse Range | 500 µs to 2500 µs |
| Rotation Angle | 0° to 180° |
| Connector Type | 3-pin female header (Dupont) |
The MG90S servo motor has a 3-wire connector with the following pinout:
| Wire Color | Pin Function | Description |
|---|---|---|
| Brown | Ground (GND) | Connect to the ground of the power supply or microcontroller. |
| Red | Power (VCC) | Connect to a 4.8V–6.0V power source. |
| Orange | Signal (PWM Input) | Receives the PWM signal for position control. |
The MG90S can be controlled using the Arduino Servo library. Below is an example code to rotate the servo to specific angles:
#include <Servo.h> // Include the Servo library
Servo myServo; // Create a Servo object to control the MG90S
void setup() {
myServo.attach(9); // Attach the servo signal pin to Arduino pin 9
}
void loop() {
myServo.write(0); // Move the servo to 0 degrees
delay(1000); // Wait for 1 second
myServo.write(90); // Move the servo to 90 degrees
delay(1000); // Wait for 1 second
myServo.write(180); // Move the servo to 180 degrees
delay(1000); // Wait for 1 second
}
Servo Not Moving:
Erratic Movement:
Overheating:
Limited Rotation:
Q: Can the MG90S be powered directly from an Arduino UNO?
A: While the MG90S can be powered from the Arduino's 5V pin, it is recommended to use an external power supply for reliable operation, especially if multiple servos are used.
Q: What happens if I send a PWM signal outside the specified range?
A: Sending a PWM signal outside the 500 µs to 2500 µs range may cause the servo to behave unpredictably or stop responding.
Q: Can the MG90S rotate more than 180°?
A: No, the MG90S is designed for a maximum rotation angle of 180°. For continuous rotation, consider using a different type of servo.
Q: How much current does the MG90S draw?
A: The current draw depends on the load. Under no load, it typically draws around 10–100 mA, but under high torque, it can draw up to 700 mA.
By following this documentation, you can effectively integrate the MG90S servo motor into your projects and troubleshoot common issues with ease.