15#include <units/angle.h>
16#include <units/angular_acceleration.h>
17#include <units/angular_jerk.h>
18#include <units/angular_velocity.h>
19#include <units/current.h>
20#include <units/dimensionless.h>
21#include <units/frequency.h>
22#include <units/length.h>
23#include <units/voltage.h>
31namespace hardware {
namespace core {
class CoreCANcoder; } }
32namespace hardware {
namespace core {
class CoreCANdi; } }
33namespace hardware {
namespace core {
class CoreTalonFX; } }
34namespace hardware {
namespace core {
class CoreCANrange; } }
35namespace configs {
class SlotConfigs; }
204 std::stringstream ss;
205 ss <<
"Config Group: MagnetSensor" << std::endl;
207 ss <<
" MagnetOffset: " <<
MagnetOffset.to<
double>() <<
" rotations" << std::endl;
214 std::stringstream ss;
224 const char *string_c_str = to_deserialize.c_str();
225 size_t string_length = to_deserialize.length();
231 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
342 std::stringstream ss;
343 ss <<
"Config Group: MountPose" << std::endl;
344 ss <<
" MountPoseYaw: " <<
MountPoseYaw.to<
double>() <<
" deg" << std::endl;
345 ss <<
" MountPosePitch: " <<
MountPosePitch.to<
double>() <<
" deg" << std::endl;
346 ss <<
" MountPoseRoll: " <<
MountPoseRoll.to<
double>() <<
" deg" << std::endl;
352 std::stringstream ss;
362 const char *string_c_str = to_deserialize.c_str();
363 size_t string_length = to_deserialize.length();
484 std::stringstream ss;
485 ss <<
"Config Group: GyroTrim" << std::endl;
486 ss <<
" GyroScalarX: " <<
GyroScalarX.to<
double>() <<
" deg per rotation" << std::endl;
487 ss <<
" GyroScalarY: " <<
GyroScalarY.to<
double>() <<
" deg per rotation" << std::endl;
488 ss <<
" GyroScalarZ: " <<
GyroScalarZ.to<
double>() <<
" deg per rotation" << std::endl;
494 std::stringstream ss;
504 const char *string_c_str = to_deserialize.c_str();
505 size_t string_length = to_deserialize.length();
508 GyroScalarX = units::dimensionless::scalar_t{GyroScalarXVal};
511 GyroScalarY = units::dimensionless::scalar_t{GyroScalarYVal};
514 GyroScalarZ = units::dimensionless::scalar_t{GyroScalarZVal};
610 std::stringstream ss;
611 ss <<
"Config Group: Pigeon2Features" << std::endl;
620 std::stringstream ss;
630 const char *string_c_str = to_deserialize.c_str();
631 size_t string_length = to_deserialize.length();
834 std::stringstream ss;
835 ss <<
"Config Group: MotorOutput" << std::endl;
836 ss <<
" Inverted: " <<
Inverted << std::endl;
837 ss <<
" NeutralMode: " <<
NeutralMode << std::endl;
839 ss <<
" PeakForwardDutyCycle: " <<
PeakForwardDutyCycle.to<
double>() <<
" fractional" << std::endl;
840 ss <<
" PeakReverseDutyCycle: " <<
PeakReverseDutyCycle.to<
double>() <<
" fractional" << std::endl;
847 std::stringstream ss;
860 const char *string_c_str = to_deserialize.c_str();
861 size_t string_length = to_deserialize.length();
1138 std::stringstream ss;
1139 ss <<
"Config Group: CurrentLimits" << std::endl;
1140 ss <<
" StatorCurrentLimit: " <<
StatorCurrentLimit.to<
double>() <<
" A" << std::endl;
1142 ss <<
" SupplyCurrentLimit: " <<
SupplyCurrentLimit.to<
double>() <<
" A" << std::endl;
1151 std::stringstream ss;
1164 const char *string_c_str = to_deserialize.c_str();
1165 size_t string_length = to_deserialize.length();
1298 std::stringstream ss;
1299 ss <<
"Config Group: Voltage" << std::endl;
1301 ss <<
" PeakForwardVoltage: " <<
PeakForwardVoltage.to<
double>() <<
" V" << std::endl;
1302 ss <<
" PeakReverseVoltage: " <<
PeakReverseVoltage.to<
double>() <<
" V" << std::endl;
1308 std::stringstream ss;
1318 const char *string_c_str = to_deserialize.c_str();
1319 size_t string_length = to_deserialize.length();
1442 std::stringstream ss;
1443 ss <<
"Config Group: TorqueCurrent" << std::endl;
1452 std::stringstream ss;
1462 const char *string_c_str = to_deserialize.c_str();
1463 size_t string_length = to_deserialize.length();
1950 std::stringstream ss;
1951 ss <<
"Config Group: Feedback" << std::endl;
1952 ss <<
" FeedbackRotorOffset: " <<
FeedbackRotorOffset.to<
double>() <<
" rotations" << std::endl;
1954 ss <<
" RotorToSensorRatio: " <<
RotorToSensorRatio.to<
double>() <<
" scalar" << std::endl;
1963 std::stringstream ss;
1976 const char *string_c_str = to_deserialize.c_str();
1977 size_t string_length = to_deserialize.length();
2668 std::stringstream ss;
2669 ss <<
"Config Group: ExternalFeedback" << std::endl;
2671 ss <<
" RotorToSensorRatio: " <<
RotorToSensorRatio.to<
double>() <<
" scalar" << std::endl;
2674 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
2676 ss <<
" SensorPhase: " <<
SensorPhase << std::endl;
2684 std::stringstream ss;
2700 const char *string_c_str = to_deserialize.c_str();
2701 size_t string_length = to_deserialize.length();
2719 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
2875 std::stringstream ss;
2876 ss <<
"Config Group: DifferentialSensors" << std::endl;
2885 std::stringstream ss;
2895 const char *string_c_str = to_deserialize.c_str();
2896 size_t string_length = to_deserialize.length();
3014 std::stringstream ss;
3015 ss <<
"Config Group: DifferentialConstants" << std::endl;
3024 std::stringstream ss;
3034 const char *string_c_str = to_deserialize.c_str();
3035 size_t string_length = to_deserialize.length();
3181 std::stringstream ss;
3182 ss <<
"Config Group: OpenLoopRamps" << std::endl;
3191 std::stringstream ss;
3201 const char *string_c_str = to_deserialize.c_str();
3202 size_t string_length = to_deserialize.length();
3204 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_DutyCycleOpenLoopRampPeriod, string_c_str, string_length, &DutyCycleOpenLoopRampPeriodVal);
3374 std::stringstream ss;
3375 ss <<
"Config Group: ClosedLoopRamps" << std::endl;
3384 std::stringstream ss;
3394 const char *string_c_str = to_deserialize.c_str();
3395 size_t string_length = to_deserialize.length();
3397 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_DutyCycleClosedLoopRampPeriod, string_c_str, string_length, &DutyCycleClosedLoopRampPeriodVal);
3400 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_VoltageClosedLoopRampPeriod, string_c_str, string_length, &VoltageClosedLoopRampPeriodVal);
3926 std::stringstream ss;
3927 ss <<
"Config Group: HardwareLimitSwitch" << std::endl;
3945 std::stringstream ss;
3964 const char *string_c_str = to_deserialize.c_str();
3965 size_t string_length = to_deserialize.length();
3969 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_ForwardLimitAutosetPosValue, string_c_str, string_length, &ForwardLimitAutosetPositionValueVal);
3977 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_ReverseLimitAutosetPosValue, string_c_str, string_length, &ReverseLimitAutosetPositionValueVal);
4090 std::stringstream ss;
4091 ss <<
"Config Group: Audio" << std::endl;
4092 ss <<
" BeepOnBoot: " <<
BeepOnBoot << std::endl;
4100 std::stringstream ss;
4110 const char *string_c_str = to_deserialize.c_str();
4111 size_t string_length = to_deserialize.length();
4248 std::stringstream ss;
4249 ss <<
"Config Group: SoftwareLimitSwitch" << std::endl;
4259 std::stringstream ss;
4270 const char *string_c_str = to_deserialize.c_str();
4271 size_t string_length = to_deserialize.length();
4496 std::stringstream ss;
4497 ss <<
"Config Group: MotionMagic" << std::endl;
4500 ss <<
" MotionMagicJerk: " <<
MotionMagicJerk.to<
double>() <<
" rot per sec³" << std::endl;
4501 ss <<
" MotionMagicExpo_kV: " <<
MotionMagicExpo_kV.to<
double>() <<
" V/rps" << std::endl;
4502 ss <<
" MotionMagicExpo_kA: " <<
MotionMagicExpo_kA.to<
double>() <<
" V/rps²" << std::endl;
4508 std::stringstream ss;
4520 const char *string_c_str = to_deserialize.c_str();
4521 size_t string_length = to_deserialize.length();
4527 MotionMagicAcceleration = units::angular_acceleration::turns_per_second_squared_t{MotionMagicAccelerationVal};
4530 MotionMagicJerk = units::angular_jerk::turns_per_second_cubed_t{MotionMagicJerkVal};
4536 MotionMagicExpo_kA = ctre::unit::volts_per_turn_per_second_squared_t{MotionMagicExpo_kAVal};
4619 std::stringstream ss;
4620 ss <<
"Config Group: CustomParams" << std::endl;
4628 std::stringstream ss;
4637 const char *string_c_str = to_deserialize.c_str();
4638 size_t string_length = to_deserialize.length();
4698 std::stringstream ss;
4699 ss <<
"Config Group: ClosedLoopGeneral" << std::endl;
4706 std::stringstream ss;
4714 const char *string_c_str = to_deserialize.c_str();
4715 size_t string_length = to_deserialize.length();
4793 std::stringstream ss;
4794 ss <<
"Config Group: ToFParams" << std::endl;
4795 ss <<
" UpdateMode: " <<
UpdateMode << std::endl;
4796 ss <<
" UpdateFrequency: " <<
UpdateFrequency.to<
double>() <<
" Hz" << std::endl;
4802 std::stringstream ss;
4811 const char *string_c_str = to_deserialize.c_str();
4812 size_t string_length = to_deserialize.length();
4955 std::stringstream ss;
4956 ss <<
"Config Group: ProximityParams" << std::endl;
4957 ss <<
" ProximityThreshold: " <<
ProximityThreshold.to<
double>() <<
" m" << std::endl;
4965 std::stringstream ss;
4975 const char *string_c_str = to_deserialize.c_str();
4976 size_t string_length = to_deserialize.length();
4984 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::CANrange_MinSigStrengthForValidMeas, string_c_str, string_length, &MinSignalStrengthForValidMeasurementVal);
5162 std::stringstream ss;
5163 ss <<
"Config Group: FovParams" << std::endl;
5164 ss <<
" FOVCenterX: " <<
FOVCenterX.to<
double>() <<
" deg" << std::endl;
5165 ss <<
" FOVCenterY: " <<
FOVCenterY.to<
double>() <<
" deg" << std::endl;
5166 ss <<
" FOVRangeX: " <<
FOVRangeX.to<
double>() <<
" deg" << std::endl;
5167 ss <<
" FOVRangeY: " <<
FOVRangeY.to<
double>() <<
" deg" << std::endl;
5173 std::stringstream ss;
5184 const char *string_c_str = to_deserialize.c_str();
5185 size_t string_length = to_deserialize.length();
5186 double FOVCenterXVal =
FOVCenterX.to<
double>();
5188 FOVCenterX = units::angle::degree_t{FOVCenterXVal};
5189 double FOVCenterYVal =
FOVCenterY.to<
double>();
5191 FOVCenterY = units::angle::degree_t{FOVCenterYVal};
5192 double FOVRangeXVal =
FOVRangeX.to<
double>();
5194 FOVRangeX = units::angle::degree_t{FOVRangeXVal};
5195 double FOVRangeYVal =
FOVRangeY.to<
double>();
5197 FOVRangeY = units::angle::degree_t{FOVRangeYVal};
5306 std::stringstream ss;
5307 ss <<
"Config Group: Commutation" << std::endl;
5316 std::stringstream ss;
5326 const char *string_c_str = to_deserialize.c_str();
5327 size_t string_length = to_deserialize.length();
5453 std::stringstream ss;
5454 ss <<
"Config Group: DigitalInputs" << std::endl;
5464 std::stringstream ss;
5475 const char *string_c_str = to_deserialize.c_str();
5476 size_t string_length = to_deserialize.length();
5586 std::stringstream ss;
5587 ss <<
"Config Group: Quadrature" << std::endl;
5595 std::stringstream ss;
5604 const char *string_c_str = to_deserialize.c_str();
5605 size_t string_length = to_deserialize.length();
5771 std::stringstream ss;
5772 ss <<
"Config Group: PWM1" << std::endl;
5773 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
5781 std::stringstream ss;
5791 const char *string_c_str = to_deserialize.c_str();
5792 size_t string_length = to_deserialize.length();
5797 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_PWM1_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
5963 std::stringstream ss;
5964 ss <<
"Config Group: PWM2" << std::endl;
5965 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
5973 std::stringstream ss;
5983 const char *string_c_str = to_deserialize.c_str();
5984 size_t string_length = to_deserialize.length();
5989 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_PWM2_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
6023 units::dimensionless::scalar_t
kP = 0;
6041 units::dimensionless::scalar_t
kI = 0;
6060 units::dimensionless::scalar_t
kD = 0;
6082 units::dimensionless::scalar_t
kS = 0;
6098 units::dimensionless::scalar_t
kV = 0;
6115 units::dimensionless::scalar_t
kA = 0;
6129 units::dimensionless::scalar_t
kG = 0;
6191 kP = std::move(newKP);
6220 kI = std::move(newKI);
6250 kD = std::move(newKD);
6283 kS = std::move(newKS);
6310 kV = std::move(newKV);
6338 kA = std::move(newKA);
6363 kG = std::move(newKG);
6430 std::stringstream ss;
6431 ss <<
"Config Group: Slot0" << std::endl;
6432 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
6433 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
6434 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
6435 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
6436 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
6437 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
6438 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
6439 ss <<
" GravityType: " <<
GravityType << std::endl;
6446 std::stringstream ss;
6462 const char *string_c_str = to_deserialize.c_str();
6463 size_t string_length = to_deserialize.length();
6464 double kPVal =
kP.to<
double>();
6466 kP = units::dimensionless::scalar_t{kPVal};
6467 double kIVal =
kI.to<
double>();
6469 kI = units::dimensionless::scalar_t{kIVal};
6470 double kDVal =
kD.to<
double>();
6472 kD = units::dimensionless::scalar_t{kDVal};
6473 double kSVal =
kS.to<
double>();
6475 kS = units::dimensionless::scalar_t{kSVal};
6476 double kVVal =
kV.to<
double>();
6478 kV = units::dimensionless::scalar_t{kVVal};
6479 double kAVal =
kA.to<
double>();
6481 kA = units::dimensionless::scalar_t{kAVal};
6482 double kGVal =
kG.to<
double>();
6484 kG = units::dimensionless::scalar_t{kGVal};
6518 units::dimensionless::scalar_t
kP = 0;
6536 units::dimensionless::scalar_t
kI = 0;
6555 units::dimensionless::scalar_t
kD = 0;
6577 units::dimensionless::scalar_t
kS = 0;
6593 units::dimensionless::scalar_t
kV = 0;
6610 units::dimensionless::scalar_t
kA = 0;
6624 units::dimensionless::scalar_t
kG = 0;
6686 kP = std::move(newKP);
6715 kI = std::move(newKI);
6745 kD = std::move(newKD);
6778 kS = std::move(newKS);
6805 kV = std::move(newKV);
6833 kA = std::move(newKA);
6858 kG = std::move(newKG);
6925 std::stringstream ss;
6926 ss <<
"Config Group: Slot1" << std::endl;
6927 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
6928 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
6929 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
6930 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
6931 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
6932 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
6933 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
6934 ss <<
" GravityType: " <<
GravityType << std::endl;
6941 std::stringstream ss;
6957 const char *string_c_str = to_deserialize.c_str();
6958 size_t string_length = to_deserialize.length();
6959 double kPVal =
kP.to<
double>();
6961 kP = units::dimensionless::scalar_t{kPVal};
6962 double kIVal =
kI.to<
double>();
6964 kI = units::dimensionless::scalar_t{kIVal};
6965 double kDVal =
kD.to<
double>();
6967 kD = units::dimensionless::scalar_t{kDVal};
6968 double kSVal =
kS.to<
double>();
6970 kS = units::dimensionless::scalar_t{kSVal};
6971 double kVVal =
kV.to<
double>();
6973 kV = units::dimensionless::scalar_t{kVVal};
6974 double kAVal =
kA.to<
double>();
6976 kA = units::dimensionless::scalar_t{kAVal};
6977 double kGVal =
kG.to<
double>();
6979 kG = units::dimensionless::scalar_t{kGVal};
7013 units::dimensionless::scalar_t
kP = 0;
7031 units::dimensionless::scalar_t
kI = 0;
7050 units::dimensionless::scalar_t
kD = 0;
7072 units::dimensionless::scalar_t
kS = 0;
7088 units::dimensionless::scalar_t
kV = 0;
7105 units::dimensionless::scalar_t
kA = 0;
7119 units::dimensionless::scalar_t
kG = 0;
7181 kP = std::move(newKP);
7210 kI = std::move(newKI);
7240 kD = std::move(newKD);
7273 kS = std::move(newKS);
7300 kV = std::move(newKV);
7328 kA = std::move(newKA);
7353 kG = std::move(newKG);
7420 std::stringstream ss;
7421 ss <<
"Config Group: Slot2" << std::endl;
7422 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
7423 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
7424 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
7425 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
7426 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
7427 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
7428 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
7429 ss <<
" GravityType: " <<
GravityType << std::endl;
7436 std::stringstream ss;
7452 const char *string_c_str = to_deserialize.c_str();
7453 size_t string_length = to_deserialize.length();
7454 double kPVal =
kP.to<
double>();
7456 kP = units::dimensionless::scalar_t{kPVal};
7457 double kIVal =
kI.to<
double>();
7459 kI = units::dimensionless::scalar_t{kIVal};
7460 double kDVal =
kD.to<
double>();
7462 kD = units::dimensionless::scalar_t{kDVal};
7463 double kSVal =
kS.to<
double>();
7465 kS = units::dimensionless::scalar_t{kSVal};
7466 double kVVal =
kV.to<
double>();
7468 kV = units::dimensionless::scalar_t{kVVal};
7469 double kAVal =
kA.to<
double>();
7471 kA = units::dimensionless::scalar_t{kAVal};
7472 double kGVal =
kG.to<
double>();
7474 kG = units::dimensionless::scalar_t{kGVal};
7499 int StaticFeedforwardSignSpn;
7502 static inline std::map<int, SlotSpns>
const genericMap{
7504 ctre::phoenix6::spns::SpnValue::Slot0_kP,
7505 ctre::phoenix6::spns::SpnValue::Slot0_kI,
7506 ctre::phoenix6::spns::SpnValue::Slot0_kD,
7507 ctre::phoenix6::spns::SpnValue::Slot0_kS,
7508 ctre::phoenix6::spns::SpnValue::Slot0_kV,
7509 ctre::phoenix6::spns::SpnValue::Slot0_kA,
7510 ctre::phoenix6::spns::SpnValue::Slot0_kG,
7511 ctre::phoenix6::spns::SpnValue::Slot0_kG_Type,
7512 ctre::phoenix6::spns::SpnValue::Slot0_kS_Sign,
7516 ctre::phoenix6::spns::SpnValue::Slot1_kP,
7517 ctre::phoenix6::spns::SpnValue::Slot1_kI,
7518 ctre::phoenix6::spns::SpnValue::Slot1_kD,
7519 ctre::phoenix6::spns::SpnValue::Slot1_kS,
7520 ctre::phoenix6::spns::SpnValue::Slot1_kV,
7521 ctre::phoenix6::spns::SpnValue::Slot1_kA,
7522 ctre::phoenix6::spns::SpnValue::Slot1_kG,
7523 ctre::phoenix6::spns::SpnValue::Slot1_kG_Type,
7524 ctre::phoenix6::spns::SpnValue::Slot1_kS_Sign,
7528 ctre::phoenix6::spns::SpnValue::Slot2_kP,
7529 ctre::phoenix6::spns::SpnValue::Slot2_kI,
7530 ctre::phoenix6::spns::SpnValue::Slot2_kD,
7531 ctre::phoenix6::spns::SpnValue::Slot2_kS,
7532 ctre::phoenix6::spns::SpnValue::Slot2_kV,
7533 ctre::phoenix6::spns::SpnValue::Slot2_kA,
7534 ctre::phoenix6::spns::SpnValue::Slot2_kG,
7535 ctre::phoenix6::spns::SpnValue::Slot2_kG_Type,
7536 ctre::phoenix6::spns::SpnValue::Slot2_kS_Sign,
7559 units::dimensionless::scalar_t
kP = 0;
7577 units::dimensionless::scalar_t
kI = 0;
7596 units::dimensionless::scalar_t
kD = 0;
7618 units::dimensionless::scalar_t
kS = 0;
7634 units::dimensionless::scalar_t
kV = 0;
7651 units::dimensionless::scalar_t
kA = 0;
7665 units::dimensionless::scalar_t
kG = 0;
7727 kP = std::move(newKP);
7756 kI = std::move(newKI);
7786 kD = std::move(newKD);
7819 kS = std::move(newKS);
7846 kV = std::move(newKV);
7874 kA = std::move(newKA);
7899 kG = std::move(newKG);
7974 std::stringstream ss;
7975 ss <<
"Config Group: Slot" << std::endl;
7976 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
7977 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
7978 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
7979 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
7980 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
7981 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
7982 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
7983 ss <<
" GravityType: " <<
GravityType << std::endl;
7990 std::stringstream ss;
7991 SlotSpns currentSpns = genericMap.at(
SlotNumber);
8007 const char *string_c_str = to_deserialize.c_str();
8008 size_t string_length = to_deserialize.length();
8009 SlotSpns currentSpns = genericMap.at(
SlotNumber);
8010 double kPVal =
kP.to<
double>();
8012 kP = units::dimensionless::scalar_t{kPVal};
8013 double kIVal =
kI.to<
double>();
8015 kI = units::dimensionless::scalar_t{kIVal};
8016 double kDVal =
kD.to<
double>();
8018 kD = units::dimensionless::scalar_t{kDVal};
8019 double kSVal =
kS.to<
double>();
8021 kS = units::dimensionless::scalar_t{kSVal};
8022 double kVVal =
kV.to<
double>();
8024 kV = units::dimensionless::scalar_t{kVVal};
8025 double kAVal =
kA.to<
double>();
8027 kA = units::dimensionless::scalar_t{kAVal};
8028 double kGVal =
kG.to<
double>();
8030 kG = units::dimensionless::scalar_t{kGVal};
ii that the Software will be uninterrupted or error free
Definition CTRE_LICENSE.txt:251
CTREXPORT int c_ctre_phoenix6_deserialize_double(int spn, const char *str, uint32_t strlen, double *val)
CTREXPORT int c_ctre_phoenix6_serialize_int(int spn, int value, char **str)
CTREXPORT int c_ctre_phoenix6_serialize_bool(int spn, bool value, char **str)
CTREXPORT int c_ctre_phoenix6_deserialize_bool(int spn, const char *str, uint32_t strlen, bool *val)
CTREXPORT int c_ctre_phoenix6_deserialize_int(int spn, const char *str, uint32_t strlen, int *val)
CTREXPORT int c_ctre_phoenix6_serialize_double(int spn, double value, char **str)
Definition Serializable.hpp:15
Configs that affect audible components of the device.
Definition Configs.hpp:3993
bool BeepOnConfig
If true, the TalonFX will beep during configuration API calls if device is disabled.
Definition Configs.hpp:4014
bool AllowMusicDurDisable
If true, the TalonFX will allow Orchestra and MusicTone requests during disabled state.
Definition Configs.hpp:4024
constexpr AudioConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:4098
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4108
std::string ToString() const override
Definition Configs.hpp:4088
constexpr AudioConfigs & WithBeepOnBoot(bool newBeepOnBoot)
Modifies this configuration's BeepOnBoot parameter and returns itself for method-chaining and easier ...
Definition Configs.hpp:4039
constexpr AudioConfigs & WithAllowMusicDurDisable(bool newAllowMusicDurDisable)
Modifies this configuration's AllowMusicDurDisable parameter and returns itself for method-chaining a...
Definition Configs.hpp:4080
constexpr AudioConfigs & WithBeepOnConfig(bool newBeepOnConfig)
Modifies this configuration's BeepOnConfig parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4059
bool BeepOnBoot
If true, the TalonFX will beep during boot-up.
Definition Configs.hpp:4005
Configs that affect general behavior during closed-looping.
Definition Configs.hpp:4652
bool ContinuousWrap
Wrap position error within [-0.5,+0.5) mechanism rotations.
Definition Configs.hpp:4668
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4712
constexpr ClosedLoopGeneralConfigs & WithContinuousWrap(bool newContinuousWrap)
Modifies this configuration's ContinuousWrap parameter and returns itself for method-chaining and eas...
Definition Configs.hpp:4688
std::string ToString() const override
Definition Configs.hpp:4696
std::string Serialize() const override
Definition Configs.hpp:4704
constexpr ClosedLoopGeneralConfigs()=default
Configs that affect the closed-loop control of this motor controller.
Definition Configs.hpp:3224
constexpr ClosedLoopRampsConfigs & WithDutyCycleClosedLoopRampPeriod(units::time::second_t newDutyCycleClosedLoopRampPeriod)
Modifies this configuration's DutyCycleClosedLoopRampPeriod parameter and returns itself for method-c...
Definition Configs.hpp:3305
std::string Serialize() const override
Definition Configs.hpp:3382
units::time::second_t DutyCycleClosedLoopRampPeriod
If non-zero, this determines how much time to ramp from 0% output to 100% during the closed-loop Duty...
Definition Configs.hpp:3244
constexpr ClosedLoopRampsConfigs & WithTorqueClosedLoopRampPeriod(units::time::second_t newTorqueClosedLoopRampPeriod)
Modifies this configuration's TorqueClosedLoopRampPeriod parameter and returns itself for method-chai...
Definition Configs.hpp:3364
constexpr ClosedLoopRampsConfigs()=default
constexpr ClosedLoopRampsConfigs & WithVoltageClosedLoopRampPeriod(units::time::second_t newVoltageClosedLoopRampPeriod)
Modifies this configuration's VoltageClosedLoopRampPeriod parameter and returns itself for method-cha...
Definition Configs.hpp:3333
units::time::second_t TorqueClosedLoopRampPeriod
If non-zero, this determines how much time to ramp from 0A output to 300A during the closed-loop Torq...
Definition Configs.hpp:3281
units::time::second_t VoltageClosedLoopRampPeriod
If non-zero, this determines how much time to ramp from 0V output to 12V during the closed-loop Volta...
Definition Configs.hpp:3261
std::string ToString() const override
Definition Configs.hpp:3372
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3392
Configs that determine motor selection and commutation.
Definition Configs.hpp:5210
std::string ToString() const override
Definition Configs.hpp:5304
constexpr CommutationConfigs & WithAdvancedHallSupport(signals::AdvancedHallSupportValue newAdvancedHallSupport)
Modifies this configuration's AdvancedHallSupport parameter and returns itself for method-chaining an...
Definition Configs.hpp:5256
signals::BrushedMotorWiringValue BrushedMotorWiring
If a brushed motor is selected with Motor Arrangement, this config determines which of three leads to...
Definition Configs.hpp:5240
signals::AdvancedHallSupportValue AdvancedHallSupport
Requires Phoenix Pro; Improves commutation and velocity measurement for motors with hall sensors.
Definition Configs.hpp:5222
std::string Serialize() const override
Definition Configs.hpp:5314
signals::MotorArrangementValue MotorArrangement
Selects the motor and motor connections used with Talon.
Definition Configs.hpp:5234
constexpr CommutationConfigs()=default
constexpr CommutationConfigs & WithBrushedMotorWiring(signals::BrushedMotorWiringValue newBrushedMotorWiring)
Modifies this configuration's BrushedMotorWiring parameter and returns itself for method-chaining and...
Definition Configs.hpp:5296
constexpr CommutationConfigs & WithMotorArrangement(signals::MotorArrangementValue newMotorArrangement)
Modifies this configuration's MotorArrangement parameter and returns itself for method-chaining and e...
Definition Configs.hpp:5279
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5324
Configs that directly affect current limiting features.
Definition Configs.hpp:888
bool StatorCurrentLimitEnable
Enable motor stator current limiting.
Definition Configs.hpp:924
std::string Serialize() const override
Definition Configs.hpp:1149
constexpr CurrentLimitsConfigs & WithSupplyCurrentLimitEnable(bool newSupplyCurrentLimitEnable)
Modifies this configuration's SupplyCurrentLimitEnable parameter and returns itself for method-chaini...
Definition Configs.hpp:1081
constexpr CurrentLimitsConfigs & WithSupplyCurrentLimit(units::current::ampere_t newSupplyCurrentLimit)
Modifies this configuration's SupplyCurrentLimit parameter and returns itself for method-chaining and...
Definition Configs.hpp:1064
units::current::ampere_t SupplyCurrentLimit
The absolute maximum amount of supply current allowed.
Definition Configs.hpp:948
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1162
units::current::ampere_t StatorCurrentLimit
The amount of current allowed in the motor (motoring and regen current).
Definition Configs.hpp:918
constexpr CurrentLimitsConfigs & WithSupplyCurrentLowerTime(units::time::second_t newSupplyCurrentLowerTime)
Modifies this configuration's SupplyCurrentLowerTime parameter and returns itself for method-chaining...
Definition Configs.hpp:1128
constexpr CurrentLimitsConfigs & WithSupplyCurrentLowerLimit(units::current::ampere_t newSupplyCurrentLowerLimit)
Modifies this configuration's SupplyCurrentLowerLimit parameter and returns itself for method-chainin...
Definition Configs.hpp:1106
constexpr CurrentLimitsConfigs()=default
constexpr CurrentLimitsConfigs & WithStatorCurrentLimit(units::current::ampere_t newStatorCurrentLimit)
Modifies this configuration's StatorCurrentLimit parameter and returns itself for method-chaining and...
Definition Configs.hpp:1012
units::current::ampere_t SupplyCurrentLowerLimit
The amount of supply current allowed after the regular SupplyCurrentLimit is active for longer than S...
Definition Configs.hpp:968
std::string ToString() const override
Definition Configs.hpp:1136
bool SupplyCurrentLimitEnable
Enable motor supply current limiting.
Definition Configs.hpp:954
constexpr CurrentLimitsConfigs & WithStatorCurrentLimitEnable(bool newStatorCurrentLimitEnable)
Modifies this configuration's StatorCurrentLimitEnable parameter and returns itself for method-chaini...
Definition Configs.hpp:1029
units::time::second_t SupplyCurrentLowerTime
Reduces supply current to the SupplyCurrentLowerLimit after limiting to SupplyCurrentLimit for this p...
Definition Configs.hpp:979
Custom Params.
Definition Configs.hpp:4548
std::string ToString() const override
Definition Configs.hpp:4617
int CustomParam0
Custom parameter 0.
Definition Configs.hpp:4561
std::string Serialize() const override
Definition Configs.hpp:4626
int CustomParam1
Custom parameter 1.
Definition Configs.hpp:4571
constexpr CustomParamsConfigs & WithCustomParam0(int newCustomParam0)
Modifies this configuration's CustomParam0 parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4588
constexpr CustomParamsConfigs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4635
constexpr CustomParamsConfigs & WithCustomParam1(int newCustomParam1)
Modifies this configuration's CustomParam1 parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4609
Configs related to constants used for differential control of a mechanism.
Definition Configs.hpp:2912
units::current::ampere_t PeakDifferentialTorqueCurrent
Maximum differential output during torque current based differential control modes.
Definition Configs.hpp:2945
std::string Serialize() const override
Definition Configs.hpp:3022
std::string ToString() const override
Definition Configs.hpp:3012
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3032
constexpr DifferentialConstantsConfigs & WithPeakDifferentialVoltage(units::voltage::volt_t newPeakDifferentialVoltage)
Modifies this configuration's PeakDifferentialVoltage parameter and returns itself for method-chainin...
Definition Configs.hpp:2983
constexpr DifferentialConstantsConfigs()=default
units::dimensionless::scalar_t PeakDifferentialDutyCycle
Maximum differential output during duty cycle based differential control modes.
Definition Configs.hpp:2925
constexpr DifferentialConstantsConfigs & WithPeakDifferentialTorqueCurrent(units::current::ampere_t newPeakDifferentialTorqueCurrent)
Modifies this configuration's PeakDifferentialTorqueCurrent parameter and returns itself for method-c...
Definition Configs.hpp:3004
constexpr DifferentialConstantsConfigs & WithPeakDifferentialDutyCycle(units::dimensionless::scalar_t newPeakDifferentialDutyCycle)
Modifies this configuration's PeakDifferentialDutyCycle parameter and returns itself for method-chain...
Definition Configs.hpp:2962
units::voltage::volt_t PeakDifferentialVoltage
Maximum differential output during voltage based differential control modes.
Definition Configs.hpp:2935
Configs related to sensors used for differential control of a mechanism.
Definition Configs.hpp:2733
constexpr DifferentialSensorsConfigs()=default
constexpr DifferentialSensorsConfigs & WithDifferentialTalonFXSensorID(int newDifferentialTalonFXSensorID)
Modifies this configuration's DifferentialTalonFXSensorID parameter and returns itself for method-cha...
Definition Configs.hpp:2843
constexpr DifferentialSensorsConfigs & WithDifferentialSensorSource(signals::DifferentialSensorSourceValue newDifferentialSensorSource)
Modifies this configuration's DifferentialSensorSource parameter and returns itself for method-chaini...
Definition Configs.hpp:2822
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2893
std::string Serialize() const override
Definition Configs.hpp:2883
std::string ToString() const override
Definition Configs.hpp:2873
signals::DifferentialSensorSourceValue DifferentialSensorSource
Choose what sensor source is used for differential control of a mechanism.
Definition Configs.hpp:2765
int DifferentialRemoteSensorID
Device ID of which remote sensor to use on the differential axis.
Definition Configs.hpp:2786
constexpr DifferentialSensorsConfigs & WithDifferentialRemoteSensorID(int newDifferentialRemoteSensorID)
Modifies this configuration's DifferentialRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:2865
int DifferentialTalonFXSensorID
Device ID of which remote Talon FX to use.
Definition Configs.hpp:2775
Configs that affect the external feedback sensor of this motor controller.
Definition Configs.hpp:2007
constexpr ExternalFeedbackConfigs & WithSensorPhase(signals::SensorPhaseValue newSensorPhase)
Modifies this configuration's SensorPhase parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:2422
units::dimensionless::scalar_t SensorToMechanismRatio
The ratio of sensor rotations to the mechanism's output, where a ratio greater than 1 is a reduction.
Definition Configs.hpp:2030
constexpr ExternalFeedbackConfigs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2698
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:2207
units::time::second_t VelocityFilterTimeConstant
The configurable time constant of the Kalman velocity filter.
Definition Configs.hpp:2072
constexpr ExternalFeedbackConfigs & WithVelocityFilterTimeConstant(units::time::second_t newVelocityFilterTimeConstant)
Modifies this configuration's VelocityFilterTimeConstant parameter and returns itself for method-chai...
Definition Configs.hpp:2309
ExternalFeedbackConfigs & WithSyncCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use SyncCANdi PWM 1 by passing in the CANdi object.
ExternalFeedbackConfigs & WithSyncCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use SyncCANcoder by passing in the CANcoder object.
signals::ExternalFeedbackSensorSourceValue ExternalFeedbackSensorSource
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition Configs.hpp:2136
units::dimensionless::scalar_t RotorToSensorRatio
The ratio of motor rotor rotations to remote sensor rotations, where a ratio greater than 1 is a redu...
Definition Configs.hpp:2047
ExternalFeedbackConfigs & WithFusedCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi PWM 2 by passing in the CANdi object...
ExternalFeedbackConfigs & WithRemoteCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi PWM 1 by passing in the CANdi objec...
constexpr ExternalFeedbackConfigs & WithQuadratureEdgesPerRotation(int newQuadratureEdgesPerRotation)
Modifies this configuration's QuadratureEdgesPerRotation parameter and returns itself for method-chai...
Definition Configs.hpp:2455
ExternalFeedbackConfigs & WithFusedCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi PWM 1 by passing in the CANdi object...
constexpr ExternalFeedbackConfigs & WithFeedbackRemoteSensorID(int newFeedbackRemoteSensorID)
Modifies this configuration's FeedbackRemoteSensorID parameter and returns itself for method-chaining...
Definition Configs.hpp:2283
ExternalFeedbackConfigs & WithFusedCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi Quadrature by passing in the CANdi o...
ExternalFeedbackConfigs & WithRemoteCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use RemoteCANcoder by passing in the CANcoder objec...
constexpr ExternalFeedbackConfigs & WithExternalFeedbackSensorSource(signals::ExternalFeedbackSensorSourceValue newExternalFeedbackSensorSource)
Modifies this configuration's ExternalFeedbackSensorSource parameter and returns itself for method-ch...
Definition Configs.hpp:2395
constexpr ExternalFeedbackConfigs & WithRotorToSensorRatio(units::dimensionless::scalar_t newRotorToSensorRatio)
Modifies this configuration's RotorToSensorRatio parameter and returns itself for method-chaining and...
Definition Configs.hpp:2262
ExternalFeedbackConfigs & WithSyncCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use SyncCANdi PWM 2 by passing in the CANdi object.
std::string ToString() const override
Definition Configs.hpp:2666
signals::SensorPhaseValue SensorPhase
The relationship between the motor controlled by a Talon and the external sensor connected to the dat...
Definition Configs.hpp:2152
ExternalFeedbackConfigs & WithFusedCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use FusedCANcoder by passing in the CANcoder object...
units::angle::turn_t AbsoluteSensorOffset
The offset applied to any absolute sensor connected to the Talon data port.
Definition Configs.hpp:2086
ExternalFeedbackConfigs & WithRemoteCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi Quadrature by passing in the CANdi ...
int FeedbackRemoteSensorID
Device ID of which remote device to use.
Definition Configs.hpp:2057
constexpr ExternalFeedbackConfigs & WithSensorToMechanismRatio(units::dimensionless::scalar_t newSensorToMechanismRatio)
Modifies this configuration's SensorToMechanismRatio parameter and returns itself for method-chaining...
Definition Configs.hpp:2234
constexpr ExternalFeedbackConfigs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:2499
std::string Serialize() const override
Definition Configs.hpp:2682
ExternalFeedbackConfigs & WithRemoteCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi PWM 2 by passing in the CANdi objec...
int QuadratureEdgesPerRotation
The number of quadrature edges in one rotation for the quadrature sensor connected to the Talon data ...
Definition Configs.hpp:2174
constexpr ExternalFeedbackConfigs & WithAbsoluteSensorOffset(units::angle::turn_t newAbsoluteSensorOffset)
Modifies this configuration's AbsoluteSensorOffset parameter and returns itself for method-chaining a...
Definition Configs.hpp:2334
Configs that affect the feedback of this motor controller.
Definition Configs.hpp:1487
FeedbackConfigs & WithSyncCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use SyncCANdi PWM 2 by passing in the CANdi object.
FeedbackConfigs & WithFusedCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi PWM 1 by passing in the CANdi object...
std::string ToString() const override
Definition Configs.hpp:1948
signals::FeedbackSensorSourceValue FeedbackSensorSource
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition Configs.hpp:1580
constexpr FeedbackConfigs & WithRotorToSensorRatio(units::dimensionless::scalar_t newRotorToSensorRatio)
Modifies this configuration's RotorToSensorRatio parameter and returns itself for method-chaining and...
Definition Configs.hpp:1682
FeedbackConfigs & WithRemoteCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use RemoteCANcoder by passing in the CANcoder objec...
FeedbackConfigs & WithRemoteCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi PWM 2 by passing in the CANdi objec...
FeedbackConfigs & WithRemoteCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi Quadrature by passing in the CANdi ...
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1974
constexpr FeedbackConfigs & WithSensorToMechanismRatio(units::dimensionless::scalar_t newSensorToMechanismRatio)
Modifies this configuration's SensorToMechanismRatio parameter and returns itself for method-chaining...
Definition Configs.hpp:1654
units::dimensionless::scalar_t SensorToMechanismRatio
The ratio of sensor rotations to the mechanism's output, where a ratio greater than 1 is a reduction.
Definition Configs.hpp:1521
FeedbackConfigs & WithSyncCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use SyncCANcoder by passing in the CANcoder object.
std::string Serialize() const override
Definition Configs.hpp:1961
FeedbackConfigs & WithRemoteCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi PWM 1 by passing in the CANdi objec...
constexpr FeedbackConfigs & WithVelocityFilterTimeConstant(units::time::second_t newVelocityFilterTimeConstant)
Modifies this configuration's VelocityFilterTimeConstant parameter and returns itself for method-chai...
Definition Configs.hpp:1782
FeedbackConfigs & WithFusedCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi Quadrature by passing in the CANdi o...
units::angle::turn_t FeedbackRotorOffset
The offset applied to the absolute integrated rotor sensor.
Definition Configs.hpp:1501
FeedbackConfigs & WithSyncCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use SyncCANdi PWM 1 by passing in the CANdi object.
units::time::second_t VelocityFilterTimeConstant
The configurable time constant of the Kalman velocity filter.
Definition Configs.hpp:1605
units::dimensionless::scalar_t RotorToSensorRatio
The ratio of motor rotor rotations to remote sensor rotations, where a ratio greater than 1 is a redu...
Definition Configs.hpp:1538
int FeedbackRemoteSensorID
Device ID of which remote device to use.
Definition Configs.hpp:1590
FeedbackConfigs & WithFusedCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi PWM 2 by passing in the CANdi object...
constexpr FeedbackConfigs & WithFeedbackSensorSource(signals::FeedbackSensorSourceValue newFeedbackSensorSource)
Modifies this configuration's FeedbackSensorSource parameter and returns itself for method-chaining a...
Definition Configs.hpp:1735
FeedbackConfigs & WithFusedCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use FusedCANcoder by passing in the CANcoder object...
constexpr FeedbackConfigs & WithFeedbackRemoteSensorID(int newFeedbackRemoteSensorID)
Modifies this configuration's FeedbackRemoteSensorID parameter and returns itself for method-chaining...
Definition Configs.hpp:1756
constexpr FeedbackConfigs & WithFeedbackRotorOffset(units::angle::turn_t newFeedbackRotorOffset)
Modifies this configuration's FeedbackRotorOffset parameter and returns itself for method-chaining an...
Definition Configs.hpp:1623
constexpr FeedbackConfigs()=default
Configs that affect the ToF Field of View.
Definition Configs.hpp:4997
constexpr FovParamsConfigs & WithFOVRangeX(units::angle::degree_t newFOVRangeX)
Modifies this configuration's FOVRangeX parameter and returns itself for method-chaining and easier t...
Definition Configs.hpp:5126
std::string ToString() const override
Definition Configs.hpp:5160
units::angle::degree_t FOVCenterY
Specifies the target center of the Field of View in the Y direction.
Definition Configs.hpp:5026
constexpr FovParamsConfigs & WithFOVRangeY(units::angle::degree_t newFOVRangeY)
Modifies this configuration's FOVRangeY parameter and returns itself for method-chaining and easier t...
Definition Configs.hpp:5152
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5182
constexpr FovParamsConfigs()=default
units::angle::degree_t FOVRangeX
Specifies the target range of the Field of View in the X direction.
Definition Configs.hpp:5041
constexpr FovParamsConfigs & WithFOVCenterX(units::angle::degree_t newFOVCenterX)
Modifies this configuration's FOVCenterX parameter and returns itself for method-chaining and easier ...
Definition Configs.hpp:5076
std::string Serialize() const override
Definition Configs.hpp:5171
units::angle::degree_t FOVCenterX
Specifies the target center of the Field of View in the X direction.
Definition Configs.hpp:5013
constexpr FovParamsConfigs & WithFOVCenterY(units::angle::degree_t newFOVCenterY)
Modifies this configuration's FOVCenterY parameter and returns itself for method-chaining and easier ...
Definition Configs.hpp:5100
units::angle::degree_t FOVRangeY
Specifies the target range of the Field of View in the Y direction.
Definition Configs.hpp:5056
Configs to trim the Pigeon2's gyroscope.
Definition Configs.hpp:388
constexpr GyroTrimConfigs & WithGyroScalarX(units::dimensionless::scalar_t newGyroScalarX)
Modifies this configuration's GyroScalarX parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:434
constexpr GyroTrimConfigs & WithGyroScalarY(units::dimensionless::scalar_t newGyroScalarY)
Modifies this configuration's GyroScalarY parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:454
std::string Serialize() const override
Definition Configs.hpp:492
std::string ToString() const override
Definition Configs.hpp:482
units::dimensionless::scalar_t GyroScalarY
The gyro scalar component for the Y axis.
Definition Configs.hpp:409
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:502
units::dimensionless::scalar_t GyroScalarX
The gyro scalar component for the X axis.
Definition Configs.hpp:400
constexpr GyroTrimConfigs & WithGyroScalarZ(units::dimensionless::scalar_t newGyroScalarZ)
Modifies this configuration's GyroScalarZ parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:474
units::dimensionless::scalar_t GyroScalarZ
The gyro scalar component for the Z axis.
Definition Configs.hpp:418
constexpr GyroTrimConfigs()=default
Configs that change how the motor controller behaves under different limit switch states.
Definition Configs.hpp:3419
HardwareLimitSwitchConfigs & WithReverseLimitRemoteTalonFX(const hardware::core::CoreTalonFX &device)
Helper method to configure this feedback group to use RemoteTalonFX reverse limit switch by passing i...
std::string ToString() const override
Definition Configs.hpp:3924
HardwareLimitSwitchConfigs & WithForwardLimitRemoteCANrange(const hardware::core::CoreCANrange &device)
Helper method to configure this feedback group to use the RemoteCANrange by passing in the CANrange o...
signals::ForwardLimitTypeValue ForwardLimitType
Determines if the forward limit switch is normally-open (default) or normally-closed.
Definition Configs.hpp:3428
constexpr HardwareLimitSwitchConfigs()=default
constexpr HardwareLimitSwitchConfigs & WithForwardLimitAutosetPositionValue(units::angle::turn_t newForwardLimitAutosetPositionValue)
Modifies this configuration's ForwardLimitAutosetPositionValue parameter and returns itself for metho...
Definition Configs.hpp:3600
units::angle::turn_t ForwardLimitAutosetPositionValue
The value to automatically set the position to when the forward limit switch is asserted.
Definition Configs.hpp:3447
signals::ForwardLimitSourceValue ForwardLimitSource
Determines where to poll the forward limit switch.
Definition Configs.hpp:3474
constexpr HardwareLimitSwitchConfigs & WithForwardLimitEnable(bool newForwardLimitEnable)
Modifies this configuration's ForwardLimitEnable parameter and returns itself for method-chaining and...
Definition Configs.hpp:3618
bool ForwardLimitEnable
If enabled, motor output is set to neutral when the forward limit switch is asserted and positive out...
Definition Configs.hpp:3454
bool ReverseLimitAutosetPositionEnable
If enabled, the position is automatically set to a specific value, specified by ReverseLimitAutosetPo...
Definition Configs.hpp:3498
bool ForwardLimitAutosetPositionEnable
If enabled, the position is automatically set to a specific value, specified by ForwardLimitAutosetPo...
Definition Configs.hpp:3436
constexpr HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionValue(units::angle::turn_t newReverseLimitAutosetPositionValue)
Modifies this configuration's ReverseLimitAutosetPositionValue parameter and returns itself for metho...
Definition Configs.hpp:3727
constexpr HardwareLimitSwitchConfigs & WithReverseLimitSource(signals::ReverseLimitSourceValue newReverseLimitSource)
Modifies this configuration's ReverseLimitSource parameter and returns itself for method-chaining and...
Definition Configs.hpp:3775
signals::ReverseLimitTypeValue ReverseLimitType
Determines if the reverse limit switch is normally-open (default) or normally-closed.
Definition Configs.hpp:3490
units::angle::turn_t ReverseLimitAutosetPositionValue
The value to automatically set the position to when the reverse limit switch is asserted.
Definition Configs.hpp:3509
HardwareLimitSwitchConfigs & WithForwardLimitRemoteCANdiS1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi forward limit switch on Signal 1 In...
constexpr HardwareLimitSwitchConfigs & WithForwardLimitAutosetPositionEnable(bool newForwardLimitAutosetPositionEnable)
Modifies this configuration's ForwardLimitAutosetPositionEnable parameter and returns itself for meth...
Definition Configs.hpp:3578
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3962
constexpr HardwareLimitSwitchConfigs & WithForwardLimitRemoteSensorID(int newForwardLimitRemoteSensorID)
Modifies this configuration's ForwardLimitRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:3669
constexpr HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionEnable(bool newReverseLimitAutosetPositionEnable)
Modifies this configuration's ReverseLimitAutosetPositionEnable parameter and returns itself for meth...
Definition Configs.hpp:3705
HardwareLimitSwitchConfigs & WithReverseLimitRemoteCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use RemoteCANcoder reverse limit switch by passing ...
constexpr HardwareLimitSwitchConfigs & WithReverseLimitType(signals::ReverseLimitTypeValue newReverseLimitType)
Modifies this configuration's ReverseLimitType parameter and returns itself for method-chaining and e...
Definition Configs.hpp:3686
HardwareLimitSwitchConfigs & WithForwardLimitRemoteCANdiS2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi forward limit switch on Signal 2 In...
constexpr HardwareLimitSwitchConfigs & WithReverseLimitEnable(bool newReverseLimitEnable)
Modifies this configuration's ReverseLimitEnable parameter and returns itself for method-chaining and...
Definition Configs.hpp:3745
int ForwardLimitRemoteSensorID
Device ID of the remote device if using remote limit switch features for the forward limit switch.
Definition Configs.hpp:3484
constexpr HardwareLimitSwitchConfigs & WithForwardLimitType(signals::ForwardLimitTypeValue newForwardLimitType)
Modifies this configuration's ForwardLimitType parameter and returns itself for method-chaining and e...
Definition Configs.hpp:3559
signals::ReverseLimitSourceValue ReverseLimitSource
Determines where to poll the reverse limit switch.
Definition Configs.hpp:3536
HardwareLimitSwitchConfigs & WithReverseLimitRemoteCANrange(const hardware::core::CoreCANrange &device)
Helper method to configure this feedback group to use the RemoteCANrange by passing in the CANrange o...
HardwareLimitSwitchConfigs & WithForwardLimitRemoteTalonFX(const hardware::core::CoreTalonFX &device)
Helper method to configure this feedback group to use RemoteTalonFX forward limit switch by passing i...
std::string Serialize() const override
Definition Configs.hpp:3943
HardwareLimitSwitchConfigs & WithReverseLimitRemoteCANdiS2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi reverse limit switch on Signal 2 In...
constexpr HardwareLimitSwitchConfigs & WithReverseLimitRemoteSensorID(int newReverseLimitRemoteSensorID)
Modifies this configuration's ReverseLimitRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:3796
constexpr HardwareLimitSwitchConfigs & WithForwardLimitSource(signals::ForwardLimitSourceValue newForwardLimitSource)
Modifies this configuration's ForwardLimitSource parameter and returns itself for method-chaining and...
Definition Configs.hpp:3648
HardwareLimitSwitchConfigs & WithReverseLimitRemoteCANdiS1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi reverse limit switch on Signal 1 In...
HardwareLimitSwitchConfigs & WithForwardLimitRemoteCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use RemoteCANcoder forward limit switch by passing ...
bool ReverseLimitEnable
If enabled, motor output is set to neutral when reverse limit switch is asseted and negative output i...
Definition Configs.hpp:3516
int ReverseLimitRemoteSensorID
Device ID of the remote device if using remote limit switch features for the reverse limit switch.
Definition Configs.hpp:3546
Configs that affect the magnet sensor and how to interpret it.
Definition Configs.hpp:60
std::string Serialize() const override
Definition Configs.hpp:212
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:114
constexpr MagnetSensorConfigs()=default
constexpr MagnetSensorConfigs & WithMagnetOffset(units::angle::turn_t newMagnetOffset)
Modifies this configuration's MagnetOffset parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:150
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:222
constexpr MagnetSensorConfigs & WithSensorDirection(signals::SensorDirectionValue newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:127
constexpr MagnetSensorConfigs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:194
units::angle::turn_t MagnetOffset
This offset is added to the reported position, allowing the application to trim the zero position.
Definition Configs.hpp:81
std::string ToString() const override
Definition Configs.hpp:202
signals::SensorDirectionValue SensorDirection
Direction of the sensor to determine positive rotation, as seen facing the LED side of the CANcoder.
Definition Configs.hpp:69
Configs for Motion Magic®.
Definition Configs.hpp:4292
ctre::unit::volts_per_turn_per_second_squared_t MotionMagicExpo_kA
This is the target kA used only by Motion Magic® Expo control modes.
Definition Configs.hpp:4366
constexpr MotionMagicConfigs & WithMotionMagicAcceleration(units::angular_acceleration::turns_per_second_squared_t newMotionMagicAcceleration)
Modifies this configuration's MotionMagicAcceleration parameter and returns itself for method-chainin...
Definition Configs.hpp:4410
ctre::unit::volts_per_turn_per_second_t MotionMagicExpo_kV
This is the target kV used only by Motion Magic® Expo control modes.
Definition Configs.hpp:4351
constexpr MotionMagicConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:4506
constexpr MotionMagicConfigs & WithMotionMagicCruiseVelocity(units::angular_velocity::turns_per_second_t newMotionMagicCruiseVelocity)
Modifies this configuration's MotionMagicCruiseVelocity parameter and returns itself for method-chain...
Definition Configs.hpp:4388
units::angular_acceleration::turns_per_second_squared_t MotionMagicAcceleration
This is the target acceleration Motion Magic® based control modes are allowed to use.
Definition Configs.hpp:4321
constexpr MotionMagicConfigs & WithMotionMagicJerk(units::angular_jerk::turns_per_second_cubed_t newMotionMagicJerk)
Modifies this configuration's MotionMagicJerk parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:4436
units::angular_velocity::turns_per_second_t MotionMagicCruiseVelocity
This is the maximum velocity Motion Magic® based control modes are allowed to use.
Definition Configs.hpp:4310
units::angular_jerk::turns_per_second_cubed_t MotionMagicJerk
This is the target jerk (acceleration derivative) Motion Magic® based control modes are allowed to us...
Definition Configs.hpp:4336
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4518
std::string ToString() const override
Definition Configs.hpp:4494
constexpr MotionMagicConfigs & WithMotionMagicExpo_kA(ctre::unit::volts_per_turn_per_second_squared_t newMotionMagicExpo_kA)
Modifies this configuration's MotionMagicExpo_kA parameter and returns itself for method-chaining and...
Definition Configs.hpp:4486
constexpr MotionMagicConfigs & WithMotionMagicExpo_kV(ctre::unit::volts_per_turn_per_second_t newMotionMagicExpo_kV)
Modifies this configuration's MotionMagicExpo_kV parameter and returns itself for method-chaining and...
Definition Configs.hpp:4461
Configs that directly affect motor output.
Definition Configs.hpp:647
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:858
units::dimensionless::scalar_t PeakReverseDutyCycle
Minimum (reverse) output during duty cycle based control modes.
Definition Configs.hpp:692
signals::NeutralModeValue NeutralMode
The state of the motor controller bridge when output is neutral or disabled.
Definition Configs.hpp:662
constexpr MotorOutputConfigs & WithNeutralMode(signals::NeutralModeValue newNeutralMode)
Modifies this configuration's NeutralMode parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:737
constexpr MotorOutputConfigs & WithControlTimesyncFreqHz(units::frequency::hertz_t newControlTimesyncFreqHz)
Modifies this configuration's ControlTimesyncFreqHz parameter and returns itself for method-chaining ...
Definition Configs.hpp:824
units::dimensionless::scalar_t PeakForwardDutyCycle
Maximum (forward) output during duty cycle based control modes.
Definition Configs.hpp:682
constexpr MotorOutputConfigs & WithPeakForwardDutyCycle(units::dimensionless::scalar_t newPeakForwardDutyCycle)
Modifies this configuration's PeakForwardDutyCycle parameter and returns itself for method-chaining a...
Definition Configs.hpp:778
constexpr MotorOutputConfigs & WithDutyCycleNeutralDeadband(units::dimensionless::scalar_t newDutyCycleNeutralDeadband)
Modifies this configuration's DutyCycleNeutralDeadband parameter and returns itself for method-chaini...
Definition Configs.hpp:758
constexpr MotorOutputConfigs()=default
std::string ToString() const override
Definition Configs.hpp:832
signals::InvertedValue Inverted
Invert state of the device as seen from the front of the motor.
Definition Configs.hpp:656
std::string Serialize() const override
Definition Configs.hpp:845
constexpr MotorOutputConfigs & WithInverted(signals::InvertedValue newInverted)
Modifies this configuration's Inverted parameter and returns itself for method-chaining and easier to...
Definition Configs.hpp:720
constexpr MotorOutputConfigs & WithPeakReverseDutyCycle(units::dimensionless::scalar_t newPeakReverseDutyCycle)
Modifies this configuration's PeakReverseDutyCycle parameter and returns itself for method-chaining a...
Definition Configs.hpp:798
units::dimensionless::scalar_t DutyCycleNeutralDeadband
Configures the output deadband duty cycle during duty cycle and voltage based control modes.
Definition Configs.hpp:672
units::frequency::hertz_t ControlTimesyncFreqHz
When a control request UseTimesync is enabled, this determines the time-sychronized frequency at whic...
Definition Configs.hpp:708
Configs for Pigeon 2's Mount Pose configuration.
Definition Configs.hpp:246
constexpr MountPoseConfigs & WithMountPoseRoll(units::angle::degree_t newMountPoseRoll)
Modifies this configuration's MountPoseRoll parameter and returns itself for method-chaining and easi...
Definition Configs.hpp:332
constexpr MountPoseConfigs()=default
constexpr MountPoseConfigs & WithMountPoseYaw(units::angle::degree_t newMountPoseYaw)
Modifies this configuration's MountPoseYaw parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:292
units::angle::degree_t MountPoseRoll
The mounting calibration roll-component.
Definition Configs.hpp:276
units::angle::degree_t MountPosePitch
The mounting calibration pitch-component.
Definition Configs.hpp:267
std::string ToString() const override
Definition Configs.hpp:340
constexpr MountPoseConfigs & WithMountPosePitch(units::angle::degree_t newMountPosePitch)
Modifies this configuration's MountPosePitch parameter and returns itself for method-chaining and eas...
Definition Configs.hpp:312
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:360
units::angle::degree_t MountPoseYaw
The mounting calibration yaw-component.
Definition Configs.hpp:258
std::string Serialize() const override
Definition Configs.hpp:350
Configs that affect the open-loop control of this motor controller.
Definition Configs.hpp:3057
constexpr OpenLoopRampsConfigs & WithVoltageOpenLoopRampPeriod(units::time::second_t newVoltageOpenLoopRampPeriod)
Modifies this configuration's VoltageOpenLoopRampPeriod parameter and returns itself for method-chain...
Definition Configs.hpp:3147
constexpr OpenLoopRampsConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:3189
constexpr OpenLoopRampsConfigs & WithDutyCycleOpenLoopRampPeriod(units::time::second_t newDutyCycleOpenLoopRampPeriod)
Modifies this configuration's DutyCycleOpenLoopRampPeriod parameter and returns itself for method-cha...
Definition Configs.hpp:3122
units::time::second_t VoltageOpenLoopRampPeriod
If non-zero, this determines how much time to ramp from 0V output to 12V during the open-loop Voltage...
Definition Configs.hpp:3088
units::time::second_t TorqueOpenLoopRampPeriod
If non-zero, this determines how much time to ramp from 0A output to 300A during the open-loop Torque...
Definition Configs.hpp:3101
std::string ToString() const override
Definition Configs.hpp:3179
constexpr OpenLoopRampsConfigs & WithTorqueOpenLoopRampPeriod(units::time::second_t newTorqueOpenLoopRampPeriod)
Modifies this configuration's TorqueOpenLoopRampPeriod parameter and returns itself for method-chaini...
Definition Configs.hpp:3171
units::time::second_t DutyCycleOpenLoopRampPeriod
If non-zero, this determines how much time to ramp from 0% output to 100% during the open-loop DutyCy...
Definition Configs.hpp:3074
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3199
Configs related to the CANdi™ branded device's PWM interface on the Signal 1 input (S1IN)
Definition Configs.hpp:5623
constexpr PWM1Configs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:5761
units::angle::turn_t AbsoluteSensorOffset
The offset applied to the PWM sensor.
Definition Configs.hpp:5638
constexpr PWM1Configs()=default
constexpr PWM1Configs & WithAbsoluteSensorOffset(units::angle::turn_t newAbsoluteSensorOffset)
Modifies this configuration's AbsoluteSensorOffset parameter and returns itself for method-chaining a...
Definition Configs.hpp:5698
bool SensorDirection
Direction of the PWM sensor to determine positive rotation.
Definition Configs.hpp:5679
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5789
std::string ToString() const override
Definition Configs.hpp:5769
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:5671
constexpr PWM1Configs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:5742
std::string Serialize() const override
Definition Configs.hpp:5779
Configs related to the CANdi™ branded device's PWM interface on the Signal 2 input (S2IN)
Definition Configs.hpp:5815
units::angle::turn_t AbsoluteSensorOffset
The offset applied to the PWM sensor.
Definition Configs.hpp:5830
std::string Serialize() const override
Definition Configs.hpp:5971
constexpr PWM2Configs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:5934
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:5863
constexpr PWM2Configs & WithAbsoluteSensorOffset(units::angle::turn_t newAbsoluteSensorOffset)
Modifies this configuration's AbsoluteSensorOffset parameter and returns itself for method-chaining a...
Definition Configs.hpp:5890
constexpr PWM2Configs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5981
std::string ToString() const override
Definition Configs.hpp:5961
constexpr PWM2Configs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:5953
bool SensorDirection
Direction of the PWM sensor to determine positive rotation.
Definition Configs.hpp:5871
Definition Configs.hpp:40
friend std::ostream & operator<<(std::ostream &str, const ParentConfiguration &v)
Definition Configs.hpp:43
virtual ctre::phoenix::StatusCode Deserialize(const std::string &string)=0
virtual std::string ToString() const =0
Configs to enable/disable various features of the Pigeon2.
Definition Configs.hpp:527
constexpr Pigeon2FeaturesConfigs & WithEnableCompass(bool newEnableCompass)
Modifies this configuration's EnableCompass parameter and returns itself for method-chaining and easi...
Definition Configs.hpp:566
bool DisableTemperatureCompensation
Disables using the temperature compensation feature.
Definition Configs.hpp:545
constexpr Pigeon2FeaturesConfigs & WithDisableTemperatureCompensation(bool newDisableTemperatureCompensation)
Modifies this configuration's DisableTemperatureCompensation parameter and returns itself for method-...
Definition Configs.hpp:583
std::string ToString() const override
Definition Configs.hpp:608
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:628
constexpr Pigeon2FeaturesConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:618
bool DisableNoMotionCalibration
Disables using the no-motion calibration feature.
Definition Configs.hpp:551
constexpr Pigeon2FeaturesConfigs & WithDisableNoMotionCalibration(bool newDisableNoMotionCalibration)
Modifies this configuration's DisableNoMotionCalibration parameter and returns itself for method-chai...
Definition Configs.hpp:600
bool EnableCompass
Turns on or off the magnetometer fusing for 9-axis.
Definition Configs.hpp:539
Configs that affect the ToF Proximity detection.
Definition Configs.hpp:4829
constexpr ProximityParamsConfigs()=default
units::dimensionless::scalar_t MinSignalStrengthForValidMeasurement
The minimum allowable signal strength before determining the measurement is valid.
Definition Configs.hpp:4874
std::string ToString() const override
Definition Configs.hpp:4953
constexpr ProximityParamsConfigs & WithProximityThreshold(units::length::meter_t newProximityThreshold)
Modifies this configuration's ProximityThreshold parameter and returns itself for method-chaining and...
Definition Configs.hpp:4890
constexpr ProximityParamsConfigs & WithMinSignalStrengthForValidMeasurement(units::dimensionless::scalar_t newMinSignalStrengthForValidMeasurement)
Modifies this configuration's MinSignalStrengthForValidMeasurement parameter and returns itself for m...
Definition Configs.hpp:4945
std::string Serialize() const override
Definition Configs.hpp:4963
units::length::meter_t ProximityThreshold
Threshold for object detection.
Definition Configs.hpp:4841
constexpr ProximityParamsConfigs & WithProximityHysteresis(units::length::meter_t newProximityHysteresis)
Modifies this configuration's ProximityHysteresis parameter and returns itself for method-chaining an...
Definition Configs.hpp:4918
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4973
units::length::meter_t ProximityHysteresis
How far above and below the threshold the distance needs to be to trigger undetected and detected,...
Definition Configs.hpp:4858
Configs related to the CANdi™ branded device's quadrature interface using both the S1IN and S2IN inpu...
Definition Configs.hpp:5495
int QuadratureEdgesPerRotation
The number of quadrature edges in one rotation for the quadrature sensor connected to the Talon data ...
Definition Configs.hpp:5520
std::string ToString() const override
Definition Configs.hpp:5584
constexpr QuadratureConfigs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:5576
std::string Serialize() const override
Definition Configs.hpp:5593
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5602
bool SensorDirection
Direction of the quadrature sensor to determine positive rotation.
Definition Configs.hpp:5528
constexpr QuadratureConfigs()=default
constexpr QuadratureConfigs & WithQuadratureEdgesPerRotation(int newQuadratureEdgesPerRotation)
Modifies this configuration's QuadratureEdgesPerRotation parameter and returns itself for method-chai...
Definition Configs.hpp:5557
Gains for the specified slot.
Definition Configs.hpp:6004
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:6082
constexpr Slot0Configs & WithKI(units::dimensionless::scalar_t newKI)
Modifies this configuration's kI parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6218
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:6115
static Slot0Configs From(const SlotConfigs &value)
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:6166
constexpr Slot0Configs & WithKA(units::dimensionless::scalar_t newKA)
Modifies this configuration's kA parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6336
std::string ToString() const override
Definition Configs.hpp:6428
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:6148
constexpr Slot0Configs & WithKS(units::dimensionless::scalar_t newKS)
Modifies this configuration's kS parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6281
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:6023
constexpr Slot0Configs & WithKP(units::dimensionless::scalar_t newKP)
Modifies this configuration's kP parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6189
constexpr Slot0Configs & WithKV(units::dimensionless::scalar_t newKV)
Modifies this configuration's kV parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6308
constexpr Slot0Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:6420
constexpr Slot0Configs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:6460
constexpr Slot0Configs & WithKG(units::dimensionless::scalar_t newKG)
Modifies this configuration's kG parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6361
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:6060
constexpr Slot0Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:6391
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:6098
constexpr Slot0Configs & WithKD(units::dimensionless::scalar_t newKD)
Modifies this configuration's kD parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6248
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:6129
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:6041
std::string Serialize() const override
Definition Configs.hpp:6444
Gains for the specified slot.
Definition Configs.hpp:6499
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:6518
std::string Serialize() const override
Definition Configs.hpp:6939
static Slot1Configs From(const SlotConfigs &value)
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:6624
constexpr Slot1Configs & WithKI(units::dimensionless::scalar_t newKI)
Modifies this configuration's kI parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6713
constexpr Slot1Configs & WithKS(units::dimensionless::scalar_t newKS)
Modifies this configuration's kS parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6776
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:6610
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:6577
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:6555
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:6536
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:6661
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:6593
constexpr Slot1Configs & WithKP(units::dimensionless::scalar_t newKP)
Modifies this configuration's kP parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6684
constexpr Slot1Configs()=default
constexpr Slot1Configs & WithKG(units::dimensionless::scalar_t newKG)
Modifies this configuration's kG parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6856
constexpr Slot1Configs & WithKV(units::dimensionless::scalar_t newKV)
Modifies this configuration's kV parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6803
constexpr Slot1Configs & WithKD(units::dimensionless::scalar_t newKD)
Modifies this configuration's kD parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6743
constexpr Slot1Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:6915
constexpr Slot1Configs & WithKA(units::dimensionless::scalar_t newKA)
Modifies this configuration's kA parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:6831
std::string ToString() const override
Definition Configs.hpp:6923
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:6643
constexpr Slot1Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:6886
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:6955
Gains for the specified slot.
Definition Configs.hpp:6994
std::string Serialize() const override
Definition Configs.hpp:7434
constexpr Slot2Configs & WithKG(units::dimensionless::scalar_t newKG)
Modifies this configuration's kG parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7351
constexpr Slot2Configs & WithKD(units::dimensionless::scalar_t newKD)
Modifies this configuration's kD parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7238
constexpr Slot2Configs & WithKS(units::dimensionless::scalar_t newKS)
Modifies this configuration's kS parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7271
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:7105
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:7138
constexpr Slot2Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:7381
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:7450
constexpr Slot2Configs & WithKI(units::dimensionless::scalar_t newKI)
Modifies this configuration's kI parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7208
constexpr Slot2Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:7410
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:7072
constexpr Slot2Configs & WithKP(units::dimensionless::scalar_t newKP)
Modifies this configuration's kP parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7179
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:7088
constexpr Slot2Configs()=default
static Slot2Configs From(const SlotConfigs &value)
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:7050
constexpr Slot2Configs & WithKV(units::dimensionless::scalar_t newKV)
Modifies this configuration's kV parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7298
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:7013
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:7156
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:7031
std::string ToString() const override
Definition Configs.hpp:7418
constexpr Slot2Configs & WithKA(units::dimensionless::scalar_t newKA)
Modifies this configuration's kA parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7326
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:7119
Gains for the specified slot.
Definition Configs.hpp:7488
static SlotConfigs From(const Slot2Configs &value)
std::string ToString() const
Definition Configs.hpp:7972
constexpr SlotConfigs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:7927
static SlotConfigs From(const Slot1Configs &value)
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:7577
constexpr SlotConfigs & WithKS(units::dimensionless::scalar_t newKS)
Modifies this configuration's kS parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7817
constexpr SlotConfigs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:7956
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize)
Definition Configs.hpp:8005
constexpr SlotConfigs & WithKD(units::dimensionless::scalar_t newKD)
Modifies this configuration's kD parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7784
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:7702
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:7634
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:7618
constexpr SlotConfigs & WithKV(units::dimensionless::scalar_t newKV)
Modifies this configuration's kV parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7844
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:7559
constexpr SlotConfigs & WithKA(units::dimensionless::scalar_t newKA)
Modifies this configuration's kA parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7872
int SlotNumber
Chooses which slot these configs are for.
Definition Configs.hpp:7966
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:7596
constexpr SlotConfigs & WithKP(units::dimensionless::scalar_t newKP)
Modifies this configuration's kP parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7725
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:7651
std::string Serialize() const
Definition Configs.hpp:7988
static SlotConfigs From(const Slot0Configs &value)
constexpr SlotConfigs & WithKI(units::dimensionless::scalar_t newKI)
Modifies this configuration's kI parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7754
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:7684
constexpr SlotConfigs & WithKG(units::dimensionless::scalar_t newKG)
Modifies this configuration's kG parameter and returns itself for method-chaining and easier to use c...
Definition Configs.hpp:7897
constexpr SlotConfigs()=default
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:7665
Configs that affect how software-limit switches behave.
Definition Configs.hpp:4127
units::angle::turn_t ReverseSoftLimitThreshold
Position threshold for reverse soft limit features.
Definition Configs.hpp:4164
constexpr SoftwareLimitSwitchConfigs()=default
std::string ToString() const override
Definition Configs.hpp:4246
constexpr SoftwareLimitSwitchConfigs & WithForwardSoftLimitThreshold(units::angle::turn_t newForwardSoftLimitThreshold)
Modifies this configuration's ForwardSoftLimitThreshold parameter and returns itself for method-chain...
Definition Configs.hpp:4217
units::angle::turn_t ForwardSoftLimitThreshold
Position threshold for forward soft limit features.
Definition Configs.hpp:4154
constexpr SoftwareLimitSwitchConfigs & WithReverseSoftLimitThreshold(units::angle::turn_t newReverseSoftLimitThreshold)
Modifies this configuration's ReverseSoftLimitThreshold parameter and returns itself for method-chain...
Definition Configs.hpp:4238
constexpr SoftwareLimitSwitchConfigs & WithReverseSoftLimitEnable(bool newReverseSoftLimitEnable)
Modifies this configuration's ReverseSoftLimitEnable parameter and returns itself for method-chaining...
Definition Configs.hpp:4196
std::string Serialize() const override
Definition Configs.hpp:4257
bool ReverseSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ReverseSoftLimitThreshold and reve...
Definition Configs.hpp:4144
constexpr SoftwareLimitSwitchConfigs & WithForwardSoftLimitEnable(bool newForwardSoftLimitEnable)
Modifies this configuration's ForwardSoftLimitEnable parameter and returns itself for method-chaining...
Definition Configs.hpp:4178
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4268
bool ForwardSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ForwardSoftLimitThreshold and forw...
Definition Configs.hpp:4137
Configs that affect the ToF sensor.
Definition Configs.hpp:4728
constexpr ToFParamsConfigs & WithUpdateFrequency(units::frequency::hertz_t newUpdateFrequency)
Modifies this configuration's UpdateFrequency parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:4783
std::string Serialize() const override
Definition Configs.hpp:4800
signals::UpdateModeValue UpdateMode
Update mode of the CANrange.
Definition Configs.hpp:4737
constexpr ToFParamsConfigs()=default
constexpr ToFParamsConfigs & WithUpdateMode(signals::UpdateModeValue newUpdateMode)
Modifies this configuration's UpdateMode parameter and returns itself for method-chaining and easier ...
Definition Configs.hpp:4761
units::frequency::hertz_t UpdateFrequency
Rate at which the CANrange will take measurements.
Definition Configs.hpp:4748
std::string ToString() const override
Definition Configs.hpp:4791
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4809
Configs that affect Torque Current control types.
Definition Configs.hpp:1342
std::string ToString() const override
Definition Configs.hpp:1440
constexpr TorqueCurrentConfigs()=default
units::current::ampere_t PeakReverseTorqueCurrent
Minimum (reverse) output during torque current based control modes.
Definition Configs.hpp:1365
units::current::ampere_t PeakForwardTorqueCurrent
Maximum (forward) output during torque current based control modes.
Definition Configs.hpp:1355
constexpr TorqueCurrentConfigs & WithPeakForwardTorqueCurrent(units::current::ampere_t newPeakForwardTorqueCurrent)
Modifies this configuration's PeakForwardTorqueCurrent parameter and returns itself for method-chaini...
Definition Configs.hpp:1391
constexpr TorqueCurrentConfigs & WithTorqueNeutralDeadband(units::current::ampere_t newTorqueNeutralDeadband)
Modifies this configuration's TorqueNeutralDeadband parameter and returns itself for method-chaining ...
Definition Configs.hpp:1432
units::current::ampere_t TorqueNeutralDeadband
Configures the output deadband during torque current based control modes.
Definition Configs.hpp:1375
constexpr TorqueCurrentConfigs & WithPeakReverseTorqueCurrent(units::current::ampere_t newPeakReverseTorqueCurrent)
Modifies this configuration's PeakReverseTorqueCurrent parameter and returns itself for method-chaini...
Definition Configs.hpp:1411
std::string Serialize() const override
Definition Configs.hpp:1450
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1460
Configs that affect Voltage control types.
Definition Configs.hpp:1192
units::voltage::volt_t PeakForwardVoltage
Maximum (forward) output during voltage based control modes.
Definition Configs.hpp:1218
constexpr VoltageConfigs & WithPeakReverseVoltage(units::voltage::volt_t newPeakReverseVoltage)
Modifies this configuration's PeakReverseVoltage parameter and returns itself for method-chaining and...
Definition Configs.hpp:1288
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1316
std::string Serialize() const override
Definition Configs.hpp:1306
std::string ToString() const override
Definition Configs.hpp:1296
units::time::second_t SupplyVoltageTimeConstant
The time constant (in seconds) of the low-pass filter for the supply voltage.
Definition Configs.hpp:1209
constexpr VoltageConfigs & WithPeakForwardVoltage(units::voltage::volt_t newPeakForwardVoltage)
Modifies this configuration's PeakForwardVoltage parameter and returns itself for method-chaining and...
Definition Configs.hpp:1268
constexpr VoltageConfigs & WithSupplyVoltageTimeConstant(units::time::second_t newSupplyVoltageTimeConstant)
Modifies this configuration's SupplyVoltageTimeConstant parameter and returns itself for method-chain...
Definition Configs.hpp:1248
units::voltage::volt_t PeakReverseVoltage
Minimum (reverse) output during voltage based control modes.
Definition Configs.hpp:1227
constexpr VoltageConfigs()=default
Class for CANcoder, a CAN based magnetic encoder that provides absolute and relative position along w...
Definition CoreCANcoder.hpp:631
Class for CTR Electronics' CANdi™ branded device, a device that integrates digital signals into the e...
Definition CoreCANdi.hpp:918
Class for CANrange, a CAN based Time of Flight (ToF) sensor that measures the distance to the front o...
Definition CoreCANrange.hpp:728
Class description for the Talon FX integrated motor controller.
Definition CoreTalonFX.hpp:2932
Requires Phoenix Pro; Improves commutation and velocity measurement for motors with hall sensors.
Definition SpnEnums.hpp:3764
static constexpr int Disabled
Talon will utilize hall sensors without advanced features.
Definition SpnEnums.hpp:3771
int value
Definition SpnEnums.hpp:3766
If a brushed motor is selected with Motor Arrangement, this config determines which of three leads to...
Definition SpnEnums.hpp:4905
int value
Definition SpnEnums.hpp:4907
static constexpr int Leads_A_and_B
Third party brushed DC motor with two leads.
Definition SpnEnums.hpp:4920
Choose what sensor source is used for differential control of a mechanism.
Definition SpnEnums.hpp:3240
static constexpr int Disabled
Disable differential control.
Definition SpnEnums.hpp:3247
int value
Definition SpnEnums.hpp:3242
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition SpnEnums.hpp:4392
int value
Definition SpnEnums.hpp:4394
static constexpr int Commutation
Use the external sensor used for motor commutation.
Definition SpnEnums.hpp:4399
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition SpnEnums.hpp:2411
int value
Definition SpnEnums.hpp:2413
static constexpr int RotorSensor
Use the internal rotor sensor in the Talon.
Definition SpnEnums.hpp:2418
Determines where to poll the forward limit switch.
Definition SpnEnums.hpp:2703
static constexpr int LimitSwitchPin
Use the forward limit switch pin on the limit switch connector.
Definition SpnEnums.hpp:2710
int value
Definition SpnEnums.hpp:2705
Determines if the forward limit switch is normally-open (default) or normally-closed.
Definition SpnEnums.hpp:2616
static constexpr int NormallyOpen
Definition SpnEnums.hpp:2620
int value
Definition SpnEnums.hpp:2618
Gravity Feedforward/Feedback Type.
Definition SpnEnums.hpp:2138
static constexpr int Elevator_Static
The system's gravity feedforward is constant, such as an elevator.
Definition SpnEnums.hpp:2146
int value
Definition SpnEnums.hpp:2140
Invert state of the device as seen from the front of the motor.
Definition SpnEnums.hpp:2223
static constexpr int CounterClockwise_Positive
Positive motor output results in counter-clockwise motion.
Definition SpnEnums.hpp:2230
int value
Definition SpnEnums.hpp:2225
Selects the motor and motor connections used with Talon.
Definition SpnEnums.hpp:3853
int value
Definition SpnEnums.hpp:3855
static constexpr int Disabled
Motor is not selected.
Definition SpnEnums.hpp:3862
The state of the motor controller bridge when output is neutral or disabled.
Definition SpnEnums.hpp:2303
int value
Definition SpnEnums.hpp:2305
static constexpr int Coast
Definition SpnEnums.hpp:2307
Determines where to poll the reverse limit switch.
Definition SpnEnums.hpp:2913
int value
Definition SpnEnums.hpp:2915
static constexpr int LimitSwitchPin
Use the reverse limit switch pin on the limit switch connector.
Definition SpnEnums.hpp:2920
Determines if the reverse limit switch is normally-open (default) or normally-closed.
Definition SpnEnums.hpp:2826
static constexpr int NormallyOpen
Definition SpnEnums.hpp:2830
int value
Definition SpnEnums.hpp:2828
What value the Signal 1 input (S1IN) needs to be for the CTR Electronics' CANdi™ to detect as Closed.
Definition SpnEnums.hpp:4702
int value
Definition SpnEnums.hpp:4704
static constexpr int CloseWhenNotFloating
The S1 input will be treated as closed when it is not floating.
Definition SpnEnums.hpp:4709
The floating state of the Signal 1 input (S1IN).
Definition SpnEnums.hpp:4162
int value
Definition SpnEnums.hpp:4164
static constexpr int FloatDetect
The input will attempt to detect when it is floating.
Definition SpnEnums.hpp:4170
What value the Signal 2 input (S2IN) needs to be for the CTR Electronics' CANdi™ to detect as Closed.
Definition SpnEnums.hpp:4805
int value
Definition SpnEnums.hpp:4807
static constexpr int CloseWhenNotFloating
The S2 input will be treated as closed when it is not floating.
Definition SpnEnums.hpp:4812
The floating state of the Signal 2 input (S2IN).
Definition SpnEnums.hpp:4255
int value
Definition SpnEnums.hpp:4257
static constexpr int FloatDetect
The input will attempt to detect when it is floating.
Definition SpnEnums.hpp:4263
Direction of the sensor to determine positive rotation, as seen facing the LED side of the CANcoder.
Definition SpnEnums.hpp:270
static constexpr int CounterClockwise_Positive
Counter-clockwise motion reports positive rotation.
Definition SpnEnums.hpp:277
int value
Definition SpnEnums.hpp:272
The relationship between the motor controlled by a Talon and the external sensor connected to the dat...
Definition SpnEnums.hpp:4619
int value
Definition SpnEnums.hpp:4621
static constexpr int Aligned
The sensor direction is normally aligned with the motor.
Definition SpnEnums.hpp:4626
Static Feedforward Sign during position closed loop.
Definition SpnEnums.hpp:3370
int value
Definition SpnEnums.hpp:3372
static constexpr int UseVelocitySign
Use the velocity reference sign.
Definition SpnEnums.hpp:3379
Update mode of the CANrange.
Definition SpnEnums.hpp:3674
int value
Definition SpnEnums.hpp:3676
static constexpr int ShortRange100Hz
Updates distance/proximity at 100hz using short-range detection mode.
Definition SpnEnums.hpp:3681
Status codes reported by APIs, including OK, warnings, and errors.
Definition StatusCodes.h:27
Definition MotionMagicExpoTorqueCurrentFOC.hpp:18