Table of Contents

Namespace CTRE.Phoenix6.Signals

Classes

AdvancedHallSupportValueExtensions
Animation0TypeValueExtensions
Animation1TypeValueExtensions
Animation2TypeValueExtensions
Animation3TypeValueExtensions
Animation4TypeValueExtensions
Animation5TypeValueExtensions
Animation6TypeValueExtensions
Animation7TypeValueExtensions
AnimationDirectionValueExtensions
AppliedRotorPolarityValueExtensions
BridgeOutputValueExtensions
BrushedMotorWiringValueExtensions
ConnectedMotorValueExtensions
ControlModeValueExtensions
DeviceEnableValueExtensions
DiffPIDOutput_PIDOutputModeValueExtensions
DiffPIDRefPIDErr_ClosedLoopModeValueExtensions
DiffPIDRefSlopeECUTime_ClosedLoopModeValueExtensions
DifferentialControlModeValueExtensions
DifferentialSensorSourceValueExtensions
Enable5VRailValueExtensions
ExternalFeedbackSensorSourceValueExtensions
ExternalMotorTempStatusValueExtensions
FeedbackSensorSourceValueExtensions
ForwardLimitSourceValueExtensions
ForwardLimitTypeValueExtensions
ForwardLimitValueExtensions
FrcLockValueExtensions
GainSchedBehaviorValueExtensions
GainSchedKpBehaviorValueExtensions
GravityTypeValueExtensions
InvertedValueExtensions
IsPROLicensedValueExtensions
LarsonBounceValueExtensions
Led1OffColorValueExtensions
Led1OnColorValueExtensions
Led2OffColorValueExtensions
Led2OnColorValueExtensions
Licensing_IsSeasonPassedValueExtensions
LossOfSignalBehaviorValueExtensions
MagnetHealthValueExtensions
MeasurementHealthValueExtensions
MotorAlignmentValueExtensions
MotorArrangementValueExtensions
MotorOutputStatusValueExtensions
NeutralModeValueExtensions
PIDOutput_PIDOutputModeValueExtensions
PIDRefPIDErr_ClosedLoopModeValueExtensions
PIDRefSlopeECUTime_ClosedLoopModeValueExtensions
ReverseLimitSourceValueExtensions
ReverseLimitTypeValueExtensions
ReverseLimitValueExtensions
RobotEnableValueExtensions
S1CloseStateValueExtensions
S1FloatStateValueExtensions
S1StateValueExtensions
S2CloseStateValueExtensions
S2FloatStateValueExtensions
S2StateValueExtensions
SensorDirectionValueExtensions
SensorPhaseValueExtensions
StaticFeedforwardSignValueExtensions
StatusLedWhenActiveValueExtensions
StripTypeValueExtensions
System_StateValueExtensions
TempSensorRequiredValueExtensions
UpdateModeValueExtensions
VBatOutputModeValueExtensions

Structs

RGBWColor

Represents an RGBW color that can be applied to an LED.

Enums

AdvancedHallSupportValue

Requires Phoenix Pro; Improves commutation and velocity measurement for motors with hall sensors. Talon can use advanced features to improve commutation and velocity measurement when using a motor with hall sensors. This can improve peak efficiency by as high as 2% and reduce noise in the measured velocity.

Animation0TypeValue

The type of animation running in slot 0 of the CANdle.

Animation1TypeValue

The type of animation running in slot 1 of the CANdle.

Animation2TypeValue

The type of animation running in slot 2 of the CANdle.

Animation3TypeValue

The type of animation running in slot 3 of the CANdle.

Animation4TypeValue

The type of animation running in slot 4 of the CANdle.

Animation5TypeValue

The type of animation running in slot 5 of the CANdle.

Animation6TypeValue

The type of animation running in slot 6 of the CANdle.

Animation7TypeValue

The type of animation running in slot 7 of the CANdle.

AnimationDirectionValue

Direction of the animation.

AppliedRotorPolarityValue

The applied rotor polarity as seen from the front of the motor. This typically is determined by the Inverted config, but can be overridden if using Follower features.

BridgeOutputValue

The applied output of the bridge.

BrushedMotorWiringValue

If a brushed motor is selected with Motor Arrangement, this config determines which of three leads to use.

