Home Testing of Feetech STS3215 Servomotor: Backlash, Repeatability, and Torque

Testing of Feetech STS3215 Servomotor: Backlash, Repeatability, and Torque

Views icon 205
Testing of Feetech STS3215 Servomotor

In September, we moved on to a more detailed stage of testing the servomotors before starting controller programming. We began testing the Feetech STS3215 C018 (reduction ratio 1:345, 12V, 30 kg·cm stall torque), a popular servomotor widely used in open-source robotic projects such as SO-ARM100 and the Robonine parallel gripper. This article will mainly focus on its performance. To begin, I will present a small reference table and data provided by the manufacturer. These specifications will serve as a baseline for our verification tests. Some of the images feature the Waveshare STS3215, which is technically very similar — even using the same firmware version.

Magnetic encoder 12 bit

Magnetic encoder 12 bit

The Feetech STS3215 features a 12-bit magnetic encoder providing 4096 steps per 360° rotation (0.088° per step). This magnetoresistive design eliminates friction-based wear compared to potentiometer-based encoders with sliding contacts, which degrade over time. The absence of moving contact surfaces ensures reliable closed-loop control and consistent long-term performance without encoder degradation.

 

Feetech STS-3215 Back and Gears

Feetech STS-3215 Back and Gears

The servo features a multi-stage metal gearbox designed to deliver high torque output in an affordable package. According to the datasheet, the gearbox specification includes backlash ≤ 0.5°, which is typical for this class of servo. Metal gears are used instead of plastic to withstand sustained loads and repetitive motion cycles. The encoder is integrated before the gearing stage to provide direct motor feedback. The gearbox utilizes a gear ratio of 1:345, enabling the servo to convert motor speed into high torque output suitable for robotic applications. The high gear ratio and metal gearbox design make this servo unsuitable for back-driven applications, as external forces can easily backdrive the gears, causing uncontrolled motion and potential motor damage.

Torque, power, efficiency, current graph

Torque, power, efficiency, current graph

The performance envelope graph displays official datasheet values for power output, rotational speed, efficiency, and current draw across torque loads from 0 to 30 kg·cm. Speed decreases linearly as load increases, while power output peaks around 15 kg·cm before declining at heavier loads. Efficiency reaches maximum (approximately 26%) in the 6-9 kg·cm range, which is typical for affordable servo-grade motors. Current consumption rises linearly with torque demand throughout the operating range. These passport specifications demonstrate that despite modest efficiency values inherent to low-cost designs, the servo provides reliable power management suitable for budget-conscious robotic and automation applications.

Speed Performance and Accuracy Test

The Feetech STS-3215 servo was tested at 100% and 50% of its rated speed. The measurements showed a maximum speed of approximately 46 RPM, with an accuracy of ±2% and fluctuations of around 7%. Although minor oscillations were observed at lower speeds, overall motion remained stable and consistent with the manufacturer’s specifications.

These results confirm that the servo’s nominal no-load speed of 0.22 s/60° aligns well with the datasheet values, providing adequate speed and responsiveness for robotic and motion-control applications.

Backlash Measurement

Feetech STS3215 Backlash Measurement

Feetech STS3215 Backlash Measurement

One of the key characteristics that made us reconsider our manipulator design is backlash. According to the specifications, it should be less than 0.5°, but our measurements on the arm showed 1°. This deviation is quite significant — even on a short 15 cm arm, it results in an offset of around 3 mm.

Furthermore, part of this backlash appears to be software-induced: there’s a built-in dead zone of 10 steps, and the motor does not respond to encoder commands smaller than this threshold. Backlash also manifests as jitter or oscillation when the arm is extended — the motor struggles to return precisely to the target position, leading to visible vibration.

Repeatability Testing

Another important parameter is repeatability. The repeatability test of the Feetech STS3215 servo was performed using a 10 cm vertical lever, with 20-step increments, three cycles in each direction, and three full iterations. The results indicate stable performance under controlled conditions.

