27#include "ctre/phoenix/sensors/BasePigeon.h"
32namespace motorcontrol {
63 std::string
toString(std::string prependString) {
547 enum MotionDriverState {
558 ConfigCompass_5 = 10,
559 SelfTestCompass = 11,
560 WaitForGyroStable = 12,
561 AdditionalAccelAdjust = 13,
569 SetValue = 0x00, AddOffset = 0x01, MatchCompass = 0x02, SetOffset = 0xFF,
578 ResetStats _resetStats = { 0, 0, 0,
false };
581 uint32_t _usageHist = 0;
586 const uint32_t EXPECTED_RESPONSE_TIMEOUT_MS = (200);
588 int PrivateSetParameter(
ParamEnum paramEnum, TareType tareType,
589 double angleDeg,
int timeoutMs = 0);
592 double GetTemp(
const uint64_t & statusFrame);
Definition: TalonSRX.h:144
Definition: BasePigeon.h:100
Definition: PigeonIMU.h:84
virtual ErrorCode ConfigFactoryDefault(int timeoutMs=50)
int EnterCalibrationMode(CalibrationMode calMode, int timeoutMs=0)
ErrorCode GetFaults(PigeonIMU_Faults &toFill)
int SetFusedHeading(double angleDeg, int timeoutMs=0)
ErrorCode ClearStickyFaults(int timeoutMs=0)
int SetCompassAngle(double angleDeg, int timeoutMs=0)
int SetFusedHeadingToCompass(int timeoutMs=0)
PigeonIMU(int deviceNumber)
ErrorCode SetControlFramePeriod(PigeonIMU_ControlFrame frame, int periodMs)
ErrorCode GetStickyFaults(PigeonIMU_StickyFaults &toFill)
double GetFusedHeading() const
int GetAccelerometerAngles(double tiltAngles[3])
PigeonIMU(ctre::phoenix::motorcontrol::can::TalonSRX &talonSrx)
int SetCompassDeclination(double angleDegOffset, int timeoutMs=0)
static std::string ToString(CalibrationMode cm)
ErrorCode SetStatusFramePeriod(PigeonIMU_StatusFrame statusFrame, uint8_t periodMs, int timeoutMs=0)
int ConfigGetCustomParam(int paramIndex, int timeoutMs=0)
double GetFusedHeading(FusionStatus &status)
CalibrationMode
Definition: PigeonIMU.h:115
@ BootTareGyroAccel
Definition: PigeonIMU.h:119
@ Magnetometer360
Definition: PigeonIMU.h:131
@ Magnetometer12Pt
Definition: PigeonIMU.h:127
@ Accelerometer
Definition: PigeonIMU.h:135
@ Temperature
Definition: PigeonIMU.h:123
PigeonState
Definition: PigeonIMU.h:138
@ NoComm
Definition: PigeonIMU.h:142
@ Initializing
Definition: PigeonIMU.h:146
@ UserCalibration
Definition: PigeonIMU.h:154
@ Ready
Definition: PigeonIMU.h:150
int SetTemperatureCompensationDisable(bool bTempCompDisable, int timeoutMs=0)
int GetGeneralStatus(PigeonIMU::GeneralStatus &statusToFill)
ErrorCode ConfigSetCustomParam(int newValue, int paramIndex, int timeoutMs=0)
int GetStatusFramePeriod(PigeonIMU_StatusFrame frame, int timeoutMs=0)
virtual ctre::phoenix::ErrorCode ConfigAllSettings(const PigeonIMUConfiguration &allConfigs, int timeoutMs=50)
virtual void GetAllConfigs(PigeonIMUConfiguration &allConfigs, int timeoutMs=50)
PigeonIMU(ctre::phoenix::motorcontrol::can::TalonSRX *talonSrx)
int AddFusedHeading(double angleDeg, int timeoutMs=0)
static std::string ToString(PigeonIMU::PigeonState state)
PigeonIMU_StatusFrame
Definition: PigeonIMU_StatusFrame.h:8
PigeonIMU_ControlFrame
Definition: PigeonIMU_ControlFrame.h:8
ParamEnum
Definition: paramEnum.h:12
ErrorCode
Definition: ErrorCode.h:12
Definition: ErrorCode.h:5
Definition: BasePigeon.h:81
Definition: BasePigeon.h:56
std::string toString()
Definition: BasePigeon.h:62
Definition: PigeonIMU.h:87
bool bIsValid
Definition: PigeonIMU.h:95
bool bIsFusing
Definition: PigeonIMU.h:99
int lastError
Definition: PigeonIMU.h:107
double heading
Definition: PigeonIMU.h:91
std::string description
Definition: PigeonIMU.h:103
Definition: PigeonIMU.h:186
bool bCalIsBooting
Definition: PigeonIMU.h:208
int noMotionBiasCount
Definition: PigeonIMU.h:227
int tempCompensationCount
Definition: PigeonIMU.h:232
std::string description
Definition: PigeonIMU.h:212
int lastError
Definition: PigeonIMU.h:236
PigeonIMU::CalibrationMode currentMode
Definition: PigeonIMU.h:196
int calibrationError
Definition: PigeonIMU.h:203
PigeonIMU::PigeonState state
Definition: PigeonIMU.h:191
double tempC
Definition: PigeonIMU.h:216
int upTimeSec
Definition: PigeonIMU.h:222
Definition: PigeonIMU_Faults.h:12
Definition: PigeonIMU_StickyFaults.h:12
Definition: PigeonIMU.h:73
Definition: PigeonIMU.h:48
std::string toString(std::string prependString)
Definition: PigeonIMU.h:63
std::string toString()
Definition: PigeonIMU.h:54