Route Planner & Code Exporter • FTC Team 27003 The Churchill Hawks 2.0
FTC Team 27003 The Churchill Hawks 2.0
Go to the Robot tab and enter your wheel diameter and axle width, or pick a ready preset in Tuning (like standard SPIKE Prime).
Click anywhere on the FLL mat canvas to add waypoints, or drag existing waypoints and orange direction handles to orient your robot.
Press Space or click the blue Play button to preview your robot's exact turn-and-drive sequence in real-time.
Click Export to get clean Pybricks Python, SPIKE Prime Python, or Block instructions equipped with built-in Gyro Correction!
Waypoints are goal points on the mat. Your robot turns toward a waypoint, drives straight to it, and turns to match the waypoint's heading angle.
In FLL, placing your robot squarely against the border wall is key for repeatable runs.
Track points for the official 2026–27 BIOGLOW™ challenge right inside the tool!
Path Studio generates code that uses your hub's IMU Gyro sensor to keep the robot moving perfectly straight and turning accurately on the physical mat.
Easy instructions for middle school students to calibrate their real robot to match the screen!
Why does my physical robot not move like the screen?
LEGO plastic wheels squish slightly under weight, and wheel axle spacing can differ by a few millimeters. Calibration fixes distance and turning errors so your robot drives on the mat exactly like it does in the simulator!
In the Tuning tab, click 50 cm Straight Test Path.
Set your robot up against the back wall on your real FLL mat. Place a ruler or tape measure along the edge of your robot.
Export and run the code. Measure how far the robot actually moved on the mat with your ruler (e.g. 48.5 cm instead of 50 cm).
Under Distance Calibration on the Tuning tab, enter 50 in Commanded Distance and 48.5 in Actual Measured Distance, then click Adjust Wheel Diameter.
In the Tuning tab, click 180° Spin Test.
Align your robot precisely parallel to a grid line on your mat.
Export and run the code. Watch where the robot stops spinning. Did it complete a half turn (facing the opposite way), or did it stop early / turn too far?
Under Turn Calibration (Autotune), enter 180 in Target Angle and your actual measured turn angle (e.g. 190°) in Actual Measured Turn Angle, then click Adjust Track Width.
After distance and turn calibration look good, open the Tuning tab and find Gyro Correction Gains (PID / Kp). These numbers control how hard the robot fights heading error while driving and turning. They are injected into Pybricks, SPIKE, EV3, Blocks, and Human exports.
How strongly the robot steers back to the target heading while driving straight. Raise if it drifts; lower if it weaves or oscillates.
How aggressively the robot pivots toward the target angle. Raise for snappier turns; lower if it overshoots and hunts.
Stop the turn when the remaining error is this small or less. Use 1–2° for most mats; tighter only if your hub is very stable.
Export and run a long straight (e.g. 50 cm). If the robot drifts left/right, raise Drive Kp a little (try +0.5). If it zig-zags, lower Drive Kp.
Run the 180° spin test. If the turn ends short or overshoots then corrects, adjust Turn Kp and/or Turn tolerance until it settles cleanly.
Click Export again so the new gains appear in the generated code. Gains are also saved with your project (Save / autosave).
What proportional control is, why FLL uses P-only, and how to tune Drive Kp / Turn Kp on the mat
PID is a classic feedback control method. You measure an error, then use up to three terms (P, I, D) to decide how hard to correct. In Path Studio the gyro loops are P-only — that is intentional and common for FLL tank-drive heading control.
“How far am I right now?” Corrects harder when farther from the target. High → oscillates / weaves. Low → slow, may leave a steady offset.
“How long have I been wrong?” Removes leftover steady-state error that P alone can’t fix. High → overshoot and windup. Rarely needed for FLL gyro drive.
“How fast is the error changing?” Damps motion and reduces overshoot. High → noisy / twitchy (amplifies gyro noise). Often left at zero for FLL.
So a well-tuned P (plus a small turn tolerance) is usually enough. That is exactly what Drive Kp, Turn Kp, and Turn tolerance control in the Tuning tab.
Calibrate wheel diameter and track width first (Parts A & B above). Gains cannot fix wrong robot dimensions.
Start with defaults: Drive Kp 2.0, Turn Kp 1.8, tolerance 1.0°.
Export a long straight. If the robot drifts, raise Drive Kp by ~0.5. If it weaves, lower Drive Kp. Change only one number, re-export, re-test.
Run a 90° or 180° spin. Adjust Turn Kp and tolerance until the robot settles cleanly without hunting.
Re-export so the final gains appear in the generated code. Gains are saved with your project.