Struct MsgSystemReport

Struct Documentation

struct MsgSystemReport

Public Types

enum class State : uint8_t

Values:

enumerator Manual
enumerator Ready
enumerator Active
enumerator Fault
enum class ReasonNotReady : uint8_t

Values:

enumerator None
enumerator MissingReportSteer
enumerator MissingReportBrake
enumerator MissingReportThrtl
enumerator MissingReportGear
enumerator FaultSteer
enumerator FaultBrake
enumerator FaultThrtl
enumerator FaultGear
enumerator BadCrcRcCmdSteer
enumerator BadCrcRcCmdBrake
enumerator BadCrcRcCmdThrtl
enumerator BadCrcCmdGear
enumerator OverrideActiveSteer
enumerator OverrideActiveBrake
enumerator OverrideActiveThrtl
enumerator OverrideActiveGear
enumerator OverrideLatchedSteer
enumerator OverrideLatchedBrake
enumerator OverrideLatchedThrtl
enumerator OverrideOtherSteer
enumerator OverrideOtherBrake
enumerator OverrideOtherThrtl
enumerator OverrideOtherGear
enumerator NotReadySteer
enumerator NotReadyBrake
enumerator NotReadyThrtl
enumerator MissingCmdSteer
enumerator MissingCmdBrake
enumerator MissingCmdThrtl
enumerator LockoutVehicleVelocity
enumerator LockoutVehicleAccel
enumerator LockoutGearReverse
enumerator NotEnableCmdSteer
enumerator NotEnableCmdBrake
enumerator NotEnableCmdThrtl
enumerator SystemReengageDelay
enumerator SystemLockout
enumerator SystemDisabled
enumerator Unknown
enum class ReasonDisengage : uint8_t

Values:

enumerator None
enumerator PowerCycle
enumerator LockoutVehicleVelocity
enumerator LockoutVehicleAccel
enumerator LockoutGearReverse
enumerator SteerCmdDisengage
enumerator SteerCmdInvalidCrc
enumerator SteerCmdInvalidRc
enumerator SteerCmdTimeout
enumerator SteerRptFault
enumerator SteerRptOverride
enumerator SteerRptDisengage
enumerator BrakeCmdDisengage
enumerator BrakeCmdInvalidCrc
enumerator BrakeCmdInvalidRc
enumerator BrakeCmdTimeout
enumerator BrakeRptFault
enumerator BrakeRptOverride
enumerator BrakeRptDisengage
enumerator ThrtlCmdDisengage
enumerator ThrtlCmdInvalidCrc
enumerator ThrtlCmdInvalidRc
enumerator ThrtlCmdTimeout
enumerator ThrtlRptFault
enumerator ThrtlRptOverride
enumerator ThrtlRptDisengage
enumerator GearRptFault
enumerator GearRptOverride
enumerator ExternalBrake
enumerator SystemDisableCmd
enumerator SystemDisableBtn
enumerator Unknown

Public Functions

inline void reset()
inline void setTimePhaseMs(size_t ms)
inline bool timePhaseValid() const
inline size_t timePhaseMs() const
inline bool operator==(const MsgSystemReport &_other) const
inline bool operator!=(const MsgSystemReport &_other) const
inline bool needsUpdate(const MsgSystemReport &previous) const
inline void setCrc()
inline bool validCrc() const
inline bool validRc(uint8_t rc) const

Public Members

uint8_t inhibit
uint8_t validate_cmd_crc_rc
SystemSyncMode system_sync_mode
uint8_t btn_enable
uint8_t btn_disable
uint8_t __pad0__
ReasonDisengage reason_disengage
ReasonNotReady reason_not_ready
uint16_t time_phase
State state
uint8_t __pad1__
uint8_t __pad2__
uint8_t lockout
uint8_t override
uint8_t ready
uint8_t enabled
uint8_t fault
uint8_t __pad3__
uint8_t bad_crc
uint8_t bad_rc
uint8_t rc
uint8_t crc

Public Static Functions

static inline constexpr const char *reasonToString(ReasonNotReady x)
static inline constexpr const char *reasonToString(ReasonDisengage x)

Public Static Attributes

static constexpr uint32_t ID = 0x106
static constexpr size_t PERIOD_MIN = 20
static constexpr size_t PERIOD_MS = 100
static constexpr size_t PERIOD_MAX = 100
static constexpr size_t TIMEOUT_MS = 250