Waveshare Bus Servo Adapter (A): specs and pinout
Adapter board that connects a host (UART or USB) to ST/SC serial bus servos and feeds them servo power. A jumper cap selects UART (A) or USB (B) control.
Specs
| Spec | Value | Source |
|---|---|---|
| Input voltage | 9-12.6 V (must match the servo voltage) | source Specification; Features |
| Communication interface | UART (TX to TX and RX to RX as the wiki wires it); also USB with the jumper cap on B | source How to Use, UART Control and USB Control |
| Power connectors | 5.5 x 2.1 mm DC jack, and a green power screw terminal | source Specification; How to Use |
| Servos supported | ST and SC series serial bus servos; up to 253 on one bus in theory, with sufficient power | source Introduction; Features |
| Dimensions | 42 mm x 33 mm; mounting hole diameter 2.5 mm | source Specification |
| Servo current to plan for: ST3215-HS (20 kg.cm) | Load current 240 mA; locked-rotor current 2.4 A per servo | source Overview > Specification |
| Servo current to plan for: ST3025 (40 kg.cm) | Non-load 380 mA; rated 1.5 A; locked-rotor 4.4 A per servo | source Specification |
Power
| Value | Source | |
|---|---|---|
| Supply | 9-12.6 V DC on the 5.5 x 2.1 mm jack or screw terminal; must match the servos | source Specification; servo currents from the servo wiki pages (see specs) |
Pinout
Rows are the jumper, power and servo connections the wiki describes; it gives no pin-by-pin header table. The wiki also links a schematic, which is not used here.
| Pin | Function | Voltage | Notes | Source |
|---|---|---|---|---|
| Jumper cap, position A | UART control | Use for boards without USB (ESP32, Arduino, STM32, Raspberry Pi Zero); connect RX to RX and TX to TX | source How to Use, UART Control | |
| Jumper cap, position B | USB control | Use when a PC or a Raspberry Pi 4B connects by USB cable | source How to Use, USB Control | |
| DC5521 power header / green screw terminal | Servo power input | 9-12.6 V | Voltage must match the connected servos; marked for ST series, also accepts SC series servo voltage | source How to Use |
| Servo interface | Serial bus servo connection | Connect the ST/SC bus servos here | source How to Use, UART Control |
Build with it
Project ideas for the Waveshare Bus Servo Adapter (A). Each link opens Soldr with the prompt filled in; Soldr assigns the pins, checks power and shows how to wire every part.
- Two-axis pan-tilt head: Each ST3215-HS can draw 2.4 A if it stalls, so two need up to 4.8 A; a 12 V 5 A supply on the adapter's DC jack covers that. The ESP32 talks to the adapter on UART with the jumper on A. Check the plug fits the 5.5 x 2.1 mm jack.
- Heavy-duty gripper: The ST3025 draws up to 4.4 A locked rotor, so it needs a supply rated above that; a 12 V 5 A supply fits and is within the adapter's 9-12.6 V input. Learning project; keep fingers clear of the gripper.
- USB-controlled servo arm joint: With the jumper on B the Pi 4 controls the servo through USB, and the servo is powered from the 12 V supply on the adapter, not from the Pi. One ST3215-HS stalls at 2.4 A.
Common mistakes
- Wrong supply voltage: the input must match the servo voltage, 9-12.6 V (source Specification)
- Under-sizing the supply: an ST3215-HS can draw 2.4 A and an ST3025 4.4 A when stalled, per servo, and 'up to 253 servos' needs sufficient power (sources: link and link)
- Jumper cap in the wrong place: it must be on A for UART control and B for USB control; wire RX to RX and TX to TX (source How to Use)
Not covered by the official source
- No logic-level voltage for the UART pins is stated on the wiki page.
- The adapter's own current limit is not stated; size the supply from the servo currents.