ConnectedMotorValue

The type of motor attached to the Talon.

This can be used to determine what motor is attached to the Talon FX. Return will be "Unknown" if firmware is too old or device is not present.
ControlModeValue

The active control mode of the motor controller.

DeviceEnableValue

Whether the device is enabled.

DiffPIDOutput_PIDOutputModeValue

The output mode of the differential PID controller.

DiffPIDRefPIDErr_ClosedLoopModeValue

Whether the closed-loop is running on position or velocity.

DiffPIDRefSlopeECUTime_ClosedLoopModeValue

Whether the closed-loop is running on position or velocity.

DifferentialControlModeValue

The active control mode of the differential controller.

DifferentialSensorSourceValue

Choose what sensor source is used for differential control of a mechanism. The default is Disabled. All other options require setting the DifferentialTalonFXSensorID, as the average of this Talon FX's sensor and the remote TalonFX's sensor is used for the differential controller's primary targets.

Choose RemoteTalonFX_HalfDiff to use another TalonFX on the same CAN bus. Talon FX will update its differential position and velocity whenever the remote TalonFX publishes its information on CAN bus. The differential controller will use half of the difference between this TalonFX's sensor and the remote Talon FX's sensor for the differential component of the output.

Choose RemotePigeon2Yaw, RemotePigeon2Pitch, and RemotePigeon2Roll to use another Pigeon2 on the same CAN bus (this also requires setting DifferentialRemoteSensorID). Talon FX will update its differential position to match the selected value whenever Pigeon2 publishes its information on CAN bus. Note that the Talon FX differential position will be in rotations and not degrees.

Choose RemoteCANcoder to use another CANcoder on the same CAN bus (this also requires setting DifferentialRemoteSensorID). Talon FX will update its differential position and velocity to match the CANcoder whenever CANcoder publishes its information on CAN bus.
Enable5VRailValue

Whether the 5V rail is enabled. Disabling the 5V rail will also turn off the onboard LEDs.

ExternalFeedbackSensorSourceValue

Choose what sensor source is reported via API and used by closed-loop and limit features. The default is Commutation, which uses the external sensor used for motor commutation.

Choose Remote* to use another sensor on the same CAN bus (this also requires setting FeedbackRemoteSensorID). Talon will update its position and velocity whenever the remote sensor publishes its information on CAN bus, and the Talon commutation sensor will not be used.

Choose Fused* (requires Phoenix Pro) and Talon will fuse another sensor's information with the commutation sensor, which provides the best possible position and velocity for accuracy and bandwidth (this also requires setting FeedbackRemoteSensorID). This was developed for applications such as swerve-azimuth.

Choose Sync* (requires Phoenix Pro) and Talon will synchronize its commutation sensor position against another sensor, then continue to use the rotor sensor for closed loop control (this also requires setting FeedbackRemoteSensorID). The Talon will report if its internal position differs significantly from the reported remote sensor position. This was developed for mechanisms where there is a risk of the sensor failing in such a way that it reports a position that does not match the mechanism, such as the sensor mounting assembly breaking off.

Choose RemotePigeon2Yaw, RemotePigeon2Pitch, and RemotePigeon2Roll to use another Pigeon2 on the same CAN bus (this also requires setting FeedbackRemoteSensorID). Talon will update its position to match the selected value whenever Pigeon2 publishes its information on CAN bus. Note that the Talon position will be in rotations and not degrees.

Choose Quadrature to use a quadrature encoder directly attached to the Talon data port. This provides velocity and relative position measurements.

Choose PulseWidth to use a pulse-width encoder directly attached to the Talon data port. This provides velocity and absolute position measurements.

Note: When the feedback source is changed to Fused* or Sync*, the Talon needs a period of time to fuse before sensor-based (soft-limit, closed loop, etc.) features are used. This period of time is determined by the update frequency of the remote sensor's Position signal.
ExternalMotorTempStatusValue

Status of the temperature sensor of the external motor.

FeedbackSensorSourceValue

Choose what sensor source is reported via API and used by closed-loop and limit features. The default is RotorSensor, which uses the internal rotor sensor in the Talon.

