MG90S 360° Continuous Rotation Metal Gear Micro Servo – Technical Specifications:
| Model | – MG90S (360° Continuous Rotation Version) |
| Gear Type | – Metal Gear (All-Metal Gear Train) |
| Servo Type | – Digital Micro Servo |
| Rotation Mode | – 360° Continuous Rotation (Pre-Modified) |
| Operating Voltage | – 4.8V to 6.0V DC |
| Stall Torque @ 4.8V | – 1.8 kg·cm |
| Stall Torque @ 6.0V | – 2.2 kg·cm |
| No-Load Speed @ 4.8V | – 0.10 sec / 60° |
| No-Load Speed @ 6.0V | – 0.08 sec / 60° |
| Control Signal | – PWM (50Hz, 1ms–2ms Pulse Width) |
| Neutral / Stop Pulse | – 1.5ms (Servo stops at this pulse width) |
| Dead Band Width | – 5µs |
| Operating Temperature | – -30°C to +60°C |
| Connector Type | – JR / Futaba Compatible 3-Pin (Signal / VCC / GND) |
| Wire Colours | – Orange = Signal / Red = VCC / Brown = GND |
| Dimensions | – 22.5 × 12 × 35.5mm |
| Weight | – 13.4g |
| Compatible Platforms | – Arduino, ESP8266, ESP32, Raspberry Pi, RC Controllers |
360° Continuous Rotation Control Reference:
| PWM Pulse Width | Behaviour |
|---|---|
| 1.0ms | Full Speed Reverse |
| 1.25ms | Half Speed Reverse |
| 1.5ms | Stop (Neutral) |
| 1.75ms | Half Speed Forward |
| 2.0ms | Full Speed Forward |
Handy Tips for Using the MG90S 360° Continuous Rotation Servo:
1: In 360° continuous rotation mode, the servo no longer moves to a specific angle — instead the PWM pulse width controls speed and direction. A 1.5ms pulse = stop, pulses shorter than 1.5ms rotate in reverse (slower as it approaches 1ms), and pulses longer than 1.5ms rotate forward (faster as it approaches 2ms). In Arduino code use servo.writeMicroseconds(1500) to stop, servo.writeMicroseconds(2000) for full forward, and servo.writeMicroseconds(1000) for full reverse.
2: The neutral stop point (1.5ms) may need fine-tuning after installation — if the servo creeps slowly when commanded to stop, adjust the pulse width in small increments (±10–20µs) in your code until the servo truly stops. This is normal for continuous rotation servos and is caused by the internal potentiometer not being perfectly centred. Use servo.writeMicroseconds() rather than servo.write() for finer control resolution.
3: Always power the servo from a dedicated 5V power supply — never directly from the Arduino 5V or 3.3V pin. Continuous rotation servos draw significant current under load (up to 500–700mA at stall), which will cause the microcontroller to brown out or reset. Connect the Red (VCC) and Brown (GND) wires to your external supply and connect only the Orange (Signal) wire to your microcontroller GPIO pin, with a shared common ground between the supply and microcontroller.
4: The metal gear train makes the MG90S significantly more durable than plastic-geared micro servos under sustained load — essential for continuous rotation applications such as robot wheels, conveyor mechanisms, camera pan systems, and winding mechanisms where the gears are under constant stress. Plastic gears strip quickly under the sustained torque of continuous rotation; metal gears handle it reliably over thousands of operating hours.
5: For two-wheel robot builds, mount one MG90S on each side of the chassis with the output shafts facing outward. To drive straight forward, both servos need opposite pulse widths — for example, left servo at 2.0ms (forward) and right servo at 1.0ms (forward from the other side). This is because the servos are mirror-mounted, so "forward" is in opposite directions for each. Account for this in your code — it is the most common first-build wiring confusion with continuous rotation servo robots.
Free Shipping for orders over R1500 & Standard Shipping R99!
