27#include "ctre/phoenix/CANBusAddressable.h"
28#include "ctre/phoenix/CustomParamConfiguration.h"
29#include "ctre/phoenix/paramEnum.h"
30#include "ctre/phoenix/ErrorCode.h"
31#include "ctre/phoenix/sensors/PigeonIMU_ControlFrame.h"
32#include "ctre/phoenix/sensors/PigeonIMU_Faults.h"
33#include "ctre/phoenix/sensors/PigeonIMU_StatusFrame.h"
34#include "ctre/phoenix/sensors/PigeonIMU_StickyFaults.h"
35#include "ctre/phoenix/sensors/BasePigeonSimCollection.h"
40namespace motorcontrol {
71 std::string
toString(std::string prependString) {
111 BasePigeon(
int deviceNumber, std::string
const &version, std::string
const &canbus =
"");
130 int SetYaw(
double angleDeg,
int timeoutMs = 0);
141 int AddYaw(
double angleDeg,
int timeoutMs = 0);
349 uint8_t subValue,
int ordinal,
int timeoutMs = 0);
388 int32_t & valueReceived, uint8_t & subValue, int32_t ordinal,
493 enum MotionDriverState {
504 ConfigCompass_5 = 10,
505 SelfTestCompass = 11,
506 WaitForGyroStable = 12,
507 AdditionalAccelAdjust = 13,
515 SetValue = 0x00, AddOffset = 0x01, MatchCompass = 0x02, SetOffset = 0xFF,
524 ResetStats _resetStats = { 0, 0, 0,
false };
528 uint32_t _deviceNumber;
529 uint32_t _usageHist = 0;
532 BasePigeonSimCollection* _simCollection;
535 const uint32_t EXPECTED_RESPONSE_TIMEOUT_MS = (200);
537 int PrivateSetParameter(
ParamEnum paramEnum, TareType tareType,
538 double angleDeg,
int timeoutMs = 0);
540 double GetTemp(
const uint64_t & statusFrame);
Definition: CANBusAddressable.h:8
Definition: TalonSRX.h:144
Definition: BasePigeon.h:100
ErrorCode Get6dQuaternion(double wxyz[4]) const
ErrorCode ConfigGetParameter(ParamEnum param, int32_t valueToSend, int32_t &valueReceived, uint8_t &subValue, int32_t ordinal, int32_t timeoutMs)
int GetStatusFramePeriod(PigeonIMU_StatusFrame frame, int timeoutMs=0)
bool HasResetOccurred() const
int GetRawGyro(double xyz_dps[3]) const
virtual ErrorCode ConfigFactoryDefault(int timeoutMs=50)
double ConfigGetParameter(ctre::phoenix::ParamEnum param, int ordinal, int timeoutMs=0)
ErrorCode ConfigSetCustomParam(int newValue, int paramIndex, int timeoutMs=0)
ErrorCode ClearStickyFaults(int timeoutMs=0)
int GetBiasedAccelerometer(int16_t ba_xyz[3]) const
BasePigeon(int deviceNumber, std::string const &version, std::string const &canbus="")
double GetCompassFieldStrength() const
int GetAccumGyro(double xyz_deg[3]) const
int GetBiasedMagnetometer(int16_t bm_xyz[3]) const
uint32_t GetResetFlags() const
int SetAccumZAngle(double angleDeg, int timeoutMs=0)
virtual BasePigeonSimCollection & GetSimCollection()
int SetYaw(double angleDeg, int timeoutMs=0)
double GetCompassHeading() const
ErrorCode GetYawPitchRoll(double ypr[3]) const
int ConfigGetCustomParam(int paramIndex, int timeoutMs=0)
static void DestroyAllBasePigeons()
int SetYawToCompass(int timeoutMs=0)
void * GetLowLevelHandle() const
Definition: BasePigeon.h:448
int GetRawMagnetometer(int16_t rm_xyz[3]) const
ErrorCode GetLastError() const
virtual void GetAllConfigs(BasePigeonConfiguration &allConfigs, int timeoutMs=50)
virtual ctre::phoenix::ErrorCode ConfigAllSettings(const BasePigeonConfiguration &allConfigs, int timeoutMs=50)
int AddYaw(double angleDeg, int timeoutMs=0)
ErrorCode SetStatusFramePeriod(PigeonIMU_StatusFrame statusFrame, uint8_t periodMs, int timeoutMs=0)
ErrorCode SetControlFramePeriod(PigeonIMU_ControlFrame frame, int periodMs)
uint32_t GetFirmVers() const
double GetAbsoluteCompassHeading() const
ErrorCode ConfigSetParameter(ParamEnum param, double value, uint8_t subValue, int ordinal, int timeoutMs=0)
uint32_t GetResetCount() const
uint32_t GetUpTime() const
Definition: BasePigeonSimCollection.h:22
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: CustomParamConfiguration.h:10
int customParam1
Definition: CustomParamConfiguration.h:18
bool enableOptimizations
Definition: CustomParamConfiguration.h:22
int customParam0
Definition: CustomParamConfiguration.h:14
std::string toString()
Definition: CustomParamConfiguration.h:33
Definition: BasePigeon.h:81
static bool CustomParam0Different(const BasePigeonConfiguration &settings)
Definition: BasePigeon.h:91
Definition: BasePigeon.h:56
std::string toString()
Definition: BasePigeon.h:62
std::string toString(std::string prependString)
Definition: BasePigeon.h:71