# DriveManager application faults
# Highly Confidential and Proprietary Zoox Information. Copyright (c) Zoox.

component: DriveManager
source_enum: kEmuDriveManager
namespace: zoox
proto_imports:
  - "vehicle/common/proto/emu_diagnostics.proto"
faults:
- id: 27
  name: mofoStale
  severity: WARNING
  description: MoFo messages are missing, caused by Ethernet connection between EMU and MoFo not
    complete or MoFo SW not configured to transmit to EMU.
  troubleshooting_steps: Inspect harness, check device fuse, check MoFo version.
- id: 28
  name: mofoWarning
  severity: INFO
  description: MoFo warning is not implemented, cause unknown.
  troubleshooting_steps: None
- id: 29
  name: mofoFault
  severity: INFO
  description: MoFo fault is not implemented, cause unknown.
  troubleshooting_steps: None
- id: 30
  name: highVoltageRequiredAndLost
  severity: ERROR
  description: The current DriveState requires high voltage but high voltage was lost.
  troubleshooting_steps: Check PowerManager diagnostics for power limiting faults.
  reaction:
    trajectory: Estop
- id: 31
  name: accessoryPowerRequiredAndLost
  severity: ERROR
  description: The current DriveState requires accessory power (KL15) but accessory power was lost.
  troubleshooting_steps: Check PowerManager and TBC diagnostics for power limiting faults.
  reaction:
    trajectory: Estop
- id: 32
  name: chargeStateMismatch
  severity: ERROR
  description: Vehicle is charging while not in DriveStateSquat.
  troubleshooting_steps: Use the Squat&Charge sequence to charge.
  reaction:
    power_mode_limit: Acc
- id: 34
  name: northMotorTorqueMonitorFault
  severity: ERROR
  description: The closed-loop-control (CLC) monitor for the north motor has detected a sustained
    error in excess of allowed margin between the expected motor torque and the feedback motor
    torque reported by the EDU.
  troubleshooting_steps: Ensure the motor_torque_monitor parameters in the EMU's drive_params.json
    file are configured as expected. Collect logs and contact Firmware and/or SDMA.
  reaction:
    trajectory: Estop
    power_mode_limit: Acc
  freeze_frame: zoox.common.proto.MotorTorqueMonitorFF
- id: 35
  name: southMotorTorqueMonitorFault
  severity: ERROR
  description: The closed-loop-control (CLC) monitor for the south motor has detected a sustained
    error in excess of allowed margin between the expected motor torque and the feedback motor
    torque reported by the EDU.
  troubleshooting_steps: Ensure the motor_torque_monitor parameters in the EMU's drive_params.json
    file are configured as expected. Collect logs and contact Firmware and/or SDMA.
  reaction:
    trajectory: Estop
    power_mode_limit: Acc
  freeze_frame: zoox.common.proto.MotorTorqueMonitorFF
- id: 36
  name: steeringLimiterFault
  severity: ERROR
  description: Steering commands were badly formed.
  troubleshooting_steps: Collect logs and notify FW.
  reaction:
    trajectory: Estop
- id: 37
  name: steeringAllocationFault
  severity: ERROR
  description: Four-wheel steer command allocation failed.
  troubleshooting_steps: Collect logs and notify FW.
  reaction:
    trajectory: Estop
- id: 38
  name: steeringAllocationWarning
  severity: WARNING
  description: Four-wheel steer command allocation succeeded, but forces exceed limits
- id: 39
  name: abdStale
  severity: INFO
  description: AB Dynamics Flex-0 stale. Not implemented, cannot happen.
  troubleshooting_steps: None
- id: 40
  name: abdWarning
  severity: INFO
  description: AB Dynamics Flex-0 warning. Not implemented, cannot happen.
  troubleshooting_steps: None
- id: 41
  name: abdFault
  severity: INFO
  description: AB Dynamics Flex-0 fault. Not implemented, cannot happen.
  troubleshooting_steps: None
- id: 46
  name: highVoltageDesiredAndLost
  severity: ERROR
  description: The current DriveState wants high voltage but high voltage was lost.
  troubleshooting_steps: Check PowerManager diagnostics for power limiting faults.
  reaction:
    trajectory: NoGo
- id: 47
  name: canGainEstop
  severity: ERROR
  description: Emergency Stop was requested via CAN gain.
  reaction:
    trajectory: Estop
- id: 48
  name: canGainNoGo
  severity: ERROR
  description: NoGo was requested via CAN gain.
  reaction:
    trajectory: NoGo
- id: 49
  name: canGainWarning
  severity: WARNING
  description: Warning was requested via CAN gain.
- id: 53
  name: reserved18
  severity: INFO
  description: Reserved
- id: 66
  name: wssFault
  severity: ERROR
  description: Electronic Stability Program (ESP) and IBoosters have an invalid speed on more than
    one quadrant while vehicle is in motion.
  troubleshooting_steps: Check device harness.
  reaction:
    trajectory: NoGo
- id: 70
  name: northSteeringTrackingMonitorFault
  severity: ERROR
  description: The closed-loop-control (CLC) monitor for the north steering rack has detected a
    sustained error in excess of allowed margin between the expected rack position and the feedback
    rack position reported by the EPAS.
  troubleshooting_steps: Ensure the steering_tracking parameters in the EMU's drive_params.json
    file are configured as expected. Collect logs and contact Firmware and/or SDMA.
  reaction:
    trajectory: Estop
  freeze_frame: zoox.common.proto.SteeringTrackingMonitorFF
- id: 71
  name: southSteeringTrackingMonitorFault
  severity: ERROR
  description: The closed-loop-control (CLC) monitor for the north steering rack has detected a
    sustained error in excess of allowed margin between the expected rack position and the feedback
    rack position reported by the EPAS.
  troubleshooting_steps: Ensure the steering_tracking parameters in the EMU's drive_params.json
    file are configured as expected. Collect logs and contact Firmware and/or SDMA.
  reaction:
    trajectory: Estop
  freeze_frame: zoox.common.proto.SteeringTrackingMonitorFF
- id: 72
  name: reserved19
  severity: INFO
  description: Reserved
- id: 79
  name: squatAndChargeFault
  severity: WARNING
  description: Squat and Charge procedure faulted, caused by suspension or charger fault.
  troubleshooting_steps: If failure while squatting, disable suspension. Else, collect logs and
    notify FW.
  freeze_frame: zoox.common.proto.SquatAndChargeFF
- id: 80
  name: incompleteControlFault
  severity: ERROR
  description: System control path has invalid actuator torque, invalid actuator steering, or
    invalid common commands, possibly caused by a bug in DriveManager not setting a full control
    command.
  troubleshooting_steps: Collect logs and notify FW.
  reaction:
    trajectory: Estop
  freeze_frame: zoox.common.proto.IncompleteControlFF
- id: 81
  name: velocityControlFault
  severity: ERROR
  description: Velocity controller computation failed, caused by invalid velocity controller inputs.
  troubleshooting_steps: Collect logs and notify FW.
  reaction:
    trajectory: NoGo
- id: 82
  name: driveDirectionChangeBlocked
  severity: WARNING
  description: A drive direction change request has been blocked because the vehicle is in motion or
    an invalid drive direction enum has been provided.
  troubleshooting_steps: This is expected if an operator requests a drive direction change while at
    speed when driving manually. If this occurs during autonomy or in another unexpected situation,
    collect logs and notify FW.
- id: 83
  name: driveGearChangeBlocked
  severity: WARNING
  description: A drive gear change request has been blocked because the vehicle is in motion or an
    invalid drive gear enum has been provided.
  troubleshooting_steps: This is expected if an operator requests a drive gear change while at speed
    when driving manually. If this occurs during autonomy or in another unexpected situation,
    collect logs and notify FW.
- id: 84
  name: driveGearForcedToPark
  severity: WARNING
  description: The drive gear command has been forced to PARK, either because an external source has
    clamped the EPBs (e.g. BMU or EStop box), or because the ESP/iBST brake system is faulted.
  troubleshooting_steps: If unexpected, collect logs and notify FW.
- id: 85
  name: steeringModeChangeBlocked
  severity: WARNING
  description: A steering mode change request has been blocked because the vehicle is in motion or
    the front and rear steering racks are not both centered.
  troubleshooting_steps:
    This is expected if an operator requests a steering mode change while at speed or while turning
    when driving manually. If this occurs in autonomy or in another unexpected situation, collect
    logs and notify FW.
- id: 86
  name: velocitySaturatedByGear
  severity: WARNING
  description: The input target velocity has been saturated due to the current drive gear. The
    FORWARD gear allows (v_target >= 0), the REVERSE gear allows (v_target <= 0), and all other
    gears limit the target velocity to zero.
  troubleshooting_steps: This is expected if an operator commands a non-zero velocity while not in a
    torque-producing gear using pseudo planner. Otherwise, this is generally unexpected and suggests
    that the current control source is expecting a different gear than that which is applied.
    Collect logs and notify FW.
- id: 87
  name: level0Crash
  severity: ERROR
  description: A level 0 crash has been detected
  reaction:
    crash_level: Level0
- id: 88
  name: level1Crash
  severity: ERROR
  description: A level 1 crash has been detected
  troubleshooting_steps: Check if ACU or vehicle has received an impact.
  reaction:
    crash_level: Level1
    trajectory: Estop
- id: 89
  name: level2Crash
  severity: ERROR
  description: A level 2 crash has been detected
  troubleshooting_steps: Check if ACU or vehicle has received an impact.
  reaction:
    crash_level: Level2
    power_mode_limit: Acc
    trajectory: Estop
- id: 90
  name: epbsClampedWhenMoving
  severity: ERROR
  description: Ingress Egress fault detected on Drive Manager where the EPBs are being clamped when vehicle is not stationary
  troubleshooting_steps: Check if EPBs are getting clamped when vehicle is not stationary
  reaction:
    trajectory: NoGo
- id: 91
  name: epbClampingTimedOut
  severity: ERROR
  description: The EPB clamp command has timed out without clamp feedback from BMU
  troubleshooting_steps: Collect logs and notify FW.
  reaction:
    trajectory: NoGo
- id: 92
  name: noGoDidNotDecelerate
  severity: ERROR
  description: A NoGo was requested, but the vehicle did not decelerate by at least -1.25m/s/s within 500ms.
  troubleshooting_steps: Check if AiMonitor is running on the PCU.
  reaction:
    trajectory: Estop
  set_condition: This fault is set when RobotMonitor is requesting a NoGo trajectory and the vehicle
    has not decelerated by at least -1.8m/s/s within 500ms.
  clear_condition: This fault is cleared when the vehicle is stationary, or RobotMonitor is requesting
    a trajectory that is not a NoGo. This includes a Go trajectory and an Estop trajectory.

# Monitor ID Allocations (90 - 149)
# Top Speed Monitor Diagnostics
- id: 93
  name: topSpeedMonitorVelocityWarning
  severity: WARNING
  description: Current vehicle velocity exceeds current warning thresholds.
  troubleshooting_steps: Reduce vehicle velocity or Bring vehicle to a stop and change ODD to allow
    high velocities.
  set_condition: Vehicle Velocity too high.
  clear_condition: Reduce velocity or change ODD to allow high velocities.
  freeze_frame: zoox.common.proto.TopSpeedMonitorStatusFF