Test parameters and results:

  • Lever setup: 10 cm vertical arm
  • Test method: 20-step increments; 3 cycles each direction; 3 full iterations
  • Measured tip deviation: ±0.3 mm
  • Equivalent angular repeatability: ≈ 0.17° (≈10 arcmin)
  • Encoder resolution: 12-bit = 0.088°
  • Linear equivalent of one encoder count (at 10 cm radius): ≈ 0.153 mm
  • Observed deviation: ≈ 2 encoder counts
  • Notes: Spring probe compensates mechanical slack; test could be refined or repeated under load for improved accuracy

This indicates that, while the measured repeatability is within a few encoder steps, the STS3215 servo maintains consistent positioning behavior, and further refinement could validate its performance under operational load conditions.

Torque Testing

We also performed a dynamic torque test of the Feetech STS-3215 servo using varying loads to evaluate its real-world performance under motion.

Test Configuration:

  • 10 cm lever arm
  • Test loads: 1 kg, 1.5 kg, and 2 kg

Test Results:

  • At 1.5 kg load: servo maintained stable operation with temperature increase of approximately 15 °C after 10 minutes of continuous movement
  • At 2 kg load: servo entered overload protection after several operating cycles, temporarily limiting torque output to prevent damage
  • Performance remained consistent up to roughly 15 kg·cm, aligning closely with the rated torque specified in the datasheet

This test demonstrates the servo’s dynamic torque capability and the effectiveness of its thermal and overload protection mechanisms. Continuous operation at maximum rated torque may accelerate mechanical wear over extended periods.

Next, we examined the stall torque — the maximum torque the motor can hold in a static position without movement.

Test Configuration:

  • 10 cm lever arm positioned at 45° angle
  • Static load: approximately 3.5 kg (≈ 35 kg·cm of torque)

Test Results: Under prolonged heavy load, the servo occasionally entered overload protection mode, reducing torque output to roughly 20% of nominal capacity. Both the protection timeout and the safe torque limit are configurable via the controller registers, allowing users to fine-tune protection behavior for specific applications. The measured stall torque slightly exceeded the datasheet value of 30 kg·cm, confirming that the STS-3215 performs above its rated specification when properly configured.

Temperature under constant load

Test 1: Overheating Check During Static Load Retention.

Static Load Overheat Test. Feetech STS3215

Static Load Overheat Test. Feetech STS3215

The arm with a dumbbell was positioned sideways, holding a 1 kg weight at a 15 cm lever arm, resulting in a torque of 15 kg·cm. Over 10 minutes, the temperature rose to 48°C and remained stable for an hour without further increase.

Test 2: Oscillation in a ±90-Degree Range. Temperature measurement

Oscillation in a ±90-Degree Range. Temperature test. Feetech STS3215

Oscillation in a ±90-Degree Range. Temperature test. Feetech STS3215

Starting at 48°C, the temperature reached 60°C after 50 minutes. For the next 20 minutes, the temperature did not increase. The oscillation speed was then reduced to accelerate heating (see note below). An additional 40 minutes were required to reach 71°C, at which point the motor overheated.

  • Critical Temperature Threshold: At 71°C, the motor exhibits issues, as observed in experiments conducted yesterday and today (two instances). There appears to be no built-in thermal protection, so manual shutdown will be necessary when this temperature is reached.
  • Effect of Acceleration on Heating: Reducing acceleration increased the rate of temperature rise. Initially, with an acceleration of 5, the temperature reached 60°C. Lowering the acceleration to 2 resulted in overheating after additional time. Tomorrow, further tests will measure the time required to overheat at an acceleration of 5, as an acceleration of 2 is too slow for our application.

Backlash Compensation Experiment

An additional experiment, conducted by our software engineer Boris, focused on backlash compensation using a dual-servo pre-tension setup. In this test, two Feetech STS-3215 servos were mounted with 3D-printed PETG lever arms, connected by a tensioned rope. Each servo applied a small amount of preload, effectively removing the mechanical play in the linkage.

