diff --git a/frc971/control_loops/static_zeroing_single_dof_profiled_subsystem.h b/frc971/control_loops/static_zeroing_single_dof_profiled_subsystem.h
index 65135d2..5c94bd5 100644
--- a/frc971/control_loops/static_zeroing_single_dof_profiled_subsystem.h
+++ b/frc971/control_loops/static_zeroing_single_dof_profiled_subsystem.h
@@ -6,12 +6,6 @@
 namespace frc971 {
 namespace control_loops {
 
-// TODO(austin): Use ProfileParametersT...
-struct ProfileParametersStruct {
-  float max_velocity;
-  float max_acceleration;
-};
-
 template <typename ZeroingEstimator>
 struct StaticZeroingSingleDOFProfiledSubsystemParams {
   // Maximum voltage while the subsystem is zeroing
@@ -21,16 +15,16 @@
   double operating_voltage;
 
   // Maximum velocity (units/s) and acceleration while State::ZEROING
-  ProfileParametersStruct zeroing_profile_params;
+  ProfileParametersT zeroing_profile_params;
 
   // Maximum velocity (units/s) and acceleration while State::RUNNING if max
   // velocity or acceleration in goal profile_params is 0
-  ProfileParametersStruct default_profile_params;
+  ProfileParametersT default_profile_params;
 
   // Maximum range of the subsystem in meters
   ::frc971::constants::Range range;
 
-  // Zeroing constants for PotAndABsoluteEncoder estimator
+  // Zeroing constants for the estimator
   typename ZeroingEstimator::ZeroingConstants zeroing_constants;
 
   // Function that makes the integral loop for the subsystem
diff --git a/frc971/control_loops/static_zeroing_single_dof_profiled_subsystem_test.cc b/frc971/control_loops/static_zeroing_single_dof_profiled_subsystem_test.cc
index f9dfd8d..1fd9049 100644
--- a/frc971/control_loops/static_zeroing_single_dof_profiled_subsystem_test.cc
+++ b/frc971/control_loops/static_zeroing_single_dof_profiled_subsystem_test.cc
@@ -95,14 +95,14 @@
 template <typename ZeroingEstimator>
 const StaticZeroingSingleDOFProfiledSubsystemParams<ZeroingEstimator>
 TestIntakeSystemValues<ZeroingEstimator>::make_params() {
-  StaticZeroingSingleDOFProfiledSubsystemParams<ZeroingEstimator> params(
-      {kZeroingVoltage,
-       kOperatingVoltage,
-       {0.1, 1.0},
-       {0.3, 5.0},
-       kRange,
-       TestIntakeSystemValues::kZeroing,
-       &MakeIntegralTestIntakeSystemLoop});
+  StaticZeroingSingleDOFProfiledSubsystemParams<ZeroingEstimator> params{
+      kZeroingVoltage,
+      kOperatingVoltage,
+      {{}, 0.1, 1.0},
+      {{}, 0.3, 5.0},
+      kRange,
+      TestIntakeSystemValues::kZeroing,
+      &MakeIntegralTestIntakeSystemLoop};
   return params;
 }
 
diff --git a/y2019/constants.cc b/y2019/constants.cc
index 380899a..0332252 100644
--- a/y2019/constants.cc
+++ b/y2019/constants.cc
@@ -77,8 +77,8 @@
   // Elevator constants.
   elevator_params->zeroing_voltage = 3.0;
   elevator_params->operating_voltage = 12.0;
-  elevator_params->zeroing_profile_params = {0.1, 1.0};
-  elevator_params->default_profile_params = {4.0, 13.0};
+  elevator_params->zeroing_profile_params = {{}, 0.1, 1.0};
+  elevator_params->default_profile_params = {{}, 4.0, 13.0};
   elevator_params->range = Values::kElevatorRange();
   elevator_params->make_integral_loop =
       &control_loops::superstructure::elevator::MakeIntegralElevatorLoop;
@@ -93,8 +93,8 @@
   // Wrist constants.
   wrist_params->zeroing_voltage = 4.0;
   wrist_params->operating_voltage = 12.0;
-  wrist_params->zeroing_profile_params = {0.5, 2.0};
-  wrist_params->default_profile_params = {10.0, 40.0};
+  wrist_params->zeroing_profile_params = {{}, 0.5, 2.0};
+  wrist_params->default_profile_params = {{}, 10.0, 40.0};
   wrist_params->range = Values::kWristRange();
   wrist_params->make_integral_loop =
       &control_loops::superstructure::wrist::MakeIntegralWristLoop;
@@ -109,8 +109,8 @@
   // Intake constants.
   intake->zeroing_voltage = 3.0;
   intake->operating_voltage = 12.0;
-  intake->zeroing_profile_params = {0.5, 3.0};
-  intake->default_profile_params = {6.0, 30.0};
+  intake->zeroing_profile_params = {{}, 0.5, 3.0};
+  intake->default_profile_params = {{}, 6.0, 30.0};
   intake->range = Values::kIntakeRange();
   intake->make_integral_loop =
       control_loops::superstructure::intake::MakeIntegralIntakeLoop;
@@ -125,8 +125,8 @@
   // Stilts constants.
   stilts_params->zeroing_voltage = 3.0;
   stilts_params->operating_voltage = 12.0;
-  stilts_params->zeroing_profile_params = {0.1, 0.5};
-  stilts_params->default_profile_params = {0.15, 0.5};
+  stilts_params->zeroing_profile_params = {{}, 0.1, 0.5};
+  stilts_params->default_profile_params = {{}, 0.15, 0.5};
   stilts_params->range = Values::kStiltsRange();
   stilts_params->make_integral_loop =
       &control_loops::superstructure::stilts::MakeIntegralStiltsLoop;
diff --git a/y2020/constants.cc b/y2020/constants.cc
index 6218f9b..e30ef0e 100644
--- a/y2020/constants.cc
+++ b/y2020/constants.cc
@@ -57,8 +57,8 @@
   // Hood constants.
   hood->zeroing_voltage = 2.0;
   hood->operating_voltage = 12.0;
-  hood->zeroing_profile_params = {0.5, 3.0};
-  hood->default_profile_params = {6.0, 30.0};
+  hood->zeroing_profile_params = {{}, 0.5, 3.0};
+  hood->default_profile_params = {{}, 6.0, 30.0};
   hood->range = Values::kHoodRange();
   hood->make_integral_loop =
       control_loops::superstructure::hood::MakeIntegralHoodLoop;
@@ -90,8 +90,8 @@
   // Intake constants.
   intake->zeroing_voltage = 3.0;
   intake->operating_voltage = 12.0;
-  intake->zeroing_profile_params = {0.5, 3.0};
-  intake->default_profile_params = {6.0, 30.0};
+  intake->zeroing_profile_params = {{}, 0.5, 3.0};
+  intake->default_profile_params = {{}, 6.0, 30.0};
   intake->range = Values::kIntakeRange();
   intake->make_integral_loop =
       control_loops::superstructure::intake::MakeIntegralIntakeLoop;
@@ -112,8 +112,8 @@
   turret_params->zeroing_voltage = 4.0;
   turret_params->operating_voltage = 8.0;
   // TODO(austin): Tune these.
-  turret_params->zeroing_profile_params = {0.5, 2.0};
-  turret_params->default_profile_params = {15.0, 40.0};
+  turret_params->zeroing_profile_params = {{}, 0.5, 2.0};
+  turret_params->default_profile_params = {{}, 15.0, 40.0};
   turret_params->range = Values::kTurretRange();
   turret_params->make_integral_loop =
       &control_loops::superstructure::turret::MakeIntegralTurretLoop;
diff --git a/y2022/constants.cc b/y2022/constants.cc
index 8ba3367..04ca14c 100644
--- a/y2022/constants.cc
+++ b/y2022/constants.cc
@@ -39,8 +39,8 @@
 
   intake_params.zeroing_voltage = 3.0;
   intake_params.operating_voltage = 12.0;
-  intake_params.zeroing_profile_params = {0.5, 3.0};
-  intake_params.default_profile_params = {6.0, 30.0};
+  intake_params.zeroing_profile_params = {{}, 0.5, 3.0};
+  intake_params.default_profile_params = {{}, 6.0, 30.0};
   intake_params.range = Values::kIntakeRange();
   intake_params.make_integral_loop =
       control_loops::superstructure::intake::MakeIntegralIntakeLoop;
@@ -70,9 +70,9 @@
 
   turret_params->zeroing_voltage = 4.0;
   turret_params->operating_voltage = 12.0;
-  turret_params->zeroing_profile_params = {0.5, 2.0};
-  turret_params->default_profile_params = {10.0, 20.0};
-  turret_params->default_profile_params = {15.0, 20.0};
+  turret_params->zeroing_profile_params = {{}, 0.5, 2.0};
+  turret_params->default_profile_params = {{}, 10.0, 20.0};
+  turret_params->default_profile_params = {{}, 15.0, 20.0};
   turret_params->range = *turret_range;
   turret_params->make_integral_loop =
       control_loops::superstructure::turret::MakeIntegralTurretLoop;
@@ -89,8 +89,8 @@
   auto *const climber = &r.climber;
   climber->subsystem_params.zeroing_voltage = 3.0;
   climber->subsystem_params.operating_voltage = 12.0;
-  climber->subsystem_params.zeroing_profile_params = {0.5, 0.1};
-  climber->subsystem_params.default_profile_params = {5.0, 1.0};
+  climber->subsystem_params.zeroing_profile_params = {{}, 0.5, 0.1};
+  climber->subsystem_params.default_profile_params = {{}, 5.0, 1.0};
   climber->subsystem_params.range = Values::kClimberRange();
   climber->subsystem_params.make_integral_loop =
       control_loops::superstructure::climber::MakeIntegralClimberLoop;
@@ -99,8 +99,8 @@
   Values::PotConstants flipper_arms;
   flipper_arms.subsystem_params.zeroing_voltage = 3.0;
   flipper_arms.subsystem_params.operating_voltage = 12.0;
-  flipper_arms.subsystem_params.zeroing_profile_params = {0.5, 0.1};
-  flipper_arms.subsystem_params.default_profile_params = {6.0, 1.0};
+  flipper_arms.subsystem_params.zeroing_profile_params = {{}, 0.5, 0.1};
+  flipper_arms.subsystem_params.default_profile_params = {{}, 6.0, 1.0};
   flipper_arms.subsystem_params.range = Values::kFlipperArmRange();
 
   auto *const flipper_arm_right = &r.flipper_arm_right;
@@ -119,8 +119,8 @@
 
   catapult_params->zeroing_voltage = 4.0;
   catapult_params->operating_voltage = 12.0;
-  catapult_params->zeroing_profile_params = {0.5, 2.0};
-  catapult_params->default_profile_params = {15.0, 40.0};
+  catapult_params->zeroing_profile_params = {{}, 0.5, 2.0};
+  catapult_params->default_profile_params = {{}, 15.0, 40.0};
   catapult_params->range = Values::kCatapultRange();
   catapult_params->make_integral_loop =
       &control_loops::superstructure::catapult::MakeIntegralCatapultLoop;
diff --git a/y2022_bot3/constants.cc b/y2022_bot3/constants.cc
index 82982aa..ef5ad32 100644
--- a/y2022_bot3/constants.cc
+++ b/y2022_bot3/constants.cc
@@ -44,8 +44,8 @@
 
   intake_params.zeroing_voltage = 3.0;
   intake_params.operating_voltage = 12.0;
-  intake_params.zeroing_profile_params = {0.5, 3.0};
-  intake_params.default_profile_params = {6.0, 30.0};
+  intake_params.zeroing_profile_params = {{}, 0.5, 3.0};
+  intake_params.default_profile_params = {{}, 6.0, 30.0};
   intake_params.range = Values::kIntakeRange();
   intake_params.make_integral_loop =
       control_loops::superstructure::intake::MakeIntegralIntakeLoop;
@@ -66,8 +66,8 @@
 
   climber_params.zeroing_voltage = 3.0;
   climber_params.operating_voltage = 12.0;
-  climber_params.zeroing_profile_params = {0.5, 0.1};
-  climber_params.default_profile_params = {5.0, 1.0};
+  climber_params.zeroing_profile_params = {{}, 0.5, 0.1};
+  climber_params.default_profile_params = {{}, 5.0, 1.0};
   climber_params.range = Values::kClimberRange();
   climber_params.make_integral_loop =
       control_loops::superstructure::climber::MakeIntegralClimberLoop;
diff --git a/y2023/constants.cc b/y2023/constants.cc
index dcce935..6b63cda 100644
--- a/y2023/constants.cc
+++ b/y2023/constants.cc
@@ -49,8 +49,8 @@
 
   wrist->subsystem_params.zeroing_voltage = 3.0;
   wrist->subsystem_params.operating_voltage = 12.0;
-  wrist->subsystem_params.zeroing_profile_params = {0.5, 3.0};
-  wrist->subsystem_params.default_profile_params = {0.5, 5.0};
+  wrist->subsystem_params.zeroing_profile_params = {{}, 0.5, 3.0};
+  wrist->subsystem_params.default_profile_params = {{}, 0.5, 5.0};
   wrist->subsystem_params.range = Values::kCompWristRange();
   wrist->subsystem_params.make_integral_loop =
       control_loops::superstructure::wrist::MakeIntegralWristLoop;