- id: 94
  name: topSpeedMonitorVelocityFault
  severity: ERROR
  description: Current vehicle velocity exceeds current speed limits.
  troubleshooting_steps: Reduce vehicle velocity or Bring vehicle to a stop and change ODD to allow
    high velocities.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
  freeze_frame: zoox.common.proto.TopSpeedMonitorStatusFF
- id: 95
  name: topSpeedMonitorDerateWarning
  severity: WARNING
  description: Indicates if torque from an MDI should be limited.
  troubleshooting_steps: Reduce torque from MDI or Bring vehicle to a stop and change ODD to allow
    high velocities. Also note there is extra logic at a higher level to latch the torque derating
    effect until the acceleration pedal on the active MDI is released.
  freeze_frame: zoox.common.proto.TopSpeedMonitorStatusFF
- id: 100
  name: brakeTorqueMonitorFault
  severity: WARNING
  description: The closed-loop-control (CLC) monitor for the friction brake system has detected a
    sustained error in excess of allowed margin between the expected brake torque and the feedback
    brake torque reported by the ESP/IBST.
  troubleshooting_steps: Ensure the brake_torque parameters in the EMU's drive_params.json file are
    configured as expected. Collect logs and contact Firmware and/or SDMA.
  freeze_frame: zoox.common.proto.BrakeTorqueMonitorFF
# HW E-Stop Box Monitor Diagnostics
- id: 101
  name: hwEstopReset
  severity: ERROR
  description: The HW E-Stop box has been disarmed and is in the reset state.
  troubleshooting_steps: If the box was intentionally reset, arm the box again using the reset
    button. If not intentionally reset, check MON and BMU diagnostics to see which GPIO line was
    detected as not being in the armed state.
  reaction:
    trajectory: Estop
  freeze_frame: zoox.common.proto.HwEstopResetFF
- id: 102
  name: hwEstopFaultLatched
  severity: ERROR
  description: The HW E-Stop Box monitor has detected a user button press or either of the GPIO
    active measurements. This also starts a consistency check.
  troubleshooting_steps: This fault latches until the consistency check has finished - at this point
    the box may be reset. If resetting the box does not work, check the FreezeFrame and the BMU/MON
    diagnostics to determine what is keeping the fault latched.
  reaction:
    trajectory: Estop
  freeze_frame: zoox.common.proto.HwEstopFaultLatchedFF
- id: 103
  name: hwEstopForceContactorsOpen
  severity: ERROR
  description: HV battery contactors have been forced open due to a HW E-Stop.
  troubleshooting_steps: Release any pressed E-Stop buttons, and then reset the HW E-Stop box.
  reaction:
    power_mode_limit: Acc
- id: 104
  name: hwEstopConsistencyFault
  severity: ERROR
  description: Emergency stop buttons are inconsistent or have not been tested for consistency.
  troubleshooting_steps: Run through Estop Consistency Test procedure.
  reaction:
    allowed_missions: None
- id: 105
  name: hwEstopConsistencyTimeout
  severity: WARNING
  description: The consistency check for the HW E-Stop box has been run and timed out.
  troubleshooting_steps: Check the FreezeFrame to see what conditions were not met.
  freeze_frame: zoox.common.proto.HwEstopConsistencyTimeoutFF
- id: 106
  name: fourWheelSteerParamsInconsistent
  severity: WARNING
  description: The four wheel steer (blended) algorithm parameters are hard-coded while support for
    runtime params on EMU-MON is being investigated. At least one of these hard-coded values do not
    match the JSON configurable parameters used on the EMU-COM.
  troubleshooting_steps: Check the FreezeFrame to see which parameters were inconsistent.
  freeze_frame: zoox.common.proto.FourWheelSteerParamsFF

# DriveManager Component Fault Allocations (150-199)
- id: 150
  name: abdIpcRxStaleWhileNotActive
  severity: WARNING
  description: IPC messages from AbDynamics to DriveManager have not been received in time, but the
    vehicle is not currently in ABDynamics control.
  troubleshooting_steps: Check that the abd_control application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
- id: 151
  name: abdIpcRxStaleWhileActive
  severity: ERROR
  description: IPC messages from AbDynamics to DriveManager have not been received in time, and the
    vehicle is currently in ABDynamics control.
  troubleshooting_steps: Check that the abd_control application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  reaction:
    trajectory: Estop
- id: 153
  name: aiTrackerSmootherIpcRxStale
  severity: ERROR
  description: IPC messages PCU smoother trajectories to DriveManager have not been received in
    time.
  troubleshooting_steps: Check that the dds_bridge application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  reaction:
    allowed_missions: ManualOperations
- id: 154
  name: bodyFeedbackIpcRxStale
  severity: WARNING
  description: IPC feedback messages from BodyManager to DriveManager have not been received in
    time.
  troubleshooting_steps: Check that the body_manager application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
- id: 155
  name: bodyDriveFeedbackIpcRxStale
  severity: WARNING
  description: IPC drive-related messages from BodyManager to DriveManager have not been received in
    time.
  troubleshooting_steps: Check that the body_manager application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
- id: 156
  name: emuIoHandlerDataIpcRxStale
  severity: ERROR
  description: IPC messages from IoHandler to DriveManager have not been received in time
  troubleshooting_steps: Check that the io_handler application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  reaction:
    trajectory: Estop
- id: 157
  name: emuImuDataIpcRxStale
  severity: WARNING
  description: IPC messages for IMU data from InertialLocalizer to DriveManager have not been
    received in time
  troubleshooting_steps: Check that the inertial_localizer application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
- id: 158
  name: heroSmoothStateIpcRxStale
  severity: WARNING
  description: IPC messages for hero smooth state to DriveManager have not been received in time.
  troubleshooting_steps: Check that SmoothPoseComponent is running on the PCU, or that
    inertial_localizer is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
- id: 159
  name: manualControlIpcRxStale
  severity: ERROR
  description: IPC messages from ManualControl to DriveManager have not been received in time
  troubleshooting_steps: Check that the manual_control application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  reaction:
    trajectory: Estop
- id: 160
  name: powerFeedbackIpcRxStale
  severity: ERROR
  description: IPC messages from PowerManager to DriveManager have not been received in time.
  troubleshooting_steps: Check that the power_manager application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  reaction:
    allowed_missions: None
- id: 161
  name: remoteControlIpcRxStale
  severity: ERROR
  description: IPC messages from RemoteControl to DriveManager have not been received in time.
  troubleshooting_steps: Check that the remote_control application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  reaction:
    trajectory: Estop
- id: 162
  name: emuRobotMonitorIpcRxStale
  severity: ERROR
  description: IPC messages from EMU RobotMonitor to DriveManager have not been received in time
  troubleshooting_steps: Check that the robot_monitor application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  reaction:
    trajectory: Estop
- id: 163
  name: emuTrackerComponentIpcRxStale
  severity: ERROR
  description: IPC messages from the EMU TrackerComponent to DriveManager have not be received in
    time.
  troubleshooting_steps: Check that PCU is sending smoother and hero state messages to the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  reaction:
    allowed_missions: ManualOperations
- id: 164
  name: crashSaverRestoreFailed
  severity: WARNING
  description: Crash Saver was not able to import crash.bak on startup.
  troubleshooting_steps: File crash.bak might be corrupted or unavailable. If EMU was flashed, crash
    file should be recreated upon restart and fault will be active until EMU is restarted again. If
    EMU was not flashed, delete existing file from EMU if not in crash state and file should be
    re-created upon next EMU startup.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
- id: 165
  name: crashSaverSaveFailed
  severity: WARNING
  description: Crash Saver was unable to save crash data.
  troubleshooting_steps: Existing file crash.bak might be corrupted. Delete existing file from EMU
    if not in crash state. File should be re-created upon next EMU startup.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF

# ACU Driver Diagnostics
# ACU Fault ID Allocations (200-249)
- id: 200
  name: acuFramesStale
  severity: WARNING
  description: Airbag Control Unit CAN messages are missing. Vehicle should be drivable, but ESP
    may fault. Caused by loss of power or CAN to ACU. The messages that are stale could be any
    one of ACU status frame, Belt buckle status frame, Imu0 frame or Crash signals frame.
  troubleshooting_steps: Inspect harness, check device fuse. Send logs to FW for analysis.
  freeze_frame: zoox.common.proto.AcuStaleStatusFF
- id: 201
  name: acuStatusFrameFaultIndication
  severity: WARNING
  description: Airbag control unit reports a fault or the ACU sensors are not operational, cause
    unknown.
  troubleshooting_steps: Ensure ACU is calibrated. Send logs to EEI, HWSI, or FW.
- id: 202
  name: acuLateralAccelStatusFault
  severity: WARNING
  description: Airbag Control Unit reports a fault on the vehicle lateral acceleration sensor limit
    Should not require an immediate stop.
  troubleshooting_steps: Slow down vehicle lateral acceleration rate.
- id: 203
  name: acuLateralAccelWarning
  severity: WARNING
  description: Airbag Control Unit reports the vehicle's lateral acceleration exceeds limits.
    Should not require an immediate stop.
  troubleshooting_steps: Slow down vehicle lateral acceleration rate.
- id: 204
  name: acuStatusFrameWarningIndication
  severity: WARNING
  description: Airbag control unit reports a warning. Cause unknown. Should not require an immediate
    stop
  troubleshooting_steps: Ensure ACU is calibrated. Send logs to EEI, HWSI, or FW.

# ASC Driver Diagnostics
# ASC1 Fault ID Allocations (250-299)
- id: 250
  name: asc1Derated
  severity: WARNING
  description: The North ASC is reporting a derated status over CAN. This is potentially caused by
    the ASC not having received CAN messages for 60ms.
  troubleshooting_steps: Ensure all CAN buses are connected. Check ASC CAN alert logs. Send logs to
    EEI, HWSI, or FW.
- id: 251
  name: asc1FaultedWhilePassive
  severity: WARNING
  description: The North ASC is reporting a faulted status over CAN while in passive mode. Only
    valid for VH6B suspension system (ZXE7).
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 252
  name: asc1FaultedWhileActive
  severity: WARNING
  description: The North ASC is reporting a faulted status over CAN while in an active mode. This
    will result in suspension control being unavailable.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 253
  name: ascQ1RemoteActuatorNotValid
  severity: WARNING
  description: The Q1 suspension's remote actuator position sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 254
  name: ascQ2RemoteActuatorNotValid
  severity: WARNING
  description: The Q2 suspension's remote actuator position sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 255
  name: ascQ1StrutPressureNotValid
  severity: WARNING
  description: The Q1 suspension's strut pressure sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 256
  name: ascQ2StrutPressureNotValid
  severity: WARNING
  description: The Q2 suspension's strut pressure sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 257
  name: ascQ1ChassisPositionSensorNotValid
  severity: WARNING
  description: The Q1 suspension's chassis position sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 258
  name: ascQ2ChassisPositionSensorNotValid
  severity: WARNING
  description: The Q2 suspension's chassis position sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 259
  name: asc1MaintenanceStatusFaulted
  severity: WARNING
  description: The North ASC attempted to perform a maintenance procedure and faulted. Only valid
    for VH6B suspension system (ZXE7).
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 260
  name: asc1Stale
  severity: WARNING
  description: The North ASC is not sending messages to the EMU over CAN.
  troubleshooting_steps: Check BDY_CAN1 harness and ensure it is connected.

