Chromium icon Chromium Configurable Chromium browser skill for ARC: navigate URLs, print, open in PC browser, maximize/restore, set page content to a global variable. Try it →
Asked
Resolved Resolved by Athena!

MG995 Servos Not Centering

Hi Roboteers,

I've noticed that MG995 servos will not move to the center position or to any other commanded angle. I tested three MG995 servos (all purchased from Temu), and all exhibit the same behavior. It seems likely the problem is with the servos themselves. Any ideas?

Posting here on the Synthiam forum - if it helps, I can provide more details about how the servos are connected (EZB, separate servo controller, RC receiver, Arduino, etc.), which Robot Skills or scripts I'm using in an ARC project, and any other relevant setup information.



Related Hardware (view all EZB hardware)
EZ-B V4 by EZ-Robot
EZ-B v4/2 robot controller: dual Cortex ARM, Wi-Fi, audio/video, 24 servo/digital ports, I2C/UART, camera and Synthiam ARC control for custom robots
Wi-Fi / USB
Servos 24
Camera
Audio
UART 3
I2C
ADC 8
Digital 24

Related Robot Skills (view all robot skills)
Vertical Servo by Synthiam
Drag vertically to control a servo within set min/max limits; center, release, invert, and mirror to other servos. For 3-wire GVS servos.
Horizontal Servo by Synthiam
Mouse-drag horizontal servo control with configurable min/max limits, center/release functions, multi-servo mirroring and direction invert.

ARC Pro

Upgrade to ARC Pro

Subscribe to ARC Pro, and your robot will become a canvas for your imagination, limited only by your creativity.

Author Avatar
PRO
Canada
Twitter YouTube GitHub
#1  

A few things come to mind, and it may not be ARC if all three MG995s behave the same way.

First: MG995s are often inconsistent

The MG995 is one of the most commonly cloned servos on the market, and a lot of low-cost versions have:

  • poor centering
  • deadband issues
  • exaggerated jitter
  • weak/incorrect internal potentiometer calibration
  • counterfeit or re-labeled specs

If all three servos act the same way, that points either to:

  1. a common wiring/power issue, or
  2. a batch of servos with the same defect/clone characteristics

Most important checks in ARC / EZ-B

Since you're in ARC, I’d verify these in order:

1) Test one servo with a simple servo skill

Use:

Then in the skill’s kebab menu:

  • select the correct Board Index
  • select the correct port (for example d0)
  • set a safe Min / Max range, such as 60 to 120

If the defaults are both 90, the servo won’t visibly move.

2) Confirm the servo power supply

MG995 servos can draw a lot of current, especially under load.

Make sure:

  • servo power is not being pulled from a weak source
  • the supply is sufficient for stall current
  • ground is shared between the EZ-B and the servo power supply

If the servo is powered from the EZ-B port, and the supply sags, the servo may appear to ignore commands.

3) Check whether the servo is actually centered at 90

For cheap analog servos, "90" in ARC is only the commanded midpoint, not guaranteed physical center.

If the horn is mounted off-center or the internal pot is off, the servo may never line up exactly at center.

4) Try a direct script test

In ARC, try a simple JavaScript test:

Servo.setPosition(d0, 90)
sleep(2000)
Servo.setPosition(d0, 45)
sleep(2000)
Servo.setPosition(d0, 135)

If there’s no movement, that’s a strong clue the issue is wiring, power, port selection, or servo failure.

Common MG995-specific issue

Some MG995 clones don’t behave like a true 180 servo. A few are:

  • mechanically limited
  • poorly calibrated
  • continuously jittering around center
  • unable to hit precise midpoint

So "won’t center" can be a real servo quality problem, not just software.

What I’d like to know

To narrow this down, can you share:

  • How the servos are powered
  • What board/controller is driving them (EZ-B v4, Arduino, servo controller, RC receiver, etc.)
  • Which ARC skill or script you’re using
  • Whether the servo:
    • hums but doesn’t move
    • moves to one side only
    • jitters near center
    • works manually but not in ARC

If you want, I can also help you build a clean ARC test project to verify whether the issue is the servos or the control method.

I am a customer support AI and still learning. Please verify important answers in our support documentation. For advanced AI features, use the AI Script Agent built into ARC.
Author Avatar
PRO
Belgium
Thingiverse
#2  

@athena

problem solved . i used two talk servo windows . a V2 and a V4 . i didn't need the V4 talk servo . thanks

📚 This thread has been preserved as a helpful resource!

While new comments are no longer being accepted, the information here remains available for learning and reference. Check the most recent comment for additional details.