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; }
218 std::stringstream ss;
219 ss <<
"Config Group: MagnetSensor" << std::endl;
221 ss <<
" MagnetOffset: " <<
MagnetOffset.to<
double>() <<
" rotations" << std::endl;
228 std::stringstream ss;
238 const char *string_c_str = to_deserialize.c_str();
239 size_t string_length = to_deserialize.length();
245 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
356 std::stringstream ss;
357 ss <<
"Config Group: MountPose" << std::endl;
358 ss <<
" MountPoseYaw: " <<
MountPoseYaw.to<
double>() <<
" deg" << std::endl;
359 ss <<
" MountPosePitch: " <<
MountPosePitch.to<
double>() <<
" deg" << std::endl;
360 ss <<
" MountPoseRoll: " <<
MountPoseRoll.to<
double>() <<
" deg" << std::endl;
366 std::stringstream ss;
376 const char *string_c_str = to_deserialize.c_str();
377 size_t string_length = to_deserialize.length();
498 std::stringstream ss;
499 ss <<
"Config Group: GyroTrim" << std::endl;
500 ss <<
" GyroScalarX: " <<
GyroScalarX.to<
double>() <<
" deg per rotation" << std::endl;
501 ss <<
" GyroScalarY: " <<
GyroScalarY.to<
double>() <<
" deg per rotation" << std::endl;
502 ss <<
" GyroScalarZ: " <<
GyroScalarZ.to<
double>() <<
" deg per rotation" << std::endl;
508 std::stringstream ss;
518 const char *string_c_str = to_deserialize.c_str();
519 size_t string_length = to_deserialize.length();
522 GyroScalarX = units::dimensionless::scalar_t{GyroScalarXVal};
525 GyroScalarY = units::dimensionless::scalar_t{GyroScalarYVal};
528 GyroScalarZ = units::dimensionless::scalar_t{GyroScalarZVal};
624 std::stringstream ss;
625 ss <<
"Config Group: Pigeon2Features" << std::endl;
634 std::stringstream ss;
644 const char *string_c_str = to_deserialize.c_str();
645 size_t string_length = to_deserialize.length();
848 std::stringstream ss;
849 ss <<
"Config Group: MotorOutput" << std::endl;
850 ss <<
" Inverted: " <<
Inverted << std::endl;
851 ss <<
" NeutralMode: " <<
NeutralMode << std::endl;
853 ss <<
" PeakForwardDutyCycle: " <<
PeakForwardDutyCycle.to<
double>() <<
" fractional" << std::endl;
854 ss <<
" PeakReverseDutyCycle: " <<
PeakReverseDutyCycle.to<
double>() <<
" fractional" << std::endl;
861 std::stringstream ss;
874 const char *string_c_str = to_deserialize.c_str();
875 size_t string_length = to_deserialize.length();
1152 std::stringstream ss;
1153 ss <<
"Config Group: CurrentLimits" << std::endl;
1154 ss <<
" StatorCurrentLimit: " <<
StatorCurrentLimit.to<
double>() <<
" A" << std::endl;
1156 ss <<
" SupplyCurrentLimit: " <<
SupplyCurrentLimit.to<
double>() <<
" A" << std::endl;
1165 std::stringstream ss;
1178 const char *string_c_str = to_deserialize.c_str();
1179 size_t string_length = to_deserialize.length();
1312 std::stringstream ss;
1313 ss <<
"Config Group: Voltage" << std::endl;
1315 ss <<
" PeakForwardVoltage: " <<
PeakForwardVoltage.to<
double>() <<
" V" << std::endl;
1316 ss <<
" PeakReverseVoltage: " <<
PeakReverseVoltage.to<
double>() <<
" V" << std::endl;
1322 std::stringstream ss;
1332 const char *string_c_str = to_deserialize.c_str();
1333 size_t string_length = to_deserialize.length();
1456 std::stringstream ss;
1457 ss <<
"Config Group: TorqueCurrent" << std::endl;
1466 std::stringstream ss;
1476 const char *string_c_str = to_deserialize.c_str();
1477 size_t string_length = to_deserialize.length();
1964 std::stringstream ss;
1965 ss <<
"Config Group: Feedback" << std::endl;
1966 ss <<
" FeedbackRotorOffset: " <<
FeedbackRotorOffset.to<
double>() <<
" rotations" << std::endl;
1968 ss <<
" RotorToSensorRatio: " <<
RotorToSensorRatio.to<
double>() <<
" scalar" << std::endl;
1977 std::stringstream ss;
1990 const char *string_c_str = to_deserialize.c_str();
1991 size_t string_length = to_deserialize.length();
2696 std::stringstream ss;
2697 ss <<
"Config Group: ExternalFeedback" << std::endl;
2699 ss <<
" RotorToSensorRatio: " <<
RotorToSensorRatio.to<
double>() <<
" scalar" << std::endl;
2702 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
2704 ss <<
" SensorPhase: " <<
SensorPhase << std::endl;
2712 std::stringstream ss;
2728 const char *string_c_str = to_deserialize.c_str();
2729 size_t string_length = to_deserialize.length();
2747 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
2903 std::stringstream ss;
2904 ss <<
"Config Group: DifferentialSensors" << std::endl;
2913 std::stringstream ss;
2923 const char *string_c_str = to_deserialize.c_str();
2924 size_t string_length = to_deserialize.length();
3042 std::stringstream ss;
3043 ss <<
"Config Group: DifferentialConstants" << std::endl;
3052 std::stringstream ss;
3062 const char *string_c_str = to_deserialize.c_str();
3063 size_t string_length = to_deserialize.length();
3209 std::stringstream ss;
3210 ss <<
"Config Group: OpenLoopRamps" << std::endl;
3219 std::stringstream ss;
3229 const char *string_c_str = to_deserialize.c_str();
3230 size_t string_length = to_deserialize.length();
3232 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_DutyCycleOpenLoopRampPeriod, string_c_str, string_length, &DutyCycleOpenLoopRampPeriodVal);
3402 std::stringstream ss;
3403 ss <<
"Config Group: ClosedLoopRamps" << std::endl;
3412 std::stringstream ss;
3422 const char *string_c_str = to_deserialize.c_str();
3423 size_t string_length = to_deserialize.length();
3425 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_DutyCycleClosedLoopRampPeriod, string_c_str, string_length, &DutyCycleClosedLoopRampPeriodVal);
3428 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_VoltageClosedLoopRampPeriod, string_c_str, string_length, &VoltageClosedLoopRampPeriodVal);
3954 std::stringstream ss;
3955 ss <<
"Config Group: HardwareLimitSwitch" << std::endl;
3973 std::stringstream ss;
3992 const char *string_c_str = to_deserialize.c_str();
3993 size_t string_length = to_deserialize.length();
3997 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_ForwardLimitAutosetPosValue, string_c_str, string_length, &ForwardLimitAutosetPositionValueVal);
4005 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_ReverseLimitAutosetPosValue, string_c_str, string_length, &ReverseLimitAutosetPositionValueVal);
4118 std::stringstream ss;
4119 ss <<
"Config Group: Audio" << std::endl;
4120 ss <<
" BeepOnBoot: " <<
BeepOnBoot << std::endl;
4128 std::stringstream ss;
4138 const char *string_c_str = to_deserialize.c_str();
4139 size_t string_length = to_deserialize.length();
4276 std::stringstream ss;
4277 ss <<
"Config Group: SoftwareLimitSwitch" << std::endl;
4287 std::stringstream ss;
4298 const char *string_c_str = to_deserialize.c_str();
4299 size_t string_length = to_deserialize.length();
4524 std::stringstream ss;
4525 ss <<
"Config Group: MotionMagic" << std::endl;
4528 ss <<
" MotionMagicJerk: " <<
MotionMagicJerk.to<
double>() <<
" rot per sec³" << std::endl;
4529 ss <<
" MotionMagicExpo_kV: " <<
MotionMagicExpo_kV.to<
double>() <<
" V/rps" << std::endl;
4530 ss <<
" MotionMagicExpo_kA: " <<
MotionMagicExpo_kA.to<
double>() <<
" V/rps²" << std::endl;
4536 std::stringstream ss;
4548 const char *string_c_str = to_deserialize.c_str();
4549 size_t string_length = to_deserialize.length();
4555 MotionMagicAcceleration = units::angular_acceleration::turns_per_second_squared_t{MotionMagicAccelerationVal};
4558 MotionMagicJerk = units::angular_jerk::turns_per_second_cubed_t{MotionMagicJerkVal};
4564 MotionMagicExpo_kA = ctre::unit::volts_per_turn_per_second_squared_t{MotionMagicExpo_kAVal};
4647 std::stringstream ss;
4648 ss <<
"Config Group: CustomParams" << std::endl;
4656 std::stringstream ss;
4665 const char *string_c_str = to_deserialize.c_str();
4666 size_t string_length = to_deserialize.length();
4726 std::stringstream ss;
4727 ss <<
"Config Group: ClosedLoopGeneral" << std::endl;
4734 std::stringstream ss;
4742 const char *string_c_str = to_deserialize.c_str();
4743 size_t string_length = to_deserialize.length();
4821 std::stringstream ss;
4822 ss <<
"Config Group: ToFParams" << std::endl;
4823 ss <<
" UpdateMode: " <<
UpdateMode << std::endl;
4824 ss <<
" UpdateFrequency: " <<
UpdateFrequency.to<
double>() <<
" Hz" << std::endl;
4830 std::stringstream ss;
4839 const char *string_c_str = to_deserialize.c_str();
4840 size_t string_length = to_deserialize.length();
4983 std::stringstream ss;
4984 ss <<
"Config Group: ProximityParams" << std::endl;
4985 ss <<
" ProximityThreshold: " <<
ProximityThreshold.to<
double>() <<
" m" << std::endl;
4993 std::stringstream ss;
5003 const char *string_c_str = to_deserialize.c_str();
5004 size_t string_length = to_deserialize.length();
5012 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::CANrange_MinSigStrengthForValidMeas, string_c_str, string_length, &MinSignalStrengthForValidMeasurementVal);
5190 std::stringstream ss;
5191 ss <<
"Config Group: FovParams" << std::endl;
5192 ss <<
" FOVCenterX: " <<
FOVCenterX.to<
double>() <<
" deg" << std::endl;
5193 ss <<
" FOVCenterY: " <<
FOVCenterY.to<
double>() <<
" deg" << std::endl;
5194 ss <<
" FOVRangeX: " <<
FOVRangeX.to<
double>() <<
" deg" << std::endl;
5195 ss <<
" FOVRangeY: " <<
FOVRangeY.to<
double>() <<
" deg" << std::endl;
5201 std::stringstream ss;
5212 const char *string_c_str = to_deserialize.c_str();
5213 size_t string_length = to_deserialize.length();
5214 double FOVCenterXVal =
FOVCenterX.to<
double>();
5216 FOVCenterX = units::angle::degree_t{FOVCenterXVal};
5217 double FOVCenterYVal =
FOVCenterY.to<
double>();
5219 FOVCenterY = units::angle::degree_t{FOVCenterYVal};
5220 double FOVRangeXVal =
FOVRangeX.to<
double>();
5222 FOVRangeX = units::angle::degree_t{FOVRangeXVal};
5223 double FOVRangeYVal =
FOVRangeY.to<
double>();
5225 FOVRangeY = units::angle::degree_t{FOVRangeYVal};
5334 std::stringstream ss;
5335 ss <<
"Config Group: Commutation" << std::endl;
5344 std::stringstream ss;
5354 const char *string_c_str = to_deserialize.c_str();
5355 size_t string_length = to_deserialize.length();
5481 std::stringstream ss;
5482 ss <<
"Config Group: DigitalInputs" << std::endl;
5492 std::stringstream ss;
5503 const char *string_c_str = to_deserialize.c_str();
5504 size_t string_length = to_deserialize.length();
5614 std::stringstream ss;
5615 ss <<
"Config Group: Quadrature" << std::endl;
5623 std::stringstream ss;
5632 const char *string_c_str = to_deserialize.c_str();
5633 size_t string_length = to_deserialize.length();
5813 std::stringstream ss;
5814 ss <<
"Config Group: PWM1" << std::endl;
5815 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
5823 std::stringstream ss;
5833 const char *string_c_str = to_deserialize.c_str();
5834 size_t string_length = to_deserialize.length();
5839 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_PWM1_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
6019 std::stringstream ss;
6020 ss <<
"Config Group: PWM2" << std::endl;
6021 ss <<
" AbsoluteSensorOffset: " <<
AbsoluteSensorOffset.to<
double>() <<
" rotations" << std::endl;
6029 std::stringstream ss;
6039 const char *string_c_str = to_deserialize.c_str();
6040 size_t string_length = to_deserialize.length();
6045 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_PWM2_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
6142 std::stringstream ss;
6143 ss <<
"Config Group: LED" << std::endl;
6144 ss <<
" StripType: " <<
StripType << std::endl;
6145 ss <<
" BrightnessScalar: " <<
BrightnessScalar.to<
double>() <<
" scalar" << std::endl;
6152 std::stringstream ss;
6162 const char *string_c_str = to_deserialize.c_str();
6163 size_t string_length = to_deserialize.length();
6259 std::stringstream ss;
6260 ss <<
"Config Group: CANdleFeatures" << std::endl;
6269 std::stringstream ss;
6279 const char *string_c_str = to_deserialize.c_str();
6280 size_t string_length = to_deserialize.length();
6315 units::dimensionless::scalar_t
kP = 0;
6333 units::dimensionless::scalar_t
kI = 0;
6352 units::dimensionless::scalar_t
kD = 0;
6374 units::dimensionless::scalar_t
kS = 0;
6390 units::dimensionless::scalar_t
kV = 0;
6407 units::dimensionless::scalar_t
kA = 0;
6421 units::dimensionless::scalar_t
kG = 0;
6483 kP = std::move(newKP);
6512 kI = std::move(newKI);
6542 kD = std::move(newKD);
6575 kS = std::move(newKS);
6602 kV = std::move(newKV);
6630 kA = std::move(newKA);
6655 kG = std::move(newKG);
6722 std::stringstream ss;
6723 ss <<
"Config Group: Slot0" << std::endl;
6724 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
6725 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
6726 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
6727 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
6728 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
6729 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
6730 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
6731 ss <<
" GravityType: " <<
GravityType << std::endl;
6738 std::stringstream ss;
6754 const char *string_c_str = to_deserialize.c_str();
6755 size_t string_length = to_deserialize.length();
6756 double kPVal =
kP.to<
double>();
6758 kP = units::dimensionless::scalar_t{kPVal};
6759 double kIVal =
kI.to<
double>();
6761 kI = units::dimensionless::scalar_t{kIVal};
6762 double kDVal =
kD.to<
double>();
6764 kD = units::dimensionless::scalar_t{kDVal};
6765 double kSVal =
kS.to<
double>();
6767 kS = units::dimensionless::scalar_t{kSVal};
6768 double kVVal =
kV.to<
double>();
6770 kV = units::dimensionless::scalar_t{kVVal};
6771 double kAVal =
kA.to<
double>();
6773 kA = units::dimensionless::scalar_t{kAVal};
6774 double kGVal =
kG.to<
double>();
6776 kG = units::dimensionless::scalar_t{kGVal};
6810 units::dimensionless::scalar_t
kP = 0;
6828 units::dimensionless::scalar_t
kI = 0;
6847 units::dimensionless::scalar_t
kD = 0;
6869 units::dimensionless::scalar_t
kS = 0;
6885 units::dimensionless::scalar_t
kV = 0;
6902 units::dimensionless::scalar_t
kA = 0;
6916 units::dimensionless::scalar_t
kG = 0;
6978 kP = std::move(newKP);
7007 kI = std::move(newKI);
7037 kD = std::move(newKD);
7070 kS = std::move(newKS);
7097 kV = std::move(newKV);
7125 kA = std::move(newKA);
7150 kG = std::move(newKG);
7217 std::stringstream ss;
7218 ss <<
"Config Group: Slot1" << std::endl;
7219 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
7220 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
7221 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
7222 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
7223 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
7224 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
7225 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
7226 ss <<
" GravityType: " <<
GravityType << std::endl;
7233 std::stringstream ss;
7249 const char *string_c_str = to_deserialize.c_str();
7250 size_t string_length = to_deserialize.length();
7251 double kPVal =
kP.to<
double>();
7253 kP = units::dimensionless::scalar_t{kPVal};
7254 double kIVal =
kI.to<
double>();
7256 kI = units::dimensionless::scalar_t{kIVal};
7257 double kDVal =
kD.to<
double>();
7259 kD = units::dimensionless::scalar_t{kDVal};
7260 double kSVal =
kS.to<
double>();
7262 kS = units::dimensionless::scalar_t{kSVal};
7263 double kVVal =
kV.to<
double>();
7265 kV = units::dimensionless::scalar_t{kVVal};
7266 double kAVal =
kA.to<
double>();
7268 kA = units::dimensionless::scalar_t{kAVal};
7269 double kGVal =
kG.to<
double>();
7271 kG = units::dimensionless::scalar_t{kGVal};
7305 units::dimensionless::scalar_t
kP = 0;
7323 units::dimensionless::scalar_t
kI = 0;
7342 units::dimensionless::scalar_t
kD = 0;
7364 units::dimensionless::scalar_t
kS = 0;
7380 units::dimensionless::scalar_t
kV = 0;
7397 units::dimensionless::scalar_t
kA = 0;
7411 units::dimensionless::scalar_t
kG = 0;
7473 kP = std::move(newKP);
7502 kI = std::move(newKI);
7532 kD = std::move(newKD);
7565 kS = std::move(newKS);
7592 kV = std::move(newKV);
7620 kA = std::move(newKA);
7645 kG = std::move(newKG);
7712 std::stringstream ss;
7713 ss <<
"Config Group: Slot2" << std::endl;
7714 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
7715 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
7716 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
7717 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
7718 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
7719 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
7720 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
7721 ss <<
" GravityType: " <<
GravityType << std::endl;
7728 std::stringstream ss;
7744 const char *string_c_str = to_deserialize.c_str();
7745 size_t string_length = to_deserialize.length();
7746 double kPVal =
kP.to<
double>();
7748 kP = units::dimensionless::scalar_t{kPVal};
7749 double kIVal =
kI.to<
double>();
7751 kI = units::dimensionless::scalar_t{kIVal};
7752 double kDVal =
kD.to<
double>();
7754 kD = units::dimensionless::scalar_t{kDVal};
7755 double kSVal =
kS.to<
double>();
7757 kS = units::dimensionless::scalar_t{kSVal};
7758 double kVVal =
kV.to<
double>();
7760 kV = units::dimensionless::scalar_t{kVVal};
7761 double kAVal =
kA.to<
double>();
7763 kA = units::dimensionless::scalar_t{kAVal};
7764 double kGVal =
kG.to<
double>();
7766 kG = units::dimensionless::scalar_t{kGVal};
7791 int StaticFeedforwardSignSpn;
7794 static inline std::map<int, SlotSpns>
const genericMap{
7796 ctre::phoenix6::spns::SpnValue::Slot0_kP,
7797 ctre::phoenix6::spns::SpnValue::Slot0_kI,
7798 ctre::phoenix6::spns::SpnValue::Slot0_kD,
7799 ctre::phoenix6::spns::SpnValue::Slot0_kS,
7800 ctre::phoenix6::spns::SpnValue::Slot0_kV,
7801 ctre::phoenix6::spns::SpnValue::Slot0_kA,
7802 ctre::phoenix6::spns::SpnValue::Slot0_kG,
7803 ctre::phoenix6::spns::SpnValue::Slot0_kG_Type,
7804 ctre::phoenix6::spns::SpnValue::Slot0_kS_Sign,
7808 ctre::phoenix6::spns::SpnValue::Slot1_kP,
7809 ctre::phoenix6::spns::SpnValue::Slot1_kI,
7810 ctre::phoenix6::spns::SpnValue::Slot1_kD,
7811 ctre::phoenix6::spns::SpnValue::Slot1_kS,
7812 ctre::phoenix6::spns::SpnValue::Slot1_kV,
7813 ctre::phoenix6::spns::SpnValue::Slot1_kA,
7814 ctre::phoenix6::spns::SpnValue::Slot1_kG,
7815 ctre::phoenix6::spns::SpnValue::Slot1_kG_Type,
7816 ctre::phoenix6::spns::SpnValue::Slot1_kS_Sign,
7820 ctre::phoenix6::spns::SpnValue::Slot2_kP,
7821 ctre::phoenix6::spns::SpnValue::Slot2_kI,
7822 ctre::phoenix6::spns::SpnValue::Slot2_kD,
7823 ctre::phoenix6::spns::SpnValue::Slot2_kS,
7824 ctre::phoenix6::spns::SpnValue::Slot2_kV,
7825 ctre::phoenix6::spns::SpnValue::Slot2_kA,
7826 ctre::phoenix6::spns::SpnValue::Slot2_kG,
7827 ctre::phoenix6::spns::SpnValue::Slot2_kG_Type,
7828 ctre::phoenix6::spns::SpnValue::Slot2_kS_Sign,
7851 units::dimensionless::scalar_t
kP = 0;
7869 units::dimensionless::scalar_t
kI = 0;
7888 units::dimensionless::scalar_t
kD = 0;
7910 units::dimensionless::scalar_t
kS = 0;
7926 units::dimensionless::scalar_t
kV = 0;
7943 units::dimensionless::scalar_t
kA = 0;
7957 units::dimensionless::scalar_t
kG = 0;
8019 kP = std::move(newKP);
8048 kI = std::move(newKI);
8078 kD = std::move(newKD);
8111 kS = std::move(newKS);
8138 kV = std::move(newKV);
8166 kA = std::move(newKA);
8191 kG = std::move(newKG);
8266 std::stringstream ss;
8267 ss <<
"Config Group: Slot" << std::endl;
8268 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
8269 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
8270 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
8271 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
8272 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
8273 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
8274 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
8275 ss <<
" GravityType: " <<
GravityType << std::endl;
8282 std::stringstream ss;
8283 SlotSpns currentSpns = genericMap.at(
SlotNumber);
8299 const char *string_c_str = to_deserialize.c_str();
8300 size_t string_length = to_deserialize.length();
8301 SlotSpns currentSpns = genericMap.at(
SlotNumber);
8302 double kPVal =
kP.to<
double>();
8304 kP = units::dimensionless::scalar_t{kPVal};
8305 double kIVal =
kI.to<
double>();
8307 kI = units::dimensionless::scalar_t{kIVal};
8308 double kDVal =
kD.to<
double>();
8310 kD = units::dimensionless::scalar_t{kDVal};
8311 double kSVal =
kS.to<
double>();
8313 kS = units::dimensionless::scalar_t{kSVal};
8314 double kVVal =
kV.to<
double>();
8316 kV = units::dimensionless::scalar_t{kVVal};
8317 double kAVal =
kA.to<
double>();
8319 kA = units::dimensionless::scalar_t{kAVal};
8320 double kGVal =
kG.to<
double>();
8322 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:4021
bool BeepOnConfig
If true, the TalonFX will beep during configuration API calls if device is disabled.
Definition Configs.hpp:4042
bool AllowMusicDurDisable
If true, the TalonFX will allow Orchestra and MusicTone requests during disabled state.
Definition Configs.hpp:4052
constexpr AudioConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:4126
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4136
std::string ToString() const override
Definition Configs.hpp:4116
constexpr AudioConfigs & WithBeepOnBoot(bool newBeepOnBoot)
Modifies this configuration's BeepOnBoot parameter and returns itself for method-chaining and easier ...
Definition Configs.hpp:4067
constexpr AudioConfigs & WithAllowMusicDurDisable(bool newAllowMusicDurDisable)
Modifies this configuration's AllowMusicDurDisable parameter and returns itself for method-chaining a...
Definition Configs.hpp:4108
constexpr AudioConfigs & WithBeepOnConfig(bool newBeepOnConfig)
Modifies this configuration's BeepOnConfig parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4087
bool BeepOnBoot
If true, the TalonFX will beep during boot-up.
Definition Configs.hpp:4033
Configs related to general CANdle features.
Definition Configs.hpp:6181
constexpr CANdleFeaturesConfigs & WithVBatOutputMode(signals::VBatOutputModeValue newVBatOutputMode)
Modifies this configuration's VBatOutputMode parameter and returns itself for method-chaining and eas...
Definition Configs.hpp:6232
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:6277
std::string Serialize() const override
Definition Configs.hpp:6267
std::string ToString() const override
Definition Configs.hpp:6257
signals::Enable5VRailValue Enable5VRail
Whether the 5V rail is enabled.
Definition Configs.hpp:6190
signals::VBatOutputModeValue VBatOutputMode
The behavior of the VBat output.
Definition Configs.hpp:6196
constexpr CANdleFeaturesConfigs & WithStatusLedWhenActive(signals::StatusLedWhenActiveValue newStatusLedWhenActive)
Modifies this configuration's StatusLedWhenActive parameter and returns itself for method-chaining an...
Definition Configs.hpp:6249
constexpr CANdleFeaturesConfigs()=default
signals::StatusLedWhenActiveValue StatusLedWhenActive
Whether the Status LED is enabled when the CANdle is actively being controlled.
Definition Configs.hpp:6202
constexpr CANdleFeaturesConfigs & WithEnable5VRail(signals::Enable5VRailValue newEnable5VRail)
Modifies this configuration's Enable5VRail parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:6215
Configs that affect general behavior during closed-looping.
Definition Configs.hpp:4680
bool ContinuousWrap
Wrap position error within [-0.5,+0.5) mechanism rotations.
Definition Configs.hpp:4696
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4740
constexpr ClosedLoopGeneralConfigs & WithContinuousWrap(bool newContinuousWrap)
Modifies this configuration's ContinuousWrap parameter and returns itself for method-chaining and eas...
Definition Configs.hpp:4716
std::string ToString() const override
Definition Configs.hpp:4724
std::string Serialize() const override
Definition Configs.hpp:4732
constexpr ClosedLoopGeneralConfigs()=default
Configs that affect the closed-loop control of this motor controller.
Definition Configs.hpp:3252
constexpr ClosedLoopRampsConfigs & WithDutyCycleClosedLoopRampPeriod(units::time::second_t newDutyCycleClosedLoopRampPeriod)
Modifies this configuration's DutyCycleClosedLoopRampPeriod parameter and returns itself for method-c...
Definition Configs.hpp:3333
std::string Serialize() const override
Definition Configs.hpp:3410
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:3272
constexpr ClosedLoopRampsConfigs & WithTorqueClosedLoopRampPeriod(units::time::second_t newTorqueClosedLoopRampPeriod)
Modifies this configuration's TorqueClosedLoopRampPeriod parameter and returns itself for method-chai...
Definition Configs.hpp:3392
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:3361
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:3309
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:3289
std::string ToString() const override
Definition Configs.hpp:3400
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3420
Configs that determine motor selection and commutation.
Definition Configs.hpp:5238
std::string ToString() const override
Definition Configs.hpp:5332
constexpr CommutationConfigs & WithAdvancedHallSupport(signals::AdvancedHallSupportValue newAdvancedHallSupport)
Modifies this configuration's AdvancedHallSupport parameter and returns itself for method-chaining an...
Definition Configs.hpp:5284
signals::BrushedMotorWiringValue BrushedMotorWiring
If a brushed motor is selected with Motor Arrangement, this config determines which of three leads to...
Definition Configs.hpp:5268
signals::AdvancedHallSupportValue AdvancedHallSupport
Requires Phoenix Pro; Improves commutation and velocity measurement for motors with hall sensors.
Definition Configs.hpp:5250
std::string Serialize() const override
Definition Configs.hpp:5342
signals::MotorArrangementValue MotorArrangement
Selects the motor and motor connections used with Talon.
Definition Configs.hpp:5262
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:5324
constexpr CommutationConfigs & WithMotorArrangement(signals::MotorArrangementValue newMotorArrangement)
Modifies this configuration's MotorArrangement parameter and returns itself for method-chaining and e...
Definition Configs.hpp:5307
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5352
Configs that directly affect current limiting features.
Definition Configs.hpp:902
bool StatorCurrentLimitEnable
Enable motor stator current limiting.
Definition Configs.hpp:938
std::string Serialize() const override
Definition Configs.hpp:1163
constexpr CurrentLimitsConfigs & WithSupplyCurrentLimitEnable(bool newSupplyCurrentLimitEnable)
Modifies this configuration's SupplyCurrentLimitEnable parameter and returns itself for method-chaini...
Definition Configs.hpp:1095
constexpr CurrentLimitsConfigs & WithSupplyCurrentLimit(units::current::ampere_t newSupplyCurrentLimit)
Modifies this configuration's SupplyCurrentLimit parameter and returns itself for method-chaining and...
Definition Configs.hpp:1078
units::current::ampere_t SupplyCurrentLimit
The absolute maximum amount of supply current allowed.
Definition Configs.hpp:962
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1176
units::current::ampere_t StatorCurrentLimit
The amount of current allowed in the motor (motoring and regen current).
Definition Configs.hpp:932
constexpr CurrentLimitsConfigs & WithSupplyCurrentLowerTime(units::time::second_t newSupplyCurrentLowerTime)
Modifies this configuration's SupplyCurrentLowerTime parameter and returns itself for method-chaining...
Definition Configs.hpp:1142
constexpr CurrentLimitsConfigs & WithSupplyCurrentLowerLimit(units::current::ampere_t newSupplyCurrentLowerLimit)
Modifies this configuration's SupplyCurrentLowerLimit parameter and returns itself for method-chainin...
Definition Configs.hpp:1120
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:1026
units::current::ampere_t SupplyCurrentLowerLimit
The amount of supply current allowed after the regular SupplyCurrentLimit is active for longer than S...
Definition Configs.hpp:982
std::string ToString() const override
Definition Configs.hpp:1150
bool SupplyCurrentLimitEnable
Enable motor supply current limiting.
Definition Configs.hpp:968
constexpr CurrentLimitsConfigs & WithStatorCurrentLimitEnable(bool newStatorCurrentLimitEnable)
Modifies this configuration's StatorCurrentLimitEnable parameter and returns itself for method-chaini...
Definition Configs.hpp:1043
units::time::second_t SupplyCurrentLowerTime
Reduces supply current to the SupplyCurrentLowerLimit after limiting to SupplyCurrentLimit for this p...
Definition Configs.hpp:993
Custom Params.
Definition Configs.hpp:4576
std::string ToString() const override
Definition Configs.hpp:4645
int CustomParam0
Custom parameter 0.
Definition Configs.hpp:4589
std::string Serialize() const override
Definition Configs.hpp:4654
int CustomParam1
Custom parameter 1.
Definition Configs.hpp:4599
constexpr CustomParamsConfigs & WithCustomParam0(int newCustomParam0)
Modifies this configuration's CustomParam0 parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4616
constexpr CustomParamsConfigs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4663
constexpr CustomParamsConfigs & WithCustomParam1(int newCustomParam1)
Modifies this configuration's CustomParam1 parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:4637
Configs related to constants used for differential control of a mechanism.
Definition Configs.hpp:2940
units::current::ampere_t PeakDifferentialTorqueCurrent
Maximum differential output during torque current based differential control modes.
Definition Configs.hpp:2973
std::string Serialize() const override
Definition Configs.hpp:3050
std::string ToString() const override
Definition Configs.hpp:3040
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3060
constexpr DifferentialConstantsConfigs & WithPeakDifferentialVoltage(units::voltage::volt_t newPeakDifferentialVoltage)
Modifies this configuration's PeakDifferentialVoltage parameter and returns itself for method-chainin...
Definition Configs.hpp:3011
constexpr DifferentialConstantsConfigs()=default
units::dimensionless::scalar_t PeakDifferentialDutyCycle
Maximum differential output during duty cycle based differential control modes.
Definition Configs.hpp:2953
constexpr DifferentialConstantsConfigs & WithPeakDifferentialTorqueCurrent(units::current::ampere_t newPeakDifferentialTorqueCurrent)
Modifies this configuration's PeakDifferentialTorqueCurrent parameter and returns itself for method-c...
Definition Configs.hpp:3032
constexpr DifferentialConstantsConfigs & WithPeakDifferentialDutyCycle(units::dimensionless::scalar_t newPeakDifferentialDutyCycle)
Modifies this configuration's PeakDifferentialDutyCycle parameter and returns itself for method-chain...
Definition Configs.hpp:2990
units::voltage::volt_t PeakDifferentialVoltage
Maximum differential output during voltage based differential control modes.
Definition Configs.hpp:2963
Configs related to sensors used for differential control of a mechanism.
Definition Configs.hpp:2761
constexpr DifferentialSensorsConfigs()=default
constexpr DifferentialSensorsConfigs & WithDifferentialTalonFXSensorID(int newDifferentialTalonFXSensorID)
Modifies this configuration's DifferentialTalonFXSensorID parameter and returns itself for method-cha...
Definition Configs.hpp:2871
constexpr DifferentialSensorsConfigs & WithDifferentialSensorSource(signals::DifferentialSensorSourceValue newDifferentialSensorSource)
Modifies this configuration's DifferentialSensorSource parameter and returns itself for method-chaini...
Definition Configs.hpp:2850
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2921
std::string Serialize() const override
Definition Configs.hpp:2911
std::string ToString() const override
Definition Configs.hpp:2901
signals::DifferentialSensorSourceValue DifferentialSensorSource
Choose what sensor source is used for differential control of a mechanism.
Definition Configs.hpp:2793
int DifferentialRemoteSensorID
Device ID of which remote sensor to use on the differential axis.
Definition Configs.hpp:2814
constexpr DifferentialSensorsConfigs & WithDifferentialRemoteSensorID(int newDifferentialRemoteSensorID)
Modifies this configuration's DifferentialRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:2893
int DifferentialTalonFXSensorID
Device ID of which remote Talon FX to use.
Definition Configs.hpp:2803
Configs that affect the external feedback sensor of this motor controller.
Definition Configs.hpp:2021
constexpr ExternalFeedbackConfigs & WithSensorPhase(signals::SensorPhaseValue newSensorPhase)
Modifies this configuration's SensorPhase parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:2443
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:2044
constexpr ExternalFeedbackConfigs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2726
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:2228
units::time::second_t VelocityFilterTimeConstant
The configurable time constant of the Kalman velocity filter.
Definition Configs.hpp:2086
constexpr ExternalFeedbackConfigs & WithVelocityFilterTimeConstant(units::time::second_t newVelocityFilterTimeConstant)
Modifies this configuration's VelocityFilterTimeConstant parameter and returns itself for method-chai...
Definition Configs.hpp:2330
ExternalFeedbackConfigs & WithSyncCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use SyncCANdi PWM 1 by passing in the CANdi object.
ExternalFeedbackConfigs & WithSyncCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use SyncCANcoder by passing in the CANcoder object.
signals::ExternalFeedbackSensorSourceValue ExternalFeedbackSensorSource
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition Configs.hpp:2150
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:2061
ExternalFeedbackConfigs & WithFusedCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi PWM 2 by passing in the CANdi object...
ExternalFeedbackConfigs & WithRemoteCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi PWM 1 by passing in the CANdi objec...
constexpr ExternalFeedbackConfigs & WithQuadratureEdgesPerRotation(int newQuadratureEdgesPerRotation)
Modifies this configuration's QuadratureEdgesPerRotation parameter and returns itself for method-chai...
Definition Configs.hpp:2476
ExternalFeedbackConfigs & WithFusedCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi PWM 1 by passing in the CANdi object...
constexpr ExternalFeedbackConfigs & WithFeedbackRemoteSensorID(int newFeedbackRemoteSensorID)
Modifies this configuration's FeedbackRemoteSensorID parameter and returns itself for method-chaining...
Definition Configs.hpp:2304
ExternalFeedbackConfigs & WithFusedCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi Quadrature by passing in the CANdi o...
ExternalFeedbackConfigs & WithRemoteCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use RemoteCANcoder by passing in the CANcoder objec...
constexpr ExternalFeedbackConfigs & WithExternalFeedbackSensorSource(signals::ExternalFeedbackSensorSourceValue newExternalFeedbackSensorSource)
Modifies this configuration's ExternalFeedbackSensorSource parameter and returns itself for method-ch...
Definition Configs.hpp:2416
constexpr ExternalFeedbackConfigs & WithRotorToSensorRatio(units::dimensionless::scalar_t newRotorToSensorRatio)
Modifies this configuration's RotorToSensorRatio parameter and returns itself for method-chaining and...
Definition Configs.hpp:2283
ExternalFeedbackConfigs & WithSyncCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use SyncCANdi PWM 2 by passing in the CANdi object.
std::string ToString() const override
Definition Configs.hpp:2694
signals::SensorPhaseValue SensorPhase
The relationship between the motor controlled by a Talon and the external sensor connected to the dat...
Definition Configs.hpp:2166
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:2100
ExternalFeedbackConfigs & WithRemoteCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi Quadrature by passing in the CANdi ...
int FeedbackRemoteSensorID
Device ID of which remote device to use.
Definition Configs.hpp:2071
constexpr ExternalFeedbackConfigs & WithSensorToMechanismRatio(units::dimensionless::scalar_t newSensorToMechanismRatio)
Modifies this configuration's SensorToMechanismRatio parameter and returns itself for method-chaining...
Definition Configs.hpp:2255
constexpr ExternalFeedbackConfigs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:2527
std::string Serialize() const override
Definition Configs.hpp:2710
ExternalFeedbackConfigs & WithRemoteCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi PWM 2 by passing in the CANdi objec...
int QuadratureEdgesPerRotation
The number of quadrature edges in one rotation for the quadrature sensor connected to the Talon data ...
Definition Configs.hpp:2188
constexpr ExternalFeedbackConfigs & WithAbsoluteSensorOffset(units::angle::turn_t newAbsoluteSensorOffset)
Modifies this configuration's AbsoluteSensorOffset parameter and returns itself for method-chaining a...
Definition Configs.hpp:2355
Configs that affect the feedback of this motor controller.
Definition Configs.hpp:1501
FeedbackConfigs & WithSyncCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use SyncCANdi PWM 2 by passing in the CANdi object.
FeedbackConfigs & WithFusedCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi PWM 1 by passing in the CANdi object...
std::string ToString() const override
Definition Configs.hpp:1962
signals::FeedbackSensorSourceValue FeedbackSensorSource
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition Configs.hpp:1594
constexpr FeedbackConfigs & WithRotorToSensorRatio(units::dimensionless::scalar_t newRotorToSensorRatio)
Modifies this configuration's RotorToSensorRatio parameter and returns itself for method-chaining and...
Definition Configs.hpp:1696
FeedbackConfigs & WithRemoteCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use RemoteCANcoder by passing in the CANcoder objec...
FeedbackConfigs & WithRemoteCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi PWM 2 by passing in the CANdi objec...
FeedbackConfigs & WithRemoteCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi Quadrature by passing in the CANdi ...
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1988
constexpr FeedbackConfigs & WithSensorToMechanismRatio(units::dimensionless::scalar_t newSensorToMechanismRatio)
Modifies this configuration's SensorToMechanismRatio parameter and returns itself for method-chaining...
Definition Configs.hpp:1668
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:1535
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:1975
FeedbackConfigs & WithRemoteCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use RemoteCANdi PWM 1 by passing in the CANdi objec...
constexpr FeedbackConfigs & WithVelocityFilterTimeConstant(units::time::second_t newVelocityFilterTimeConstant)
Modifies this configuration's VelocityFilterTimeConstant parameter and returns itself for method-chai...
Definition Configs.hpp:1796
FeedbackConfigs & WithFusedCANdiQuadrature(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi Quadrature by passing in the CANdi o...
units::angle::turn_t FeedbackRotorOffset
The offset applied to the absolute integrated rotor sensor.
Definition Configs.hpp:1515
FeedbackConfigs & WithSyncCANdiPwm1(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use SyncCANdi PWM 1 by passing in the CANdi object.
units::time::second_t VelocityFilterTimeConstant
The configurable time constant of the Kalman velocity filter.
Definition Configs.hpp:1619
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:1552
int FeedbackRemoteSensorID
Device ID of which remote device to use.
Definition Configs.hpp:1604
FeedbackConfigs & WithFusedCANdiPwm2(const hardware::core::CoreCANdi &device)
Helper method to configure this feedback group to use FusedCANdi PWM 2 by passing in the CANdi object...
constexpr FeedbackConfigs & WithFeedbackSensorSource(signals::FeedbackSensorSourceValue newFeedbackSensorSource)
Modifies this configuration's FeedbackSensorSource parameter and returns itself for method-chaining a...
Definition Configs.hpp:1749
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:1770
constexpr FeedbackConfigs & WithFeedbackRotorOffset(units::angle::turn_t newFeedbackRotorOffset)
Modifies this configuration's FeedbackRotorOffset parameter and returns itself for method-chaining an...
Definition Configs.hpp:1637
constexpr FeedbackConfigs()=default
Configs that affect the ToF Field of View.
Definition Configs.hpp:5025
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:5154
std::string ToString() const override
Definition Configs.hpp:5188
units::angle::degree_t FOVCenterY
Specifies the target center of the Field of View in the Y direction.
Definition Configs.hpp:5054
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:5180
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5210
constexpr FovParamsConfigs()=default
units::angle::degree_t FOVRangeX
Specifies the target range of the Field of View in the X direction.
Definition Configs.hpp:5069
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:5104
std::string Serialize() const override
Definition Configs.hpp:5199
units::angle::degree_t FOVCenterX
Specifies the target center of the Field of View in the X direction.
Definition Configs.hpp:5041
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:5128
units::angle::degree_t FOVRangeY
Specifies the target range of the Field of View in the Y direction.
Definition Configs.hpp:5084
Configs to trim the Pigeon2's gyroscope.
Definition Configs.hpp:402
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:448
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:468
std::string Serialize() const override
Definition Configs.hpp:506
std::string ToString() const override
Definition Configs.hpp:496
units::dimensionless::scalar_t GyroScalarY
The gyro scalar component for the Y axis.
Definition Configs.hpp:423
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:516
units::dimensionless::scalar_t GyroScalarX
The gyro scalar component for the X axis.
Definition Configs.hpp:414
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:488
units::dimensionless::scalar_t GyroScalarZ
The gyro scalar component for the Z axis.
Definition Configs.hpp:432
constexpr GyroTrimConfigs()=default
Configs that change how the motor controller behaves under different limit switch states.
Definition Configs.hpp:3447
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:3952
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:3456
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:3628
units::angle::turn_t ForwardLimitAutosetPositionValue
The value to automatically set the position to when the forward limit switch is asserted.
Definition Configs.hpp:3475
signals::ForwardLimitSourceValue ForwardLimitSource
Determines where to poll the forward limit switch.
Definition Configs.hpp:3502
constexpr HardwareLimitSwitchConfigs & WithForwardLimitEnable(bool newForwardLimitEnable)
Modifies this configuration's ForwardLimitEnable parameter and returns itself for method-chaining and...
Definition Configs.hpp:3646
bool ForwardLimitEnable
If enabled, motor output is set to neutral when the forward limit switch is asserted and positive out...
Definition Configs.hpp:3482
bool ReverseLimitAutosetPositionEnable
If enabled, the position is automatically set to a specific value, specified by ReverseLimitAutosetPo...
Definition Configs.hpp:3526
bool ForwardLimitAutosetPositionEnable
If enabled, the position is automatically set to a specific value, specified by ForwardLimitAutosetPo...
Definition Configs.hpp:3464
constexpr HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionValue(units::angle::turn_t newReverseLimitAutosetPositionValue)
Modifies this configuration's ReverseLimitAutosetPositionValue parameter and returns itself for metho...
Definition Configs.hpp:3755
constexpr HardwareLimitSwitchConfigs & WithReverseLimitSource(signals::ReverseLimitSourceValue newReverseLimitSource)
Modifies this configuration's ReverseLimitSource parameter and returns itself for method-chaining and...
Definition Configs.hpp:3803
signals::ReverseLimitTypeValue ReverseLimitType
Determines if the reverse limit switch is normally-open (default) or normally-closed.
Definition Configs.hpp:3518
units::angle::turn_t ReverseLimitAutosetPositionValue
The value to automatically set the position to when the reverse limit switch is asserted.
Definition Configs.hpp:3537
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:3606
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3990
constexpr HardwareLimitSwitchConfigs & WithForwardLimitRemoteSensorID(int newForwardLimitRemoteSensorID)
Modifies this configuration's ForwardLimitRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:3697
constexpr HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionEnable(bool newReverseLimitAutosetPositionEnable)
Modifies this configuration's ReverseLimitAutosetPositionEnable parameter and returns itself for meth...
Definition Configs.hpp:3733
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:3714
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:3773
int ForwardLimitRemoteSensorID
Device ID of the remote device if using remote limit switch features for the forward limit switch.
Definition Configs.hpp:3512
constexpr HardwareLimitSwitchConfigs & WithForwardLimitType(signals::ForwardLimitTypeValue newForwardLimitType)
Modifies this configuration's ForwardLimitType parameter and returns itself for method-chaining and e...
Definition Configs.hpp:3587
signals::ReverseLimitSourceValue ReverseLimitSource
Determines where to poll the reverse limit switch.
Definition Configs.hpp:3564
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:3971
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:3824
constexpr HardwareLimitSwitchConfigs & WithForwardLimitSource(signals::ForwardLimitSourceValue newForwardLimitSource)
Modifies this configuration's ForwardLimitSource parameter and returns itself for method-chaining and...
Definition Configs.hpp:3676
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:3544
int ReverseLimitRemoteSensorID
Device ID of the remote device if using remote limit switch features for the reverse limit switch.
Definition Configs.hpp:3574
Configs related to CANdle LED control.
Definition Configs.hpp:6060
signals::LossOfSignalBehaviorValue LossOfSignalBehavior
The behavior of the LEDs when the control signal is lost.
Definition Configs.hpp:6083
constexpr LEDConfigs & WithStripType(signals::StripTypeValue newStripType)
Modifies this configuration's StripType parameter and returns itself for method-chaining and easier t...
Definition Configs.hpp:6095
constexpr LEDConfigs & WithBrightnessScalar(units::dimensionless::scalar_t newBrightnessScalar)
Modifies this configuration's BrightnessScalar parameter and returns itself for method-chaining and e...
Definition Configs.hpp:6116
signals::StripTypeValue StripType
The type of LEDs that are being controlled.
Definition Configs.hpp:6068
std::string ToString() const override
Definition Configs.hpp:6140
units::dimensionless::scalar_t BrightnessScalar
The brightness scalar for all LEDs controlled.
Definition Configs.hpp:6078
std::string Serialize() const override
Definition Configs.hpp:6150
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:6160
constexpr LEDConfigs & WithLossOfSignalBehavior(signals::LossOfSignalBehaviorValue newLossOfSignalBehavior)
Modifies this configuration's LossOfSignalBehavior parameter and returns itself for method-chaining a...
Definition Configs.hpp:6132
constexpr LEDConfigs()=default
Configs that affect the magnet sensor and how to interpret it.
Definition Configs.hpp:60
std::string Serialize() const override
Definition Configs.hpp:226
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:121
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:157
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:236
constexpr MagnetSensorConfigs & WithSensorDirection(signals::SensorDirectionValue newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:134
constexpr MagnetSensorConfigs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:208
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:216
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:4320
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:4394
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:4438
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:4379
constexpr MotionMagicConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:4534
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:4416
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:4349
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:4464
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:4338
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:4364
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4546
std::string ToString() const override
Definition Configs.hpp:4522
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:4514
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:4489
Configs that directly affect motor output.
Definition Configs.hpp:661
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:872
units::dimensionless::scalar_t PeakReverseDutyCycle
Minimum (reverse) output during duty cycle based control modes.
Definition Configs.hpp:706
signals::NeutralModeValue NeutralMode
The state of the motor controller bridge when output is neutral or disabled.
Definition Configs.hpp:676
constexpr MotorOutputConfigs & WithNeutralMode(signals::NeutralModeValue newNeutralMode)
Modifies this configuration's NeutralMode parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:751
constexpr MotorOutputConfigs & WithControlTimesyncFreqHz(units::frequency::hertz_t newControlTimesyncFreqHz)
Modifies this configuration's ControlTimesyncFreqHz parameter and returns itself for method-chaining ...
Definition Configs.hpp:838
units::dimensionless::scalar_t PeakForwardDutyCycle
Maximum (forward) output during duty cycle based control modes.
Definition Configs.hpp:696
constexpr MotorOutputConfigs & WithPeakForwardDutyCycle(units::dimensionless::scalar_t newPeakForwardDutyCycle)
Modifies this configuration's PeakForwardDutyCycle parameter and returns itself for method-chaining a...
Definition Configs.hpp:792
constexpr MotorOutputConfigs & WithDutyCycleNeutralDeadband(units::dimensionless::scalar_t newDutyCycleNeutralDeadband)
Modifies this configuration's DutyCycleNeutralDeadband parameter and returns itself for method-chaini...
Definition Configs.hpp:772
constexpr MotorOutputConfigs()=default
std::string ToString() const override
Definition Configs.hpp:846
signals::InvertedValue Inverted
Invert state of the device as seen from the front of the motor.
Definition Configs.hpp:670
std::string Serialize() const override
Definition Configs.hpp:859
constexpr MotorOutputConfigs & WithInverted(signals::InvertedValue newInverted)
Modifies this configuration's Inverted parameter and returns itself for method-chaining and easier to...
Definition Configs.hpp:734
constexpr MotorOutputConfigs & WithPeakReverseDutyCycle(units::dimensionless::scalar_t newPeakReverseDutyCycle)
Modifies this configuration's PeakReverseDutyCycle parameter and returns itself for method-chaining a...
Definition Configs.hpp:812
units::dimensionless::scalar_t DutyCycleNeutralDeadband
Configures the output deadband duty cycle during duty cycle and voltage based control modes.
Definition Configs.hpp:686
units::frequency::hertz_t ControlTimesyncFreqHz
When a control request UseTimesync is enabled, this determines the time-sychronized frequency at whic...
Definition Configs.hpp:722
Configs for Pigeon 2's Mount Pose configuration.
Definition Configs.hpp:260
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:346
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:306
units::angle::degree_t MountPoseRoll
The mounting calibration roll-component.
Definition Configs.hpp:290
units::angle::degree_t MountPosePitch
The mounting calibration pitch-component.
Definition Configs.hpp:281
std::string ToString() const override
Definition Configs.hpp:354
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:326
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:374
units::angle::degree_t MountPoseYaw
The mounting calibration yaw-component.
Definition Configs.hpp:272
std::string Serialize() const override
Definition Configs.hpp:364
Configs that affect the open-loop control of this motor controller.
Definition Configs.hpp:3085
constexpr OpenLoopRampsConfigs & WithVoltageOpenLoopRampPeriod(units::time::second_t newVoltageOpenLoopRampPeriod)
Modifies this configuration's VoltageOpenLoopRampPeriod parameter and returns itself for method-chain...
Definition Configs.hpp:3175
constexpr OpenLoopRampsConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:3217
constexpr OpenLoopRampsConfigs & WithDutyCycleOpenLoopRampPeriod(units::time::second_t newDutyCycleOpenLoopRampPeriod)
Modifies this configuration's DutyCycleOpenLoopRampPeriod parameter and returns itself for method-cha...
Definition Configs.hpp:3150
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:3116
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:3129
std::string ToString() const override
Definition Configs.hpp:3207
constexpr OpenLoopRampsConfigs & WithTorqueOpenLoopRampPeriod(units::time::second_t newTorqueOpenLoopRampPeriod)
Modifies this configuration's TorqueOpenLoopRampPeriod parameter and returns itself for method-chaini...
Definition Configs.hpp:3199
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:3102
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3227
Configs related to the CANdi™ branded device's PWM interface on the Signal 1 input (S1IN)
Definition Configs.hpp:5651
constexpr PWM1Configs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:5803
units::angle::turn_t AbsoluteSensorOffset
The offset applied to the PWM sensor.
Definition Configs.hpp:5666
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:5733
bool SensorDirection
Direction of the PWM sensor to determine positive rotation.
Definition Configs.hpp:5714
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5831
std::string ToString() const override
Definition Configs.hpp:5811
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:5706
constexpr PWM1Configs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:5784
std::string Serialize() const override
Definition Configs.hpp:5821
Configs related to the CANdi™ branded device's PWM interface on the Signal 2 input (S2IN)
Definition Configs.hpp:5857
units::angle::turn_t AbsoluteSensorOffset
The offset applied to the PWM sensor.
Definition Configs.hpp:5872
std::string Serialize() const override
Definition Configs.hpp:6027
constexpr PWM2Configs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:5990
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:5912
constexpr PWM2Configs & WithAbsoluteSensorOffset(units::angle::turn_t newAbsoluteSensorOffset)
Modifies this configuration's AbsoluteSensorOffset parameter and returns itself for method-chaining a...
Definition Configs.hpp:5939
constexpr PWM2Configs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:6037
std::string ToString() const override
Definition Configs.hpp:6017
constexpr PWM2Configs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:6009
bool SensorDirection
Direction of the PWM sensor to determine positive rotation.
Definition Configs.hpp:5920
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:541
constexpr Pigeon2FeaturesConfigs & WithEnableCompass(bool newEnableCompass)
Modifies this configuration's EnableCompass parameter and returns itself for method-chaining and easi...
Definition Configs.hpp:580
bool DisableTemperatureCompensation
Disables using the temperature compensation feature.
Definition Configs.hpp:559
constexpr Pigeon2FeaturesConfigs & WithDisableTemperatureCompensation(bool newDisableTemperatureCompensation)
Modifies this configuration's DisableTemperatureCompensation parameter and returns itself for method-...
Definition Configs.hpp:597
std::string ToString() const override
Definition Configs.hpp:622
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:642
constexpr Pigeon2FeaturesConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:632
bool DisableNoMotionCalibration
Disables using the no-motion calibration feature.
Definition Configs.hpp:565
constexpr Pigeon2FeaturesConfigs & WithDisableNoMotionCalibration(bool newDisableNoMotionCalibration)
Modifies this configuration's DisableNoMotionCalibration parameter and returns itself for method-chai...
Definition Configs.hpp:614
bool EnableCompass
Turns on or off the magnetometer fusing for 9-axis.
Definition Configs.hpp:553
Configs that affect the ToF Proximity detection.
Definition Configs.hpp:4857
constexpr ProximityParamsConfigs()=default
units::dimensionless::scalar_t MinSignalStrengthForValidMeasurement
The minimum allowable signal strength before determining the measurement is valid.
Definition Configs.hpp:4902
std::string ToString() const override
Definition Configs.hpp:4981
constexpr ProximityParamsConfigs & WithProximityThreshold(units::length::meter_t newProximityThreshold)
Modifies this configuration's ProximityThreshold parameter and returns itself for method-chaining and...
Definition Configs.hpp:4918
constexpr ProximityParamsConfigs & WithMinSignalStrengthForValidMeasurement(units::dimensionless::scalar_t newMinSignalStrengthForValidMeasurement)
Modifies this configuration's MinSignalStrengthForValidMeasurement parameter and returns itself for m...
Definition Configs.hpp:4973
std::string Serialize() const override
Definition Configs.hpp:4991
units::length::meter_t ProximityThreshold
Threshold for object detection.
Definition Configs.hpp:4869
constexpr ProximityParamsConfigs & WithProximityHysteresis(units::length::meter_t newProximityHysteresis)
Modifies this configuration's ProximityHysteresis parameter and returns itself for method-chaining an...
Definition Configs.hpp:4946
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5001
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:4886
Configs related to the CANdi™ branded device's quadrature interface using both the S1IN and S2IN inpu...
Definition Configs.hpp:5523
int QuadratureEdgesPerRotation
The number of quadrature edges in one rotation for the quadrature sensor connected to the Talon data ...
Definition Configs.hpp:5548
std::string ToString() const override
Definition Configs.hpp:5612
constexpr QuadratureConfigs & WithSensorDirection(bool newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:5604
std::string Serialize() const override
Definition Configs.hpp:5621
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5630
bool SensorDirection
Direction of the quadrature sensor to determine positive rotation.
Definition Configs.hpp:5556
constexpr QuadratureConfigs()=default
constexpr QuadratureConfigs & WithQuadratureEdgesPerRotation(int newQuadratureEdgesPerRotation)
Modifies this configuration's QuadratureEdgesPerRotation parameter and returns itself for method-chai...
Definition Configs.hpp:5585
Gains for the specified slot.
Definition Configs.hpp:6296
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:6374
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:6510
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:6407
static Slot0Configs From(const SlotConfigs &value)
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:6458
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:6628
std::string ToString() const override
Definition Configs.hpp:6720
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:6440
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:6573
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:6315
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:6481
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:6600
constexpr Slot0Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:6712
constexpr Slot0Configs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:6752
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:6653
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:6352
constexpr Slot0Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:6683
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:6390
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:6540
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:6421
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:6333
std::string Serialize() const override
Definition Configs.hpp:6736
Gains for the specified slot.
Definition Configs.hpp:6791
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:6810
std::string Serialize() const override
Definition Configs.hpp:7231
static Slot1Configs From(const SlotConfigs &value)
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:6916
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:7005
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:7068
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:6902
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:6869
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:6847
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:6828
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:6953
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:6885
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:6976
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:7148
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:7095
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:7035
constexpr Slot1Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:7207
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:7123
std::string ToString() const override
Definition Configs.hpp:7215
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:6935
constexpr Slot1Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:7178
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:7247
Gains for the specified slot.
Definition Configs.hpp:7286
std::string Serialize() const override
Definition Configs.hpp:7726
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:7643
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:7530
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:7563
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:7397
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:7430
constexpr Slot2Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:7673
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:7742
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:7500
constexpr Slot2Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:7702
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:7364
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:7471
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:7380
constexpr Slot2Configs()=default
static Slot2Configs From(const SlotConfigs &value)
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:7342
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:7590
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:7305
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:7448
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:7323
std::string ToString() const override
Definition Configs.hpp:7710
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:7618
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:7411
Gains for the specified slot.
Definition Configs.hpp:7780
static SlotConfigs From(const Slot2Configs &value)
std::string ToString() const
Definition Configs.hpp:8264
constexpr SlotConfigs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:8219
static SlotConfigs From(const Slot1Configs &value)
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:7869
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:8109
constexpr SlotConfigs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:8248
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize)
Definition Configs.hpp:8297
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:8076
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:7994
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:7926
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:7910
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:8136
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:7851
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:8164
int SlotNumber
Chooses which slot these configs are for.
Definition Configs.hpp:8258
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:7888
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:8017
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:7943
std::string Serialize() const
Definition Configs.hpp:8280
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:8046
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:7976
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:8189
constexpr SlotConfigs()=default
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:7957
Configs that affect how software-limit switches behave.
Definition Configs.hpp:4155
units::angle::turn_t ReverseSoftLimitThreshold
Position threshold for reverse soft limit features.
Definition Configs.hpp:4192
constexpr SoftwareLimitSwitchConfigs()=default
std::string ToString() const override
Definition Configs.hpp:4274
constexpr SoftwareLimitSwitchConfigs & WithForwardSoftLimitThreshold(units::angle::turn_t newForwardSoftLimitThreshold)
Modifies this configuration's ForwardSoftLimitThreshold parameter and returns itself for method-chain...
Definition Configs.hpp:4245
units::angle::turn_t ForwardSoftLimitThreshold
Position threshold for forward soft limit features.
Definition Configs.hpp:4182
constexpr SoftwareLimitSwitchConfigs & WithReverseSoftLimitThreshold(units::angle::turn_t newReverseSoftLimitThreshold)
Modifies this configuration's ReverseSoftLimitThreshold parameter and returns itself for method-chain...
Definition Configs.hpp:4266
constexpr SoftwareLimitSwitchConfigs & WithReverseSoftLimitEnable(bool newReverseSoftLimitEnable)
Modifies this configuration's ReverseSoftLimitEnable parameter and returns itself for method-chaining...
Definition Configs.hpp:4224
std::string Serialize() const override
Definition Configs.hpp:4285
bool ReverseSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ReverseSoftLimitThreshold and reve...
Definition Configs.hpp:4172
constexpr SoftwareLimitSwitchConfigs & WithForwardSoftLimitEnable(bool newForwardSoftLimitEnable)
Modifies this configuration's ForwardSoftLimitEnable parameter and returns itself for method-chaining...
Definition Configs.hpp:4206
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4296
bool ForwardSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ForwardSoftLimitThreshold and forw...
Definition Configs.hpp:4165
Configs that affect the ToF sensor.
Definition Configs.hpp:4756
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:4811
std::string Serialize() const override
Definition Configs.hpp:4828
signals::UpdateModeValue UpdateMode
Update mode of the CANrange.
Definition Configs.hpp:4765
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:4789
units::frequency::hertz_t UpdateFrequency
Rate at which the CANrange will take measurements.
Definition Configs.hpp:4776
std::string ToString() const override
Definition Configs.hpp:4819
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4837
Configs that affect Torque Current control types.
Definition Configs.hpp:1356
std::string ToString() const override
Definition Configs.hpp:1454
constexpr TorqueCurrentConfigs()=default
units::current::ampere_t PeakReverseTorqueCurrent
Minimum (reverse) output during torque current based control modes.
Definition Configs.hpp:1379
units::current::ampere_t PeakForwardTorqueCurrent
Maximum (forward) output during torque current based control modes.
Definition Configs.hpp:1369
constexpr TorqueCurrentConfigs & WithPeakForwardTorqueCurrent(units::current::ampere_t newPeakForwardTorqueCurrent)
Modifies this configuration's PeakForwardTorqueCurrent parameter and returns itself for method-chaini...
Definition Configs.hpp:1405
constexpr TorqueCurrentConfigs & WithTorqueNeutralDeadband(units::current::ampere_t newTorqueNeutralDeadband)
Modifies this configuration's TorqueNeutralDeadband parameter and returns itself for method-chaining ...
Definition Configs.hpp:1446
units::current::ampere_t TorqueNeutralDeadband
Configures the output deadband during torque current based control modes.
Definition Configs.hpp:1389
constexpr TorqueCurrentConfigs & WithPeakReverseTorqueCurrent(units::current::ampere_t newPeakReverseTorqueCurrent)
Modifies this configuration's PeakReverseTorqueCurrent parameter and returns itself for method-chaini...
Definition Configs.hpp:1425
std::string Serialize() const override
Definition Configs.hpp:1464
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1474
Configs that affect Voltage control types.
Definition Configs.hpp:1206
units::voltage::volt_t PeakForwardVoltage
Maximum (forward) output during voltage based control modes.
Definition Configs.hpp:1232
constexpr VoltageConfigs & WithPeakReverseVoltage(units::voltage::volt_t newPeakReverseVoltage)
Modifies this configuration's PeakReverseVoltage parameter and returns itself for method-chaining and...
Definition Configs.hpp:1302
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1330
std::string Serialize() const override
Definition Configs.hpp:1320
std::string ToString() const override
Definition Configs.hpp:1310
units::time::second_t SupplyVoltageTimeConstant
The time constant (in seconds) of the low-pass filter for the supply voltage.
Definition Configs.hpp:1223
constexpr VoltageConfigs & WithPeakForwardVoltage(units::voltage::volt_t newPeakForwardVoltage)
Modifies this configuration's PeakForwardVoltage parameter and returns itself for method-chaining and...
Definition Configs.hpp:1282
constexpr VoltageConfigs & WithSupplyVoltageTimeConstant(units::time::second_t newSupplyVoltageTimeConstant)
Modifies this configuration's SupplyVoltageTimeConstant parameter and returns itself for method-chain...
Definition Configs.hpp:1262
units::voltage::volt_t PeakReverseVoltage
Minimum (reverse) output during voltage based control modes.
Definition Configs.hpp:1241
constexpr VoltageConfigs()=default
Class for CANcoder, a CAN based magnetic encoder that provides absolute and relative position along w...
Definition CoreCANcoder.hpp:657
Class for CTR Electronics' CANdi™ branded device, a device that integrates digital signals into the e...
Definition CoreCANdi.hpp:986
Class for CANrange, a CAN based Time of Flight (ToF) sensor that measures the distance to the front o...
Definition CoreCANrange.hpp:782
Class description for the Talon FX integrated motor controller.
Definition CoreTalonFX.hpp:3256
Requires Phoenix Pro; Improves commutation and velocity measurement for motors with hall sensors.
Definition SpnEnums.hpp:3764
static constexpr int Disabled
Talon will utilize hall sensors without advanced features.
Definition SpnEnums.hpp:3771
int value
Definition SpnEnums.hpp:3766
If a brushed motor is selected with Motor Arrangement, this config determines which of three leads to...
Definition SpnEnums.hpp:4905
int value
Definition SpnEnums.hpp:4907
static constexpr int Leads_A_and_B
Third party brushed DC motor with two leads.
Definition SpnEnums.hpp:4920
Choose what sensor source is used for differential control of a mechanism.
Definition SpnEnums.hpp:3240
static constexpr int Disabled
Disable differential control.
Definition SpnEnums.hpp:3247
int value
Definition SpnEnums.hpp:3242
Whether the 5V rail is enabled.
Definition SpnEnums.hpp:5192
static constexpr int Enabled
The 5V rail is enabled, allowing for LED control.
Definition SpnEnums.hpp:5199
int value
Definition SpnEnums.hpp:5194
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition SpnEnums.hpp:4392
int value
Definition SpnEnums.hpp:4394
static constexpr int Commutation
Use the external sensor used for motor commutation.
Definition SpnEnums.hpp:4399
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition SpnEnums.hpp:2411
int value
Definition SpnEnums.hpp:2413
static constexpr int RotorSensor
Use the internal rotor sensor in the Talon.
Definition SpnEnums.hpp:2418
Determines where to poll the forward limit switch.
Definition SpnEnums.hpp:2703
static constexpr int LimitSwitchPin
Use the forward limit switch pin on the limit switch connector.
Definition SpnEnums.hpp:2710
int value
Definition SpnEnums.hpp:2705
Determines if the forward limit switch is normally-open (default) or normally-closed.
Definition SpnEnums.hpp:2616
static constexpr int NormallyOpen
Definition SpnEnums.hpp:2620
int value
Definition SpnEnums.hpp:2618
Gravity Feedforward/Feedback Type.
Definition SpnEnums.hpp:2138
static constexpr int Elevator_Static
The system's gravity feedforward is constant, such as an elevator.
Definition SpnEnums.hpp:2146
int value
Definition SpnEnums.hpp:2140
Invert state of the device as seen from the front of the motor.
Definition SpnEnums.hpp:2223
static constexpr int CounterClockwise_Positive
Positive motor output results in counter-clockwise motion.
Definition SpnEnums.hpp:2230
int value
Definition SpnEnums.hpp:2225
The behavior of the LEDs when the control signal is lost.
Definition SpnEnums.hpp:5112
static constexpr int KeepRunning
LEDs remain enabled, and animations continue to run.
Definition SpnEnums.hpp:5119
int value
Definition SpnEnums.hpp:5114
Selects the motor and motor connections used with Talon.
Definition SpnEnums.hpp:3853
int value
Definition SpnEnums.hpp:3855
static constexpr int Disabled
Motor is not selected.
Definition SpnEnums.hpp:3862
The state of the motor controller bridge when output is neutral or disabled.
Definition SpnEnums.hpp:2303
int value
Definition SpnEnums.hpp:2305
static constexpr int Coast
Definition SpnEnums.hpp:2307
Determines where to poll the reverse limit switch.
Definition SpnEnums.hpp:2913
int value
Definition SpnEnums.hpp:2915
static constexpr int LimitSwitchPin
Use the reverse limit switch pin on the limit switch connector.
Definition SpnEnums.hpp:2920
Determines if the reverse limit switch is normally-open (default) or normally-closed.
Definition SpnEnums.hpp:2826
static constexpr int NormallyOpen
Definition SpnEnums.hpp:2830
int value
Definition SpnEnums.hpp:2828
What value the Signal 1 input (S1IN) needs to be for the CTR Electronics' CANdi™ to detect as Closed.
Definition SpnEnums.hpp:4702
int value
Definition SpnEnums.hpp:4704
static constexpr int CloseWhenNotFloating
The S1 input will be treated as closed when it is not floating.
Definition SpnEnums.hpp:4709
The floating state of the Signal 1 input (S1IN).
Definition SpnEnums.hpp:4162
int value
Definition SpnEnums.hpp:4164
static constexpr int FloatDetect
The input will attempt to detect when it is floating.
Definition SpnEnums.hpp:4170
What value the Signal 2 input (S2IN) needs to be for the CTR Electronics' CANdi™ to detect as Closed.
Definition SpnEnums.hpp:4805
int value
Definition SpnEnums.hpp:4807
static constexpr int CloseWhenNotFloating
The S2 input will be treated as closed when it is not floating.
Definition SpnEnums.hpp:4812
The floating state of the Signal 2 input (S2IN).
Definition SpnEnums.hpp:4255
int value
Definition SpnEnums.hpp:4257
static constexpr int FloatDetect
The input will attempt to detect when it is floating.
Definition SpnEnums.hpp:4263
Direction of the sensor to determine positive rotation, as seen facing the LED side of the CANcoder.
Definition SpnEnums.hpp:270
static constexpr int CounterClockwise_Positive
Counter-clockwise motion reports positive rotation.
Definition SpnEnums.hpp:277
int value
Definition SpnEnums.hpp:272
The relationship between the motor controlled by a Talon and the external sensor connected to the dat...
Definition SpnEnums.hpp:4619
int value
Definition SpnEnums.hpp:4621
static constexpr int Aligned
The sensor direction is normally aligned with the motor.
Definition SpnEnums.hpp:4626
Static Feedforward Sign during position closed loop.
Definition SpnEnums.hpp:3370
int value
Definition SpnEnums.hpp:3372
static constexpr int UseVelocitySign
Use the velocity reference sign.
Definition SpnEnums.hpp:3379
Whether the Status LED is enabled when the CANdle is actively being controlled.
Definition SpnEnums.hpp:5357
int value
Definition SpnEnums.hpp:5359
static constexpr int Enabled
The status LED is enabled during control.
Definition SpnEnums.hpp:5364
The type of LEDs that are being controlled.
Definition SpnEnums.hpp:5013
static constexpr int GRB
LEDs that are controlled by Green-Red-Blue values.
Definition SpnEnums.hpp:5020
int value
Definition SpnEnums.hpp:5015
Update mode of the CANrange.
Definition SpnEnums.hpp:3674
int value
Definition SpnEnums.hpp:3676
static constexpr int ShortRange100Hz
Updates distance/proximity at 100hz using short-range detection mode.
Definition SpnEnums.hpp:3681
The behavior of the VBat output.
Definition SpnEnums.hpp:5272
static constexpr int On
VBat output is on at full power.
Definition SpnEnums.hpp:5279
int value
Definition SpnEnums.hpp:5274
Status codes reported by APIs, including OK, warnings, and errors.
Definition StatusCodes.h:27
Definition Diff_PositionDutyCycle_Position.hpp:15