# ASC2 Fault ID Allocations (300-349)
- id: 300
  name: asc2Derated
  severity: WARNING
  description: The South ASC is reporting a derated status over CAN. This is potentially caused by
    the ASC not having received CAN messages for 60ms.
  troubleshooting_steps: Ensure all CAN buses are connected. Check ASC CAN alert logs. Send logs to
    EEI, HWSI, or FW.
- id: 301
  name: asc2FaultedWhilePassive
  severity: WARNING
  description: The South ASC is reporting a faulted status over CAN while in passive mode. Only
    valid for VH6B suspension system (ZXE7).
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 302
  name: asc2FaultedWhileActive
  severity: WARNING
  description: The South ASC is reporting a faulted status over CAN while in an active mode. This
    will result in suspension control being unavailable.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 303
  name: ascQ3RemoteActuatorNotValid
  severity: WARNING
  description: The Q3 suspension's remote actuator position sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 304
  name: ascQ4RemoteActuatorNotValid
  severity: WARNING
  description: The Q4 suspension's remote actuator position sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 305
  name: ascQ3StrutPressureNotValid
  severity: WARNING
  description: The Q3 suspension's strut pressure sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 306
  name: ascQ4StrutPressureNotValid
  severity: WARNING
  description: The Q4 suspension's strut pressure sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 307
  name: ascQ3ChassisPositionSensorNotValid
  severity: WARNING
  description: The Q3 suspension's chassis position sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 308
  name: ascQ4ChassisPositionSensorNotValid
  severity: WARNING
  description: The Q4 suspension's chassis position sensor is not valid.
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 309
  name: asc2MaintenanceStatusFaulted
  severity: WARNING
  description: The South ASC attempted to perform a maintenance procedure and faulted. Only valid
    for VH6B suspension system (ZXE7).
  troubleshooting_steps: Check ASC CAN alert logs. Send logs to EEI, HWSI, or FW.
- id: 310
  name: asc2Stale
  severity: WARNING
  description: The South ASC is not sending messages to the EMU over CAN.
  troubleshooting_steps: Check BDY_CAN2 harness and ensure it is connected.

# BMU Driver Diagnostics
# BMU Fault ID Allocations (350-399)
- id: 350
  name: bmuV2Stale
  severity: ERROR
  description: VH6A Backup Motion Unit EPB / Heartbeat status messages are missing, caused by loss
    of power or CAN; typical cause is HW issue + SW fragility. Vehicle should stop immediately.
  troubleshooting_steps: Inspect harness, check device fuse, Collect logs and notify BaseOps,
    EEI and FW.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.BmuStaleStatusFF
- id: 351
  name: bmuV2EpbDriveAvailabilityDegraded
  severity: WARNING
  description: VH6A Backup Motion Unit warning due to EPB indicating Drive availability is
    degraded. This indicates non-critical fault and does not require an immediate stop.
  troubleshooting_steps: Unclamp and clamp the EPBs while stationary. Double check EPB harnessing.
    Collect logs and contact BaseOps/EEI/FW.
- id: 352
  name: bmuV2EpbParkAvailabilityDegraded
  severity: WARNING
  description: VH6A Backup Motion Unit warning due to EPB indicating Park availability is
    degraded. This indicates non-critical fault and does not require an immediate stop.
  troubleshooting_steps: Unclamp and clamp the EPBs while stationary. Double check EPB harnessing.
    Collect logs and contact BaseOps/EEI/FW.
- id: 353
  name: bmuNorthNoGoButtonFault
  severity: WARNING
  description: Backup Motion Unit warning due to North NoGo button fault. This indicates
    critical fault and vehicle will make a controlled stop.
  troubleshooting_steps: Confirm headliner is installed and connected (confirm by trying the
    emergency buttons).
- id: 354
  name: bmuSouthNoGoButtonFault
  severity: WARNING
  description: Backup Motion Unit warning due to South NoGo button fault. This indicates
    critical fault and vehicle will make a controlled stop.
  troubleshooting_steps: Confirm headliner is installed and connected (confirm by trying the
    emergency buttons).
- id: 355
  name: bmuV2EpbDriveUnavailable
  severity: ERROR
  description: VH6A Backup Motion Unit faulted, caused by  EPB reporting Drive status as
    unavailable. Vehicle should stop immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and
    clamp the EPBs while stationary. Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 356
  name: bmuV2EpbParkUnavailable
  severity: ERROR
  description: VH6A Backup Motion Unit faulted, caused by EPB reporting Park status as unavailable.
    Vehicle should stop immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 357
  name: bmuEpbStateQ1Fault
  severity: ERROR
  description: Backup Motion Unit faulted, caused by faulted EPB(Q1) fault. Vehicle should stop
    immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 358
  name: bmuEpbStateQ2Fault
  severity: ERROR
  description: Backup Motion Unit faulted, caused by faulted EPB(Q2) fault. Vehicle should stop
    immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 359
  name: bmuEpbStateQ3Fault
  severity: ERROR
  description: Backup Motion Unit faulted, caused by faulted EPB(Q3) fault. Vehicle should stop
    immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 360
  name: bmuEpbStateQ4Fault
  severity: ERROR
  description: Backup Motion Unit faulted, caused by faulted EPB(Q4) fault. Vehicle should stop
    immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 361
  name: bmuBackupControlStateFault
  severity: ERROR
  description: Backup Motion Unit faulted, caused by faulted BMU backup control state. This means
    BMU will be unable to perform ESTOP func. as either EPB or IBST has faulted.
    Vehicle should stop immediately.
  troubleshooting_steps: Double check EPB/IBST harnessing and BMU Estop status. Collect logs
    and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 362
  name: bmuBackupControlEstopActive
  severity: ERROR
  description: This indicates that the BMU is attempting to ESTOP the vehicle. Vehicle should come
    to a controlled stop.
  troubleshooting_steps: Double check BMU Estop status, check for other diagnostics that could have
    triggered the BMU to ESTOP.  Sometimes it can be cleared with an operator fault ack. Collect
    logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 363
  name: bmuV4APrimaryStatusStale
  severity: ERROR
  description: VH6B Backup Motion Unit EPB (A) or Heartbeat (A) messages are missing on primary
    bus, caused by loss of power or CAN; typical cause is HW issue + SW fragility. Vehicle should stop
    immediately.
  troubleshooting_steps: Inspect harness, check device fuse, Collect logs and notify FW.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.BmuStaleStatusFF
- id: 364
  name: bmuV4BPrimaryStatusStale
  severity: ERROR
  description: VH6B Backup Motion Unit EPB (B) or Heartbeat (B) messages are missing on primary
    bus, caused by loss of power or CAN; typical cause is HW issue + SW fragility. Vehicle should stop
    immediately.
  troubleshooting_steps: Inspect harness, check device fuse, Collect logs and notify FW.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.BmuStaleStatusFF
- id: 365
  name: bmuV4ASecondaryStatusStale
  severity: ERROR
  description: VH6B Backup Motion Unit EPB (A) or Heartbeat (A) messages are missing on
    secondary bus, caused by loss of power or CAN; typical cause is HW issue + SW fragility.
    Vehicle should stop immediately.
  troubleshooting_steps: Inspect harness, check device fuse, Collect logs and contact
    BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.BmuStaleStatusFF
- id: 366
  name: bmuV4BSecondaryStatusStale
  severity: ERROR
  description: VH6B Backup Motion Unit EPB (B) or Heartbeat (B) messages are missing on
    secondary bus, caused by loss of power or CAN; typical cause is HW issue + SW fragility.
    Vehicle should stop immediately.
  troubleshooting_steps: Inspect harness, check device fuse, Collect logs and contact
    BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.BmuStaleStatusFF
- id: 367
  name: bmuV4EpbADriveAvailabilityDegraded
  severity: WARNING
  description: VH6B Backup Motion Unit warning due to EPB A indicating Drive availability is
    degraded. This indicates non-critical fault and does not require an immediate stop.
  troubleshooting_steps: Unclamp and clamp the EPBs while stationary. Double check EPB harnessing.
    Collect logs and contact BaseOps/EEI/FW.
- id: 368
  name: bmuV4EpbBDriveAvailabilityDegraded
  severity: WARNING
  description: VH6B Backup Motion Unit warning due to EPB B indicating Drive availability is
    degraded. This indicates non-critical fault and does not require an immediate stop.
  troubleshooting_steps: Unclamp and clamp the EPBs while stationary. Double check EPB harnessing.
    Collect logs and contact BaseOps/EEI/FW.
- id: 369
  name: bmuV4EpbAParkAvailabilityDegraded
  severity: WARNING
  description: VH6B Backup Motion Unit warning due to EPB A indicating Park availability is
    degraded. This indicates non-critical fault and does not require an immediate stop.
  troubleshooting_steps: Unclamp and clamp the EPBs while stationary. Double check EPB harnessing.
    Collect logs and contact BaseOps/EEI/FW.
- id: 370
  name: bmuV4EpbBParkAvailabilityDegraded
  severity: WARNING
  description: VH6B Backup Motion Unit warning due to EPB B indicating Park availability is
    degraded. This indicates non-critical fault and does not require an immediate stop.
  troubleshooting_steps: Unclamp and clamp the EPBs while stationary. Double check EPB harnessing.
    Collect logs and contact BaseOps/EEI/FW.
- id: 371
  name: bmuV4EpbADriveUnavailable
  severity: ERROR
  description: VH6B Backup Motion Unit faulted, caused by  EPB A reporting Drive status as
    unavailable. Vehicle should stop immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 372
  name: bmuV4EpbBDriveUnavailable
  severity: ERROR
  description: VH6B Backup Motion Unit faulted, caused by EPB B reporting Drive status as
    unavailable. Vehicle should stop immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 373
  name: bmuV4EpbAParkUnavailable
  severity: ERROR
  description: VH6B Backup Motion Unit faulted, caused by EPB A reporting Park status as unavailable.
    Vehicle should stop immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 374
  name: bmuV4EpbBParkUnavailable
  severity: ERROR
  description: VH6B Backup Motion Unit faulted, caused by EPB B reporting Park status as unavailable.
    Vehicle should stop immediately.
  troubleshooting_steps: Double check EPB harnessing. Unclamp and clamp the EPBs while stationary.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 375
  name: bmuV4APrimaryComStatusFault
  severity: ERROR
  description: VH6B Backup Motion Unit faulted, caused by EPB A reporting primary bus not
    designated active. Vehicle should stop immediately.
  troubleshooting_steps: Check BMU Primary Com status. Collect logs and notify EEi/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 376
  name: bmuV4ASecondaryComStatusFault
  severity: ERROR
  description: VH6B Backup Motion Unit faulted, caused by EPB A reporting secondary bus
    designated not active. Vehicle should stop immediately.
  troubleshooting_steps: Check BMU Secondary Com status. Collect logs and notify EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 377
  name: bmuV4BPrimaryComStatusFault
  severity: ERROR
  description: VH6B Backup Motion Unit faulted, caused by EPB B reporting primary bus not
    designated active. Vehicle should stop immediately.
  troubleshooting_steps: Check BMU Primary Com status. Collect logs and notify EEI/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 378
  name: bmuV4BSecondaryComStatusFault
  severity: ERROR
  description: VH6B Backup Motion Unit faulted, caused by EPB B reporting secondary bus
    designated not active. Vehicle should stop immediately.
  troubleshooting_steps: Check BMU Secondary Com status. Collect logs and notify EEi/FW if issue persists.
  reaction:
    trajectory: NoGo
