Package com.ctre.phoenix.sensors
Class PigeonIMU.GeneralStatus
java.lang.Object
com.ctre.phoenix.sensors.PigeonIMU.GeneralStatus
- Enclosing class:
- PigeonIMU
public static class PigeonIMU.GeneralStatus extends Object
Data object for status on current calibration and general status.
Pigeon has many calibration modes supported for a variety of uses. The
modes generally collects and saves persistently information that makes
the Pigeon signals more accurate. This includes collecting temperature,
gyro, accelerometer, and compass information.
For FRC use-cases, typically compass and temperature calibration is not
required.
Additionally when motion driver software in the Pigeon boots, it will
perform a fast boot calibration to initially bias gyro and setup
accelerometer.
These modes can be enabled with the EnterCalibration mode.
When a calibration mode is entered, caller can expect...
- PigeonState to reset to Initializing and bCalIsBooting is set to true.
Pigeon LEDs will blink the boot pattern. This is similar to the normal
boot cal, however it can an additional ~30 seconds since calibration
generally requires more information. currentMode will reflect the user's
selected calibration mode.
- PigeonState will eventually settle to UserCalibration and Pigeon LEDs
will show cal specific blink patterns. bCalIsBooting is now false.
- Follow the instructions in the Pigeon User Manual to meet the
calibration specific requirements. When finished calibrationError will
update with the result. Pigeon will solid-fill LEDs with red (for
failure) or green (for success) for ~5 seconds. Pigeon then perform
boot-cal to cleanly apply the newly saved calibration data.
-
Field Summary
Fields Modifier and Type Field Description boolean
bCalIsBooting
After caller requests a calibration mode, pigeon will perform a boot-cal before entering the requested mode.int
calibrationError
The error code for the last calibration mode.PigeonIMU.CalibrationMode
currentMode
The currently applied calibration mode if state is in UserCalibration or if bCalIsBooting is true.ErrorCode
lastError
Same as getLastError()int
noMotionBiasCount
Number of times the Pigeon has automatically rebiased the gyro.PigeonIMU.PigeonState
state
The current state of the motion driver.double
tempC
Temperature in Celsiusint
tempCompensationCount
Number of times the Pigeon has temperature compensated the various signals.int
upTimeSec
Number of seconds Pigeon has been up (since boot). -
Constructor Summary
Constructors Constructor Description GeneralStatus()
-
Method Summary
-
Field Details
-
state
The current state of the motion driver. This reflects if the sensor signals are accurate. Most calibration modes will force Pigeon to reinit the motion driver. -
currentMode
The currently applied calibration mode if state is in UserCalibration or if bCalIsBooting is true. Otherwise it holds the last selected calibration mode (when calibrationError was updated). -
calibrationError
The error code for the last calibration mode. Zero represents a successful cal (with solid green LEDs at end of cal) and nonzero is a failed calibration (with solid red LEDs at end of cal). Different calibration -
bCalIsBooting
After caller requests a calibration mode, pigeon will perform a boot-cal before entering the requested mode. During this period, this flag is set to true. -
tempC
Temperature in Celsius -
upTimeSec
Number of seconds Pigeon has been up (since boot). This register is reset on power boot or processor reset. Register is capped at 255 seconds with no wrap around. -
noMotionBiasCount
Number of times the Pigeon has automatically rebiased the gyro. This counter overflows from 15 -> 0 with no cap. -
tempCompensationCount
Number of times the Pigeon has temperature compensated the various signals. This counter overflows from 15 -> 0 with no cap. -
lastError
Same as getLastError()
-
-
Constructor Details
-
GeneralStatus
public GeneralStatus()
-
-
Method Details