Skip to content
Servo

SG90 Micro Servo Motor

The classic 9g micro servo — small, cheap, and perfect for any hobby mechanism.

The most common hobby servo in existence — 180° rotation, 9g weight, and near-universal library support across every microcontroller platform.

Specifications

Operating voltage4.8V - 6V DC (5V typical)
Torque~1.8 kg·cm at 4.8V, ~2.2 kg·cm at 6V
Rotation~180° on most units (some batches are limited to 120° — test before mounting)
Speed~0.1 sec/60° at 4.8V, no-load
Control signalPWM, 50Hz, ~1ms-2ms pulse width (1.5ms = center)
Weight~9g

Pinout

PinNameDescription
1GNDGround — usually the brown or black wire
2VCCPower, 4.8V-6V DC — usually the red wire
3SignalPWM control input — usually the orange or yellow wire

Wire color order (GND-VCC-Signal vs Signal-VCC-GND) varies by manufacturer — check the connector keying, not just color, before powering on.

Variants

The SG90 is the default pick for small, light mechanisms — pan/tilt camera mounts, hobby claws, RC control surfaces — where its plastic gears and modest torque are enough. Swap to an MG90S if the same size servo needs to survive more repeated cycles under load, to a continuous-rotation servo if the mechanism needs to spin rather than hold an angle, or to an MG996R if the SG90 simply doesn't have enough torque for the job.

VariantPrice
SG90 (this listing)~$1-3
MG90S~$2-4
Continuous rotation servo~$2-5
MG996R~$3-6

Board Integration

Library

Servo by Arduino

Bundled with the Arduino IDE core

Wiring

Component pinESP32 pinNote
VCC5V (VIN, if available on your ESP32 board)SG90 draws far less current than the MG996R and usually runs fine from the ESP32's 5V pin, but move to an external supply if you see brownouts
GNDGND
SignalGPIO18Any PWM-capable GPIO works

Example code

C++

SG90 typically draws under 200mA at idle, spiking higher under load -- fine from the ESP32's 5V pin on most boards, but move to an external supply if the board resets when the servo moves.

View full ESP32 guide