- id: 379
  name: bmuEstopBoxGpioDisarmedSouth
  severity: WARNING
  description: Backup Motion Unit warning due to Estop box indicating that its not armed.
  troubleshooting_steps: Attempt to arm Estop box on vehicle. Double check harnessing.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
- id: 380
  name: bmuEstopBoxGpioActiveSouth
  severity: WARNING
  description: Backup Motion Unit warning due to Estop box indicating that its active.
    EPB's are engaged in this state.
  troubleshooting_steps: Attempt to deactivate Estop on vehicle. Double check harnessing.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
- id: 381
  name: bmuNorthNoGoButtonPressed
  severity: ERROR
  description: Backup Motion Unit fault due to North NoGo button press. Vehicle will
    make an controlled stop.
  troubleshooting_steps: Check if NoGo button press was intentional.
  reaction:
    trajectory: NoGo
- id: 382
  name: bmuSouthNoGoButtonPressed
  severity: ERROR
  description: Backup Motion Unit fault due to South NoGo button press. Vehicle will
    make an controlled stop.
  troubleshooting_steps: Check if NoGo button press was intentional.
  reaction:
    trajectory: NoGo

# EPAS Driver Diagnostics
# EPAS1 Fault ID range 500-549
- id: 500
  name: epas1CalibrationRestorationFailed
  severity: WARNING
  description: The North EPAS calibration data could not be restored from non-volatile memory upon
    startup. Without this, there is no prior calibration to fall back to, and the EPAS should be
    assumed to be uncalibrated.
  troubleshooting_steps: Run a steering calibration.
- id: 501
  name: epas1PrimaryEcuStale
  severity: ERROR
  description: The EMU did not receive CAN messages from the North EPAS from the primary ECU.
  troubleshooting_steps: Check the DR_CAN1 harness. Notify EEI.
  reaction:
    trajectory: NoGo
- id: 502
  name: epas1RedundantEcuStale
  severity: ERROR
  description: The EMU did not receive CAN messages from the North EPAS from the redundant ECU.
  troubleshooting_steps: Check the DR_CAN3 harness. Notify EEI.
  reaction:
    trajectory: NoGo
- id: 503
  name: epas1BothEcusStale
  severity: ERROR
  description: The EMU did not receive CAN messages from the North EPAS from either ECU.
  troubleshooting_steps: Check the DR_CAN1 and DR_CAN3 harnesses. Notify EEI.
  reaction:
    trajectory: Estop
- id: 504
  name: epas1SystemStatusFaulted
  severity: ERROR
  description: The North EPAS is reporting a system status fault on CAN.
  troubleshooting_steps: Check EPAS alerts and diagnostics for source of the fault. Notify EEI.
  reaction:
    trajectory: Estop
- id: 505
  name: epas1InvalidState
  severity: ERROR
  description: The North EPAS is in an invalid state.
  troubleshooting_steps: Check EPAS alerts and diagnostics for source of the fault. Notify EEI.
  reaction:
    trajectory: Estop
- id: 506
  name: epas1ActiveControlFault
  severity: ERROR
  description: The North EPAS is no longer actively controlling the steering position.
  troubleshooting_steps: Collect logs and notify EEI.
  reaction:
    trajectory: Estop
- id: 507
  name: epas1Derated
  severity: ERROR
  description: The North EPAS is reporting a derated system status over CAN.
  troubleshooting_steps: Collect logs and notify EEI.
  reaction:
    trajectory: NoGo
- id: 508
  name: epas1RedundantEcuInControl
  severity: ERROR
  description: The North EPAS's redundant ECU is in control, meaning the primary ECU has failed.
  troubleshooting_steps: Collect logs and notify EEI.
  reaction:
    trajectory: NoGo

# EPAS2 Fault ID range 550-599
- id: 550
  name: epas2CalibrationRestorationFailed
  severity: WARNING
  description: The South EPAS calibration data could not be restored from non-volatile memory upon
    startup. Without this, there is no prior calibration to fall back to, and the EPAS should be
    assumed to be uncalibrated.
  troubleshooting_steps: Run a steering calibration.
- id: 551
  name: epas2PrimaryEcuStale
  severity: ERROR
  description: The EMU did not receive CAN messages from the South EPAS from the primary ECU.
  troubleshooting_steps: Check the DR_CAN1 harness. Notify EEI.
  reaction:
    trajectory: NoGo
- id: 552
  name: epas2RedundantEcuStale
  severity: ERROR
  description: The EMU did not receive CAN messages from the South EPAS from the redundant ECU.
  troubleshooting_steps: Check the DR_CAN3 harness. Notify EEI.
  reaction:
    trajectory: NoGo
- id: 553
  name: epas2BothEcusStale
  severity: ERROR
  description: The EMU did not receive CAN messages from the South EPAS from either ECU.
  troubleshooting_steps: Check the DR_CAN1 and DR_CAN3 harnesses. Notify EEI.
  reaction:
    trajectory: Estop
- id: 554
  name: epas2SystemStatusFaulted
  severity: ERROR
  description: The South EPAS is reporting a system status fault on CAN.
  troubleshooting_steps: Check EPAS alerts and diagnostics for source of the fault. Notify EEI.
  reaction:
    trajectory: Estop
- id: 555
  name: epas2InvalidState
  severity: ERROR
  description: The South EPAS is in an invalid state.
  troubleshooting_steps: Check EPAS alerts and diagnostics for source of the fault. Notify EEI.
  reaction:
    trajectory: Estop
- id: 556
  name: epas2ActiveControlFault
  severity: ERROR
  description: The South EPAS is no longer actively controlling the steering position.
  troubleshooting_steps: Collect logs and notify EEI.
  reaction:
    trajectory: Estop
- id: 557
  name: epas2Derated
  severity: ERROR
  description: The South EPAS is reporting a derated system status over CAN.
  troubleshooting_steps: Collect logs and notify EEI.
  reaction:
    trajectory: NoGo
- id: 558
  name: epas2RedundantEcuInControl
  severity: ERROR
  description: The South EPAS's redundant ECU is in control, meaning the primary ECU has failed.
  troubleshooting_steps: Collect logs and notify EEI.
  reaction:
    trajectory: NoGo

# EDU1 (North) Driver Diagnostics
# EDU1 Fault ID range 400-449
- id: 400
  name: edu1FeedbackStale
  severity: ERROR
  latching: false
  description: One or more of the EDU feedback CAN messages is stale.
  troubleshooting_steps: EDU1 feedback messages are expected on DR_CAN1. Check if messages from
    other ECUs on the same bus are missing. Check harness connectors and fuses accordingly. Collect
    logs and contact Firmware and/or BaseOps.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
  freeze_frame: zoox.common.proto.EduFeedbackStaleFF
- id: 401
  name: edu1ClutchFeedbackStale
  severity: ERROR
  description: One or more of the EDU clutch pump feedback CAN messages is stale.
  troubleshooting_steps: On VH6B, clutch feedback messages are forwarded from a private bus to
    DR_CAN1 by EDU1. On VH6A, clutch feedback messages are forwarded from LIN to BDY_CAN1 by the
    TBC. Check if messages from other ECUs on the associated bus are missing. Check harness
    connectors and fuses accordingly. Collect logs and contact Firmware and/or BaseOps.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.EduClutchFeedbackStaleFF
- id: 402
  name: edu1StateFault
  severity: ERROR
  latching: false
  description: The EDU is reporting the general inverter state as faulted.
  troubleshooting_steps: Check EDU CAN alerts for additional details on why the EDU is faulted.
    Collect logs and contact EEI and/or Firmware.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
- id: 403 # VH6B only
  name: edu1ClutchStateFault
  severity: ERROR
  description: The EDU is reporting the clutch state and/or clutch shift state as faulted.
  troubleshooting_steps: Occasional clutch faults may occur depending on a variety of conditions.
    The EMU sends a signal to clear EDU clutch faults when entering HV, so cycling the vehicle's
    power state to STANDBY and back to HV will attempt to clear the fault. If this failure is
    repeatable, collect logs and contact EEI and/or Firmware.
  reaction:
    trajectory: NoGo
- id: 404 # VH6B only
  name: edu1ComponentFault
  severity: ERROR
  latching: false
  description: The EDU is reporting an aggregate component status fault. The EDU falsely reports a
    component status fault while not in HV, so this fault is suppressed when contactors are open.
    This diagnostic will trip if the EDU continues to report a component status fault while in HV.
  troubleshooting_steps: Check EDU CAN alerts for additional details on why the EDU's component
    status is faulted. Collect logs and contact EEI and/or Firmware.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
- id: 405 # VH6B only
  name: edu1ClutchSequenceFault
  severity: ERROR
  description: The EDU driver has determined there is an error in the clutch engagement or
    disengagement sequence. This is typically due to the EDU's reported clutch state changing
    to an unexpected state or taking too long to transition to an expected state.
  troubleshooting_steps: Collect logs and contact Firmware.
  reaction:
    trajectory: NoGo
- id: 406 # VH6A only
  name: edu1AuxiliaryClutchRoutineFault
  severity: ERROR
  description: The EDU driver's auxiliary clutch engagement routine has failed to
    confirm closure of the drive unit's clutch.
  troubleshooting_steps: Collect logs and contact Firmware.
  reaction:
    trajectory: NoGo
- id: 407 # VH6A only
  name: edu1ClutchPumpRpmLow
  severity: ERROR
  description: The clutch pump is reporting an unusually low RPM, which could prevent the clutch
    from staying securely closed.
  troubleshooting_steps: Check the harness connectors and fuses for the clutch pump. Collect logs
    and contact Firmware and/or BaseOps.
  reaction:
    trajectory: NoGo
- id: 408
  name: edu1InvalidDriveDirection
  severity: ERROR
  description: An unset / invalid drive direction has propagated to the EDU driver. This is a
    sanity check failure and is indicative of a firmware bug. No torque will be requested.
  troubleshooting_steps: Collect logs and contact Firmware.
  reaction:
    trajectory: NoGo
- id: 409
  name: edu1InvalidDriveGear
  severity: ERROR
  description: An unset / invalid drive gear has propagated to the EDU driver. This is a sanity
    check failure and is indicative of a firmware bug. No torque will be requested.
  troubleshooting_steps: Collect logs and contact Firmware.
  reaction:
    trajectory: NoGo
- id: 410
  name: edu1TorqueRequestLimited
  severity: WARNING
  description: The EDU driver has received a torque request that exceeds the EDU's reported torque
    limits. This request will be saturated to the EDU's reported limits before being transmitted.
  freeze_frame: zoox.common.proto.EduTorqueRequestLimitedFF
- id: 411
  name: edu1TorqueUnavailable
  severity: WARNING
  description: The EDU driver has received a torque request while torque is unavailable. This
    request will be denied.
  troubleshooting_steps: Torque is unavailable if the EDU is faulted, if the gear is neutral, or if
    the clutch is otherwise not closed.

# EDU2 (South) Driver Diagnostics
# EDU2 Fault ID range 450-499
- id: 450
  name: edu2FeedbackStale
  severity: ERROR
  latching: false
  description: One or more of the EDU feedback CAN messages is stale.
  troubleshooting_steps: EDU2 feedback messages are expected on DR_CAN2. Check if messages from
    other ECUs on the same bus are missing. Check harness connectors and fuses accordingly. Collect
    logs and contact Firmware and/or BaseOps.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
  freeze_frame: zoox.common.proto.EduFeedbackStaleFF
