diff --git a/frc971/control_loops/drivetrain/drivetrain_plotter.ts b/frc971/control_loops/drivetrain/drivetrain_plotter.ts
index 5610e97..a609532 100644
--- a/frc971/control_loops/drivetrain/drivetrain_plotter.ts
+++ b/frc971/control_loops/drivetrain/drivetrain_plotter.ts
@@ -18,6 +18,8 @@
       "frc971.control_loops.drivetrain.Position");
   const status = aosPlotter.addMessageSource(
       '/drivetrain', 'frc971.control_loops.drivetrain.Status');
+  const localizerOuput = aosPlotter.addMessageSource(
+      '/localizer', 'frc971.controls.LocalizerOutput');
   const output = aosPlotter.addMessageSource(
       '/drivetrain', 'frc971.control_loops.drivetrain.Output');
   const gyroReading = aosPlotter.addMessageSource(
@@ -279,11 +281,10 @@
   xPositionPlot.plot.getAxisLabels().setXLabel(TIME);
   xPositionPlot.plot.getAxisLabels().setYLabel('X Position (m)');
 
-  const localizerX = xPositionPlot.addMessageLine(status, ['x']);
-  localizerX.setColor(RED);
-  const splineX =
-      xPositionPlot.addMessageLine(status, ['trajectory_logging', 'x']);
-  splineX.setColor(GREEN);
+  xPositionPlot.addMessageLine(status, ['x']).setColor(RED);
+  xPositionPlot.addMessageLine(status, ['trajectory_logging', 'x'])
+      .setColor(GREEN);
+  xPositionPlot.addMessageLine(localizerOuput, ['x']).setColor(BLUE);
 
   // Absolute Y Position
   const yPositionPlot = aosPlotter.addPlot(element);
@@ -291,11 +292,10 @@
   yPositionPlot.plot.getAxisLabels().setXLabel(TIME);
   yPositionPlot.plot.getAxisLabels().setYLabel('Y Position (m)');
 
-  const localizerY = yPositionPlot.addMessageLine(status, ['y']);
-  localizerY.setColor(RED);
-  const splineY =
-      yPositionPlot.addMessageLine(status, ['trajectory_logging', 'y']);
-  splineY.setColor(GREEN);
+  yPositionPlot.addMessageLine(status, ['y']).setColor(RED);
+  yPositionPlot.addMessageLine(status, ['trajectory_logging', 'y'])
+      .setColor(GREEN);
+  yPositionPlot.addMessageLine(localizerOuput, ['y']).setColor(BLUE);
 
   // Gyro
   const gyroPlot = aosPlotter.addPlot(element);
diff --git a/frc971/control_loops/drivetrain/localization/puppet_localizer.cc b/frc971/control_loops/drivetrain/localization/puppet_localizer.cc
index 33095f2..77b9fbe 100644
--- a/frc971/control_loops/drivetrain/localization/puppet_localizer.cc
+++ b/frc971/control_loops/drivetrain/localization/puppet_localizer.cc
@@ -91,7 +91,7 @@
         static_cast<float>(localizer_output_fetcher_->y()),
         static_cast<float>(localizer_output_fetcher_->theta())};
     Eigen::Matrix3f R = Eigen::Matrix3f::Zero();
-    R.diagonal() << 0.01, 0.01, 1e-4;
+    R.diagonal() << 1e-4, 1e-4, 1e-6;
     const Input U_correct = ekf_.MostRecentInput();
     observations_.CorrectKnownH(Eigen::Vector3f::Zero(), &U_correct,
                                 Corrector(state_at_capture.value(), Z), R, now);