Choose Remote* to use another sensor on the same CAN bus (this also requires setting FeedbackRemoteSensorID). Talon will update its position and velocity whenever the remote sensor publishes its information on CAN bus, and the Talon internal rotor will not be used.

Choose Fused* (requires Phoenix Pro) and Talon will fuse another sensor's information with the internal rotor, which provides the best possible position and velocity for accuracy and bandwidth (this also requires setting FeedbackRemoteSensorID). This was developed for applications such as swerve-azimuth.

Choose Sync* (requires Phoenix Pro) and Talon will synchronize its internal rotor position against another sensor, then continue to use the rotor sensor for closed loop control (this also requires setting FeedbackRemoteSensorID). The Talon will report if its internal position differs significantly from the reported remote sensor position. This was developed for mechanisms where there is a risk of the sensor failing in such a way that it reports a position that does not match the mechanism, such as the sensor mounting assembly breaking off.

Choose RemotePigeon2Yaw, RemotePigeon2Pitch, and RemotePigeon2Roll to use another Pigeon2 on the same CAN bus (this also requires setting FeedbackRemoteSensorID). Talon will update its position to match the selected value whenever Pigeon2 publishes its information on CAN bus. Note that the Talon position will be in rotations and not degrees.

Note: When the feedback source is changed to Fused* or Sync*, the Talon needs a period of time to fuse before sensor-based (soft-limit, closed loop, etc.) features are used. This period of time is determined by the update frequency of the remote sensor's Position signal.
ForwardLimitSourceValue

Determines where to poll the forward limit switch. This defaults to the forward limit switch pin on the limit switch connector.

Choose RemoteTalonFX to use the forward limit switch attached to another Talon FX on the same CAN bus (this also requires setting ForwardLimitRemoteSensorID).

Choose RemoteCANifier to use the forward limit switch attached to another CANifier on the same CAN bus (this also requires setting ForwardLimitRemoteSensorID).

Choose RemoteCANcoder to use another CANcoder on the same CAN bus (this also requires setting ForwardLimitRemoteSensorID). The forward limit will assert when the CANcoder magnet strength changes from BAD (red) to ADEQUATE (orange) or GOOD (green).
ForwardLimitTypeValue

Determines if the forward limit switch is normally-open (default) or normally-closed.

ForwardLimitValue

Forward Limit Pin.

FrcLockValue

Whether device is locked by FRC.

GainSchedBehaviorValue

The behavior of the gain scheduler on this slot. This specifies which gains to use while within the configured GainSchedErrorThreshold. The default is to continue using the specified slot.

Gain scheduling will not take effect when running velocity closed-loop controls.
GainSchedKpBehaviorValue

The behavior of kP output as the error crosses the GainSchedErrorThreshold during gain scheduling. The output of kP can be adjusted to maintain continuity in output, or it can be left discontinuous.

GravityTypeValue

Gravity feedforward/feedback type.

This determines the type of the gravity feedforward/feedback.

Choose Elevator_Static for systems where the gravity feedforward is constant, such as an elevator. The gravity feedforward output will always have the same sign.

Choose Arm_Cosine for systems where the gravity feedback is dependent on the angular position of the mechanism, such as an arm. The gravity feedback output will vary depending on the mechanism angular position. Note that the sensor offset and ratios must be configured so that the sensor reports a position of 0 when the mechanism is horizonal (parallel to the ground), and the reported sensor position is 1:1 with the mechanism.
InvertedValue

Invert state of the device as seen from the front of the motor.

IsPROLicensedValue

Whether the device is Pro licensed.

LarsonBounceValue

The behavior of the larson animation pocket of light when it reaches the end of the strip.

Led1OffColorValue

The Color of LED1 when it's "Off".

Led1OnColorValue

The Color of LED1 when it's "On".

Led2OffColorValue

The Color of LED2 when it's "Off".

Led2OnColorValue

The Color of LED2 when it's "On".

Licensing_IsSeasonPassedValue

Whether the device is Season Pass licensed.

LossOfSignalBehaviorValue

The behavior of the LEDs when the control signal is lost.

MagnetHealthValue

Magnet health as measured by CANcoder.

Red indicates too close or too far, Orange is adequate but with reduced accuracy, green is ideal. Invalid means the accuracy cannot be determined.
MeasurementHealthValue