- id: 451
  name: edu2ClutchFeedbackStale
  severity: ERROR
  description: One or more of the EDU clutch pump feedback CAN messages is stale.
  troubleshooting_steps: On VH6B, clutch feedback messages are forwarded from a private bus to
    DR_CAN2 by EDU2. On VH6A, clutch feedback messages are forwarded from LIN to BDY_CAN1 by the
    TBC. Check if messages from other ECUs on the associated bus are missing. Check harness
    connectors and fuses accordingly. Collect logs and contact Firmware and/or BaseOps.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.EduClutchFeedbackStaleFF
- id: 452
  name: edu2StateFault
  severity: ERROR
  latching: false
  description: The EDU is reporting the general inverter state as faulted.
  troubleshooting_steps: Check EDU CAN alerts for additional details on why the EDU is faulted.
    Collect logs and contact EEI and/or Firmware.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
- id: 453 # VH6B only
  name: edu2ClutchStateFault
  severity: ERROR
  description: The EDU is reporting the clutch state and/or clutch shift state as faulted.
  troubleshooting_steps: Occasional clutch faults may occur depending on a variety of conditions.
    The EMU sends a signal to clear EDU clutch faults when entering HV, so cycling the vehicle's
    power state to STANDBY and back to HV will attempt to clear the fault. If this failure is
    repeatable, collect logs and contact EEI and/or Firmware.
  reaction:
    trajectory: NoGo
- id: 454 # VH6B only
  name: edu2ComponentFault
  severity: ERROR
  latching: false
  description: The EDU is reporting an aggregate component status fault. The EDU falsely reports a
    component status fault while not in HV, so this fault is suppressed when contactors are open.
    This diagnostic will trip if the EDU continues to report a component status fault while in HV.
  troubleshooting_steps: Check EDU CAN alerts for additional details on why the EDU's component
    status is faulted. Collect logs and contact EEI and/or Firmware.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
- id: 455 # VH6B only
  name: edu2ClutchSequenceFault
  severity: ERROR
  description: The EDU driver has determined there is an error in the clutch engagement or
    disengagement sequence. This is typically due to the EDU's reported clutch state changing
    to an unexpected state or taking too long to transition to an expected state.
  troubleshooting_steps: Collect logs and contact Firmware.
  reaction:
    trajectory: NoGo
- id: 456 # VH6A only
  name: edu2AuxiliaryClutchRoutineFault
  severity: ERROR
  description: The EDU driver's auxiliary clutch engagement routine has failed to
    confirm closure of the drive unit's clutch.
  troubleshooting_steps: Collect logs and contact Firmware.
  reaction:
    trajectory: NoGo
- id: 457 # VH6A only
  name: edu2ClutchPumpRpmLow
  severity: ERROR
  description: The clutch pump is reporting an unusually low RPM, which could prevent the clutch
    from staying securely closed.
  troubleshooting_steps: Check the harness connectors and fuses for the clutch pump. Collect logs
    and contact Firmware and/or BaseOps.
  reaction:
    trajectory: NoGo
- id: 458
  name: edu2InvalidDriveDirection
  severity: ERROR
  description: An unset / invalid drive direction has propagated to the EDU driver. This is a
    sanity check failure and is indicative of a firmware bug. No torque will be requested.
  troubleshooting_steps: Collect logs and contact Firmware.
  reaction:
    trajectory: NoGo
- id: 459
  name: edu2InvalidDriveGear
  severity: ERROR
  description: An unset / invalid drive gear has propagated to the EDU driver. This is a sanity
    check failure and is indicative of a firmware bug. No torque will be requested.
  troubleshooting_steps: Collect logs and contact Firmware.
  reaction:
    trajectory: NoGo
- id: 460
  name: edu2TorqueRequestLimited
  severity: WARNING
  description: The EDU driver has received a torque request that exceeds the EDU's reported torque
    limits. This request will be saturated to the EDU's reported limits before being transmitted.
  freeze_frame: zoox.common.proto.EduTorqueRequestLimitedFF
- id: 461
  name: edu2TorqueUnavailable
  severity: WARNING
  description: The EDU driver has received a torque request while torque is unavailable. This
    request will be denied.
  troubleshooting_steps: Torque is unavailable if the EDU is faulted, if the gear is neutral, or if
    the clutch is otherwise not closed.

# ESP Driver Diagnostics
# ESP Fault ID range 600-649
# Hydraulic Braking System Fault ID range 640-649 (shared with ESP)
- id: 600
  name: espStale
  severity: ERROR
  description: One or more of the ESP feedback CAN messages is stale.
  troubleshooting_steps: ESP feedback messages are expected on DR_CAN2 and DR_CAN3. Check for other
    expected CAN messages on the relevant buses. Check harness connectors and fuses accordingly.
    Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.EspIbstStaleFF
- id: 601
  name: espSystemFault
  severity: ERROR
  description: ESP reports that there is a system level fault within the hydraulic braking system.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 602
  name: espInternalFault
  severity: ERROR
  description: ESP reports that there is an internal fault in the ESP.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 603
  name: espSystemDegradedFault
  severity: ERROR
  description: ESP reports that the hydraulic braking system performance is degraded.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 604
  name: espInternalDegradedFault
  severity: ERROR
  description: ESP reports that the ESP performance is degraded.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 605
  name: espRedundantBusActiveFault
  severity: ERROR
  description: ESP reports that the redundant bus (DR3) is active (honoring commands). This
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Check that EMU is sending the EMU_brakeCommand and EMU_vehicleDynamics messages on
    DR_CAN2. Gather logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 606
  name: espNoActiveBusFault
  severity: ERROR
  description: ESP is either not honoring commands on either of the redundant buses, or the EMU
    cannot determine which bus the ESP is listening to.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Check that EMU is sending the EMU_brakeCommand and EMU_vehicleDynamics messages on both
    DR_CAN2 and DR_CAN3. Gather logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 607
  name: espPrimaryBusStale
  severity: WARNING
  description: One or more of the ESP feedback CAN messages is stale on the primary bus (DR_CAN2).
  troubleshooting_steps: Check for other expected CAN messages on DR_CAN2. Check harness connectors
    and fuses accordingly. Collect logs and contact BaseOps/EEI/FW.
  freeze_frame: zoox.common.proto.EspBusStaleFF
- id: 608
  name: espRedundantBusStale
  severity: WARNING
  description: One or more of the ESP feedback CAN messages is stale on the primary bus (DR_CAN3).
  troubleshooting_steps: Check for other expected CAN messages on DR_CAN3. Check harness connectors
    and fuses accordingly. Collect logs and contact BaseOps/EEI/FW.
  freeze_frame: zoox.common.proto.EspBusStaleFF
- id: 609
  name: espAbsFaulted
  severity: WARNING
  description: ESP reports that the Anti-lock Braking System (ABS) function is faulted.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 610
  name: espEbdFaulted
  severity: WARNING
  description: ESP reports that the Electronic Braking Distribution (EBD) function is faulted.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 611
  name: espVdcFaulted
  severity: WARNING
  description: ESP reports that the Vehicle Dynamics Control (VDC) function is faulted.
    Note - VDC is also referred to as Electronic Stability Control (ESC).
  troubleshooting_steps: Check rack alignment and ACU calibration. Check ESP reported diagnostics
    for the root cause once available - coming in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 612
  name: espDtcFaulted
  severity: WARNING
  description: ESP reports that the Drag Torque Control (DTC) function is faulted.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 613
  name: espTcsFaulted
  severity: WARNING
  description: ESP reports that the Traction Control System (TCS) function is faulted.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 614
  name: espSystemFaultWarning
  severity: WARNING
  description: ESP reports that there is a system level fault within the hydraulic braking system.
    Allow degraded operation is active, so treating as a WARNING.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
- id: 615
  name: espInternalFaultWarning
  severity: WARNING
  description: ESP reports that there is an internal fault in the ESP. Allow degraded operation is
    active, so treating as a WARNING.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
- id: 616
  name: espSystemDegradedWarning
  severity: WARNING
  description: ESP reports that the hydraulic braking system performance is degraded.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
- id: 617
  name: espInternalDegradedWarning
  severity: WARNING
  description: ESP reports that the ESP performance is degraded.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
- id: 618
  name: espRedundantBusActiveWarning
  severity: WARNING
  description: ESP reports that the redundant bus (DR3) is active (honoring commands).
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Check that EMU is sending the EMU_brakeCommand and EMU_vehicleDynamics messages on
    DR_CAN2. Gather logs and contact BaseOps/EEI/FW.
- id: 619
  name: espNoActiveBusWarning
  severity: WARNING
  description: ESP is either not honoring commands on either of the redundant buses, or the EMU
    cannot determine which bus the ESP is listening to.
  troubleshooting_steps: Check ESP reported diagnostics for the root cause once available - coming
    in BL6. Check that EMU is sending the EMU_brakeCommand and EMU_vehicleDynamics messages on both
    DR_CAN2 and DR_CAN3. Gather logs and contact BaseOps/EEI/FW.
- id: 620
  name: espWssInvalid
  severity: WARNING
  description: ESP driver reports that at least one of the WSS readings is invalid. This can be due
    to direct feedback from the ESP that a sensor is invalid or determination from the driver that
    the reported value is invalid, e.g. non-zero velocity while direction is reported as STOPPED.
  troubleshooting_steps: If diagnostic is active while stationary the WSS may need to be reset by
    spinning the wheel at varying speeds dependent on the fault type. Check the harnessing for the
    WSS. Check ESP reported diagnostics for the root cause once available - coming in BL6.
  freeze_frame: zoox.common.proto.EspIbstWssInvalidFF
- id: 640
  name: espIbstActivationTimeout
  severity: ERROR
  description: Activation of the Electronic Brake Request (EBR) capability of the hydraulic braking
    system has timed out. Must assume the worst case (complete loss of braking capabilities).
  troubleshooting_steps: Check if either the ESP or IBST eventually did activate. If not, check ESP
    and IBST reported diagnostics for the root cause once available - coming in BL6. Gather logs and
    contact BaseOps/EEI/FW.
  reaction:
    trajectory: Estop
- id: 641
  name: espIbstBothFaulted
  severity: ERROR
  description: Hydraulic braking capabilities from both ESP and IBST are faulted.
  troubleshooting_steps: Check ESP and IBST reported diagnostics for the root cause once available -
    coming in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: Estop
- id: 642
  name: espIbstNoEbrAvailable
  severity: ERROR
  description: Both ESP and IBST report that EBR is unavailable.
  troubleshooting_steps: Check ESP and IBST reported diagnostics for the root cause once available -
    coming in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: Estop
- id: 643
  name: espIbstBothStale
  severity: ERROR
  description: EMU detects that both ESP and IBST of hydraulic braking system are stale. Must assume
    the worst case (complete loss of braking capabilities).
  troubleshooting_steps: ESP feedback messages are expected on DR_CAN2 and DR_CAN3. IBST feedback
    messages are expected on DR_CAN1 and DR_CAN3. Check for other expected CAN messages on the
    relevant buses. Check harness connectors and fuses accordingly. Collect logs and contact
    BaseOps/EEI/FW.
  reaction:
    trajectory: Estop
