Correctly handle corrupted encoder readings in localizer
Also, tune down image corrections and remap channels in replay.
This does not fix the yaw issues.
Change-Id: I8587148db1bd03d12210f951306cca3e30a2cb84
Signed-off-by: James Kuszmaul <jabukuszmaul@gmail.com>
diff --git a/y2022/localizer/localizer.h b/y2022/localizer/localizer.h
index be14b45..f2cb50e 100644
--- a/y2022/localizer/localizer.h
+++ b/y2022/localizer/localizer.h
@@ -110,7 +110,8 @@
const control_loops::drivetrain::DrivetrainConfig<double> &dt_config);
void HandleImu(aos::monotonic_clock::time_point t,
const Eigen::Vector3d &gyro, const Eigen::Vector3d &accel,
- const Eigen::Vector2d encoders, const Eigen::Vector2d voltage);
+ const std::optional<Eigen::Vector2d> encoders,
+ const Eigen::Vector2d voltage);
void HandleTurret(aos::monotonic_clock::time_point sample_time,
double turret_position, double turret_velocity);
void HandleImageMatch(aos::monotonic_clock::time_point sample_time,