Skip to content

iSV57 Servo Register Tuning Guide

ChrGri edited this page Jun 7, 2026 · 1 revision

This guide provides a comprehensive walkthrough for reading, modifying, and flashing the internal control loop parameters of the Stepperonline iSV57 Integrated Servo Motor using the DIY FFB Pedal SimHub Plugin.

Fine-tuning these registers allows you to optimize the admittance control response, suppress mechanical resonance, and adapt the feedback to match your personal performance preferences.


1. GUI Operations & Procedures

Reading Current Servo Parameters

  1. Ensure your DIY FFB Pedal is powered and connected to the PC. Open the SimHub interface and make sure the plugin is communicating with your pedal hardware.
  2. Navigate to the Servo tab within the plugin settings.
  3. Click the LOAD FROM SERVO button. The UI will fetch the active parameters directly from the motor's volatile memory and populate them into the Live (Servo) column.

Flashing Baseline (Recommended) Parameters

  1. Click the RESET TO RECOMMENDED button. This populates optimized predefined defaults curated specifically for sim racing admittance loops.
  2. Important Active Standby Reset: After clicking, the motor controller automatically drops into an Idle Mode (safe state).
    • To wake the servo: Gently tap or press the physical pedal assembly. This brief mechanical input triggers a hardware re-initialization sequence, resetting the control loops, waking up the motor, and restoring full force-feedback capabilities.

Flashing Factory Defaults

  1. Click the RESET TO FACTORY button to clear custom tuning configurations and revert the internal EEPROM back to Stepperonline OEM shipping parameters.
  2. Just like the baseline flash, the motor will enter Idle Mode immediately. Wake the device by giving the pedal a light tap to restart the hardware control loops.

Manual Parameter Adjustment (Live Tuning)

  1. Locate the target register row in the data grid and select the value cell within the Live (Servo) column.
  2. Modify the numerical value to your desired setting.
  3. Test Volatile Workspace: Select any other row or click outside the cell. The plugin immediately transmits the new value into the volatile RAM of the servo controller. The changes take effect instantly, allowing you to test the physical pedal feel dynamically on the fly.
  4. Permanent Storage: Parameters modified in RAM will revert to their previous state if the pedal is power-cycled. To store your changes permanently in the motor's non-volatile EEPROM, click the FLASH TO SERVO button.

Video

ServoParameterTuning.mp4

2. Control Cascade & Core Register Reference

The iSV57 operates on a high-speed cascaded control loop topology consisting of Position, Velocity, and Torque (Current) loops. Tuning specific registers alters the admittance physics and dampening profile of the system. The signal flow is depicted in the image below
_ drawio (11).


[ESP32 Admittance Model] ──> [Positional Command Filter (Pr1.35)] ──> [Position Loop (Pr1.00)] ──> [Velocity Loop (Pr1.01, Pr1.02)] ──> [Torque Loop (Pr7.00, Pr1.04)] ──> [Physical Motor Coils]

Register Parameter Name Default / Rec Engineering Description & Tuning Impact
Pr0.00 Reserved parameter 500 Internal firmware anchor. Keep at default system value.
Pr0.01 Control Mode 0 Defines the primary operational cascade mode. Set to 0 (Position Control Mode), driven by the high-frequency step/dir telemetry from the ESP32.
Pr1.00 1st gain of position loop 1/s Proportional gain of the position loop. Determines responsiveness to step commands. Higher values stiffen tracking, while overly aggressive values can introduce high-frequency overshoot before velocity tracking engages.
Pr1.01 Proportional gain of velocity loop 0.1 Hz Sets the rigidness of velocity tracking. Controls the promptness of response to dynamic force speed changes. High values cause a sharper, faster feedback response but risk motor oscillation if matching filters are unset.
Pr1.02 Time constant of velocity loop integration 0.1 ms Integral time constant for velocity tracking. Eliminates steady-state tracking error across continuous motion phases. Lower values decrease integration time, tightening response but risking low-frequency hunt behaviors.
Pr1.03 Velocity feedback filter Low-pass filter for the velocity feedback loop designed to attenuate high-frequency encoder signal noise. Lower cut-off values block noise but restrict velocity loop bandwidth.

Constraint: Must satisfy Pr1.03 >= Pr1.04 * 4 to maintain loop stability.
Pr1.04 1st Torque Filter Time Constant 126 (0.01ms) A crucial low-pass filter handling the raw torque/current commands to eliminate vibration and audible resonance during motor activation.

• Range: 0 ~ 2500 (Units of 0.01 ms). Default 126 = 1.26 ms, providing a cut-off frequency of approx. 126 Hz.
• Lower values enhance responsiveness and reduce mechanical lag but increase audible noise and structural ripple. If mechanical vibrations trigger due to high servo gains, raising this value dampens the noise.
Pr1.10 / Pr1.11 Velocity feed forward gain & filter 0.1% / 0.01ms Feeds the derivative of the positional input command directly into the velocity loop, bypassing positional lag. Optimizes response delay during high-acceleration pedal inputs.
Pr1.12 / Pr1.13 Torque feed forward gain & filter 0.1% / 0.01ms Feeds acceleration criteria directly into the current loop. Accelerates torque build-up when rapid counter-forces occur.
Pr1.35 Positional command filter Applies smoothing matrices to the incoming step-pulse generation commands arriving from the MCU, softening structural shock before it hits the loop.
Pr7.00 Current loop gain 200 Proportional control component over the motor current loop. Higher values provide sharp, precise force updates, but excessive values introduce audible motor whine and structural ringing. Lowering values softens torque transitions for a quieter motor.
Pr7.01 Current loop integral time Integral execution window for current tracking stability. Works alongside Pr7.00 to ensure target phase current vectors map correctly onto physical stator windings.

3. Advanced Control Engineer's Tuning Tip

💡 Pro-Tip: When engineering the physical pedal feel, if you encounter high-frequency acoustic buzzing or oscillations when resting your foot on the pedal, do not immediately compromise on feedback crispness by slashing the velocity loop gain (Pr1.01).

Instead, perform the following troubleshooting steps:

  1. Increase the 1st Torque Filter Time Constant (Pr1.04) slightly to filter out high-frequency control loop ripple.
  2. If the motor continues to whine, decrease the Current Loop Gain (Pr7.00) in small increments to soften out the electrical commutation response.
  3. This approach effectively dampens structural resonance and high-frequency electrical harmonics without sacrificing the core agility and responsiveness of your primary position and velocity loops.

Clone this wiki locally