Skip to main content
Version: 3.5.x

Filters

The service applies a chain of filters to outgoing forces before they reach the device. Each filter can be configured per-session (via configure or HTTP) or globally (via settings).

Filter pipeline

Forces pass through these stages in order:

your force → [osc-damper] → [force-gate] → [damping] → [force-scale] → device
StageWhat it doesScopeHow to configure
Osc-damperDetects oscillation, reduces gainPer-device (automatic)Internal — not user-configurable
Force gateAttenuates force during detected oscillationPer-sessionconfigure.force_gate or config/filters/force_gate
DampingAdds viscous resistance (scalar and/or directional)Per-sessionconfigure.damping or config/filters/damping
Force scaleGlobal multiplier on all forcesGlobalPOST /settingsdevices/force_scale

Safe trajectory

Safe trajectory is a position-mode filter — it rate-limits the cursor velocity when using set_cursor_position, ensuring smooth motion toward the target.

Setting keyDefaultDescription
features/safe_trajectory/enabledfalseEnable position rate limiting
features/safe_trajectory/max_vel0.5Maximum cursor velocity (m/s)

Configure via Settings:

curl -X POST http://localhost:10001/settings \
-H "Content-Type: application/json" \
-d '{"features/safe_trajectory/enabled": true, "features/safe_trajectory/max_vel": 0.3}'