Skip to content
Configure servos — name, angle range, display type, and more

Servos

Each device can have up to 8 servos. A servo configuration defines how it appears on the control screen and how it behaves.

Adding a servo

In the device editor, tap Add servo to create a new servo. This opens the servo editor where you configure all settings.

Servo settings

Basic settings

SettingDescription
NameA label shown on the control screen (e.g., "Gripper", "Steering")
Servo IDThe physical output channel on the ESP32 (1–8). Must match the wiring.
Min angleMinimum angle in degrees (0–180)
Max angleMaximum angle in degrees (0–180)

The angle range limits how far the servo can move. A range indicator bar shows the configured range visually.

Display type

Choose how the servo appears on the control screen:

TypeDescription
SliderDrag to set any angle within the range. Shows the current angle in real time.
ButtonTap to toggle between the minimum and maximum angle. Shows On/Off state.

Slider options

These settings are only available when the display type is set to Slider:

SettingDescription
OrientationHorizontal — drag left/right. Vertical — drag up/down (takes half the screen width).
Track styleFill — the track fills up to the current position. Thumb — only the thumb indicator is visible.
Spring backWhen enabled, the servo returns to the minimum angle when you release the slider. Useful for momentary actions.

Reversed

Enable Reversed to invert the control direction. When reversed, the slider drag direction and fill are mirrored — dragging to the right (or up) decreases the angle instead of increasing it. The min/max labels swap sides to match. The displayed angle always reflects the actual servo position.

This is useful when a servo is physically mounted the other way around. Instead of rewiring or remounting the servo, just toggle this setting.

For buttons, reversed swaps which angle is sent for On and Off.

Reversed works with all display types (slider and button).

Conditions

A servo can be made dependent on another servo's position. This is useful for safety interlocks — for example, only allowing a gripper to open when an arm is in the correct position.

To set up a condition:

  1. Enable the Requires another servo toggle
  2. Select the servo it depends on
  3. Choose the required position:
ConditionThe servo is controllable when…
At minThe dependency servo is at its minimum angle
At maxThe dependency servo is at its maximum angle
At min or maxThe dependency servo is at either extreme

When a condition is not met, the servo appears dimmed and shows the condition label. It cannot be controlled until the dependency is satisfied.

Reordering servos

In the device editor, drag the handle next to a servo to change its order on the control screen.

Deleting a servo

In the servo editor, scroll to the bottom and tap Delete servo.