9 if (intake.
tick.triggers.trigger100)
16 .status = SteeringSystemStatus_e::STEERING_SYSTEM_DEGRADED};
20 if (intake.
tick.triggers.trigger50)
33 const float filteredAngleEncoder,
34 const float filteredAngleAnalog,
35 const uint8_t systemStatus,
36 const uint8_t encoderStatus,
37 const uint8_t analogSensorStatus)
dataType filtered_result(dataType new_val)
void reportSteeringStatus(const float angle, const float filteredAngleEncoder, const float filteredAngleAnalog, const uint8_t systemStatus, const uint8_t encoderStatus, const uint8_t analogSensorStatus)
TelemetryInterface * telemHandle_
void tick(const SteeringSystemTick_s &intake)
Computes steering angle and status of the steering system.
SteeringEncoderConversion_s primaryConversion_
float filteredAngleSecondary_
SteeringSystemData_s steeringData_
Filter_IIR< float > steeringFilters_[NUM_SENSORS]
void update_steering_status_CAN_msg(const float steering_system_angle, const float filtered_angle_encoder, const float filtered_angle_analog, const uint8_t steering_system_status, const uint8_t steering_encoder_status, const uint8_t steering_analog_status)
SteeringEncoderStatus_e status
SteeringSystemStatus_e status
const AnalogConversion_s & secondaryConversion