Skip to main content
Tests the teleop filter stack offline, with no robot or VR headset. The tool takes a clean joint signal, adds known noise, and replays it through the same smoothing chain and rates teleop uses. You get the same result every time for the same settings. The clean signal is a synthetic sine or a saved reference motion. To run the same test on the real arms, use tune.motion --noise --filter. The diagnostics dashboard runs that version. The teleop pipeline is:

Noise sources

--noise picks what to add. Each source enters the pipeline where it would on the robot, so you can test them one at a time. The output is scored per joint against the clean signal. The noise is seeded, and the network and IK noise use separate seeds, so the same seed gives the same network noise whether or not IK noise is added. To compare filter settings, change one (for example --cutoff), rerun, and compare the scores.

Reading the scorecard

During a stall the clean signal keeps moving while the stream is frozen, so error during a stall is expected. Judge the filters on the catch-up: the arm should resume without overshoot or a spike in acceleration.