- id: 644
  name: espIbstNonCriticalMessageStale
  severity: WARNING
  description: EMU detects that a non-drive-critical message from the ESP and/or IBST of hydraulic
    braking system are stale.
  troubleshooting_steps: ESP and IBST feedback messages are expected on DR_CAN3. Check for other
    expected CAN messages on the bus. Check harness connectors and fuses accordingly. Collect logs
    and contact BaseOps/EEI/FW.
  freeze_frame: zoox.common.proto.EspIbstNonCriticalStaleFF

# IBST Driver Diagnostics
# IBST Fault ID range 650-699
# Hydraulic Braking System Fault ID range 690-699 (shared with IBST)
- id: 650
  name: ibstStale
  severity: ERROR
  description: One or more of the IBST feedback CAN messages is stale.
  troubleshooting_steps: IBST feedback messages are expected on DR_CAN1 and DR_CAN3. Check for other
    expected CAN messages on the relevant buses. Check harness connectors and fuses accordingly.
    Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
  freeze_frame: zoox.common.proto.EspIbstStaleFF
- id: 651
  name: ibstSystemFault
  severity: ERROR
  description: IBST reports that there is a system level fault within the hydraulic braking system.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 652
  name: ibstInternalFault
  severity: ERROR
  description: IBST reports that there is an internal fault in the IBST.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 653
  name: ibstSystemDegradedFault
  severity: ERROR
  description: IBST reports that the hydraulic braking system performance is degraded.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 654
  name: ibstInternalDegradedFault
  severity: ERROR
  description: IBST reports that the IBST performance is degraded.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
# @todo @jira{FW-5716} iBooster does not listen to primary CAN bus after key cycles
- id: 655
  name: ibstRedundantBusActiveFault
  severity: WARNING
  description: IBST reports that the redundant bus (DR3) is active (honoring commands).
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Check that EMU is sending the EMU_brakeCommand and EMU_vehicleDynamics messages on
    DR_CAN1. Gather logs and contact BaseOps/EEI/FW.
- id: 656
  name: ibstNoActiveBusFault
  severity: ERROR
  description: IBST is either not honoring commands on either of the redundant buses, or the EMU
    cannot determine which bus the IBST is listening to.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Check that EMU is sending the EMU_brakeCommand and EMU_vehicleDynamics messages on both
    DR_CAN1 and DR_CAN3. Gather logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: NoGo
- id: 657
  name: ibstPrimaryBusStale
  severity: WARNING
  description: One or more of the IBST feedback CAN messages is stale on the primary bus (DR_CAN1).
  troubleshooting_steps: Check for other expected CAN messages on DR_CAN1. Check harness connectors
    and fuses accordingly. Collect logs and contact BaseOps/EEI/FW.
  freeze_frame: zoox.common.proto.IbstBusStaleFF
- id: 658
  name: ibstRedundantBusStale
  severity: WARNING
  description: One or more of the IBST feedback CAN messages is stale on the redundant bus
    (DR_CAN3).
  troubleshooting_steps: Check for other expected CAN messages on DR_CAN3. Check harness connectors
    and fuses accordingly. Collect logs and contact BaseOps/EEI/FW.
  freeze_frame: zoox.common.proto.IbstBusStaleFF
- id: 659
  name: ibstSbsFaulted
  severity: WARNING
  description: IBST reports that the Safe Brake Stop (SBS) function performance is degraded. This is
    the iBooster-only attempt at of ABS.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 660
  name: ibstSystemFaultWarning
  severity: WARNING
  description: IBST reports that there is a system level fault within the hydraulic braking system.
    Allow degraded operation is active, so treating as a WARNING.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 661
  name: ibstInternalFaultWarning
  severity: WARNING
  description: IBST reports that there is an internal fault in the IBST. Allow degraded operation is
    active, so treating as a WARNING.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 662
  name: ibstSystemDegradedWarning
  severity: WARNING
  description: IBST reports that the hydraulic braking system performance is degraded.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 663
  name: ibstInternalDegradedWarning
  severity: WARNING
  description: IBST reports that the IBST performance is degraded.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Gather logs and contact BaseOps/EEI/FW.
- id: 664
  name: ibstRedundantBusActiveWarning
  severity: WARNING
  description: IBST reports that the redundant bus (DR3) is active (honoring commands).
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Check that EMU is sending the EMU_brakeCommand and EMU_vehicleDynamics messages on
    DR_CAN1. Gather logs and contact BaseOps/EEI/FW.
- id: 665
  name: ibstNoActiveBusWarning
  severity: WARNING
  description: IBST is either not honoring commands on either of the redundant buses, or the EMU
    cannot determine which bus the IBST is listening to.
  troubleshooting_steps: Check IBST reported diagnostics for the root cause once available - coming
    in BL6. Check that EMU is sending the EMU_brakeCommand and EMU_vehicleDynamics messages on both
    DR_CAN1 and DR_CAN3. Gather logs and contact BaseOps/EEI/FW.
- id: 666
  name: ibstWssInvalid
  severity: WARNING
  description: IBST reports that at least one of its WSS reading is invalid.
  troubleshooting_steps: If diagnostic is active while stationary, the WSS may need to be reset by
    spinning the wheel at varying speeds dependent on the fault type. Check the harnessing for the
    WSS. Check IBST reported diagnostics for the root cause once available - coming in BL6.
  freeze_frame: zoox.common.proto.EspIbstWssInvalidFF

# MON Driver Diagnostics
# MON Fault ID range 700-749
- id: 700
  name: emuMonHeartbeatStale
  severity: ERROR
  description: Messages from the EMU-MON are missing, caused by loss of power or Ethernet to EMU_MON.
  troubleshooting_steps: Check harnessing to ensure there is no loss of power or ethernet link to MON.
    Collect logs and contact BaseOps/EEI/FW.
  reaction:
    trajectory: Estop
- id: 701
  name: emuMonEstopBoxGpioDisarmedNorth
  severity: WARNING
  description: EMU-MON warning due to Estop box indicating that its not armed.
  troubleshooting_steps: Attempt to arm Estop box on vehicle. Double check harnessing.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
- id: 702
  name: emuMonEstopBoxGpioActiveNorth
  severity: WARNING
  description: EMU-MON warning due to Estop box indicating that its active.
    EPB's are engaged in this state.
  troubleshooting_steps: Attempt to deactivate Estop on vehicle. Double check harnessing.
    Collect logs and contact BaseOps/EEI/FW if issue persists.
- id: 703
  name: emuMonSelfStopRequested
  severity: ERROR
  description: The EMU-MON has requested a self-stop due to an EMU-MON monitor tripping.
  troubleshooting_steps: Collect logs and contact Firmware and/or SDMA.
  reaction:
    trajectory: Estop

# SRC Driver Diagnostics
# SRC1 Fault ID Allocations (750-799)
- id: 750
  name: srcQ1Fault
  severity: WARNING
  description: SRC Q1 is reporting a faulted state.
  troubleshooting_steps: Check SRC Diagnostics and Send logs to EEI, HWSI or FW.
- id: 751
  name: srcQ1Warning
  severity: WARNING
  description: SRC Q1 is reporting a warning.
  troubleshooting_steps: Check SRC Diagnostics for more detail.
- id: 752
  name: srcQ1Stale
  severity: WARNING
  description: SRC Q1 is not sending messages to the EMU over CAN.
  troubleshooting_steps: Check BDY_CAN1 harness and ensure it is connected.
# SRC2 Fault ID Allocations (800-849)
- id: 800
  name: srcQ2Fault
  severity: WARNING
  description: SRC Q2 is reporting a faulted state.
  troubleshooting_steps: Check SRC Diagnostics and Send logs to EEI, HWSI or FW.
- id: 801
  name: srcQ2Warning
  severity: WARNING
  description: SRC Q2 is reporting a warning.
  troubleshooting_steps: Check SRC Diagnostics for more detail.
- id: 802
  name: srcQ2Stale
  severity: WARNING
  description: SRC Q2 is not sending messages to the EMU over CAN.
  troubleshooting_steps: Check BDY_CAN1 harness and ensure it is connected.
# SRC3 Fault ID Allocations (850-899)
- id: 850
  name: srcQ3Fault
  severity: WARNING
  description: SRC Q3 is reporting a faulted state.
  troubleshooting_steps: Check SRC Diagnostics and Send logs to EEI, HWSI or FW.
- id: 851
  name: srcQ3Warning
  severity: WARNING
  description: SRC Q3 is reporting a warning.
  troubleshooting_steps: Check SRC Diagnostics for more detail.
- id: 852
  name: srcQ3Stale
  severity: WARNING
  description: SRC Q3 is not sending messages to the EMU over CAN.
  troubleshooting_steps: Check BDY_CAN2 harness and ensure it is connected.
# SRC4 Fault ID Allocations (900-949)
- id: 900
  name: srcQ4Fault
  severity: WARNING
  description: SRC Q4 is reporting a faulted state.
  troubleshooting_steps: Check SRC Diagnostics and Send logs to EEI, HWSI or FW.
- id: 901
  name: srcQ4Warning
  severity: WARNING
  description: SRC Q4 is reporting a warning.
  troubleshooting_steps: Check SRC Diagnostics for more detail.
- id: 902
  name: srcQ4Stale
  severity: WARNING
  description: SRC Q4 is not sending messages to the EMU over CAN.
  troubleshooting_steps: Check BDY_CAN2 harness and ensure it is connected.

# TPMS Driver Diagnostics
# TPMS Fault ID Allocations (950-999)
# These are maintained at INFO level for now, as not all vehicles have TPMS
- id: 950
  name: tpmsSensorThermalShutdownFault
  severity: INFO
  description: TPMS has a sensor fault. This is due to thermal shutdown of the TPMS
    sensor.
  troubleshooting_steps: Check the FreezeFrame to determine which sensor caused the system
    malfunction. Bring vehicle to a stop, allow tire temperature to cool down, to see if it
    will resolve the issue. Gather logs and contact BaseOps/EEI/FW if issue persists.
  freeze_frame: zoox.common.proto.TpmsMalfunctionFF
- id: 951
  name: tpmsSensorDefectiveFault
  severity: INFO
  description: TPMS has a sensor fault. This is due to presence of defective TPMS sensor.
  troubleshooting_steps: Check the FreezeFrame to determine which sensor is faulty and replace it.
    Contact BaseOps for further support.
  freeze_frame: zoox.common.proto.TpmsMalfunctionFF
- id: 952
  name: tpmsSensorBatteryLowFault
  severity: INFO
  description: TPMS has a sensor fault. This is due to TPMS sensor indicating low battery.
  troubleshooting_steps: Check the FreezeFrame to determine which sensor is indicating low batery
    and fix by using a new battery. Contact BaseOps for further support.
  freeze_frame: zoox.common.proto.TpmsMalfunctionFF
- id: 953
  name: tpmsSoftLowTirePressureFault
  severity: INFO
  description: TPMS is indicating a SOFT low tire pressure. This indicates that the tire pressure
    has fallen below recommended threshold value (<80% of recommended value).
  troubleshooting_steps: Check the FreezeFrame to determine which tire is indicating a soft low
    tire pressure warning. Attempt to re-inflate tire. Contact BaseOps/EEI if issue persists.
  freeze_frame: zoox.common.proto.TpmsMalfunctionFF