The setup is straightforward but highly effective in demonstrating how pre-tensioning can eliminate backlash in practice. When both servos applied opposing tension, the arms remained completely stationary, confirming that the mechanical slack was fully compensated. This method significantly improves positional stability and precision, making it particularly useful for robotic joints, motion-control systems, and DIY automation projects.

Key points:

  • Two STS-3215 servos with PETG lever arms
  • Rope linkage under controlled pre-tension
  • Demonstrates mechanical backlash elimination through preload compensation

Summary of Specifications and Test Results

Parameter / Test Method / Condition Measured Result Specification / Datasheet Value Remarks / Comments
Operating Voltage 12 V 12 V Operating range: 4–14 V
Static (Stall) Torque Lever arm 10 cm at 45° angle on scale ~3.5 kg (35 kg·cm) 30 kg·cm Slightly higher than rated; enters protection at extended load
Dynamic Torque Lifting 1.5 kg on 10 cm lever Supports load with +15 °C rise Temperature increased by +15 °C after 10 min; overload triggered at 2 kg load
No-Load Speed (RPM) Measured at 100% and 50% speed Max ~46 RPM; ±2% accuracy; ~7% fluctuation 45 RPM (0.22 s/60°) Standard settings; slightly unsmooth operation but acceptable
Encoder Resolution UART register read 4096 steps per turn (12-bit) 12-bit magnetic encoder (4096) 0.088° per step
Encoder Backlash (Free Play) Measurement of free hand rotation ~ 1° ≤ 0.5°
Positional Error Under Load 1.5 kg load, 10 cm lever, 45° angle 20–30 encoder values (1.8–2.6°) Error increases significantly under load
Repeatability (Dial Indicator) 10 cm lever vertical; 20-step increments; 3 cycles each direction; 3 iterations ±0.3 mm deviation at measurement points Spring probe compensates mechanical slack; test could be refined or conducted under load
Temperature Rise (Static Load Test) – 1 kg load at 15 cm lever arm (≈15 kg·cm torque); arm positioned sideways Temperature rose to 48 °C after 10 min and remained stable for >1 h with no further increase Operating temperature range: –10 °C – 60 °C Stable thermal behavior under static load; well within rated operating limits
Temperature Rise (Oscillation Test) – ±90° range; continuous motion; initial temperature 48 °C Reached 60 °C after 50 min, stabilized for 20 min, then increased to 71 °C after ~110 min, resulting in overheating Overheat protection threshold: 70 °C No active thermal shutdown observed — manual cutoff required near 70 °C. Reducing acceleration increased heating rate (accel = 2 → overheat; accel = 5 → stable ~ 60 °C).
Communication Interface UART TTL, half-duplex Functional 38400 bps – 1 Mbps (default 1 Mbps); Chainable multi-servo connection
Closed-Loop Control Position and speed feedback works reliably Supports position holding and speed control
Telemetry / Feedback UART readout: position, speed, current, voltage, load, temperature Full telemetry available
Protection Systems Overload, overcurrent, overvoltage, undervoltage, overtemperature Functional Configurable timeout and safe limits via registers
Firmware Dead Zone Command input < 10 encoder steps No motion observed Built-in 10-count deadband
Price / Accessories ~$15 (servo) + ~$5 (UART adapter) Excellent cost-to-performance ratio

Summary

The Feetech STS3215 demonstrates strong torque performance and stable UART communication, suitable for mid-range robotic and automation applications. However, mechanical backlash and a firmware-defined dead zone (10 encoder counts) reduce positioning precision for fine motion tasks.

Main Advantages

  • Compact and lightweight
  • Built-in closed-loop control (position & speed)
  • Integrated telemetry and protection features
  • Easy parameter tuning and UART protocol
  • Supports multi-servo daisy-chain connection
  • Adequate encoder precision (4096 steps)
  • Can be controlled directly via PC or microcontroller

Main Limitations

  • Gearbox backlash higher than specified
  • Firmware not user-upgradeable
  • Requires load-duration testing for long-term wear
  • Audible mechanical noise