diff --git a/frc971/control_loops/drivetrain/drivetrain.cc b/frc971/control_loops/drivetrain/drivetrain.cc
index 36f7c82..27a0a76 100644
--- a/frc971/control_loops/drivetrain/drivetrain.cc
+++ b/frc971/control_loops/drivetrain/drivetrain.cc
@@ -331,7 +331,7 @@
     dt_openloop_.SetGoal(*goal);
   }
 
-  dt_openloop_.Update();
+  dt_openloop_.Update(robot_state().voltage_battery);
 
   dt_closedloop_.Update(output != NULL && controller_type == 1);
 
@@ -393,7 +393,7 @@
     right_high_requested_ = output->right_high;
   }
 
-  const double scalar = ::aos::robot_state->voltage_battery / 12.0;
+  const double scalar = robot_state().voltage_battery / 12.0;
 
   left_voltage *= scalar;
   right_voltage *= scalar;
diff --git a/frc971/control_loops/drivetrain/drivetrain_lib_test.cc b/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
index a6711e4..bb5d5d9 100644
--- a/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
+++ b/frc971/control_loops/drivetrain/drivetrain_lib_test.cc
@@ -164,6 +164,7 @@
     last_U_ << my_drivetrain_queue_.output->left_voltage,
         my_drivetrain_queue_.output->right_voltage;
     {
+      ::aos::robot_state.FetchLatest();
       const double scalar = ::aos::robot_state->voltage_battery / 12.0;
       last_U_ *= scalar;
     }
diff --git a/frc971/control_loops/drivetrain/polydrivetrain.h b/frc971/control_loops/drivetrain/polydrivetrain.h
index 64b1aff..cc3468a 100644
--- a/frc971/control_loops/drivetrain/polydrivetrain.h
+++ b/frc971/control_loops/drivetrain/polydrivetrain.h
@@ -45,7 +45,7 @@
 
   Scalar MaxVelocity();
 
-  void Update();
+  void Update(Scalar voltage_battery);
 
   void SetOutput(::frc971::control_loops::DrivetrainQueue::Output *output);
 
@@ -292,7 +292,7 @@
 }
 
 template <typename Scalar>
-void PolyDrivetrain<Scalar>::Update() {
+void PolyDrivetrain<Scalar>::Update(Scalar voltage_battery) {
   if (dt_config_.loop_type == LoopType::CLOSED_LOOP) {
     loop_->mutable_X_hat()(0, 0) = kf_->X_hat()(1, 0);
     loop_->mutable_X_hat()(1, 0) = kf_->X_hat()(3, 0);
@@ -406,7 +406,9 @@
         (R_right / dt_config_.v)(0, 0) + (IsInGear(right_gear_) ? 0 : wiggle),
         -kTwelve, kTwelve);
 #ifdef __linux__
-    loop_->mutable_U() *= kTwelve / ::aos::robot_state->voltage_battery;
+    loop_->mutable_U() *= kTwelve / voltage_battery;
+#else
+    (void)voltage_battery;
 #endif  // __linux__
   }
 }
