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 CoreTalonFX; } }
33namespace configs {
class SlotConfigs; }
202 std::stringstream ss;
203 ss <<
"Config Group: MagnetSensor" << std::endl;
205 ss <<
" MagnetOffset: " <<
MagnetOffset.to<
double>() <<
" rotations" << std::endl;
212 std::stringstream ss;
222 const char *string_c_str = to_deserialize.c_str();
223 size_t string_length = to_deserialize.length();
229 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_AbsoluteSensorDiscontinuityPoint, string_c_str, string_length, &AbsoluteSensorDiscontinuityPointVal);
340 std::stringstream ss;
341 ss <<
"Config Group: MountPose" << std::endl;
342 ss <<
" MountPoseYaw: " <<
MountPoseYaw.to<
double>() <<
" deg" << std::endl;
343 ss <<
" MountPosePitch: " <<
MountPosePitch.to<
double>() <<
" deg" << std::endl;
344 ss <<
" MountPoseRoll: " <<
MountPoseRoll.to<
double>() <<
" deg" << std::endl;
350 std::stringstream ss;
360 const char *string_c_str = to_deserialize.c_str();
361 size_t string_length = to_deserialize.length();
482 std::stringstream ss;
483 ss <<
"Config Group: GyroTrim" << std::endl;
484 ss <<
" GyroScalarX: " <<
GyroScalarX.to<
double>() <<
" deg per rotation" << std::endl;
485 ss <<
" GyroScalarY: " <<
GyroScalarY.to<
double>() <<
" deg per rotation" << std::endl;
486 ss <<
" GyroScalarZ: " <<
GyroScalarZ.to<
double>() <<
" deg per rotation" << std::endl;
492 std::stringstream ss;
502 const char *string_c_str = to_deserialize.c_str();
503 size_t string_length = to_deserialize.length();
506 GyroScalarX = units::dimensionless::scalar_t{GyroScalarXVal};
509 GyroScalarY = units::dimensionless::scalar_t{GyroScalarYVal};
512 GyroScalarZ = units::dimensionless::scalar_t{GyroScalarZVal};
608 std::stringstream ss;
609 ss <<
"Config Group: Pigeon2Features" << std::endl;
618 std::stringstream ss;
628 const char *string_c_str = to_deserialize.c_str();
629 size_t string_length = to_deserialize.length();
832 std::stringstream ss;
833 ss <<
"Config Group: MotorOutput" << std::endl;
834 ss <<
" Inverted: " <<
Inverted << std::endl;
835 ss <<
" NeutralMode: " <<
NeutralMode << std::endl;
837 ss <<
" PeakForwardDutyCycle: " <<
PeakForwardDutyCycle.to<
double>() <<
" fractional" << std::endl;
838 ss <<
" PeakReverseDutyCycle: " <<
PeakReverseDutyCycle.to<
double>() <<
" fractional" << std::endl;
845 std::stringstream ss;
858 const char *string_c_str = to_deserialize.c_str();
859 size_t string_length = to_deserialize.length();
1136 std::stringstream ss;
1137 ss <<
"Config Group: CurrentLimits" << std::endl;
1138 ss <<
" StatorCurrentLimit: " <<
StatorCurrentLimit.to<
double>() <<
" A" << std::endl;
1140 ss <<
" SupplyCurrentLimit: " <<
SupplyCurrentLimit.to<
double>() <<
" A" << std::endl;
1149 std::stringstream ss;
1162 const char *string_c_str = to_deserialize.c_str();
1163 size_t string_length = to_deserialize.length();
1296 std::stringstream ss;
1297 ss <<
"Config Group: Voltage" << std::endl;
1299 ss <<
" PeakForwardVoltage: " <<
PeakForwardVoltage.to<
double>() <<
" V" << std::endl;
1300 ss <<
" PeakReverseVoltage: " <<
PeakReverseVoltage.to<
double>() <<
" V" << std::endl;
1306 std::stringstream ss;
1316 const char *string_c_str = to_deserialize.c_str();
1317 size_t string_length = to_deserialize.length();
1440 std::stringstream ss;
1441 ss <<
"Config Group: TorqueCurrent" << std::endl;
1450 std::stringstream ss;
1460 const char *string_c_str = to_deserialize.c_str();
1461 size_t string_length = to_deserialize.length();
1841 std::stringstream ss;
1842 ss <<
"Config Group: Feedback" << std::endl;
1843 ss <<
" FeedbackRotorOffset: " <<
FeedbackRotorOffset.to<
double>() <<
" rotations" << std::endl;
1845 ss <<
" RotorToSensorRatio: " <<
RotorToSensorRatio.to<
double>() <<
" scalar" << std::endl;
1854 std::stringstream ss;
1867 const char *string_c_str = to_deserialize.c_str();
1868 size_t string_length = to_deserialize.length();
2037 std::stringstream ss;
2038 ss <<
"Config Group: DifferentialSensors" << std::endl;
2047 std::stringstream ss;
2057 const char *string_c_str = to_deserialize.c_str();
2058 size_t string_length = to_deserialize.length();
2176 std::stringstream ss;
2177 ss <<
"Config Group: DifferentialConstants" << std::endl;
2186 std::stringstream ss;
2196 const char *string_c_str = to_deserialize.c_str();
2197 size_t string_length = to_deserialize.length();
2343 std::stringstream ss;
2344 ss <<
"Config Group: OpenLoopRamps" << std::endl;
2353 std::stringstream ss;
2363 const char *string_c_str = to_deserialize.c_str();
2364 size_t string_length = to_deserialize.length();
2366 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_DutyCycleOpenLoopRampPeriod, string_c_str, string_length, &DutyCycleOpenLoopRampPeriodVal);
2536 std::stringstream ss;
2537 ss <<
"Config Group: ClosedLoopRamps" << std::endl;
2546 std::stringstream ss;
2556 const char *string_c_str = to_deserialize.c_str();
2557 size_t string_length = to_deserialize.length();
2559 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_DutyCycleClosedLoopRampPeriod, string_c_str, string_length, &DutyCycleClosedLoopRampPeriodVal);
2562 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_VoltageClosedLoopRampPeriod, string_c_str, string_length, &VoltageClosedLoopRampPeriodVal);
3018 std::stringstream ss;
3019 ss <<
"Config Group: HardwareLimitSwitch" << std::endl;
3037 std::stringstream ss;
3056 const char *string_c_str = to_deserialize.c_str();
3057 size_t string_length = to_deserialize.length();
3061 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_ForwardLimitAutosetPosValue, string_c_str, string_length, &ForwardLimitAutosetPositionValueVal);
3069 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::Config_ReverseLimitAutosetPosValue, string_c_str, string_length, &ReverseLimitAutosetPositionValueVal);
3182 std::stringstream ss;
3183 ss <<
"Config Group: Audio" << std::endl;
3184 ss <<
" BeepOnBoot: " <<
BeepOnBoot << std::endl;
3192 std::stringstream ss;
3202 const char *string_c_str = to_deserialize.c_str();
3203 size_t string_length = to_deserialize.length();
3340 std::stringstream ss;
3341 ss <<
"Config Group: SoftwareLimitSwitch" << std::endl;
3351 std::stringstream ss;
3362 const char *string_c_str = to_deserialize.c_str();
3363 size_t string_length = to_deserialize.length();
3588 std::stringstream ss;
3589 ss <<
"Config Group: MotionMagic" << std::endl;
3592 ss <<
" MotionMagicJerk: " <<
MotionMagicJerk.to<
double>() <<
" rot per sec³" << std::endl;
3593 ss <<
" MotionMagicExpo_kV: " <<
MotionMagicExpo_kV.to<
double>() <<
" V/rps" << std::endl;
3594 ss <<
" MotionMagicExpo_kA: " <<
MotionMagicExpo_kA.to<
double>() <<
" V/rps²" << std::endl;
3600 std::stringstream ss;
3612 const char *string_c_str = to_deserialize.c_str();
3613 size_t string_length = to_deserialize.length();
3619 MotionMagicAcceleration = units::angular_acceleration::turns_per_second_squared_t{MotionMagicAccelerationVal};
3622 MotionMagicJerk = units::angular_jerk::turns_per_second_cubed_t{MotionMagicJerkVal};
3628 MotionMagicExpo_kA = ctre::unit::volts_per_turn_per_second_squared_t{MotionMagicExpo_kAVal};
3711 std::stringstream ss;
3712 ss <<
"Config Group: CustomParams" << std::endl;
3720 std::stringstream ss;
3729 const char *string_c_str = to_deserialize.c_str();
3730 size_t string_length = to_deserialize.length();
3767 std::stringstream ss;
3768 ss <<
"Config Group: ClosedLoopGeneral" << std::endl;
3775 std::stringstream ss;
3783 const char *string_c_str = to_deserialize.c_str();
3784 size_t string_length = to_deserialize.length();
3862 std::stringstream ss;
3863 ss <<
"Config Group: ToFParams" << std::endl;
3864 ss <<
" UpdateMode: " <<
UpdateMode << std::endl;
3865 ss <<
" UpdateFrequency: " <<
UpdateFrequency.to<
double>() <<
" Hz" << std::endl;
3871 std::stringstream ss;
3880 const char *string_c_str = to_deserialize.c_str();
3881 size_t string_length = to_deserialize.length();
4024 std::stringstream ss;
4025 ss <<
"Config Group: ProximityParams" << std::endl;
4026 ss <<
" ProximityThreshold: " <<
ProximityThreshold.to<
double>() <<
" m" << std::endl;
4034 std::stringstream ss;
4044 const char *string_c_str = to_deserialize.c_str();
4045 size_t string_length = to_deserialize.length();
4053 c_ctre_phoenix6_deserialize_double(ctre::phoenix6::spns::SpnValue::CANrange_MinSigStrengthForValidMeas, string_c_str, string_length, &MinSignalStrengthForValidMeasurementVal);
4231 std::stringstream ss;
4232 ss <<
"Config Group: FovParams" << std::endl;
4233 ss <<
" FOVCenterX: " <<
FOVCenterX.to<
double>() <<
" deg" << std::endl;
4234 ss <<
" FOVCenterY: " <<
FOVCenterY.to<
double>() <<
" deg" << std::endl;
4235 ss <<
" FOVRangeX: " <<
FOVRangeX.to<
double>() <<
" deg" << std::endl;
4236 ss <<
" FOVRangeY: " <<
FOVRangeY.to<
double>() <<
" deg" << std::endl;
4242 std::stringstream ss;
4253 const char *string_c_str = to_deserialize.c_str();
4254 size_t string_length = to_deserialize.length();
4255 double FOVCenterXVal =
FOVCenterX.to<
double>();
4257 FOVCenterX = units::angle::degree_t{FOVCenterXVal};
4258 double FOVCenterYVal =
FOVCenterY.to<
double>();
4260 FOVCenterY = units::angle::degree_t{FOVCenterYVal};
4261 double FOVRangeXVal =
FOVRangeX.to<
double>();
4263 FOVRangeX = units::angle::degree_t{FOVRangeXVal};
4264 double FOVRangeYVal =
FOVRangeY.to<
double>();
4266 FOVRangeY = units::angle::degree_t{FOVRangeYVal};
4298 units::dimensionless::scalar_t
kP = 0;
4316 units::dimensionless::scalar_t
kI = 0;
4335 units::dimensionless::scalar_t
kD = 0;
4357 units::dimensionless::scalar_t
kS = 0;
4373 units::dimensionless::scalar_t
kV = 0;
4390 units::dimensionless::scalar_t
kA = 0;
4404 units::dimensionless::scalar_t
kG = 0;
4466 kP = std::move(newKP);
4495 kI = std::move(newKI);
4525 kD = std::move(newKD);
4558 kS = std::move(newKS);
4585 kV = std::move(newKV);
4613 kA = std::move(newKA);
4638 kG = std::move(newKG);
4705 std::stringstream ss;
4706 ss <<
"Config Group: Slot0" << std::endl;
4707 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
4708 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
4709 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
4710 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
4711 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
4712 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
4713 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
4714 ss <<
" GravityType: " <<
GravityType << std::endl;
4721 std::stringstream ss;
4737 const char *string_c_str = to_deserialize.c_str();
4738 size_t string_length = to_deserialize.length();
4739 double kPVal =
kP.to<
double>();
4741 kP = units::dimensionless::scalar_t{kPVal};
4742 double kIVal =
kI.to<
double>();
4744 kI = units::dimensionless::scalar_t{kIVal};
4745 double kDVal =
kD.to<
double>();
4747 kD = units::dimensionless::scalar_t{kDVal};
4748 double kSVal =
kS.to<
double>();
4750 kS = units::dimensionless::scalar_t{kSVal};
4751 double kVVal =
kV.to<
double>();
4753 kV = units::dimensionless::scalar_t{kVVal};
4754 double kAVal =
kA.to<
double>();
4756 kA = units::dimensionless::scalar_t{kAVal};
4757 double kGVal =
kG.to<
double>();
4759 kG = units::dimensionless::scalar_t{kGVal};
4793 units::dimensionless::scalar_t
kP = 0;
4811 units::dimensionless::scalar_t
kI = 0;
4830 units::dimensionless::scalar_t
kD = 0;
4852 units::dimensionless::scalar_t
kS = 0;
4868 units::dimensionless::scalar_t
kV = 0;
4885 units::dimensionless::scalar_t
kA = 0;
4899 units::dimensionless::scalar_t
kG = 0;
4961 kP = std::move(newKP);
4990 kI = std::move(newKI);
5020 kD = std::move(newKD);
5053 kS = std::move(newKS);
5080 kV = std::move(newKV);
5108 kA = std::move(newKA);
5133 kG = std::move(newKG);
5200 std::stringstream ss;
5201 ss <<
"Config Group: Slot1" << std::endl;
5202 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
5203 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
5204 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
5205 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
5206 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
5207 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
5208 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
5209 ss <<
" GravityType: " <<
GravityType << std::endl;
5216 std::stringstream ss;
5232 const char *string_c_str = to_deserialize.c_str();
5233 size_t string_length = to_deserialize.length();
5234 double kPVal =
kP.to<
double>();
5236 kP = units::dimensionless::scalar_t{kPVal};
5237 double kIVal =
kI.to<
double>();
5239 kI = units::dimensionless::scalar_t{kIVal};
5240 double kDVal =
kD.to<
double>();
5242 kD = units::dimensionless::scalar_t{kDVal};
5243 double kSVal =
kS.to<
double>();
5245 kS = units::dimensionless::scalar_t{kSVal};
5246 double kVVal =
kV.to<
double>();
5248 kV = units::dimensionless::scalar_t{kVVal};
5249 double kAVal =
kA.to<
double>();
5251 kA = units::dimensionless::scalar_t{kAVal};
5252 double kGVal =
kG.to<
double>();
5254 kG = units::dimensionless::scalar_t{kGVal};
5288 units::dimensionless::scalar_t
kP = 0;
5306 units::dimensionless::scalar_t
kI = 0;
5325 units::dimensionless::scalar_t
kD = 0;
5347 units::dimensionless::scalar_t
kS = 0;
5363 units::dimensionless::scalar_t
kV = 0;
5380 units::dimensionless::scalar_t
kA = 0;
5394 units::dimensionless::scalar_t
kG = 0;
5456 kP = std::move(newKP);
5485 kI = std::move(newKI);
5515 kD = std::move(newKD);
5548 kS = std::move(newKS);
5575 kV = std::move(newKV);
5603 kA = std::move(newKA);
5628 kG = std::move(newKG);
5695 std::stringstream ss;
5696 ss <<
"Config Group: Slot2" << std::endl;
5697 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
5698 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
5699 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
5700 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
5701 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
5702 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
5703 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
5704 ss <<
" GravityType: " <<
GravityType << std::endl;
5711 std::stringstream ss;
5727 const char *string_c_str = to_deserialize.c_str();
5728 size_t string_length = to_deserialize.length();
5729 double kPVal =
kP.to<
double>();
5731 kP = units::dimensionless::scalar_t{kPVal};
5732 double kIVal =
kI.to<
double>();
5734 kI = units::dimensionless::scalar_t{kIVal};
5735 double kDVal =
kD.to<
double>();
5737 kD = units::dimensionless::scalar_t{kDVal};
5738 double kSVal =
kS.to<
double>();
5740 kS = units::dimensionless::scalar_t{kSVal};
5741 double kVVal =
kV.to<
double>();
5743 kV = units::dimensionless::scalar_t{kVVal};
5744 double kAVal =
kA.to<
double>();
5746 kA = units::dimensionless::scalar_t{kAVal};
5747 double kGVal =
kG.to<
double>();
5749 kG = units::dimensionless::scalar_t{kGVal};
5774 int StaticFeedforwardSignSpn;
5777 static inline std::map<int, SlotSpns>
const genericMap{
5779 ctre::phoenix6::spns::SpnValue::Slot0_kP,
5780 ctre::phoenix6::spns::SpnValue::Slot0_kI,
5781 ctre::phoenix6::spns::SpnValue::Slot0_kD,
5782 ctre::phoenix6::spns::SpnValue::Slot0_kS,
5783 ctre::phoenix6::spns::SpnValue::Slot0_kV,
5784 ctre::phoenix6::spns::SpnValue::Slot0_kA,
5785 ctre::phoenix6::spns::SpnValue::Slot0_kG,
5786 ctre::phoenix6::spns::SpnValue::Slot0_kG_Type,
5787 ctre::phoenix6::spns::SpnValue::Slot0_kS_Sign,
5791 ctre::phoenix6::spns::SpnValue::Slot1_kP,
5792 ctre::phoenix6::spns::SpnValue::Slot1_kI,
5793 ctre::phoenix6::spns::SpnValue::Slot1_kD,
5794 ctre::phoenix6::spns::SpnValue::Slot1_kS,
5795 ctre::phoenix6::spns::SpnValue::Slot1_kV,
5796 ctre::phoenix6::spns::SpnValue::Slot1_kA,
5797 ctre::phoenix6::spns::SpnValue::Slot1_kG,
5798 ctre::phoenix6::spns::SpnValue::Slot1_kG_Type,
5799 ctre::phoenix6::spns::SpnValue::Slot1_kS_Sign,
5803 ctre::phoenix6::spns::SpnValue::Slot2_kP,
5804 ctre::phoenix6::spns::SpnValue::Slot2_kI,
5805 ctre::phoenix6::spns::SpnValue::Slot2_kD,
5806 ctre::phoenix6::spns::SpnValue::Slot2_kS,
5807 ctre::phoenix6::spns::SpnValue::Slot2_kV,
5808 ctre::phoenix6::spns::SpnValue::Slot2_kA,
5809 ctre::phoenix6::spns::SpnValue::Slot2_kG,
5810 ctre::phoenix6::spns::SpnValue::Slot2_kG_Type,
5811 ctre::phoenix6::spns::SpnValue::Slot2_kS_Sign,
5834 units::dimensionless::scalar_t
kP = 0;
5852 units::dimensionless::scalar_t
kI = 0;
5871 units::dimensionless::scalar_t
kD = 0;
5893 units::dimensionless::scalar_t
kS = 0;
5909 units::dimensionless::scalar_t
kV = 0;
5926 units::dimensionless::scalar_t
kA = 0;
5940 units::dimensionless::scalar_t
kG = 0;
6002 kP = std::move(newKP);
6031 kI = std::move(newKI);
6061 kD = std::move(newKD);
6094 kS = std::move(newKS);
6121 kV = std::move(newKV);
6149 kA = std::move(newKA);
6174 kG = std::move(newKG);
6249 std::stringstream ss;
6250 ss <<
"Config Group: Slot" << std::endl;
6251 ss <<
" kP: " <<
kP.to<
double>() << std::endl;
6252 ss <<
" kI: " <<
kI.to<
double>() << std::endl;
6253 ss <<
" kD: " <<
kD.to<
double>() << std::endl;
6254 ss <<
" kS: " <<
kS.to<
double>() << std::endl;
6255 ss <<
" kV: " <<
kV.to<
double>() << std::endl;
6256 ss <<
" kA: " <<
kA.to<
double>() << std::endl;
6257 ss <<
" kG: " <<
kG.to<
double>() << std::endl;
6258 ss <<
" GravityType: " <<
GravityType << std::endl;
6265 std::stringstream ss;
6266 SlotSpns currentSpns = genericMap.at(
SlotNumber);
6282 const char *string_c_str = to_deserialize.c_str();
6283 size_t string_length = to_deserialize.length();
6284 SlotSpns currentSpns = genericMap.at(
SlotNumber);
6285 double kPVal =
kP.to<
double>();
6287 kP = units::dimensionless::scalar_t{kPVal};
6288 double kIVal =
kI.to<
double>();
6290 kI = units::dimensionless::scalar_t{kIVal};
6291 double kDVal =
kD.to<
double>();
6293 kD = units::dimensionless::scalar_t{kDVal};
6294 double kSVal =
kS.to<
double>();
6296 kS = units::dimensionless::scalar_t{kSVal};
6297 double kVVal =
kV.to<
double>();
6299 kV = units::dimensionless::scalar_t{kVVal};
6300 double kAVal =
kA.to<
double>();
6302 kA = units::dimensionless::scalar_t{kAVal};
6303 double kGVal =
kG.to<
double>();
6305 kG = units::dimensionless::scalar_t{kGVal};
ii that the Software will be uninterrupted or error free
Definition CTRE_LICENSE.txt:226
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:3085
bool BeepOnConfig
If true, the TalonFX will beep during configuration API calls if device is disabled.
Definition Configs.hpp:3106
bool AllowMusicDurDisable
If true, the TalonFX will allow Orchestra and MusicTone requests during disabled state.
Definition Configs.hpp:3116
constexpr AudioConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:3190
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3200
std::string ToString() const override
Definition Configs.hpp:3180
constexpr AudioConfigs & WithBeepOnBoot(bool newBeepOnBoot)
Modifies this configuration's BeepOnBoot parameter and returns itself for method-chaining and easier ...
Definition Configs.hpp:3131
constexpr AudioConfigs & WithAllowMusicDurDisable(bool newAllowMusicDurDisable)
Modifies this configuration's AllowMusicDurDisable parameter and returns itself for method-chaining a...
Definition Configs.hpp:3172
constexpr AudioConfigs & WithBeepOnConfig(bool newBeepOnConfig)
Modifies this configuration's BeepOnConfig parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:3151
bool BeepOnBoot
If true, the TalonFX will beep during boot-up.
Definition Configs.hpp:3097
Configs that affect general behavior during closed-looping.
Definition Configs.hpp:3744
bool ContinuousWrap
Wrap position error within [-0.5,+0.5) mechanism rotations.
Definition Configs.hpp:3760
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3781
std::string ToString() const override
Definition Configs.hpp:3765
std::string Serialize() const override
Definition Configs.hpp:3773
constexpr ClosedLoopGeneralConfigs()=default
Configs that affect the closed-loop control of this motor controller.
Definition Configs.hpp:2386
constexpr ClosedLoopRampsConfigs & WithDutyCycleClosedLoopRampPeriod(units::time::second_t newDutyCycleClosedLoopRampPeriod)
Modifies this configuration's DutyCycleClosedLoopRampPeriod parameter and returns itself for method-c...
Definition Configs.hpp:2467
std::string Serialize() const override
Definition Configs.hpp:2544
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:2406
constexpr ClosedLoopRampsConfigs & WithTorqueClosedLoopRampPeriod(units::time::second_t newTorqueClosedLoopRampPeriod)
Modifies this configuration's TorqueClosedLoopRampPeriod parameter and returns itself for method-chai...
Definition Configs.hpp:2526
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:2495
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:2443
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:2423
std::string ToString() const override
Definition Configs.hpp:2534
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2554
Configs that directly affect current limiting features.
Definition Configs.hpp:886
bool StatorCurrentLimitEnable
Enable motor stator current limiting.
Definition Configs.hpp:922
std::string Serialize() const override
Definition Configs.hpp:1147
constexpr CurrentLimitsConfigs & WithSupplyCurrentLimitEnable(bool newSupplyCurrentLimitEnable)
Modifies this configuration's SupplyCurrentLimitEnable parameter and returns itself for method-chaini...
Definition Configs.hpp:1079
constexpr CurrentLimitsConfigs & WithSupplyCurrentLimit(units::current::ampere_t newSupplyCurrentLimit)
Modifies this configuration's SupplyCurrentLimit parameter and returns itself for method-chaining and...
Definition Configs.hpp:1062
units::current::ampere_t SupplyCurrentLimit
The absolute maximum amount of supply current allowed.
Definition Configs.hpp:946
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1160
units::current::ampere_t StatorCurrentLimit
The amount of current allowed in the motor (motoring and regen current).
Definition Configs.hpp:916
constexpr CurrentLimitsConfigs & WithSupplyCurrentLowerTime(units::time::second_t newSupplyCurrentLowerTime)
Modifies this configuration's SupplyCurrentLowerTime parameter and returns itself for method-chaining...
Definition Configs.hpp:1126
constexpr CurrentLimitsConfigs & WithSupplyCurrentLowerLimit(units::current::ampere_t newSupplyCurrentLowerLimit)
Modifies this configuration's SupplyCurrentLowerLimit parameter and returns itself for method-chainin...
Definition Configs.hpp:1104
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:1010
units::current::ampere_t SupplyCurrentLowerLimit
The amount of supply current allowed after the regular SupplyCurrentLimit is active for longer than S...
Definition Configs.hpp:966
std::string ToString() const override
Definition Configs.hpp:1134
bool SupplyCurrentLimitEnable
Enable motor supply current limiting.
Definition Configs.hpp:952
constexpr CurrentLimitsConfigs & WithStatorCurrentLimitEnable(bool newStatorCurrentLimitEnable)
Modifies this configuration's StatorCurrentLimitEnable parameter and returns itself for method-chaini...
Definition Configs.hpp:1027
units::time::second_t SupplyCurrentLowerTime
Reduces supply current to the SupplyCurrentLowerLimit after limiting to SupplyCurrentLimit for this p...
Definition Configs.hpp:977
Custom Params.
Definition Configs.hpp:3640
std::string ToString() const override
Definition Configs.hpp:3709
int CustomParam0
Custom parameter 0.
Definition Configs.hpp:3653
std::string Serialize() const override
Definition Configs.hpp:3718
int CustomParam1
Custom parameter 1.
Definition Configs.hpp:3663
constexpr CustomParamsConfigs & WithCustomParam0(int newCustomParam0)
Modifies this configuration's CustomParam0 parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:3680
constexpr CustomParamsConfigs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3727
constexpr CustomParamsConfigs & WithCustomParam1(int newCustomParam1)
Modifies this configuration's CustomParam1 parameter and returns itself for method-chaining and easie...
Definition Configs.hpp:3701
Configs related to constants used for differential control of a mechanism.
Definition Configs.hpp:2074
units::current::ampere_t PeakDifferentialTorqueCurrent
Maximum differential output during torque current based differential control modes.
Definition Configs.hpp:2107
std::string Serialize() const override
Definition Configs.hpp:2184
std::string ToString() const override
Definition Configs.hpp:2174
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2194
constexpr DifferentialConstantsConfigs & WithPeakDifferentialVoltage(units::voltage::volt_t newPeakDifferentialVoltage)
Modifies this configuration's PeakDifferentialVoltage parameter and returns itself for method-chainin...
Definition Configs.hpp:2145
constexpr DifferentialConstantsConfigs()=default
units::dimensionless::scalar_t PeakDifferentialDutyCycle
Maximum differential output during duty cycle based differential control modes.
Definition Configs.hpp:2087
constexpr DifferentialConstantsConfigs & WithPeakDifferentialTorqueCurrent(units::current::ampere_t newPeakDifferentialTorqueCurrent)
Modifies this configuration's PeakDifferentialTorqueCurrent parameter and returns itself for method-c...
Definition Configs.hpp:2166
constexpr DifferentialConstantsConfigs & WithPeakDifferentialDutyCycle(units::dimensionless::scalar_t newPeakDifferentialDutyCycle)
Modifies this configuration's PeakDifferentialDutyCycle parameter and returns itself for method-chain...
Definition Configs.hpp:2124
units::voltage::volt_t PeakDifferentialVoltage
Maximum differential output during voltage based differential control modes.
Definition Configs.hpp:2097
Configs related to sensors used for differential control of a mechanism.
Definition Configs.hpp:1895
constexpr DifferentialSensorsConfigs()=default
constexpr DifferentialSensorsConfigs & WithDifferentialTalonFXSensorID(int newDifferentialTalonFXSensorID)
Modifies this configuration's DifferentialTalonFXSensorID parameter and returns itself for method-cha...
Definition Configs.hpp:2005
constexpr DifferentialSensorsConfigs & WithDifferentialSensorSource(signals::DifferentialSensorSourceValue newDifferentialSensorSource)
Modifies this configuration's DifferentialSensorSource parameter and returns itself for method-chaini...
Definition Configs.hpp:1984
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2055
std::string Serialize() const override
Definition Configs.hpp:2045
std::string ToString() const override
Definition Configs.hpp:2035
signals::DifferentialSensorSourceValue DifferentialSensorSource
Choose what sensor source is used for differential control of a mechanism.
Definition Configs.hpp:1927
int DifferentialRemoteSensorID
Device ID of which remote sensor to use on the differential axis.
Definition Configs.hpp:1948
constexpr DifferentialSensorsConfigs & WithDifferentialRemoteSensorID(int newDifferentialRemoteSensorID)
Modifies this configuration's DifferentialRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:2027
int DifferentialTalonFXSensorID
Device ID of which remote Talon FX to use.
Definition Configs.hpp:1937
Configs that affect the feedback of this motor controller.
Definition Configs.hpp:1485
std::string ToString() const override
Definition Configs.hpp:1839
signals::FeedbackSensorSourceValue FeedbackSensorSource
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition Configs.hpp:1579
constexpr FeedbackConfigs & WithRotorToSensorRatio(units::dimensionless::scalar_t newRotorToSensorRatio)
Modifies this configuration's RotorToSensorRatio parameter and returns itself for method-chaining and...
Definition Configs.hpp:1681
FeedbackConfigs & WithRemoteCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use RemoteCANcoder by passing in the CANcoder objec...
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1865
constexpr FeedbackConfigs & WithSensorToMechanismRatio(units::dimensionless::scalar_t newSensorToMechanismRatio)
Modifies this configuration's SensorToMechanismRatio parameter and returns itself for method-chaining...
Definition Configs.hpp:1653
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:1519
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:1852
constexpr FeedbackConfigs & WithVelocityFilterTimeConstant(units::time::second_t newVelocityFilterTimeConstant)
Modifies this configuration's VelocityFilterTimeConstant parameter and returns itself for method-chai...
Definition Configs.hpp:1782
units::angle::turn_t FeedbackRotorOffset
The offset applied to the absolute integrated rotor sensor.
Definition Configs.hpp:1499
units::time::second_t VelocityFilterTimeConstant
The configurable time constant of the Kalman velocity filter.
Definition Configs.hpp:1604
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:1536
int FeedbackRemoteSensorID
Device ID of which remote device to use.
Definition Configs.hpp:1589
constexpr FeedbackConfigs & WithFeedbackSensorSource(signals::FeedbackSensorSourceValue newFeedbackSensorSource)
Modifies this configuration's FeedbackSensorSource parameter and returns itself for method-chaining a...
Definition Configs.hpp:1735
FeedbackConfigs & WithFusedCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use FusedCANcoder by passing in the CANcoder object...
constexpr FeedbackConfigs & WithFeedbackRemoteSensorID(int newFeedbackRemoteSensorID)
Modifies this configuration's FeedbackRemoteSensorID parameter and returns itself for method-chaining...
Definition Configs.hpp:1756
constexpr FeedbackConfigs & WithFeedbackRotorOffset(units::angle::turn_t newFeedbackRotorOffset)
Modifies this configuration's FeedbackRotorOffset parameter and returns itself for method-chaining an...
Definition Configs.hpp:1622
constexpr FeedbackConfigs()=default
Configs that affect the ToF Field of View.
Definition Configs.hpp:4066
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:4195
std::string ToString() const override
Definition Configs.hpp:4229
units::angle::degree_t FOVCenterY
Specifies the target center of the Field of View in the Y direction.
Definition Configs.hpp:4095
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:4221
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4251
constexpr FovParamsConfigs()=default
units::angle::degree_t FOVRangeX
Specifies the target range of the Field of View in the X direction.
Definition Configs.hpp:4110
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:4145
std::string Serialize() const override
Definition Configs.hpp:4240
units::angle::degree_t FOVCenterX
Specifies the target center of the Field of View in the X direction.
Definition Configs.hpp:4082
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:4169
units::angle::degree_t FOVRangeY
Specifies the target range of the Field of View in the Y direction.
Definition Configs.hpp:4125
Configs to trim the Pigeon2's gyroscope.
Definition Configs.hpp:386
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:432
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:452
std::string Serialize() const override
Definition Configs.hpp:490
std::string ToString() const override
Definition Configs.hpp:480
units::dimensionless::scalar_t GyroScalarY
The gyro scalar component for the Y axis.
Definition Configs.hpp:407
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:500
units::dimensionless::scalar_t GyroScalarX
The gyro scalar component for the X axis.
Definition Configs.hpp:398
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:472
units::dimensionless::scalar_t GyroScalarZ
The gyro scalar component for the Z axis.
Definition Configs.hpp:416
constexpr GyroTrimConfigs()=default
Configs that change how the motor controller behaves under different limit switch states.
Definition Configs.hpp:2581
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:3016
signals::ForwardLimitTypeValue ForwardLimitType
Determines if the forward limit switch is normally-open (default) or normally-closed.
Definition Configs.hpp:2590
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:2762
units::angle::turn_t ForwardLimitAutosetPositionValue
The value to automatically set the position to when the forward limit switch is asserted.
Definition Configs.hpp:2609
signals::ForwardLimitSourceValue ForwardLimitSource
Determines where to poll the forward limit switch.
Definition Configs.hpp:2636
constexpr HardwareLimitSwitchConfigs & WithForwardLimitEnable(bool newForwardLimitEnable)
Modifies this configuration's ForwardLimitEnable parameter and returns itself for method-chaining and...
Definition Configs.hpp:2780
bool ForwardLimitEnable
If enabled, motor output is set to neutral when the forward limit switch is asserted and positive out...
Definition Configs.hpp:2616
bool ReverseLimitAutosetPositionEnable
If enabled, the position is automatically set to a specific value, specified by ReverseLimitAutosetPo...
Definition Configs.hpp:2660
bool ForwardLimitAutosetPositionEnable
If enabled, the position is automatically set to a specific value, specified by ForwardLimitAutosetPo...
Definition Configs.hpp:2598
constexpr HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionValue(units::angle::turn_t newReverseLimitAutosetPositionValue)
Modifies this configuration's ReverseLimitAutosetPositionValue parameter and returns itself for metho...
Definition Configs.hpp:2889
constexpr HardwareLimitSwitchConfigs & WithReverseLimitSource(signals::ReverseLimitSourceValue newReverseLimitSource)
Modifies this configuration's ReverseLimitSource parameter and returns itself for method-chaining and...
Definition Configs.hpp:2937
signals::ReverseLimitTypeValue ReverseLimitType
Determines if the reverse limit switch is normally-open (default) or normally-closed.
Definition Configs.hpp:2652
units::angle::turn_t ReverseLimitAutosetPositionValue
The value to automatically set the position to when the reverse limit switch is asserted.
Definition Configs.hpp:2671
constexpr HardwareLimitSwitchConfigs & WithForwardLimitAutosetPositionEnable(bool newForwardLimitAutosetPositionEnable)
Modifies this configuration's ForwardLimitAutosetPositionEnable parameter and returns itself for meth...
Definition Configs.hpp:2740
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3054
constexpr HardwareLimitSwitchConfigs & WithForwardLimitRemoteSensorID(int newForwardLimitRemoteSensorID)
Modifies this configuration's ForwardLimitRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:2831
constexpr HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionEnable(bool newReverseLimitAutosetPositionEnable)
Modifies this configuration's ReverseLimitAutosetPositionEnable parameter and returns itself for meth...
Definition Configs.hpp:2867
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:2848
constexpr HardwareLimitSwitchConfigs & WithReverseLimitEnable(bool newReverseLimitEnable)
Modifies this configuration's ReverseLimitEnable parameter and returns itself for method-chaining and...
Definition Configs.hpp:2907
int ForwardLimitRemoteSensorID
Device ID of the remote device if using remote limit switch features for the forward limit switch.
Definition Configs.hpp:2646
constexpr HardwareLimitSwitchConfigs & WithForwardLimitType(signals::ForwardLimitTypeValue newForwardLimitType)
Modifies this configuration's ForwardLimitType parameter and returns itself for method-chaining and e...
Definition Configs.hpp:2721
signals::ReverseLimitSourceValue ReverseLimitSource
Determines where to poll the reverse limit switch.
Definition Configs.hpp:2698
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:3035
constexpr HardwareLimitSwitchConfigs & WithReverseLimitRemoteSensorID(int newReverseLimitRemoteSensorID)
Modifies this configuration's ReverseLimitRemoteSensorID parameter and returns itself for method-chai...
Definition Configs.hpp:2958
constexpr HardwareLimitSwitchConfigs & WithForwardLimitSource(signals::ForwardLimitSourceValue newForwardLimitSource)
Modifies this configuration's ForwardLimitSource parameter and returns itself for method-chaining and...
Definition Configs.hpp:2810
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:2678
int ReverseLimitRemoteSensorID
Device ID of the remote device if using remote limit switch features for the reverse limit switch.
Definition Configs.hpp:2708
Configs that affect the magnet sensor and how to interpret it.
Definition Configs.hpp:58
std::string Serialize() const override
Definition Configs.hpp:210
units::angle::turn_t AbsoluteSensorDiscontinuityPoint
The positive discontinuity point of the absolute sensor in rotations.
Definition Configs.hpp:112
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:148
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:220
constexpr MagnetSensorConfigs & WithSensorDirection(signals::SensorDirectionValue newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition Configs.hpp:125
constexpr MagnetSensorConfigs & WithAbsoluteSensorDiscontinuityPoint(units::angle::turn_t newAbsoluteSensorDiscontinuityPoint)
Modifies this configuration's AbsoluteSensorDiscontinuityPoint parameter and returns itself for metho...
Definition Configs.hpp:192
units::angle::turn_t MagnetOffset
This offset is added to the reported position, allowing the application to trim the zero position.
Definition Configs.hpp:79
std::string ToString() const override
Definition Configs.hpp:200
signals::SensorDirectionValue SensorDirection
Direction of the sensor to determine positive rotation, as seen facing the LED side of the CANcoder.
Definition Configs.hpp:67
Configs for Motion Magic®.
Definition Configs.hpp:3384
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:3458
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:3502
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:3443
constexpr MotionMagicConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:3598
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:3480
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:3413
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:3528
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:3402
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:3428
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3610
std::string ToString() const override
Definition Configs.hpp:3586
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:3578
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:3553
Configs that directly affect motor output.
Definition Configs.hpp:645
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:856
units::dimensionless::scalar_t PeakReverseDutyCycle
Minimum (reverse) output during duty cycle based control modes.
Definition Configs.hpp:690
signals::NeutralModeValue NeutralMode
The state of the motor controller bridge when output is neutral or disabled.
Definition Configs.hpp:660
constexpr MotorOutputConfigs & WithNeutralMode(signals::NeutralModeValue newNeutralMode)
Modifies this configuration's NeutralMode parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:735
constexpr MotorOutputConfigs & WithControlTimesyncFreqHz(units::frequency::hertz_t newControlTimesyncFreqHz)
Modifies this configuration's ControlTimesyncFreqHz parameter and returns itself for method-chaining ...
Definition Configs.hpp:822
units::dimensionless::scalar_t PeakForwardDutyCycle
Maximum (forward) output during duty cycle based control modes.
Definition Configs.hpp:680
constexpr MotorOutputConfigs & WithPeakForwardDutyCycle(units::dimensionless::scalar_t newPeakForwardDutyCycle)
Modifies this configuration's PeakForwardDutyCycle parameter and returns itself for method-chaining a...
Definition Configs.hpp:776
constexpr MotorOutputConfigs & WithDutyCycleNeutralDeadband(units::dimensionless::scalar_t newDutyCycleNeutralDeadband)
Modifies this configuration's DutyCycleNeutralDeadband parameter and returns itself for method-chaini...
Definition Configs.hpp:756
constexpr MotorOutputConfigs()=default
std::string ToString() const override
Definition Configs.hpp:830
signals::InvertedValue Inverted
Invert state of the device as seen from the front of the motor.
Definition Configs.hpp:654
std::string Serialize() const override
Definition Configs.hpp:843
constexpr MotorOutputConfigs & WithInverted(signals::InvertedValue newInverted)
Modifies this configuration's Inverted parameter and returns itself for method-chaining and easier to...
Definition Configs.hpp:718
constexpr MotorOutputConfigs & WithPeakReverseDutyCycle(units::dimensionless::scalar_t newPeakReverseDutyCycle)
Modifies this configuration's PeakReverseDutyCycle parameter and returns itself for method-chaining a...
Definition Configs.hpp:796
units::dimensionless::scalar_t DutyCycleNeutralDeadband
Configures the output deadband duty cycle during duty cycle and voltage based control modes.
Definition Configs.hpp:670
units::frequency::hertz_t ControlTimesyncFreqHz
When a control request UseTimesync is enabled, this determines the time-sychronized frequency at whic...
Definition Configs.hpp:706
Configs for Pigeon 2's Mount Pose configuration.
Definition Configs.hpp:244
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:330
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:290
units::angle::degree_t MountPoseRoll
The mounting calibration roll-component.
Definition Configs.hpp:274
units::angle::degree_t MountPosePitch
The mounting calibration pitch-component.
Definition Configs.hpp:265
std::string ToString() const override
Definition Configs.hpp:338
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:310
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:358
units::angle::degree_t MountPoseYaw
The mounting calibration yaw-component.
Definition Configs.hpp:256
std::string Serialize() const override
Definition Configs.hpp:348
Configs that affect the open-loop control of this motor controller.
Definition Configs.hpp:2219
constexpr OpenLoopRampsConfigs & WithVoltageOpenLoopRampPeriod(units::time::second_t newVoltageOpenLoopRampPeriod)
Modifies this configuration's VoltageOpenLoopRampPeriod parameter and returns itself for method-chain...
Definition Configs.hpp:2309
constexpr OpenLoopRampsConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:2351
constexpr OpenLoopRampsConfigs & WithDutyCycleOpenLoopRampPeriod(units::time::second_t newDutyCycleOpenLoopRampPeriod)
Modifies this configuration's DutyCycleOpenLoopRampPeriod parameter and returns itself for method-cha...
Definition Configs.hpp:2284
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:2250
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:2263
std::string ToString() const override
Definition Configs.hpp:2341
constexpr OpenLoopRampsConfigs & WithTorqueOpenLoopRampPeriod(units::time::second_t newTorqueOpenLoopRampPeriod)
Modifies this configuration's TorqueOpenLoopRampPeriod parameter and returns itself for method-chaini...
Definition Configs.hpp:2333
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:2236
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:2361
Definition Configs.hpp:38
friend std::ostream & operator<<(std::ostream &str, const ParentConfiguration &v)
Definition Configs.hpp:41
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:525
constexpr Pigeon2FeaturesConfigs & WithEnableCompass(bool newEnableCompass)
Modifies this configuration's EnableCompass parameter and returns itself for method-chaining and easi...
Definition Configs.hpp:564
bool DisableTemperatureCompensation
Disables using the temperature compensation feature.
Definition Configs.hpp:543
constexpr Pigeon2FeaturesConfigs & WithDisableTemperatureCompensation(bool newDisableTemperatureCompensation)
Modifies this configuration's DisableTemperatureCompensation parameter and returns itself for method-...
Definition Configs.hpp:581
std::string ToString() const override
Definition Configs.hpp:606
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:626
constexpr Pigeon2FeaturesConfigs()=default
std::string Serialize() const override
Definition Configs.hpp:616
bool DisableNoMotionCalibration
Disables using the no-motion calibration feature.
Definition Configs.hpp:549
constexpr Pigeon2FeaturesConfigs & WithDisableNoMotionCalibration(bool newDisableNoMotionCalibration)
Modifies this configuration's DisableNoMotionCalibration parameter and returns itself for method-chai...
Definition Configs.hpp:598
bool EnableCompass
Turns on or off the magnetometer fusing for 9-axis.
Definition Configs.hpp:537
Configs that affect the ToF Proximity detection.
Definition Configs.hpp:3898
constexpr ProximityParamsConfigs()=default
units::dimensionless::scalar_t MinSignalStrengthForValidMeasurement
The minimum allowable signal strength before determining the measurement is valid.
Definition Configs.hpp:3943
std::string ToString() const override
Definition Configs.hpp:4022
constexpr ProximityParamsConfigs & WithProximityThreshold(units::length::meter_t newProximityThreshold)
Modifies this configuration's ProximityThreshold parameter and returns itself for method-chaining and...
Definition Configs.hpp:3959
constexpr ProximityParamsConfigs & WithMinSignalStrengthForValidMeasurement(units::dimensionless::scalar_t newMinSignalStrengthForValidMeasurement)
Modifies this configuration's MinSignalStrengthForValidMeasurement parameter and returns itself for m...
Definition Configs.hpp:4014
std::string Serialize() const override
Definition Configs.hpp:4032
units::length::meter_t ProximityThreshold
Threshold for object detection.
Definition Configs.hpp:3910
constexpr ProximityParamsConfigs & WithProximityHysteresis(units::length::meter_t newProximityHysteresis)
Modifies this configuration's ProximityHysteresis parameter and returns itself for method-chaining an...
Definition Configs.hpp:3987
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4042
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:3927
Gains for the specified slot.
Definition Configs.hpp:4279
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:4357
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:4493
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:4390
static Slot0Configs From(const SlotConfigs &value)
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:4441
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:4611
std::string ToString() const override
Definition Configs.hpp:4703
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:4423
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:4556
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:4298
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:4464
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:4583
constexpr Slot0Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:4695
constexpr Slot0Configs()=default
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:4735
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:4636
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:4335
constexpr Slot0Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:4666
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:4373
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:4523
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:4404
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:4316
std::string Serialize() const override
Definition Configs.hpp:4719
Gains for the specified slot.
Definition Configs.hpp:4774
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:4793
std::string Serialize() const override
Definition Configs.hpp:5214
static Slot1Configs From(const SlotConfigs &value)
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:4899
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:4988
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:5051
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:4885
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:4852
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:4830
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:4811
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:4936
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:4868
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:4959
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:5131
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:5078
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:5018
constexpr Slot1Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:5190
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:5106
std::string ToString() const override
Definition Configs.hpp:5198
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:4918
constexpr Slot1Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:5161
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5230
Gains for the specified slot.
Definition Configs.hpp:5269
std::string Serialize() const override
Definition Configs.hpp:5709
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:5626
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:5513
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:5546
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:5380
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:5413
constexpr Slot2Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:5656
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:5725
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:5483
constexpr Slot2Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:5685
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:5347
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:5454
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:5363
constexpr Slot2Configs()=default
static Slot2Configs From(const SlotConfigs &value)
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:5325
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:5573
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:5288
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:5431
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:5306
std::string ToString() const override
Definition Configs.hpp:5693
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:5601
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:5394
Gains for the specified slot.
Definition Configs.hpp:5763
static SlotConfigs From(const Slot2Configs &value)
std::string ToString() const
Definition Configs.hpp:6247
constexpr SlotConfigs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition Configs.hpp:6202
static SlotConfigs From(const Slot1Configs &value)
units::dimensionless::scalar_t kI
Integral Gain.
Definition Configs.hpp:5852
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:6092
constexpr SlotConfigs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition Configs.hpp:6231
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize)
Definition Configs.hpp:6280
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:6059
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition Configs.hpp:5977
units::dimensionless::scalar_t kV
Velocity Feedforward Gain.
Definition Configs.hpp:5909
units::dimensionless::scalar_t kS
Static Feedforward Gain.
Definition Configs.hpp:5893
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:6119
units::dimensionless::scalar_t kP
Proportional Gain.
Definition Configs.hpp:5834
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:6147
int SlotNumber
Chooses which slot these configs are for.
Definition Configs.hpp:6241
units::dimensionless::scalar_t kD
Derivative Gain.
Definition Configs.hpp:5871
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:6000
units::dimensionless::scalar_t kA
Acceleration Feedforward Gain.
Definition Configs.hpp:5926
std::string Serialize() const
Definition Configs.hpp:6263
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:6029
signals::GravityTypeValue GravityType
Gravity Feedforward/Feedback Type.
Definition Configs.hpp:5959
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:6172
constexpr SlotConfigs()=default
units::dimensionless::scalar_t kG
Gravity Feedforward/Feedback Gain.
Definition Configs.hpp:5940
Configs that affect how software-limit switches behave.
Definition Configs.hpp:3219
units::angle::turn_t ReverseSoftLimitThreshold
Position threshold for reverse soft limit features.
Definition Configs.hpp:3256
constexpr SoftwareLimitSwitchConfigs()=default
std::string ToString() const override
Definition Configs.hpp:3338
constexpr SoftwareLimitSwitchConfigs & WithForwardSoftLimitThreshold(units::angle::turn_t newForwardSoftLimitThreshold)
Modifies this configuration's ForwardSoftLimitThreshold parameter and returns itself for method-chain...
Definition Configs.hpp:3309
units::angle::turn_t ForwardSoftLimitThreshold
Position threshold for forward soft limit features.
Definition Configs.hpp:3246
constexpr SoftwareLimitSwitchConfigs & WithReverseSoftLimitThreshold(units::angle::turn_t newReverseSoftLimitThreshold)
Modifies this configuration's ReverseSoftLimitThreshold parameter and returns itself for method-chain...
Definition Configs.hpp:3330
constexpr SoftwareLimitSwitchConfigs & WithReverseSoftLimitEnable(bool newReverseSoftLimitEnable)
Modifies this configuration's ReverseSoftLimitEnable parameter and returns itself for method-chaining...
Definition Configs.hpp:3288
std::string Serialize() const override
Definition Configs.hpp:3349
bool ReverseSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ReverseSoftLimitThreshold and reve...
Definition Configs.hpp:3236
constexpr SoftwareLimitSwitchConfigs & WithForwardSoftLimitEnable(bool newForwardSoftLimitEnable)
Modifies this configuration's ForwardSoftLimitEnable parameter and returns itself for method-chaining...
Definition Configs.hpp:3270
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3360
bool ForwardSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ForwardSoftLimitThreshold and forw...
Definition Configs.hpp:3229
Configs that affect the ToF sensor.
Definition Configs.hpp:3797
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:3852
std::string Serialize() const override
Definition Configs.hpp:3869
signals::UpdateModeValue UpdateMode
Update mode of the CANrange.
Definition Configs.hpp:3806
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:3830
units::frequency::hertz_t UpdateFrequency
Rate at which the CANrange will take measurements.
Definition Configs.hpp:3817
std::string ToString() const override
Definition Configs.hpp:3860
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:3878
Configs that affect Torque Current control types.
Definition Configs.hpp:1340
std::string ToString() const override
Definition Configs.hpp:1438
constexpr TorqueCurrentConfigs()=default
units::current::ampere_t PeakReverseTorqueCurrent
Minimum (reverse) output during torque current based control modes.
Definition Configs.hpp:1363
units::current::ampere_t PeakForwardTorqueCurrent
Maximum (forward) output during torque current based control modes.
Definition Configs.hpp:1353
constexpr TorqueCurrentConfigs & WithPeakForwardTorqueCurrent(units::current::ampere_t newPeakForwardTorqueCurrent)
Modifies this configuration's PeakForwardTorqueCurrent parameter and returns itself for method-chaini...
Definition Configs.hpp:1389
constexpr TorqueCurrentConfigs & WithTorqueNeutralDeadband(units::current::ampere_t newTorqueNeutralDeadband)
Modifies this configuration's TorqueNeutralDeadband parameter and returns itself for method-chaining ...
Definition Configs.hpp:1430
units::current::ampere_t TorqueNeutralDeadband
Configures the output deadband during torque current based control modes.
Definition Configs.hpp:1373
constexpr TorqueCurrentConfigs & WithPeakReverseTorqueCurrent(units::current::ampere_t newPeakReverseTorqueCurrent)
Modifies this configuration's PeakReverseTorqueCurrent parameter and returns itself for method-chaini...
Definition Configs.hpp:1409
std::string Serialize() const override
Definition Configs.hpp:1448
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1458
Configs that affect Voltage control types.
Definition Configs.hpp:1190
units::voltage::volt_t PeakForwardVoltage
Maximum (forward) output during voltage based control modes.
Definition Configs.hpp:1216
constexpr VoltageConfigs & WithPeakReverseVoltage(units::voltage::volt_t newPeakReverseVoltage)
Modifies this configuration's PeakReverseVoltage parameter and returns itself for method-chaining and...
Definition Configs.hpp:1286
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition Configs.hpp:1314
std::string Serialize() const override
Definition Configs.hpp:1304
std::string ToString() const override
Definition Configs.hpp:1294
units::time::second_t SupplyVoltageTimeConstant
The time constant (in seconds) of the low-pass filter for the supply voltage.
Definition Configs.hpp:1207
constexpr VoltageConfigs & WithPeakForwardVoltage(units::voltage::volt_t newPeakForwardVoltage)
Modifies this configuration's PeakForwardVoltage parameter and returns itself for method-chaining and...
Definition Configs.hpp:1266
constexpr VoltageConfigs & WithSupplyVoltageTimeConstant(units::time::second_t newSupplyVoltageTimeConstant)
Modifies this configuration's SupplyVoltageTimeConstant parameter and returns itself for method-chain...
Definition Configs.hpp:1246
units::voltage::volt_t PeakReverseVoltage
Minimum (reverse) output during voltage based control modes.
Definition Configs.hpp:1225
constexpr VoltageConfigs()=default
Class for CANcoder, a CAN based magnetic encoder that provides absolute and relative position along w...
Definition CoreCANcoder.hpp:631
Class description for the Talon FX integrated motor controller.
Definition CoreTalonFX.hpp:2932
Choose what sensor source is used for differential control of a mechanism.
Definition SpnEnums.hpp:3029
static constexpr int Disabled
Disable differential control.
Definition SpnEnums.hpp:3036
int value
Definition SpnEnums.hpp:3031
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition SpnEnums.hpp:2310
int value
Definition SpnEnums.hpp:2312
static constexpr int RotorSensor
Use the internal rotor sensor in the Talon.
Definition SpnEnums.hpp:2317
Determines where to poll the forward limit switch.
Definition SpnEnums.hpp:2526
static constexpr int LimitSwitchPin
Use the forward limit switch pin on the limit switch connector.
Definition SpnEnums.hpp:2533
int value
Definition SpnEnums.hpp:2528
Determines if the forward limit switch is normally-open (default) or normally-closed.
Definition SpnEnums.hpp:2439
static constexpr int NormallyOpen
Definition SpnEnums.hpp:2443
int value
Definition SpnEnums.hpp:2441
Gravity Feedforward/Feedback Type.
Definition SpnEnums.hpp:2037
static constexpr int Elevator_Static
The system's gravity feedforward is constant, such as an elevator.
Definition SpnEnums.hpp:2045
int value
Definition SpnEnums.hpp:2039
Invert state of the device as seen from the front of the motor.
Definition SpnEnums.hpp:2122
static constexpr int CounterClockwise_Positive
Positive motor output results in clockwise motion.
Definition SpnEnums.hpp:2129
int value
Definition SpnEnums.hpp:2124
The state of the motor controller bridge when output is neutral or disabled.
Definition SpnEnums.hpp:2202
int value
Definition SpnEnums.hpp:2204
static constexpr int Coast
Definition SpnEnums.hpp:2206
Determines where to poll the reverse limit switch.
Definition SpnEnums.hpp:2720
int value
Definition SpnEnums.hpp:2722
static constexpr int LimitSwitchPin
Use the reverse limit switch pin on the limit switch connector.
Definition SpnEnums.hpp:2727
Determines if the reverse limit switch is normally-open (default) or normally-closed.
Definition SpnEnums.hpp:2633
static constexpr int NormallyOpen
Definition SpnEnums.hpp:2637
int value
Definition SpnEnums.hpp:2635
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
Static Feedforward Sign during position closed loop.
Definition SpnEnums.hpp:3159
int value
Definition SpnEnums.hpp:3161
static constexpr int UseVelocitySign
Use the velocity reference sign.
Definition SpnEnums.hpp:3168
Update mode of the CANrange.
Definition SpnEnums.hpp:3463
int value
Definition SpnEnums.hpp:3465
static constexpr int ShortRange100Hz
Updates distance/proximity at 100hz using short-range detection mode.
Definition SpnEnums.hpp:3470
Status codes reported by APIs, including OK, warnings, and errors.
Definition StatusCodes.h:27
Definition StatusCodes.h:18