- id: 954
  name: tpmsHardLowTirePressureFault
  severity: INFO
  description: TPMS is indicating a HARD low tire pressure. This indicates that the tire pressure
    has fallen below recommended threshold value (<60% of recommended value).
  troubleshooting_steps: Check the FreezeFrame to determine which tire is indicating a hard low
    tire pressure warning. Attempt to re-inflate tire. Contact BaseOps/EEI if issue persists.
  freeze_frame: zoox.common.proto.TpmsMalfunctionFF
- id: 955
  name: tpmsFastPressureLossFault
  severity: INFO
  description: TPMS is indicating a fast pressure loss fault. This indicates that one or more tires
    may be losing pressure at a high rate.
  troubleshooting_steps: Check the FreezeFrame to determine which tire is indicating a fast
    pressure loss. Bring vehicle to a stop, and attempt to repair / re-inflate the tires. Contact
    BaseOps/EEI if issue persists.
  freeze_frame: zoox.common.proto.TpmsMalfunctionFF
- id: 956
  name: tpmsEolWarning
  severity: INFO
  description: TPMS EOL qualification is not yet completed on this vehicle.
  troubleshooting_steps: Check if TPMS sensor is present on Vehicle and if EOL activities for
    TPMS are completed.  Gather logs and contact EEI/FW for issue resolution.
- id: 957
  name: tpmsStale
  severity: INFO
  description: TPMS CAN messages are missing.
  troubleshooting_steps: Check if TPMS sensor is present on Vehicle. Also check harness connectors.
    Gather logs and contact EEI/FW for issue resolution.
- id: 958
  name: tpmsSystemMalfunctionFault
  severity: INFO
  description: TPMS is indicating a System Malfunction.
  troubleshooting_steps: Check to see if any other TPMS faults are active and attempt to fix them.
    Gather logs and contact EEI/FW if issue persists.

# DriveState Transition Diagnostics (1000-1099)
- id: 1000
  name: engageTimeoutWhileWaitingForIgnition
  severity: ERROR
  description: Failed to perform Engage routine because ignition (KL15) did not become stable within
    20 seconds.
  troubleshooting_steps: Check TBC Diagnostics and PowerManager Diagnostics for possible causes of
    KL15 not turning on.
  reaction:
    trajectory: Estop
- id: 1001
  name: engageTimeoutWhileWaitingForEcusReady
  severity: ERROR
  description: Failed to perform Engage routine because not all required ECUs initialized within 20
    seconds.
  troubleshooting_steps: Check the FreezeFrame for which ECUs were not initialized. Check
    diagnostics relating to those ECUs.
  reaction:
    trajectory: Estop
  freeze_frame: zoox.common.proto.EngageStateEcuInitStatusFF
- id: 1002
  name: engageTimeoutWhileWaitingForHv
  severity: ERROR
  description: Failed to perform Engage routine because high voltage bus did not become active
    within 20 seconds.
  troubleshooting_steps: Check PowerManager diagnostics for any power-limiting diagnostics.
  reaction:
    trajectory: Estop
- id: 1003
  name: engageTimeoutWhileWaitingForClutches
  severity: ERROR
  description: Failed to perform Engage routine because clutches did not engage within 20 seconds.
  troubleshooting_steps: Check EDU driver diagnostics for clutch failures.
  reaction:
    trajectory: Estop
- id: 1004
  name: engageTimeoutWhileEnablingEcus
  severity: ERROR
  description: Failed to perform Engage routine because not all required ECUs became ready for a
    driving mode within 20 seconds.
  troubleshooting_steps: Check the FreezeFrame for which ECUs did not become ready. Check
    diagnostics relating to those ECUs. If the FreezeFrame indicates that power or thermal are not
    ready, check PowerManager Diagnostics and BodyManager Diagnostics respectively.
  reaction:
    trajectory: Estop
  freeze_frame: zoox.common.proto.EngageStateEcuActivationStatusFF
- id: 1005
  name: engageTimeoutWhileApplyingBrakes
  severity: ERROR
  description: Failed to perform Engage routine because the friction brakes did not apply torque
    within 20 seconds.
  troubleshooting_steps: Check ESP driver diagnostics for brake failures.
  reaction:
    trajectory: Estop
- id: 1007
  name: engageTimeoutWhileReleasingEpbs
  severity: ERROR
  description: Failed to perform Engage routine because EPBs did not unclamp within 20 seconds.
  troubleshooting_steps: Check BMU diagnostics for clutch failures.
  reaction:
    trajectory: Estop
- id: 1008
  name: vehicleNotStationary
  severity: ERROR
  description: The vehicle is not stationary while in a drive state that is expecting to be
    stationary.
  troubleshooting_steps: Clamp the EPBs.
  reaction:
    trajectory: Estop
- id: 1009
  name: unexpectedReleaseOfControl
  severity: ERROR
  description: The vehicle is not stationary, but the control source has released control.
  troubleshooting_steps: Collect logs and notify Firmware.
  reaction:
    trajectory: Estop
- id: 1010
  name: enteredInvalidState
  severity: ERROR
  description: Current drive state is not implemented, but has somehow been entered.
  troubleshooting_steps: Collect logs and notify Firmware.
  reaction:
    trajectory: Estop

# LUX Legal Driver Diagnostics
# LUX Legal Fault ID Allocations (1100-1149)
- id: 1100
  name: LuxNorthLegalStale
  severity: WARNING
  description: LUX north status stale.
  troubleshooting_steps: Verify north LUX is installed and connected.
- id: 1101
  name: LuxNorthLegalFault
  severity: WARNING
  description: LUX reports a fault with north legal lighting.
  troubleshooting_steps: Verify LUX north legal components are installed and connected. Look at alert diagnostics for more details.
- id: 1102
  name: LuxSouthLegalStale
  severity: WARNING
  description: LUX south status stale.
  troubleshooting_steps: Verify south LUX is installed and connected.
- id: 1103
  name: LuxSouthLegalFault
  severity: WARNING
  description: LUX reports a fault with south legal lighting.
  troubleshooting_steps: Verify LUX south legal components are installed and connected. Look at alert diagnostics for more details.


# Deprecated Diagnostics
- id: 0
  name: DEPRECATED_acuStale
  severity: WARNING
  description: Airbag control unit messages are missing. Vehicle should be drivable, but ESP may
    fault. Caused by loss of power or CAN to ACU.
  troubleshooting_steps: Inspect harness, check device fuse.
  deprecated: true
- id: 1
  name: DEPRECATED_acuWarning
  severity: WARNING
  description: Airbag control unit reports a warning. Cause unknown.
  troubleshooting_steps: Ensure ACU is calibrated. Send logs to EEI, HWSI, or FW.
  deprecated: true
- id: 2
  name: DEPRECATED_acuFault
  severity: WARNING
  description: Airbag control unit reports a fault or the ACU sensors are not operational, cause
    unknown.
  troubleshooting_steps: Ensure ACU is calibrated. Send logs to EEI, HWSI, or FW.
  deprecated: true
- id: 9
  name: DEPRECATED_bmuStale
  severity: ERROR
  description: Backup Motion Unit messages are missing, caused by loss of power or CAN; typical
    cause is HW issue + SW fragility.
  troubleshooting_steps: Inspect harness, check device fuse, Collect logs and notify FW.
  reaction:
    trajectory: NoGo
  deprecated: true
- id: 10
  name: DEPRECATED_bmuWarning
  severity: WARNING
  description: Backup Motion Unit warning due to degraded EPB status or NoGo button faults, possibly
    caused by unexpected resistance or open circuit for EPBs or headliner emergency buttons faulted
    because headliner not installed.
  troubleshooting_steps: Unclamp and clamp the EPBs while stationary. Double check EPB harnessing.
    Confirm headliner is installed and connected (confirm by trying the emergency buttons).
  deprecated: true
- id: 11
  name: DEPRECATED_bmuFault
  severity: ERROR
  description: Backup Motion Unit faulted, caused by faulted BMU backup control state or faulted EPB
  troubleshooting_steps: Confirm correct ODD limits; double check EPB harnessing.
  reaction:
    trajectory: NoGo
- id: 12
  name: DEPRECATED_edu1Stale
  severity: ERROR
  description: Electric Drive Unit (North) messages are missing, caused by loss of power or CAN to
    EDU.
  troubleshooting_steps: Inspect harness, check device fuse.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
  deprecated: true
- id: 13
  name: DEPRECATED_edu1Warning
  severity: WARNING
  description: Electric Drive Unit (North) reports a degraded state, currently unsupported.
  troubleshooting_steps: None
  deprecated: true
- id: 14
  name: DEPRECATED_edu1Fault
  severity: ERROR
  description: Electric Drive Unit (North) reports a fault, caused by EDU failure or clutch failure.
  troubleshooting_steps: VH6A - Power cycle; VH6B - return to PowerMode::Standby for 15 seconds and
    try to clear faults. Check harnessing.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
  deprecated: true
- id: 15
  name: DEPRECATED_edu2Stale
  severity: ERROR
  description: Electric Drive Unit (South) messages are missing, caused by loss of power or CAN to
    EDU.
  troubleshooting_steps: Inspect harness, check device fuse.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
  deprecated: true
- id: 16
  name: DEPRECATED_edu2Warning
  severity: WARNING
  description: Electric Drive Unit (South) reports a degraded state, currently unsupported.
  troubleshooting_steps: None
  deprecated: true
- id: 17
  name: DEPRECATED_edu2Fault
  severity: ERROR
  description: Electric Drive Unit (South) reports a fault, caused by EDU failure or clutch failure.
  troubleshooting_steps: VH6A - Power cycle; VH6B - return to PowerMode::Standby for 15 seconds and
    try to clear faults. Check harnessing.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
  deprecated: true
- id: 24
  name: DEPRECATED_espStale
  severity: ERROR
  description: Electronic Stability Program (brakes) messages are missing, caused by loss of
    redundancy. One or both brake systems (ESP, IBST) is not transmitting.
  troubleshooting_steps: Inspect harness, check device fuse.
  reaction:
    trajectory: NoGo
  deprecated: true
- id: 25
  name: DEPRECATED_espWarning
  severity: WARNING
  description: Electronic Stability Program (brakes) function degraded, caused by ESP or IBST
    reporting degraded status; secondary control bus activated; faulted ABS, VDC, TCS, DTC.
  troubleshooting_steps: Ignition cycle. For VDC, check rack alignment and ACU calibration.
  deprecated: true
- id: 26
  name: DEPRECATED_espFault
  severity: ERROR
  description: Electronic Stabliity program (brakes) faulted, caused by loss of braking function;
    brake command not executed; wheel speed sensors invalid; any degraded braking status
    (configurable check, but defaults to enabled).
  troubleshooting_steps: Check harness for power, fuse, CAN, all wheel speed sensor connections.
    Collect logs and notify FW.
  reaction:
    trajectory: NoGo
  deprecated: true
- id: 42
  name: DEPRECATED_estopStale
  severity: INFO
  description: EStop stale. Not implemented, cannot happen.
  troubleshooting_steps: None
  deprecated: true
- id: 43
  name: DEPRECATED_estopWarning
  severity: WARNING
  description: EStop line active for either the EMU or BMU, caused by pressing the red Estop button.
  troubleshooting_steps: Check all the connected EStop buttons, check harness for GPIO connections.
  deprecated: true
- id: 44
  name: DEPRECATED_estopFault
  severity: ERROR
  description: One or more Estop buttons were pressed and/or disconnected after Estop box has been
    armed.
  troubleshooting_steps: Check all the connected Estop buttons; Reset the Estop box.
  reaction:
    trajectory: Estop
  deprecated: true
