Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Servo MG90S: Examples, Pinouts, and Specs

Image of Servo MG90S
Cirkit Designer LogoDesign with Servo MG90S in Cirkit Designer

Introduction

The Servo MG90S is a small, lightweight servo motor widely used in robotics, RC vehicles, and hobby projects. It features a 180-degree range of motion, making it ideal for applications requiring precise angular positioning. With a torque rating of approximately 2.5 kg/cm, the MG90S is capable of handling moderate loads while maintaining compact dimensions. Its metal gear construction ensures durability and reliability, even under continuous use.

Explore Projects Built with Servo MG90S

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino Mega 2560-Based Smart Lock System with Servo Control and GSM Connectivity
Image of RM Circuit Diagaram: A project utilizing Servo MG90S in a practical application
This circuit is a control system utilizing an Arduino Mega 2560 to manage multiple MG90S servos, an LCD display, a DS3231 RTC module, a SIM900A GSM module, and an ESP32 for communication. It also includes a relay module to control a 12V solenoid lock, an IR sensor for input, and a Li-ion battery for power supply.
Cirkit Designer LogoOpen Project in Cirkit Designer
GPS-Enabled Telemetry Drone with Speedybee F405 WING and Brushless Motor
Image of Pharmadrone Wiring: A project utilizing Servo MG90S in a practical application
This circuit is designed for a remote-controlled vehicle or drone, featuring a flight controller that manages a brushless motor, servomotors for actuation, telemetry for data communication, and a GPS module for positioning. It is powered by a lipo battery and includes a receiver for remote control inputs.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP8266 NodeMCU-Based Sensor Monitoring System
Image of Smart Baby Cradle: A project utilizing Servo MG90S in a practical application
This circuit is designed around an ESP8266 NodeMCU microcontroller, which interfaces with a variety of sensors and a servo motor. It includes a PIR motion sensor to detect movement, a sound sensor for audio detection, and a water level sensor for monitoring liquid levels. The MG90S servo motor is controlled by the microcontroller, and the entire system is powered by a battery pack.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino-Controlled Robotic Arm with Joystick and Push Button Interface
Image of ppp: A project utilizing Servo MG90S in a practical application
This is a servo control system featuring an Arduino UNO that processes input from a dual-axis joystick and push switches to operate multiple MG996R servo motors. It is designed for precise multi-axis control, potentially for applications like robotics or remote-controlled mechanisms.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Servo MG90S

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of RM Circuit Diagaram: A project utilizing Servo MG90S in a practical application
Arduino Mega 2560-Based Smart Lock System with Servo Control and GSM Connectivity
This circuit is a control system utilizing an Arduino Mega 2560 to manage multiple MG90S servos, an LCD display, a DS3231 RTC module, a SIM900A GSM module, and an ESP32 for communication. It also includes a relay module to control a 12V solenoid lock, an IR sensor for input, and a Li-ion battery for power supply.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Pharmadrone Wiring: A project utilizing Servo MG90S in a practical application
GPS-Enabled Telemetry Drone with Speedybee F405 WING and Brushless Motor
This circuit is designed for a remote-controlled vehicle or drone, featuring a flight controller that manages a brushless motor, servomotors for actuation, telemetry for data communication, and a GPS module for positioning. It is powered by a lipo battery and includes a receiver for remote control inputs.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Smart Baby Cradle: A project utilizing Servo MG90S in a practical application
ESP8266 NodeMCU-Based Sensor Monitoring System
This circuit is designed around an ESP8266 NodeMCU microcontroller, which interfaces with a variety of sensors and a servo motor. It includes a PIR motion sensor to detect movement, a sound sensor for audio detection, and a water level sensor for monitoring liquid levels. The MG90S servo motor is controlled by the microcontroller, and the entire system is powered by a battery pack.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ppp: A project utilizing Servo MG90S in a practical application
Arduino-Controlled Robotic Arm with Joystick and Push Button Interface
This is a servo control system featuring an Arduino UNO that processes input from a dual-axis joystick and push switches to operate multiple MG996R servo motors. It is designed for precise multi-axis control, potentially for applications like robotics or remote-controlled mechanisms.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Robotic arms and grippers
  • RC vehicles (cars, boats, planes)
  • Pan-tilt camera systems
  • Automated mechanisms and DIY projects
  • Educational electronics and prototyping

Technical Specifications

The Servo MG90S is designed for ease of use and compatibility with a wide range of microcontrollers and power sources. Below are its key technical details:

Parameter Specification
Operating Voltage 4.8V to 6.0V
Stall Torque 2.2 kg/cm (4.8V), 2.5 kg/cm (6.0V)
Operating Speed 0.1 sec/60° (4.8V), 0.08 sec/60° (6.0V)
Range of Motion 0° to 180°
Gear Type Metal
Weight 13.4 g
Dimensions 22.8 x 12.2 x 28.5 mm
Connector Type 3-pin female header

Pin Configuration

The MG90S servo motor has a 3-pin connector for power, ground, and signal. Below is the pinout:

Pin Wire Color Description
1 Brown Ground (GND)
2 Red Power (VCC, 4.8V–6.0V)
3 Orange Signal (PWM input)

Usage Instructions

Connecting the Servo MG90S

  1. Power Supply: Connect the red wire to a 5V power source (or 6V for higher torque). Ensure the power supply can provide sufficient current (at least 1A per servo).
  2. Ground: Connect the brown wire to the ground (GND) of your circuit.
  3. Signal: Connect the orange wire to a PWM-capable pin on your microcontroller (e.g., Arduino).

Controlling the Servo with Arduino UNO

The Servo MG90S can be controlled using the Arduino Servo library, which simplifies generating PWM signals. Below is an example code to control the servo:

#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 to pin 9 on the Arduino
}

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
}

Important Considerations

  • Power Supply: Avoid powering the servo directly from the Arduino's 5V pin, as it may not provide sufficient current. Use an external power source with a common ground.
  • PWM Signal: Ensure the PWM signal frequency is approximately 50 Hz (standard for servos).
  • Mechanical Limits: Do not force the servo beyond its 0°–180° range to prevent damage to the gears.

Troubleshooting and FAQs

Common Issues

  1. Servo Not Moving

    • Cause: Insufficient power supply or incorrect wiring.
    • Solution: Verify the power source provides 4.8V–6.0V and check all connections.
  2. Servo Jittering

    • Cause: Electrical noise or unstable power supply.
    • Solution: Use a capacitor (e.g., 100 µF) across the power and ground lines to stabilize the voltage.
  3. Servo Overheating

    • Cause: Prolonged stall condition or excessive load.
    • Solution: Reduce the load or avoid holding the servo in a stalled position.
  4. Limited Range of Motion

    • Cause: Incorrect PWM signal or mechanical obstruction.
    • Solution: Ensure the PWM signal corresponds to the full 0°–180° range and check for physical obstructions.

FAQs

Q: Can I use the MG90S with a 3.3V microcontroller?
A: Yes, but you must provide a separate 5V–6V power source for the servo. Connect the grounds of the microcontroller and the servo power supply.

Q: How much current does the MG90S draw?
A: The MG90S typically draws 150–200 mA during normal operation and up to 1A during stall conditions.

Q: Can I control multiple MG90S servos with one Arduino?
A: Yes, but ensure your power supply can handle the combined current draw of all servos.

Q: What is the lifespan of the MG90S?
A: The lifespan depends on usage conditions, but the metal gears provide better durability compared to plastic-geared servos.

By following this documentation, you can effectively integrate the Servo MG90S into your projects and troubleshoot common issues with ease.