Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Pedro Pathing vs Road Runner

Pedro Pathing and RoadRunner are two popular autonomous movement libraries for FTC. The goal of this article is to provide an unbiased comparison to help you decide which to use. The goal of this article is not to recommend one over the other.


AspectPedro PathingRoadRunner
Following StrategyHas two algorithms that can be chosen from. The PIDF algorithm uses three PID controllers: translational, heading, and drive, along with centripetal force correction1. The predictive braking algorithm uses an estimation of the required braking distance and a proportional controller, along with a PID controller for heading control2.Generates and follows motion-profiled trajectories3 by using a combination of feedforward and feedback control4.
VisualizerHas a no-code, web-based path generator and visualizer that can export code for paths.Has a code-based path visualizer that visualizes paths defined in code.
TuningThe predictive braking algorithm is mostly automatic with only one manual tuner5. The PIDF algorithm is half automatic and half manual. Has six automatic tuning steps and four manual tuning steps6, although the manual steps take slightly longer.Mostly automatic. Has four automatic tuning steps and two manual tuning steps7, although the manual steps take slightly longer. If using the SparkFun OTOS for localization there are four additional automatic tuning steps.
Loop Time OptimizationsAutomatically implements motor write caching with a configurable cache tolerance.8Automatically implements bulk reading.9
Good AtCorrection for unexpected disturbances.10Time-consistent trajectory following.
Coordinate SystemCustom coordinate system. Provides a PoseConverter for converting to and from the official FIRST coordinate system.Uses the official FIRST coordinate system.
Command SystemHas an optional official external command system called Ivy. Can also be integrated with others. NextFTC and SolversLib both provide built-in integration with Pedro Pathing. Mercurial has two sample repos using Pedro Pathing.Has a built-in actions system. Also has an example on the docs for usage with FTCLib. NextFTC provides built-in integration with RoadRunner. Mercurial has two sample repos using RoadRunner.
LoggingAutomatically logs many values to telemetry, but does not log to a file. Data such as current position can be logged by the user by using a third-party library such as PsiKit for replay with AdvantageScope.Logs many values automatically to telemetry and to a file during every OpMode run.11 Uses a custom log format that is supported by AdvantageScope.
Drivetrain SupportHas built-in support for mecanum and coaxial swerve drivetrains. Users can provide a custom implementation of the Drivetrain interface to use another drivetrain12, but does not support nonholonomic drivetrains such as tank.Has built-in support for mecanum and tank drivetrains. Does not support any other drivetrains.13

This article was last modified:
On 2026-04-13 17:49:56 -05:00
By Davis Luxenberg
See it here: fa4b2b12e1b2970d6bdc04606cdf6653d981c4cb


  1. Pedro Pathing docs

  2. Predictive Braking docs

  3. RoadRunner trajectories: Although these docs are for RoadRunner v0.5, the concepts are the same for v1.0.

  4. Feedback and feedforward control docs.

  5. Predictive braking tuning docs

  6. Pedro Pathing tuning docs

  7. RoadRunner tuning docs

  8. Cache tolerance in Pedro constants

  9. Bulk reading in Encoder

  10. Pedro Pathing homepage

  11. RoadRunner log files

  12. Custom drivetrains

  13. RoadRunner drive classes