Health of the distance measurement.

MotorAlignmentValue

The relationship between two motors in a mechanism. Depending on hardware setup, one motor may be inverted relative to the other motor.

MotorArrangementValue

Selects the motor and motor connections used with Talon.

This setting determines what kind of motor and sensors are used with the Talon. This also determines what signals are used on the JST and Gadgeteer port.

Motor drive will not function correctly if this setting does not match the physical setup.
MotorOutputStatusValue

Assess the status of the motor output with respect to load and supply.

This routine can be used to determine the general status of motor commutation.
NeutralModeValue

The state of the motor controller bridge when output is neutral or disabled.

PIDOutput_PIDOutputModeValue

The output mode of the PID controller.

PIDRefPIDErr_ClosedLoopModeValue

Whether the closed-loop is running on position or velocity.

PIDRefSlopeECUTime_ClosedLoopModeValue

Whether the closed-loop is running on position or velocity.

ReverseLimitSourceValue

Determines where to poll the reverse limit switch. This defaults to the reverse limit switch pin on the limit switch connector.

Choose RemoteTalonFX to use the reverse limit switch attached to another Talon FX on the same CAN bus (this also requires setting ReverseLimitRemoteSensorID).

Choose RemoteCANifier to use the reverse limit switch attached to another CANifier on the same CAN bus (this also requires setting ReverseLimitRemoteSensorID).

Choose RemoteCANcoder to use another CANcoder on the same CAN bus (this also requires setting ReverseLimitRemoteSensorID). The reverse limit will assert when the CANcoder magnet strength changes from BAD (red) to ADEQUATE (orange) or GOOD (green).
ReverseLimitTypeValue

Determines if the reverse limit switch is normally-open (default) or normally-closed.

ReverseLimitValue

Reverse Limit Pin.

RobotEnableValue

Whether the robot is enabled.

S1CloseStateValue

What value the Signal 1 input (S1IN) needs to be for the CTR Electronics' CANdi™ to detect as Closed.

Devices using the S1 input as a remote limit switch will treat the switch as closed when the S1 input is this state.
S1FloatStateValue

The floating state of the Signal 1 input (S1IN).

S1StateValue

State of the Signal 1 input (S1IN).

S2CloseStateValue

What value the Signal 2 input (S2IN) needs to be for the CTR Electronics' CANdi™ to detect as Closed.

Devices using the S2 input as a remote limit switch will treat the switch as closed when the S2 input is this state.
S2FloatStateValue

The floating state of the Signal 2 input (S2IN).

S2StateValue

State of the Signal 2 input (S2IN).

SensorDirectionValue

Direction of the sensor to determine positive rotation, as seen facing the LED side of the CANcoder.

SensorPhaseValue

The relationship between the motor controlled by a Talon and the external sensor connected to the data port. This does not affect the commutation sensor or remote sensors.

To determine the sensor phase, set this config to Aligned and drive the motor with positive output. If the reported sensor velocity is positive, then the phase is Aligned. If the reported sensor velocity is negative, then the phase is Opposed.

The sensor direction is automatically inverted along with motor invert, so the sensor phase does not need to be changed when motor invert changes.
StaticFeedforwardSignValue

Static feedforward sign during position closed loop.

This determines the sign of the applied kS during position closed-loop modes. The default behavior uses the velocity reference sign. This works well with velocity closed loop, Motion Magic® controls, and position closed loop when velocity reference is specified (motion profiling).

However, when using position closed loop with zero velocity reference (no motion profiling), the application may want to apply static feedforward based on the sign of closed loop error instead. When doing so, we recommend using the minimal amount of kS, otherwise the motor output may dither when closed loop error is near zero.
StatusLedWhenActiveValue

Whether the Status LED is enabled when the CANdle is actively being controlled.

StripTypeValue

The type of LEDs that are being controlled.

System_StateValue

System state of the device.

TempSensorRequiredValue

Whether a temperature sensor should be required for motor control. This configuration is ignored in FRC environments and defaults to Required.

UpdateModeValue

Update mode of the CANrange. The CANrange supports short-range and long-range detection at various update frequencies.

VBatOutputModeValue

The behavior of the VBat output. CANdle supports modulating VBat output for single-color LED strips.