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();
1948 std::stringstream ss;
1949 ss <<
"Config Group: Feedback" << std::endl;
1950 ss <<
" FeedbackRotorOffset: " <<
FeedbackRotorOffset.to<
double>() <<
" rotations" << std::endl;
1952 ss <<
" RotorToSensorRatio: " <<
RotorToSensorRatio.to<
double>() <<
" scalar" << std::endl;
1961 std::stringstream ss;
1974 const char *string_c_str = to_deserialize.c_str();
1975 size_t string_length = to_deserialize.length();
2664 std::stringstream ss;
2665 ss <<
"Config Group: ExternalFeedback" << std::endl;
2667 ss <<
" RotorToSensorRatio: " <<
RotorToSensorRatio.to<
double>() <<
" scalar" << std::endl;
2670 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
2672 ss <<
" SensorPhase: " <<
SensorPhase << std::endl;
2680 std::stringstream ss;
2696 const char *string_c_str = to_deserialize.c_str();
2697 size_t string_length = to_deserialize.length();
2715 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
2871 std::stringstream ss;
2872 ss <<
"Config Group: DifferentialSensors" << std::endl;
2881 std::stringstream ss;
2891 const char *string_c_str = to_deserialize.c_str();
2892 size_t string_length = to_deserialize.length();
3010 std::stringstream ss;
3011 ss <<
"Config Group: DifferentialConstants" << std::endl;
3020 std::stringstream ss;
3030 const char *string_c_str = to_deserialize.c_str();
3031 size_t string_length = to_deserialize.length();
3177 std::stringstream ss;
3178 ss <<
"Config Group: OpenLoopRamps" << std::endl;
3187 std::stringstream ss;
3197 const char *string_c_str = to_deserialize.c_str();
3198 size_t string_length = to_deserialize.length();
3200 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_DutyCycleOpenLoopRampPeriod, string_c_str, string_length, &DutyCycleOpenLoopRampPeriodVal);
3370 std::stringstream ss;
3371 ss <<
"Config Group: ClosedLoopRamps" << std::endl;
3380 std::stringstream ss;
3390 const char *string_c_str = to_deserialize.c_str();
3391 size_t string_length = to_deserialize.length();
3393 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_DutyCycleClosedLoopRampPeriod, string_c_str, string_length, &DutyCycleClosedLoopRampPeriodVal);
3396 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_VoltageClosedLoopRampPeriod, string_c_str, string_length, &VoltageClosedLoopRampPeriodVal);
3922 std::stringstream ss;
3923 ss <<
"Config Group: HardwareLimitSwitch" << std::endl;
3941 std::stringstream ss;
3960 const char *string_c_str = to_deserialize.c_str();
3961 size_t string_length = to_deserialize.length();
3965 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_ForwardLimitAutosetPosValue, string_c_str, string_length, &ForwardLimitAutosetPositionValueVal);
3973 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_ReverseLimitAutosetPosValue, string_c_str, string_length, &ReverseLimitAutosetPositionValueVal);
4086 std::stringstream ss;
4087 ss <<
"Config Group: Audio" << std::endl;
4088 ss <<
" BeepOnBoot: " <<
BeepOnBoot << std::endl;
4096 std::stringstream ss;
4106 const char *string_c_str = to_deserialize.c_str();
4107 size_t string_length = to_deserialize.length();
4244 std::stringstream ss;
4245 ss <<
"Config Group: SoftwareLimitSwitch" << std::endl;
4255 std::stringstream ss;
4266 const char *string_c_str = to_deserialize.c_str();
4267 size_t string_length = to_deserialize.length();
4492 std::stringstream ss;
4493 ss <<
"Config Group: MotionMagic" << std::endl;
4496 ss <<
" MotionMagicJerk: " <<
MotionMagicJerk.to<
double>() <<
" rot per sec³" << std::endl;
4497 ss <<
" MotionMagicExpo_kV: " <<
MotionMagicExpo_kV.to<
double>() <<
" V/rps" << std::endl;
4498 ss <<
" MotionMagicExpo_kA: " <<
MotionMagicExpo_kA.to<
double>() <<
" V/rps²" << std::endl;
4504 std::stringstream ss;
4516 const char *string_c_str = to_deserialize.c_str();
4517 size_t string_length = to_deserialize.length();
4523 MotionMagicAcceleration = units::angular_acceleration::turns_per_second_squared_t{MotionMagicAccelerationVal};
4526 MotionMagicJerk = units::angular_jerk::turns_per_second_cubed_t{MotionMagicJerkVal};
4532 MotionMagicExpo_kA = ctre::unit::volts_per_turn_per_second_squared_t{MotionMagicExpo_kAVal};
4615 std::stringstream ss;
4616 ss <<
"Config Group: CustomParams" << std::endl;
4624 std::stringstream ss;
4633 const char *string_c_str = to_deserialize.c_str();
4634 size_t string_length = to_deserialize.length();
4694 std::stringstream ss;
4695 ss <<
"Config Group: ClosedLoopGeneral" << std::endl;
4702 std::stringstream ss;
4710 const char *string_c_str = to_deserialize.c_str();
4711 size_t string_length = to_deserialize.length();
4789 std::stringstream ss;
4790 ss <<
"Config Group: ToFParams" << std::endl;
4791 ss <<
" UpdateMode: " <<
UpdateMode << std::endl;
4792 ss <<
" UpdateFrequency: " <<
UpdateFrequency.to<
double>() <<
" Hz" << std::endl;
4798 std::stringstream ss;
4807 const char *string_c_str = to_deserialize.c_str();
4808 size_t string_length = to_deserialize.length();
4951 std::stringstream ss;
4952 ss <<
"Config Group: ProximityParams" << std::endl;
4953 ss <<
" ProximityThreshold: " <<
ProximityThreshold.to<
double>() <<
" m" << std::endl;
4961 std::stringstream ss;
4971 const char *string_c_str = to_deserialize.c_str();
4972 size_t string_length = to_deserialize.length();
4980 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::CANrange_MinSigStrengthForValidMeas, string_c_str, string_length, &MinSignalStrengthForValidMeasurementVal);
5158 std::stringstream ss;
5159 ss <<
"Config Group: FovParams" << std::endl;
5160 ss <<
" FOVCenterX: " <<
FOVCenterX.to<
double>() <<
" deg" << std::endl;
5161 ss <<
" FOVCenterY: " <<
FOVCenterY.to<
double>() <<
" deg" << std::endl;
5162 ss <<
" FOVRangeX: " <<
FOVRangeX.to<
double>() <<
" deg" << std::endl;
5163 ss <<
" FOVRangeY: " <<
FOVRangeY.to<
double>() <<
" deg" << std::endl;
5169 std::stringstream ss;
5180 const char *string_c_str = to_deserialize.c_str();
5181 size_t string_length = to_deserialize.length();
5182 double FOVCenterXVal =
FOVCenterX.to<
double>();
5184 FOVCenterX = units::angle::degree_t{FOVCenterXVal};
5185 double FOVCenterYVal =
FOVCenterY.to<
double>();
5187 FOVCenterY = units::angle::degree_t{FOVCenterYVal};
5188 double FOVRangeXVal =
FOVRangeX.to<
double>();
5190 FOVRangeX = units::angle::degree_t{FOVRangeXVal};
5191 double FOVRangeYVal =
FOVRangeY.to<
double>();
5193 FOVRangeY = units::angle::degree_t{FOVRangeYVal};
5302 std::stringstream ss;
5303 ss <<
"Config Group: Commutation" << std::endl;
5312 std::stringstream ss;
5322 const char *string_c_str = to_deserialize.c_str();
5323 size_t string_length = to_deserialize.length();
5448 std::stringstream ss;
5449 ss <<
"Config Group: DigitalInputs" << std::endl;
5459 std::stringstream ss;
5470 const char *string_c_str = to_deserialize.c_str();
5471 size_t string_length = to_deserialize.length();
5581 std::stringstream ss;
5582 ss <<
"Config Group: Quadrature" << std::endl;
5590 std::stringstream ss;
5599 const char *string_c_str = to_deserialize.c_str();
5600 size_t string_length = to_deserialize.length();
5765 std::stringstream ss;
5766 ss <<
"Config Group: PWM1" << std::endl;
5767 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
5775 std::stringstream ss;
5785 const char *string_c_str = to_deserialize.c_str();
5786 size_t string_length = to_deserialize.length();
5791 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_PWM1_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
5956 std::stringstream ss;
5957 ss <<
"Config Group: PWM2" << std::endl;
5958 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
5966 std::stringstream ss;
5976 const char *string_c_str = to_deserialize.c_str();
5977 size_t string_length = to_deserialize.length();
5982 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_PWM2_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
6016 units::dimensionless::scalar_t
kP = 0;
6034 units::dimensionless::scalar_t
kI = 0;
6053 units::dimensionless::scalar_t
kD = 0;
6075 units::dimensionless::scalar_t
kS = 0;
6091 units::dimensionless::scalar_t
kV = 0;
6108 units::dimensionless::scalar_t
kA = 0;
6122 units::dimensionless::scalar_t
kG = 0;
6184 kP = std::move(newKP);
6213 kI = std::move(newKI);
6243 kD = std::move(newKD);
6276 kS = std::move(newKS);
6303 kV = std::move(newKV);
6331 kA = std::move(newKA);
6356 kG = std::move(newKG);
6423 std::stringstream ss;
6424 ss <<
"Config Group: Slot0" << std::endl;
6425 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
6426 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
6427 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
6428 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
6429 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
6430 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
6431 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
6432 ss <<
" GravityType: " <<
GravityType << std::endl;
6439 std::stringstream ss;
6455 const char *string_c_str = to_deserialize.c_str();
6456 size_t string_length = to_deserialize.length();
6457 double kPVal =
kP.to<
double>();
6459 kP = units::dimensionless::scalar_t{kPVal};
6460 double kIVal =
kI.to<
double>();
6462 kI = units::dimensionless::scalar_t{kIVal};
6463 double kDVal =
kD.to<
double>();
6465 kD = units::dimensionless::scalar_t{kDVal};
6466 double kSVal =
kS.to<
double>();
6468 kS = units::dimensionless::scalar_t{kSVal};
6469 double kVVal =
kV.to<
double>();
6471 kV = units::dimensionless::scalar_t{kVVal};
6472 double kAVal =
kA.to<
double>();
6474 kA = units::dimensionless::scalar_t{kAVal};
6475 double kGVal =
kG.to<
double>();
6477 kG = units::dimensionless::scalar_t{kGVal};
6511 units::dimensionless::scalar_t
kP = 0;
6529 units::dimensionless::scalar_t
kI = 0;
6548 units::dimensionless::scalar_t
kD = 0;
6570 units::dimensionless::scalar_t
kS = 0;
6586 units::dimensionless::scalar_t
kV = 0;
6603 units::dimensionless::scalar_t
kA = 0;
6617 units::dimensionless::scalar_t
kG = 0;
6679 kP = std::move(newKP);
6708 kI = std::move(newKI);
6738 kD = std::move(newKD);
6771 kS = std::move(newKS);
6798 kV = std::move(newKV);
6826 kA = std::move(newKA);
6851 kG = std::move(newKG);
6918 std::stringstream ss;
6919 ss <<
"Config Group: Slot1" << std::endl;
6920 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
6921 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
6922 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
6923 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
6924 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
6925 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
6926 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
6927 ss <<
" GravityType: " <<
GravityType << std::endl;
6934 std::stringstream ss;
6950 const char *string_c_str = to_deserialize.c_str();
6951 size_t string_length = to_deserialize.length();
6952 double kPVal =
kP.to<
double>();
6954 kP = units::dimensionless::scalar_t{kPVal};
6955 double kIVal =
kI.to<
double>();
6957 kI = units::dimensionless::scalar_t{kIVal};
6958 double kDVal =
kD.to<
double>();
6960 kD = units::dimensionless::scalar_t{kDVal};
6961 double kSVal =
kS.to<
double>();
6963 kS = units::dimensionless::scalar_t{kSVal};
6964 double kVVal =
kV.to<
double>();
6966 kV = units::dimensionless::scalar_t{kVVal};
6967 double kAVal =
kA.to<
double>();
6969 kA = units::dimensionless::scalar_t{kAVal};
6970 double kGVal =
kG.to<
double>();
6972 kG = units::dimensionless::scalar_t{kGVal};
7006 units::dimensionless::scalar_t
kP = 0;
7024 units::dimensionless::scalar_t
kI = 0;
7043 units::dimensionless::scalar_t
kD = 0;
7065 units::dimensionless::scalar_t
kS = 0;
7081 units::dimensionless::scalar_t
kV = 0;
7098 units::dimensionless::scalar_t
kA = 0;
7112 units::dimensionless::scalar_t
kG = 0;
7174 kP = std::move(newKP);
7203 kI = std::move(newKI);
7233 kD = std::move(newKD);
7266 kS = std::move(newKS);
7293 kV = std::move(newKV);
7321 kA = std::move(newKA);
7346 kG = std::move(newKG);
7413 std::stringstream ss;
7414 ss <<
"Config Group: Slot2" << std::endl;
7415 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
7416 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
7417 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
7418 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
7419 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
7420 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
7421 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
7422 ss <<
" GravityType: " <<
GravityType << std::endl;
7429 std::stringstream ss;
7445 const char *string_c_str = to_deserialize.c_str();
7446 size_t string_length = to_deserialize.length();
7447 double kPVal =
kP.to<
double>();
7449 kP = units::dimensionless::scalar_t{kPVal};
7450 double kIVal =
kI.to<
double>();
7452 kI = units::dimensionless::scalar_t{kIVal};
7453 double kDVal =
kD.to<
double>();
7455 kD = units::dimensionless::scalar_t{kDVal};
7456 double kSVal =
kS.to<
double>();
7458 kS = units::dimensionless::scalar_t{kSVal};
7459 double kVVal =
kV.to<
double>();
7461 kV = units::dimensionless::scalar_t{kVVal};
7462 double kAVal =
kA.to<
double>();
7464 kA = units::dimensionless::scalar_t{kAVal};
7465 double kGVal =
kG.to<
double>();
7467 kG = units::dimensionless::scalar_t{kGVal};
7492 int StaticFeedforwardSignSpn;
7495 static inline std::map<int, SlotSpns>
const genericMap{
7497 ctre::phoenix6::spns::SpnValue::Slot0_kP,
7498 ctre::phoenix6::spns::SpnValue::Slot0_kI,
7499 ctre::phoenix6::spns::SpnValue::Slot0_kD,
7500 ctre::phoenix6::spns::SpnValue::Slot0_kS,
7501 ctre::phoenix6::spns::SpnValue::Slot0_kV,
7502 ctre::phoenix6::spns::SpnValue::Slot0_kA,
7503 ctre::phoenix6::spns::SpnValue::Slot0_kG,
7504 ctre::phoenix6::spns::SpnValue::Slot0_kG_Type,
7505 ctre::phoenix6::spns::SpnValue::Slot0_kS_Sign,
7509 ctre::phoenix6::spns::SpnValue::Slot1_kP,
7510 ctre::phoenix6::spns::SpnValue::Slot1_kI,
7511 ctre::phoenix6::spns::SpnValue::Slot1_kD,
7512 ctre::phoenix6::spns::SpnValue::Slot1_kS,
7513 ctre::phoenix6::spns::SpnValue::Slot1_kV,
7514 ctre::phoenix6::spns::SpnValue::Slot1_kA,
7515 ctre::phoenix6::spns::SpnValue::Slot1_kG,
7516 ctre::phoenix6::spns::SpnValue::Slot1_kG_Type,
7517 ctre::phoenix6::spns::SpnValue::Slot1_kS_Sign,
7521 ctre::phoenix6::spns::SpnValue::Slot2_kP,
7522 ctre::phoenix6::spns::SpnValue::Slot2_kI,
7523 ctre::phoenix6::spns::SpnValue::Slot2_kD,
7524 ctre::phoenix6::spns::SpnValue::Slot2_kS,
7525 ctre::phoenix6::spns::SpnValue::Slot2_kV,
7526 ctre::phoenix6::spns::SpnValue::Slot2_kA,
7527 ctre::phoenix6::spns::SpnValue::Slot2_kG,
7528 ctre::phoenix6::spns::SpnValue::Slot2_kG_Type,
7529 ctre::phoenix6::spns::SpnValue::Slot2_kS_Sign,
7552 units::dimensionless::scalar_t
kP = 0;
7570 units::dimensionless::scalar_t
kI = 0;
7589 units::dimensionless::scalar_t
kD = 0;
7611 units::dimensionless::scalar_t
kS = 0;
7627 units::dimensionless::scalar_t
kV = 0;
7644 units::dimensionless::scalar_t
kA = 0;
7658 units::dimensionless::scalar_t
kG = 0;
7720 kP = std::move(newKP);
7749 kI = std::move(newKI);
7779 kD = std::move(newKD);
7812 kS = std::move(newKS);
7839 kV = std::move(newKV);
7867 kA = std::move(newKA);
7892 kG = std::move(newKG);
7967 std::stringstream ss;
7968 ss <<
"Config Group: Slot" << std::endl;
7969 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
7970 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
7971 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
7972 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
7973 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
7974 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
7975 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
7976 ss <<
" GravityType: " <<
GravityType << std::endl;
7983 std::stringstream ss;
7984 SlotSpns currentSpns = genericMap.at(
SlotNumber);
8000 const char *string_c_str = to_deserialize.c_str();
8001 size_t string_length = to_deserialize.length();
8002 SlotSpns currentSpns = genericMap.at(
SlotNumber);
8003 double kPVal =
kP.to<
double>();
8005 kP = units::dimensionless::scalar_t{kPVal};
8006 double kIVal =
kI.to<
double>();
8008 kI = units::dimensionless::scalar_t{kIVal};
8009 double kDVal =
kD.to<
double>();
8011 kD = units::dimensionless::scalar_t{kDVal};
8012 double kSVal =
kS.to<
double>();
8014 kS = units::dimensionless::scalar_t{kSVal};
8015 double kVVal =
kV.to<
double>();
8017 kV = units::dimensionless::scalar_t{kVVal};
8018 double kAVal =
kA.to<
double>();
8020 kA = units::dimensionless::scalar_t{kAVal};
8021 double kGVal =
kG.to<
double>();
8023 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:3989
bool BeepOnConfig
If true, the TalonFX will beep during configuration API calls if device is disabled.
Definition Configs.hpp:4010
bool AllowMusicDurDisable
If true, the TalonFX will allow Orchestra and MusicTone requests during disabled state.
Definition Configs.hpp:4020
constexpr AudioConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:4094
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4104
std::string ToString() const override
Definition Configs.hpp:4084
constexpr AudioConfigs & WithBeepOnBoot(bool newBeepOnBoot)
Modifies this configuration's BeepOnBoot parameter and returns itself for method-chaining and easier ...
Definition Configs.hpp:4035
constexpr AudioConfigs & WithAllowMusicDurDisable(bool newAllowMusicDurDisable)
Modifies this configuration's AllowMusicDurDisable parameter and returns itself for method-chaining a...
Definition Configs.hpp:4076
constexpr AudioConfigs & WithBeepOnConfig(bool newBeepOnConfig)
Modifies this configuration's BeepOnConfig parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4055
bool BeepOnBoot
If true, the TalonFX will beep during boot-up.
Definition Configs.hpp:4001
Configs that affect general behavior during closed-looping.
Definition Configs.hpp:4648
bool ContinuousWrap
Wrap position error within [-0.5,+0.5) mechanism rotations.
Definition Configs.hpp:4664
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4708
constexpr ClosedLoopGeneralConfigs & WithContinuousWrap(bool newContinuousWrap)
Modifies this configuration's ContinuousWrap parameter and returns itself for method-chaining and eas...
Definition Configs.hpp:4684
std::string ToString() const override
Definition Configs.hpp:4692
std::string Serialize() const override
Definition Configs.hpp:4700
constexpr ClosedLoopGeneralConfigs()=default
Configs that affect the closed-loop control of this motor controller.
Definition Configs.hpp:3220
constexpr ClosedLoopRampsConfigs & WithDutyCycleClosedLoopRampPeriod(units::time::second_t newDutyCycleClosedLoopRampPeriod)
Modifies this configuration's DutyCycleClosedLoopRampPeriod parameter and returns itself for method-c...
Definition Configs.hpp:3301
std::string Serialize() const override
Definition Configs.hpp:3378
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:3240
constexpr ClosedLoopRampsConfigs & WithTorqueClosedLoopRampPeriod(units::time::second_t newTorqueClosedLoopRampPeriod)
Modifies this configuration's TorqueClosedLoopRampPeriod parameter and returns itself for method-chai...
Definition Configs.hpp:3360
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:3329
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:3277
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:3257
std::string ToString() const override
Definition Configs.hpp:3368
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3388
Configs that determine motor selection and commutation.
Definition Configs.hpp:5206
std::string ToString() const override
Definition Configs.hpp:5300
constexpr CommutationConfigs & WithAdvancedHallSupport(signals::AdvancedHallSupportValue newAdvancedHallSupport)
Modifies this configuration's AdvancedHallSupport parameter and returns itself for method-chaining an...
Definition Configs.hpp:5252
signals::BrushedMotorWiringValue BrushedMotorWiring
If a brushed motor is selected with Motor Arrangement, this config determines which of three leads to...
Definition Configs.hpp:5236
signals::AdvancedHallSupportValue AdvancedHallSupport
Requires Phoenix Pro; Improves commutation and velocity measurement for motors with hall sensors.
Definition Configs.hpp:5218
std::string Serialize() const override
Definition Configs.hpp:5310
signals::MotorArrangementValue MotorArrangement
Selects the motor and motor connections used with Talon.
Definition Configs.hpp:5230
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:5292
constexpr CommutationConfigs & WithMotorArrangement(signals::MotorArrangementValue newMotorArrangement)
Modifies this configuration's MotorArrangement parameter and returns itself for method-chaining and e...
Definition Configs.hpp:5275
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5320
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:4544
std::string ToString() const override
Definition Configs.hpp:4613
int CustomParam0
Custom parameter 0.
Definition Configs.hpp:4557
std::string Serialize() const override
Definition Configs.hpp:4622
int CustomParam1
Custom parameter 1.
Definition Configs.hpp:4567
constexpr CustomParamsConfigs & WithCustomParam0(int newCustomParam0)
Modifies this configuration's CustomParam0 parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4584
constexpr CustomParamsConfigs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4631
constexpr CustomParamsConfigs & WithCustomParam1(int newCustomParam1)
Modifies this configuration's CustomParam1 parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4605
Configs related to constants used for differential control of a mechanism.
Definition Configs.hpp:2908
units::current::ampere_t PeakDifferentialTorqueCurrent
Maximum differential output during torque current based differential control modes.
Definition Configs.hpp:2941
std::string Serialize() const override
Definition Configs.hpp:3018
std::string ToString() const override
Definition Configs.hpp:3008
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3028
constexpr DifferentialConstantsConfigs & WithPeakDifferentialVoltage(units::voltage::volt_t newPeakDifferentialVoltage)
Modifies this configuration's PeakDifferentialVoltage parameter and returns itself for method-chainin...
Definition Configs.hpp:2979
constexpr DifferentialConstantsConfigs()=default
units::dimensionless::scalar_t PeakDifferentialDutyCycle
Maximum differential output during duty cycle based differential control modes.
Definition Configs.hpp:2921
constexpr DifferentialConstantsConfigs & WithPeakDifferentialTorqueCurrent(units::current::ampere_t newPeakDifferentialTorqueCurrent)
Modifies this configuration's PeakDifferentialTorqueCurrent parameter and returns itself for method-c...
Definition Configs.hpp:3000
constexpr DifferentialConstantsConfigs & WithPeakDifferentialDutyCycle(units::dimensionless::scalar_t newPeakDifferentialDutyCycle)
Modifies this configuration's PeakDifferentialDutyCycle parameter and returns itself for method-chain...
Definition Configs.hpp:2958
units::voltage::volt_t PeakDifferentialVoltage
Maximum differential output during voltage based differential control modes.
Definition Configs.hpp:2931
Configs related to sensors used for differential control of a mechanism.
Definition Configs.hpp:2729
constexpr DifferentialSensorsConfigs()=default
constexpr DifferentialSensorsConfigs & WithDifferentialTalonFXSensorID(int newDifferentialTalonFXSensorID)
Modifies this configuration's DifferentialTalonFXSensorID parameter and returns itself for method-cha...
Definition Configs.hpp:2839
constexpr DifferentialSensorsConfigs & WithDifferentialSensorSource(signals::DifferentialSensorSourceValue newDifferentialSensorSource)
Modifies this configuration's DifferentialSensorSource parameter and returns itself for method-chaini...
Definition Configs.hpp:2818
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2889
std::string Serialize() const override
Definition Configs.hpp:2879
std::string ToString() const override
Definition Configs.hpp:2869
signals::DifferentialSensorSourceValue DifferentialSensorSource
Choose what sensor source is used for differential control of a mechanism.
Definition Configs.hpp:2761
int DifferentialRemoteSensorID
Device ID of which remote sensor to use on the differential axis.
Definition Configs.hpp:2782
constexpr DifferentialSensorsConfigs & WithDifferentialRemoteSensorID(int newDifferentialRemoteSensorID)
Modifies this configuration's DifferentialRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:2861
int DifferentialTalonFXSensorID
Device ID of which remote Talon FX to use.
Definition Configs.hpp:2771
Configs that affect the external feedback sensor of this motor controller.
Definition Configs.hpp:2005
constexpr ExternalFeedbackConfigs & WithSensorPhase(signals::SensorPhaseValue newSensorPhase)
Modifies this configuration's SensorPhase parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:2420
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:2028
constexpr ExternalFeedbackConfigs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2694
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:2205
units::time::second_t VelocityFilterTimeConstant
The configurable time constant of the Kalman velocity filter.
Definition Configs.hpp:2070
constexpr ExternalFeedbackConfigs & WithVelocityFilterTimeConstant(units::time::second_t newVelocityFilterTimeConstant)
Modifies this configuration's VelocityFilterTimeConstant parameter and returns itself for method-chai...
Definition Configs.hpp:2307
ExternalFeedbackConfigs & WithSyncCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Sync CANdi 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:2134
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:2045
ExternalFeedbackConfigs & WithFusedCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Fused CANdi PWM 2 by passing in the CANdi objec...
ExternalFeedbackConfigs & WithRemoteCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Remote CANdi PWM 1 by passing in the CANdi obje...
constexpr ExternalFeedbackConfigs & WithQuadratureEdgesPerRotation(int newQuadratureEdgesPerRotation)
Modifies this configuration's QuadratureEdgesPerRotation parameter and returns itself for method-chai...
Definition Configs.hpp:2453
ExternalFeedbackConfigs & WithFusedCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Fused CANdi PWM 1 by passing in the CANdi objec...
constexpr ExternalFeedbackConfigs & WithFeedbackRemoteSensorID(int newFeedbackRemoteSensorID)
Modifies this configuration's FeedbackRemoteSensorID parameter and returns itself for method-chaining...
Definition Configs.hpp:2281
ExternalFeedbackConfigs & WithFusedCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Fused CANdi Quadrature by passing in the CANdi ...
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:2393
constexpr ExternalFeedbackConfigs & WithRotorToSensorRatio(units::dimensionless::scalar_t newRotorToSensorRatio)
Modifies this configuration's RotorToSensorRatio parameter and returns itself for method-chaining and...
Definition Configs.hpp:2260
ExternalFeedbackConfigs & WithSyncCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Sync CANdi PWM 2 by passing in the CANdi object...
std::string ToString() const override
Definition Configs.hpp:2662
signals::SensorPhaseValue SensorPhase
The relationship between the motor controlled by a Talon and the external sensor connected to the dat...
Definition Configs.hpp:2150
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:2084
ExternalFeedbackConfigs & WithRemoteCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Remote CANdi Quadrature by passing in the CANdi...
int FeedbackRemoteSensorID
Device ID of which remote device to use.
Definition Configs.hpp:2055
constexpr ExternalFeedbackConfigs & WithSensorToMechanismRatio(units::dimensionless::scalar_t newSensorToMechanismRatio)
Modifies this configuration's SensorToMechanismRatio parameter and returns itself for method-chaining...
Definition Configs.hpp:2232
constexpr ExternalFeedbackConfigs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:2497
std::string Serialize() const override
Definition Configs.hpp:2678
ExternalFeedbackConfigs & WithRemoteCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Remote CANdi PWM 2 by passing in the CANdi obje...
int QuadratureEdgesPerRotation
The number of quadrature edges in one rotation for the quadrature sensor connected to the Talon data ...
Definition Configs.hpp:2172
constexpr ExternalFeedbackConfigs & WithAbsoluteSensorOffset(units::angle::turn_t newAbsoluteSensorOffset)
Modifies this configuration's AbsoluteSensorOffset parameter and returns itself for method-chaining a...
Definition Configs.hpp:2332
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 Sync CANdi PWM 2 by passing in the CANdi object...
FeedbackConfigs & WithFusedCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Fused CANdi PWM 1 by passing in the CANdi objec...
std::string ToString() const override
Definition Configs.hpp:1946
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 Remote CANdi PWM 2 by passing in the CANdi obje...
FeedbackConfigs & WithRemoteCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Remote CANdi Quadrature by passing in the CANdi...
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1972
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:1959
FeedbackConfigs & WithRemoteCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use Remote CANdi PWM 1 by passing in the CANdi obje...
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 Fused CANdi Quadrature by passing in the CANdi ...
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 Sync CANdi 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 Fused CANdi PWM 2 by passing in the CANdi objec...
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:4993
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:5122
std::string ToString() const override
Definition Configs.hpp:5156
units::angle::degree_t FOVCenterY
Specifies the target center of the Field of View in the Y direction.
Definition Configs.hpp:5022
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:5148
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5178
constexpr FovParamsConfigs()=default
units::angle::degree_t FOVRangeX
Specifies the target range of the Field of View in the X direction.
Definition Configs.hpp:5037
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:5072
std::string Serialize() const override
Definition Configs.hpp:5167
units::angle::degree_t FOVCenterX
Specifies the target center of the Field of View in the X direction.
Definition Configs.hpp:5009
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:5096
units::angle::degree_t FOVRangeY
Specifies the target range of the Field of View in the Y direction.
Definition Configs.hpp:5052
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:3415
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:3920
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:3424
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:3596
units::angle::turn_t ForwardLimitAutosetPositionValue
The value to automatically set the position to when the forward limit switch is asserted.
Definition Configs.hpp:3443
signals::ForwardLimitSourceValue ForwardLimitSource
Determines where to poll the forward limit switch.
Definition Configs.hpp:3470
constexpr HardwareLimitSwitchConfigs & WithForwardLimitEnable(bool newForwardLimitEnable)
Modifies this configuration's ForwardLimitEnable parameter and returns itself for method-chaining and...
Definition Configs.hpp:3614
bool ForwardLimitEnable
If enabled, motor output is set to neutral when the forward limit switch is asserted and positive out...
Definition Configs.hpp:3450
bool ReverseLimitAutosetPositionEnable
If enabled, the position is automatically set to a specific value, specified by ReverseLimitAutosetPo...
Definition Configs.hpp:3494
bool ForwardLimitAutosetPositionEnable
If enabled, the position is automatically set to a specific value, specified by ForwardLimitAutosetPo...
Definition Configs.hpp:3432
constexpr HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionValue(units::angle::turn_t newReverseLimitAutosetPositionValue)
Modifies this configuration's ReverseLimitAutosetPositionValue parameter and returns itself for metho...
Definition Configs.hpp:3723
constexpr HardwareLimitSwitchConfigs & WithReverseLimitSource(signals::ReverseLimitSourceValue newReverseLimitSource)
Modifies this configuration's ReverseLimitSource parameter and returns itself for method-chaining and...
Definition Configs.hpp:3771
signals::ReverseLimitTypeValue ReverseLimitType
Determines if the reverse limit switch is normally-open (default) or normally-closed.
Definition Configs.hpp:3486
units::angle::turn_t ReverseLimitAutosetPositionValue
The value to automatically set the position to when the reverse limit switch is asserted.
Definition Configs.hpp:3505
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:3574
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3958
constexpr HardwareLimitSwitchConfigs & WithForwardLimitRemoteSensorID(int newForwardLimitRemoteSensorID)
Modifies this configuration's ForwardLimitRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:3665
constexpr HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionEnable(bool newReverseLimitAutosetPositionEnable)
Modifies this configuration's ReverseLimitAutosetPositionEnable parameter and returns itself for meth...
Definition Configs.hpp:3701
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:3682
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:3741
int ForwardLimitRemoteSensorID
Device ID of the remote device if using remote limit switch features for the forward limit switch.
Definition Configs.hpp:3480
constexpr HardwareLimitSwitchConfigs & WithForwardLimitType(signals::ForwardLimitTypeValue newForwardLimitType)
Modifies this configuration's ForwardLimitType parameter and returns itself for method-chaining and e...
Definition Configs.hpp:3555
signals::ReverseLimitSourceValue ReverseLimitSource
Determines where to poll the reverse limit switch.
Definition Configs.hpp:3532
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:3939
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:3792
constexpr HardwareLimitSwitchConfigs & WithForwardLimitSource(signals::ForwardLimitSourceValue newForwardLimitSource)
Modifies this configuration's ForwardLimitSource parameter and returns itself for method-chaining and...
Definition Configs.hpp:3644
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:3512
int ReverseLimitRemoteSensorID
Device ID of the remote device if using remote limit switch features for the reverse limit switch.
Definition Configs.hpp:3542
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:4288
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:4362
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:4406
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:4347
constexpr MotionMagicConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:4502
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:4384
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:4317
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:4432
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:4306
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:4332
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4514
std::string ToString() const override
Definition Configs.hpp:4490
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:4482
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:4457
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:3053
constexpr OpenLoopRampsConfigs & WithVoltageOpenLoopRampPeriod(units::time::second_t newVoltageOpenLoopRampPeriod)
Modifies this configuration's VoltageOpenLoopRampPeriod parameter and returns itself for method-chain...
Definition Configs.hpp:3143
constexpr OpenLoopRampsConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:3185
constexpr OpenLoopRampsConfigs & WithDutyCycleOpenLoopRampPeriod(units::time::second_t newDutyCycleOpenLoopRampPeriod)
Modifies this configuration's DutyCycleOpenLoopRampPeriod parameter and returns itself for method-cha...
Definition Configs.hpp:3118
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:3084
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:3097
std::string ToString() const override
Definition Configs.hpp:3175
constexpr OpenLoopRampsConfigs & WithTorqueOpenLoopRampPeriod(units::time::second_t newTorqueOpenLoopRampPeriod)
Modifies this configuration's TorqueOpenLoopRampPeriod parameter and returns itself for method-chaini...
Definition Configs.hpp:3167
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:3070
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3195
Configs related to CANdi's PWM interface on the Signal 1 input (S1IN)
Definition Configs.hpp:5617
constexpr PWM1Configs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:5755
units::angle::turn_t AbsoluteSensorOffset
The offset applied to the PWM sensor.
Definition Configs.hpp:5632
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:5692
bool SensorDirection
Direction of the PWM sensor to determine positive rotation.
Definition Configs.hpp:5673
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5783
std::string ToString() const override
Definition Configs.hpp:5763
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:5665
constexpr PWM1Configs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:5736
std::string Serialize() const override
Definition Configs.hpp:5773
Configs related to CANdi's PWM interface on the Signal 2 input (S2IN)
Definition Configs.hpp:5808
units::angle::turn_t AbsoluteSensorOffset
The offset applied to the PWM sensor.
Definition Configs.hpp:5823
std::string Serialize() const override
Definition Configs.hpp:5964
constexpr PWM2Configs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:5927
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:5856
constexpr PWM2Configs & WithAbsoluteSensorOffset(units::angle::turn_t newAbsoluteSensorOffset)
Modifies this configuration's AbsoluteSensorOffset parameter and returns itself for method-chaining a...
Definition Configs.hpp:5883
constexpr PWM2Configs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5974
std::string ToString() const override
Definition Configs.hpp:5954
constexpr PWM2Configs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:5946
bool SensorDirection
Direction of the PWM sensor to determine positive rotation.
Definition Configs.hpp:5864
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:4825
constexpr ProximityParamsConfigs()=default
units::dimensionless::scalar_t MinSignalStrengthForValidMeasurement
The minimum allowable signal strength before determining the measurement is valid.
Definition Configs.hpp:4870
std::string ToString() const override
Definition Configs.hpp:4949
constexpr ProximityParamsConfigs & WithProximityThreshold(units::length::meter_t newProximityThreshold)
Modifies this configuration's ProximityThreshold parameter and returns itself for method-chaining and...
Definition Configs.hpp:4886
constexpr ProximityParamsConfigs & WithMinSignalStrengthForValidMeasurement(units::dimensionless::scalar_t newMinSignalStrengthForValidMeasurement)
Modifies this configuration's MinSignalStrengthForValidMeasurement parameter and returns itself for m...
Definition Configs.hpp:4941
std::string Serialize() const override
Definition Configs.hpp:4959
units::length::meter_t ProximityThreshold
Threshold for object detection.
Definition Configs.hpp:4837
constexpr ProximityParamsConfigs & WithProximityHysteresis(units::length::meter_t newProximityHysteresis)
Modifies this configuration's ProximityHysteresis parameter and returns itself for method-chaining an...
Definition Configs.hpp:4914
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4969
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:4854
Configs related to CANdi's quadrature interface using both the S1IN and S2IN inputs.
Definition Configs.hpp:5490
int QuadratureEdgesPerRotation
The number of quadrature edges in one rotation for the quadrature sensor connected to the Talon data ...
Definition Configs.hpp:5515
std::string ToString() const override
Definition Configs.hpp:5579
constexpr QuadratureConfigs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:5571
std::string Serialize() const override
Definition Configs.hpp:5588
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5597
bool SensorDirection
Direction of the quadrature sensor to determine positive rotation.
Definition Configs.hpp:5523
constexpr QuadratureConfigs()=default
constexpr QuadratureConfigs & WithQuadratureEdgesPerRotation(int newQuadratureEdgesPerRotation)
Modifies this configuration's QuadratureEdgesPerRotation parameter and returns itself for method-chai...
Definition Configs.hpp:5552
Gains for the specified slot.
Definition Configs.hpp:5997
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:6075
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:6211
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:6108
static Slot0Configs From(const SlotConfigs &value)
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:6159
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:6329
std::string ToString() const override
Definition Configs.hpp:6421
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:6141
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:6274
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:6016
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:6182
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:6301
constexpr Slot0Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:6413
constexpr Slot0Configs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:6453
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:6354
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:6053
constexpr Slot0Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:6384
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:6091
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:6241
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:6122
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:6034
std::string Serialize() const override
Definition Configs.hpp:6437
Gains for the specified slot.
Definition Configs.hpp:6492
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:6511
std::string Serialize() const override
Definition Configs.hpp:6932
static Slot1Configs From(const SlotConfigs &value)
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:6617
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:6706
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:6769
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:6603
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:6570
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:6548
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:6529
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:6654
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:6586
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:6677
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:6849
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:6796
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:6736
constexpr Slot1Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:6908
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:6824
std::string ToString() const override
Definition Configs.hpp:6916
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:6636
constexpr Slot1Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:6879
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:6948
Gains for the specified slot.
Definition Configs.hpp:6987
std::string Serialize() const override
Definition Configs.hpp:7427
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:7344
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:7231
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:7264
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:7098
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:7131
constexpr Slot2Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:7374
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:7443
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:7201
constexpr Slot2Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:7403
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:7065
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:7172
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:7081
constexpr Slot2Configs()=default
static Slot2Configs From(const SlotConfigs &value)
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:7043
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:7291
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:7006
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:7149
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:7024
std::string ToString() const override
Definition Configs.hpp:7411
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:7319
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:7112
Gains for the specified slot.
Definition Configs.hpp:7481
static SlotConfigs From(const Slot2Configs &value)
std::string ToString() const
Definition Configs.hpp:7965
constexpr SlotConfigs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:7920
static SlotConfigs From(const Slot1Configs &value)
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:7570
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:7810
constexpr SlotConfigs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:7949
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize)
Definition Configs.hpp:7998
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:7777
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:7695
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:7627
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:7611
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:7837
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:7552
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:7865
int SlotNumber
Chooses which slot these configs are for.
Definition Configs.hpp:7959
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:7589
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:7718
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:7644
std::string Serialize() const
Definition Configs.hpp:7981
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:7747
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:7677
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:7890
constexpr SlotConfigs()=default
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:7658
Configs that affect how software-limit switches behave.
Definition Configs.hpp:4123
units::angle::turn_t ReverseSoftLimitThreshold
Position threshold for reverse soft limit features.
Definition Configs.hpp:4160
constexpr SoftwareLimitSwitchConfigs()=default
std::string ToString() const override
Definition Configs.hpp:4242
constexpr SoftwareLimitSwitchConfigs & WithForwardSoftLimitThreshold(units::angle::turn_t newForwardSoftLimitThreshold)
Modifies this configuration's ForwardSoftLimitThreshold parameter and returns itself for method-chain...
Definition Configs.hpp:4213
units::angle::turn_t ForwardSoftLimitThreshold
Position threshold for forward soft limit features.
Definition Configs.hpp:4150
constexpr SoftwareLimitSwitchConfigs & WithReverseSoftLimitThreshold(units::angle::turn_t newReverseSoftLimitThreshold)
Modifies this configuration's ReverseSoftLimitThreshold parameter and returns itself for method-chain...
Definition Configs.hpp:4234
constexpr SoftwareLimitSwitchConfigs & WithReverseSoftLimitEnable(bool newReverseSoftLimitEnable)
Modifies this configuration's ReverseSoftLimitEnable parameter and returns itself for method-chaining...
Definition Configs.hpp:4192
std::string Serialize() const override
Definition Configs.hpp:4253
bool ReverseSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ReverseSoftLimitThreshold and reve...
Definition Configs.hpp:4140
constexpr SoftwareLimitSwitchConfigs & WithForwardSoftLimitEnable(bool newForwardSoftLimitEnable)
Modifies this configuration's ForwardSoftLimitEnable parameter and returns itself for method-chaining...
Definition Configs.hpp:4174
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4264
bool ForwardSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ForwardSoftLimitThreshold and forw...
Definition Configs.hpp:4133
Configs that affect the ToF sensor.
Definition Configs.hpp:4724
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:4779
std::string Serialize() const override
Definition Configs.hpp:4796
signals::UpdateModeValue UpdateMode
Update mode of the CANrange.
Definition Configs.hpp:4733
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:4757
units::frequency::hertz_t UpdateFrequency
Rate at which the CANrange will take measurements.
Definition Configs.hpp:4744
std::string ToString() const override
Definition Configs.hpp:4787
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4805
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 CANdi, a CAN digital input device that detects when a digital signal is asserted or deasser...
Definition CoreCANdi.hpp:911
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:3760
static constexpr int Disabled
Talon will utilize hall sensors without advanced features.
Definition SpnEnums.hpp:3767
int value
Definition SpnEnums.hpp:3762
If a brushed motor is selected with Motor Arrangement, this config determines which of three leads to...
Definition SpnEnums.hpp:4901
int value
Definition SpnEnums.hpp:4903
static constexpr int Leads_A_and_B
Third party brushed DC motor with two leads.
Definition SpnEnums.hpp:4916
Choose what sensor source is used for differential control of a mechanism.
Definition SpnEnums.hpp:3236
static constexpr int Disabled
Disable differential control.
Definition SpnEnums.hpp:3243
int value
Definition SpnEnums.hpp:3238
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition SpnEnums.hpp:4388
int value
Definition SpnEnums.hpp:4390
static constexpr int Commutation
Use the external sensor used for motor commutation.
Definition SpnEnums.hpp:4395
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:3849
int value
Definition SpnEnums.hpp:3851
static constexpr int Disabled
Motor is not selected.
Definition SpnEnums.hpp:3858
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:2911
int value
Definition SpnEnums.hpp:2913
static constexpr int LimitSwitchPin
Use the reverse limit switch pin on the limit switch connector.
Definition SpnEnums.hpp:2918
Determines if the reverse limit switch is normally-open (default) or normally-closed.
Definition SpnEnums.hpp:2824
static constexpr int NormallyOpen
Definition SpnEnums.hpp:2828
int value
Definition SpnEnums.hpp:2826
What value the Signal 1 input (S1IN) needs to be for the CANdi to detect as Closed.
Definition SpnEnums.hpp:4698
int value
Definition SpnEnums.hpp:4700
static constexpr int CloseWhenNotFloating
The S1 input will be treated as closed when it is not floating.
Definition SpnEnums.hpp:4705
The floating state of the Signal 1 input (S1IN).
Definition SpnEnums.hpp:4158
int value
Definition SpnEnums.hpp:4160
static constexpr int FloatDetect
The input will attempt to detect when it is floating.
Definition SpnEnums.hpp:4166
What value the Signal 2 input (S2IN) needs to be for the CANdi to detect as Closed.
Definition SpnEnums.hpp:4801
int value
Definition SpnEnums.hpp:4803
static constexpr int CloseWhenNotFloating
The S2 input will be treated as closed when it is not floating.
Definition SpnEnums.hpp:4808
The floating state of the Signal 2 input (S2IN).
Definition SpnEnums.hpp:4251
int value
Definition SpnEnums.hpp:4253
static constexpr int FloatDetect
The input will attempt to detect when it is floating.
Definition SpnEnums.hpp:4259
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:4615
int value
Definition SpnEnums.hpp:4617
static constexpr int Aligned
The sensor direction is normally aligned with the motor.
Definition SpnEnums.hpp:4622
Static Feedforward Sign during position closed loop.
Definition SpnEnums.hpp:3366
int value
Definition SpnEnums.hpp:3368
static constexpr int UseVelocitySign
Use the velocity reference sign.
Definition SpnEnums.hpp:3375
Update mode of the CANrange.
Definition SpnEnums.hpp:3670
int value
Definition SpnEnums.hpp:3672
static constexpr int ShortRange100Hz
Updates distance/proximity at 100hz using short-range detection mode.
Definition SpnEnums.hpp:3677
Status codes reported by APIs, including OK, warnings, and errors.
Definition StatusCodes.h:27
Definition MotionMagicExpoTorqueCurrentFOC.hpp:18