- id: 45
  name: DEPRECATED_contactorsForcedOpen
  severity: ERROR
  description: Battery contactors have been forced open due to a HW estop.
  troubleshooting_steps: Unpress the estop button, then reset the estop or power cycle the vehicle.
  reaction:
    power_mode_limit: Acc
  deprecated: true
- id: 50
  name: DEPRECATED_thermalWarning
  severity: INFO
  description: Thermal system is reporting a warning.
  troubleshooting_steps: Check TBC Diagnostics for faults.
  deprecated: true
- id: 51
  name: DEPRECATED_thermalFault
  severity: INFO
  description: Thermal system is reporting a fault.
  troubleshooting_steps: Check TBC Diagnostics for faults.
  deprecated: true
- id: 52
  name: DEPRECATED_remoteNogoRequest
  severity: ERROR
  description: Either the remote NoGo or the Headliner NoGo button was pressed.
  reaction:
    trajectory: NoGo
  deprecated: true
- id: 67
  name: DEPRECATED_brakeFluidFault
  severity: ERROR
  description: Thermal Body Controller has low brake fluid levels.
  troubleshooting_steps: Refill the brake fluid.
  reaction:
    trajectory: Estop
  deprecated: true
- id: 68
  name: DEPRECATED_topSpeedFault
  severity: ERROR
  description: Current velocity exceeds current speed limits.
  troubleshooting_steps: Command a slower velocity or change ODD to allow high velocities.
  reaction:
    trajectory: NoGo
    power_mode_limit: Acc
  deprecated: true
- id: 69
  name: DEPRECATED_topSpeedWarning
  severity: WARNING
  description: Current velocity exceeds current warning thresholds.
  troubleshooting_steps: Command a slower velocity or change ODD to allow high velocities.
  deprecated: true
- id: 73
  name: DEPRECATED_emuMonHeartbeatStale
  severity: ERROR
  description: Messages from the EMU-MON are missing, caused by loss of power or Ethernet to EMU_MON.
  troubleshooting_steps: Collect logs and notify FW.
  reaction:
    trajectory: Estop
  deprecated: true
- id: 74
  name: DEPRECATED_espControlFault
  severity: ERROR
  description: Electronic Stability Program faulted and is unable to provide braking, caused by ESP
    and IBooster being unable to provide sufficient braking torque.
  troubleshooting_steps: Check that braking commands are valid on redundant busses, check that
    neither ESP nor IBooster are faulted.
  reaction:
    trajectory: Estop
  deprecated: true
- id: 77
  name: DEPRECATED_lateralAccelWarning
  severity: WARNING
  description: Airbag Control Unit reports the vehicle's lateral acceleration exceeds limits.
  troubleshooting_steps: Slow down vehicle lateral acceleration rate.
  deprecated: true
- id: 78
  name: DEPRECATED_estopConsistencyFault
  severity: ERROR
  description: Emergency stop buttons are inconsistent or have not been tested for consistency.
  troubleshooting_steps: Run through Estop Consistency Test procedure.
  reaction:
    allowed_missions: None
- id: 3
  name: DEPRECATED_asc1Stale
  severity: WARNING
  description: Active Suspension Controller (North) messages are missing, caused by loss of power or
    CAN to ASC.
  troubleshooting_steps: Inspect harness, check device fuse.
  deprecated: true
- id: 4
  name: DEPRECATED_asc1Warning
  severity: WARNING
  description: Active Suspension Controller (North) reports a degraded state. Caused by non-critical
    sensor, pump, or actuator failure or sensor reading out of expected operational range.
  troubleshooting_steps: Inspect harness, check device fuse, verify actuator / sensor positions.
  deprecated: true
- id: 5
  name: DEPRECATED_asc1Fault
  severity: WARNING
  description: Active Suspension Controller (North) reports a faulted state. Caused by critical
    sensor, pump, or actuator failure or sensor reading out of expected operational range.
  troubleshooting_steps: Inspect harness, check device fuse, verify actuator / sensor positions.
  deprecated: true
- id: 6
  name: DEPRECATED_asc2Stale
  severity: WARNING
  description: Active Suspension Controller (South) messages are missing, caused by loss of power or
    CAN to ASC.
  troubleshooting_steps: Inspect harness, check device fuse.
  deprecated: true
- id: 7
  name: DEPRECATED_asc2Warning
  severity: WARNING
  description: Active Suspension Controller (South) reports a degraded state. Caused by non-critical
    sensor, pump, or actuator failure or sensor reading out of expected operational range.
  troubleshooting_steps: Inspect harness, check device fuse, verify actuator/sensor positions.
  deprecated: true
- id: 8
  name: DEPRECATED_asc2Fault
  severity: WARNING
  description: Active Suspension Controller (South) reports a faulted state. Caused by critical
    sensor, pump, or actuator failure or sensor reading out of expected operational range.
  troubleshooting_steps: Inspect harness, check device fuse, verify actuator/sensor positions.
  deprecated: true
- id: 33
  name: DEPRECATED_ioHandlerStale
  severity: ERROR
  description: IO Handler IPC data is stale.
  troubleshooting_steps: Check IoHandler diagnostics for faults.
  reaction:
    trajectory: Estop
  deprecated: true
- id: 18
  name: DEPRECATED_epas1Stale
  severity: ERROR
  description: Electronic Power Steering (North) messages are missing from both internal ECUs,
    caused by loss of power or CAN to EPAS.
  troubleshooting_steps: Inspect harness, check device fuse.
  deprecated: true
  reaction:
    trajectory: Estop
- id: 19
  name: DEPRECATED_epas1Warning
  severity: WARNING
  description: Electronic Power Steering (North) has unexpected loss of calibration, cause unknown.
  troubleshooting_steps: Perform a steering calibration.
  deprecated: true
- id: 20
  name: DEPRECATED_epas1NonControlFault
  severity: ERROR
  description: Electronic Power Steering (North) reports a non-control fault, indicating there is
    still control of steering. Caused by loss of redundancy or incorrect control state.
  troubleshooting_steps: Collect logs and notify FW.
  deprecated: true
  reaction:
    trajectory: NoGo
- id: 21
  name: DEPRECATED_epas2Stale
  severity: ERROR
  description: Electronic Power Steering (South) messages are missing from both internal ECUs,
    caused by loss of power or CAN to EPAS.
  troubleshooting_steps: Inspect harness, check device fuse.
  deprecated: true
  reaction:
    trajectory: Estop
- id: 22
  name: DEPRECATED_epas2Warning
  severity: WARNING
  description: Electronic Power Steering (South) has unexpect loss of calibration, cause unknown.
  troubleshooting_steps: Perform a steering calibration.
  deprecated: true
- id: 23
  name: DEPRECATED_epas2NonControlFault
  severity: ERROR
  description: Electronic Power Steering (South) reports a non-control fault, indicating there is
    still control of steering. Caused by loss of redundancy or incorrect control state.
  troubleshooting_steps: Collect logs and notify FW.
  deprecated: true
  reaction:
    trajectory: NoGo
- id: 75
  name: DEPRECATED_epas1ControlFault
  severity: ERROR
  description: Electronic Power Assisted Steering (North) faulted and is unable to provide steering,
    caused by EPAS being unable to provide steering, or losing steering tracking.
  troubleshooting_steps: Collect logs and notify FW.
  deprecated: true
  reaction:
    trajectory: Estop
- id: 76
  name: DEPRECATED_epas2ControlFault
  severity: ERROR
  description: Electronic Power Assisted Steering (South) faulted and is unable to provide steering,
    caused by EPAS being unable to provide steering, or losing steering tracking.
  troubleshooting_steps: Collect logs and notify FW.
  deprecated: true
  reaction:
    trajectory: Estop
- id: 54
  name: DEPRECATED_src1Stale
  severity: WARNING
  description: Seatbelt Retraction Controller (Northwest) messages are missing, caused by loss of
    power or CAN to SRC.
  troubleshooting_steps: Check device harness or fuse.
  deprecated: true
- id: 55
  name: DEPRECATED_src1Warning
  severity: WARNING
  description: Seatbelt Retraction Controller (Northwest) reports a degraded state, cause unknown.
  troubleshooting_steps: None
  deprecated: true
- id: 56
  name: DEPRECATED_src1Fault
  severity: WARNING
  description: Seatbelt Retraction Controller (Northwest) is in a faulted state, cause unknown.
  troubleshooting_steps: None
  deprecated: true
- id: 57
  name: DEPRECATED_src2Stale
  severity: WARNING
  description: Seatbelt Retraction Controller (Northeast) messages are missing, caused by loss of
    power or CAN to SRC.
  troubleshooting_steps: Check device harness or fuse
  deprecated: true
- id: 58
  name: DEPRECATED_src2Warning
  severity: WARNING
  description: Seatbelt Retraction Controller (Northeast) reports a degraded state,
    cause unknown.
  troubleshooting_steps: None
  deprecated: true
- id: 59
  name: DEPRECATED_src2Fault
  severity: WARNING
  description: Seatbelt Retraction Controller (Northeast) is in a faulted state, cause unknown.
  troubleshooting_steps: None
  deprecated: true
- id: 60
  name: DEPRECATED_src3Stale
  severity: WARNING
  description: Seatbelt Retraction Controller (Southwest) messages are missing, caused by loss of
    power or CAN to SRC.
  troubleshooting_steps: Check device harness or fuse.
  deprecated: true
- id: 61
  name: DEPRECATED_src3Warning
  severity: WARNING
  description: Seatbelt Retraction Controller (Southwest) reports a degraded state, cause unknown.
  troubleshooting_steps: None
  deprecated: true
- id: 62
  name: DEPRECATED_src3Fault
  severity: WARNING
  description: Seatbelt Retraction Controller (Southwest) is in a faulted state, cause unknown.
  troubleshooting_steps: None
  deprecated: true
- id: 63
  name: DEPRECATED_src4Stale
  severity: WARNING
  description: Seatbelt Retraction Controller (Southeast) messages are missing, caused by loss of
    power or CAN to SRC.
  troubleshooting_steps: Check device harness or fuse.
  deprecated: true
- id: 64
  name: DEPRECATED_src4Warning
  severity: WARNING
  description: Seatbelt Retraction Controller (Southeast) reports a degraded state, cause unknown.
  troubleshooting_steps: None
  deprecated: true
- id: 65
  name: DEPRECATED_src4Fault
  severity: WARNING
  description: Seatbelt Retraction Controller (Southeast) is in a faulted state, cause unknown.
  troubleshooting_steps: None
  deprecated: true
- id: 152
  name: DEPRECATED_aiTrackerHeroStateIpcRxStale
  severity: ERROR
  description: IPC messages for PCU HeroState info to DriveManager have not been received in time
    while attempting to use Tracker on EMU.
  troubleshooting_steps: Check that the dds_bridge application is running on the EMU.
  freeze_frame: zoox.common.proto.IpcStalenessThresholdFF
  latching: false
  reaction:
    allowed_missions: ManualOperations
  deprecated: true
- id: 1006
  name: engageTimeoutWhileInClutchRoutine
  severity: ERROR
  description: Failed to perform Engage routine because the VH6A EDU's supplemental clutch routine
    did not finish within 20 seconds.
  troubleshooting_steps: Check EDU driver diagnostics for clutch failures.
  reaction:
    trajectory: Estop
  deprecated: true
