Skip to main content

Product Usage

The factory‑default firmware on the Servo Driver with ESP32 is designed for our SC series servos.

If you are using SC series servos, after connecting the servos to the driver board and supplying appropriate power, you can connect to the board's Wi‑Fi and control the servos via the web interface. See the Web Usage Tutorial on this page for details.

If you are using our ST series servos, you will need to flash the firmware intended for ST series servos before you can control them via the web interface.

This driver board supports both ST and SC series bus servos, with dedicated flashable firmware provided for each. You can flash the firmware using the ESP32 download tool without installing Arduino IDE or any dependency libraries. After flashing, you can perform operations such as servo ID configuration, mode switching, and motion control via the web interface. The following sections describe the firmware flashing steps and web usage tutorial for both ST and SC series servos.

1. Firmware Flashing

1.1 ST Series Servos

Click to download the ST Series Servo ESP32 Download Tool. After extraction, double‑click to open flash_download_tool_3.9.5.exe. Two windows will appear: one is a black terminal window showing the tool's status, and the other is the main UI where you perform the operations.

In the "DOWNLOAD TOOL MODE" interface, select ChipType as ESP32 and WorkMode as Factory (this uses binary files with auto‑adapted relative paths; no manual input is required). Click OK to confirm.

Download Tool Step 1

Keep the LockSettings checkbox selected (this supports flashing up to 8 boards simultaneously). Connect the driver board to your computer via USB, click the COM option, and select the newly detected COM port. BAUD sets the flashing speed, up to 921600 (higher speed means faster flashing).

Download Tool Step 2

After confirming the settings, click START to begin flashing. When the interface shows FINISH, the flashing is successful.

Download Tool Step 3

Download Tool Step 4

After flashing, disconnect the USB connection between the board and your computer, connect the servos, and power the board. You can then start controlling the ST series servos.

1.2 SC Series Servos

Click to download the SC Series Servo ESP32 Download Tool, then follow the same flashing steps described for the ST series servos. After flashing, connect the servos to the driver board and power it on to start controlling SC series servos.

2. Web Usage Tutorial

This section uses the ST series servo example firmware to illustrate the web interface.

2.1 Connecting Servos and Power

Using the ST3215 Servo as an example: after connecting the servo to the driver board, power the board via the 5.5 × 2.1 mm DC jack with 6 – 12.6 V (12 V recommended). This power input directly supplies the servos.

warning

The Servo Driver with ESP32 has a maximum current rating of 5 A. If you are using a large number of servos, power them in separate groups to prevent the board from being damaged by excessive current.

2.2 Connecting to the Board's Wi‑Fi Hotspot

  1. After power‑up, the board automatically creates a Wi‑Fi hotspot with the default SSID ESP32_DEV and password 12345678.
  2. Use your phone or computer to connect to this Wi‑Fi. Since this network does not provide Internet access, some devices may automatically switch to other saved Wi‑Fi networks. If this happens, reconnect to the ESP32_DEV network; after a successful reconnection, the connection should remain stable.
  3. It is recommended to use Google Chrome. Enter 192.168.4.1 in the address bar to access the Web control interface.

Servo Driver with ESP32-Web Control Interface

2.3 Servo Scanning

  1. The board automatically scans for servos at power‑up. If you connect servos after the board is already powered on, click "Start Searching" on the interface to rescan.
  2. Our servos have a default ID of 1. When connecting multiple servos to the board, you must change their IDs to avoid conflicts; otherwise, they may not be detected. When changing a servo ID, it is recommended to connect only the single servo that needs its ID changed.
  3. By default, the board scans for servo IDs from 0 to 20. If you are using a servo with an ID greater than 20, you must modify the MAX_ID value in the source file ServoDriverST.ino (the maximum valid value is 253) and re‑flash the firmware.
  4. After scanning, the interface displays all currently connected servo IDs, allowing you to perform subsequent operations.

2.4 Core Function Operations

The buttons on the web interface and their functions are described below. All operations apply to the currently selected Active ID (the currently selected servo ID):

CategoryButton NameDescription
ID ManagementID Select+/-Switch the currently selected Active ID
ID to Set+/-Adjust the new servo ID value to be assigned
Set New IDChange the servo with the current Active ID to the new ID set by ID to Set. The change persists after power‑off.
Position ControlMiddleMove the servo to the middle position (position range 0‑4095; middle is 2047)
Set Middle PositionSet the servo's current position as the new middle position (2047), customizing the servo's zero reference
Motion ControlPosition+Rotate the servo clockwise. In servo mode, it stops once it reaches position 4095
Position-Rotate the servo counterclockwise. In servo mode, it stops once it reaches position 0
Speed+/-Set the servo rotation speed. ST series supports up to approximately 3073 steps/second (50 steps/second ≈ 0.732 RPM)
StopStop servo motion (useful when the servo does not stop on its own after secondary development)
Torque ControlReleaseDisable torque lock; the servo can be rotated manually
TorqueEnable torque lock; the servo will hold its position with force
Operating Mode SwitchingSet Servo ModeSwitch to servo mode, supporting 360° absolute angle control. The mode persists after power‑off
Set Motor ModeSwitch to motor mode, supporting continuous rotation with relative angle control within 30000 steps/±7 turns. The rotation count does not persist after power‑off, but the mode does
Serial DebuggingStart Serial ForwardingSerial forwarding mode: control the servo directly via the Type‑C interface and receive feedback for debugging. The serial baud rate is 115200
ESP‑NOW Communication ModeNormalNormal mode; does not send or receive ESP‑NOW messages
LeaderMaster mode: sends the Active ID servo's ID, position, and speed information to followers via ESP‑NOW. See ESP‑NOW Communication Configuration
FollowerFollower mode: receives ESP‑NOW commands from the leader and follows the leader's servo movements
Lighting ControlRainbowON/OFFEnable/disable the RGB LED rainbow effect