21namespace hardware {
namespace core {
class CoreCANcoder; } }
22namespace configs {
class SlotConfigs; }
35 virtual ctre::phoenix::StatusCode
Deserialize(
const std::string &
string) = 0;
111 std::stringstream ss;
112 ss <<
"{" << std::endl;
113 ss <<
"Config Group: MagnetSensor" << std::endl;
114 ss <<
"Name: \"SensorDirection\" Value: \"" <<
SensorDirection <<
"\"" << std::endl;
115 ss <<
"Name: \"MagnetOffset\" Value: \"" <<
MagnetOffset <<
"rotations\"" << std::endl;
116 ss <<
"Name: \"AbsoluteSensorRange\" Value: \"" <<
AbsoluteSensorRange <<
"\"" << std::endl;
117 ss <<
"}" << std::endl;
123 std::stringstream ss;
131 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
133 const char *string_c_str = to_deserialize.c_str();
134 size_t string_length = to_deserialize.length();
219 std::stringstream ss;
220 ss <<
"{" << std::endl;
221 ss <<
"Config Group: MountPose" << std::endl;
222 ss <<
"Name: \"MountPoseYaw\" Value: \"" <<
MountPoseYaw <<
"deg\"" << std::endl;
223 ss <<
"Name: \"MountPosePitch\" Value: \"" <<
MountPosePitch <<
"deg\"" << std::endl;
224 ss <<
"Name: \"MountPoseRoll\" Value: \"" <<
MountPoseRoll <<
"deg\"" << std::endl;
225 ss <<
"}" << std::endl;
231 std::stringstream ss;
239 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
241 const char *string_c_str = to_deserialize.c_str();
242 size_t string_length = to_deserialize.length();
329 std::stringstream ss;
330 ss <<
"{" << std::endl;
331 ss <<
"Config Group: GyroTrim" << std::endl;
332 ss <<
"Name: \"GyroScalarX\" Value: \"" <<
GyroScalarX <<
"deg per rotation\"" << std::endl;
333 ss <<
"Name: \"GyroScalarY\" Value: \"" <<
GyroScalarY <<
"deg per rotation\"" << std::endl;
334 ss <<
"Name: \"GyroScalarZ\" Value: \"" <<
GyroScalarZ <<
"deg per rotation\"" << std::endl;
335 ss <<
"}" << std::endl;
341 std::stringstream ss;
349 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
351 const char *string_c_str = to_deserialize.c_str();
352 size_t string_length = to_deserialize.length();
430 std::stringstream ss;
431 ss <<
"{" << std::endl;
432 ss <<
"Config Group: Pigeon2Features" << std::endl;
433 ss <<
"Name: \"EnableCompass\" Value: \"" <<
EnableCompass <<
"\"" << std::endl;
436 ss <<
"}" << std::endl;
442 std::stringstream ss;
450 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
452 const char *string_c_str = to_deserialize.c_str();
453 size_t string_length = to_deserialize.length();
571 std::stringstream ss;
572 ss <<
"{" << std::endl;
573 ss <<
"Config Group: MotorOutput" << std::endl;
574 ss <<
"Name: \"Inverted\" Value: \"" <<
Inverted <<
"\"" << std::endl;
575 ss <<
"Name: \"NeutralMode\" Value: \"" <<
NeutralMode <<
"\"" << std::endl;
577 ss <<
"Name: \"PeakForwardDutyCycle\" Value: \"" <<
PeakForwardDutyCycle <<
"fractional\"" << std::endl;
578 ss <<
"Name: \"PeakReverseDutyCycle\" Value: \"" <<
PeakReverseDutyCycle <<
"fractional\"" << std::endl;
579 ss <<
"}" << std::endl;
585 std::stringstream ss;
595 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
597 const char *string_c_str = to_deserialize.c_str();
598 size_t string_length = to_deserialize.length();
750 std::stringstream ss;
751 ss <<
"{" << std::endl;
752 ss <<
"Config Group: CurrentLimits" << std::endl;
753 ss <<
"Name: \"StatorCurrentLimit\" Value: \"" <<
StatorCurrentLimit <<
"A\"" << std::endl;
755 ss <<
"Name: \"SupplyCurrentLimit\" Value: \"" <<
SupplyCurrentLimit <<
"A\"" << std::endl;
758 ss <<
"Name: \"SupplyTimeThreshold\" Value: \"" <<
SupplyTimeThreshold <<
"sec\"" << std::endl;
759 ss <<
"}" << std::endl;
765 std::stringstream ss;
776 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
778 const char *string_c_str = to_deserialize.c_str();
779 size_t string_length = to_deserialize.length();
870 std::stringstream ss;
871 ss <<
"{" << std::endl;
872 ss <<
"Config Group: Voltage" << std::endl;
874 ss <<
"Name: \"PeakForwardVoltage\" Value: \"" <<
PeakForwardVoltage <<
"V\"" << std::endl;
875 ss <<
"Name: \"PeakReverseVoltage\" Value: \"" <<
PeakReverseVoltage <<
"V\"" << std::endl;
876 ss <<
"}" << std::endl;
882 std::stringstream ss;
890 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
892 const char *string_c_str = to_deserialize.c_str();
893 size_t string_length = to_deserialize.length();
981 std::stringstream ss;
982 ss <<
"{" << std::endl;
983 ss <<
"Config Group: TorqueCurrent" << std::endl;
987 ss <<
"}" << std::endl;
993 std::stringstream ss;
1001 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
1003 const char *string_c_str = to_deserialize.c_str();
1004 size_t string_length = to_deserialize.length();
1184 std::stringstream ss;
1185 ss <<
"{" << std::endl;
1186 ss <<
"Config Group: Feedback" << std::endl;
1187 ss <<
"Name: \"FeedbackRotorOffset\" Value: \"" <<
FeedbackRotorOffset <<
"rotations\"" << std::endl;
1189 ss <<
"Name: \"RotorToSensorRatio\" Value: \"" <<
RotorToSensorRatio <<
"scalar\"" << std::endl;
1192 ss <<
"}" << std::endl;
1198 std::stringstream ss;
1208 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
1210 const char *string_c_str = to_deserialize.c_str();
1211 size_t string_length = to_deserialize.length();
1316 std::stringstream ss;
1317 ss <<
"{" << std::endl;
1318 ss <<
"Config Group: DifferentialSensors" << std::endl;
1322 ss <<
"}" << std::endl;
1328 std::stringstream ss;
1336 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
1338 const char *string_c_str = to_deserialize.c_str();
1339 size_t string_length = to_deserialize.length();
1426 std::stringstream ss;
1427 ss <<
"{" << std::endl;
1428 ss <<
"Config Group: DifferentialConstants" << std::endl;
1432 ss <<
"}" << std::endl;
1438 std::stringstream ss;
1446 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
1448 const char *string_c_str = to_deserialize.c_str();
1449 size_t string_length = to_deserialize.length();
1536 std::stringstream ss;
1537 ss <<
"{" << std::endl;
1538 ss <<
"Config Group: OpenLoopRamps" << std::endl;
1542 ss <<
"}" << std::endl;
1548 std::stringstream ss;
1556 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
1558 const char *string_c_str = to_deserialize.c_str();
1559 size_t string_length = to_deserialize.length();
1646 std::stringstream ss;
1647 ss <<
"{" << std::endl;
1648 ss <<
"Config Group: ClosedLoopRamps" << std::endl;
1652 ss <<
"}" << std::endl;
1658 std::stringstream ss;
1666 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
1668 const char *string_c_str = to_deserialize.c_str();
1669 size_t string_length = to_deserialize.length();
1919 std::stringstream ss;
1920 ss <<
"{" << std::endl;
1921 ss <<
"Config Group: HardwareLimitSwitch" << std::endl;
1922 ss <<
"Name: \"ForwardLimitType\" Value: \"" <<
ForwardLimitType <<
"\"" << std::endl;
1925 ss <<
"Name: \"ForwardLimitEnable\" Value: \"" <<
ForwardLimitEnable <<
"\"" << std::endl;
1926 ss <<
"Name: \"ForwardLimitSource\" Value: \"" <<
ForwardLimitSource <<
"\"" << std::endl;
1928 ss <<
"Name: \"ReverseLimitType\" Value: \"" <<
ReverseLimitType <<
"\"" << std::endl;
1931 ss <<
"Name: \"ReverseLimitEnable\" Value: \"" <<
ReverseLimitEnable <<
"\"" << std::endl;
1932 ss <<
"Name: \"ReverseLimitSource\" Value: \"" <<
ReverseLimitSource <<
"\"" << std::endl;
1934 ss <<
"}" << std::endl;
1940 std::stringstream ss;
1957 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
1959 const char *string_c_str = to_deserialize.c_str();
1960 size_t string_length = to_deserialize.length();
2053 std::stringstream ss;
2054 ss <<
"{" << std::endl;
2055 ss <<
"Config Group: Audio" << std::endl;
2056 ss <<
"Name: \"BeepOnBoot\" Value: \"" <<
BeepOnBoot <<
"\"" << std::endl;
2057 ss <<
"Name: \"BeepOnConfig\" Value: \"" <<
BeepOnConfig <<
"\"" << std::endl;
2059 ss <<
"}" << std::endl;
2065 std::stringstream ss;
2073 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
2075 const char *string_c_str = to_deserialize.c_str();
2076 size_t string_length = to_deserialize.length();
2178 std::stringstream ss;
2179 ss <<
"{" << std::endl;
2180 ss <<
"Config Group: SoftwareLimitSwitch" << std::endl;
2185 ss <<
"}" << std::endl;
2191 std::stringstream ss;
2200 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
2202 const char *string_c_str = to_deserialize.c_str();
2203 size_t string_length = to_deserialize.length();
2347 std::stringstream ss;
2348 ss <<
"{" << std::endl;
2349 ss <<
"Config Group: MotionMagic" << std::endl;
2351 ss <<
"Name: \"MotionMagicAcceleration\" Value: \"" <<
MotionMagicAcceleration <<
"rot per sec²\"" << std::endl;
2352 ss <<
"Name: \"MotionMagicJerk\" Value: \"" <<
MotionMagicJerk <<
"rot per sec³\"" << std::endl;
2353 ss <<
"Name: \"MotionMagicExpo_kV\" Value: \"" <<
MotionMagicExpo_kV <<
"V/rps\"" << std::endl;
2354 ss <<
"Name: \"MotionMagicExpo_kA\" Value: \"" <<
MotionMagicExpo_kA <<
"V/rps²\"" << std::endl;
2355 ss <<
"}" << std::endl;
2361 std::stringstream ss;
2371 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
2373 const char *string_c_str = to_deserialize.c_str();
2374 size_t string_length = to_deserialize.length();
2441 std::stringstream ss;
2442 ss <<
"{" << std::endl;
2443 ss <<
"Config Group: CustomParams" << std::endl;
2444 ss <<
"Name: \"CustomParam0\" Value: \"" <<
CustomParam0 <<
"\"" << std::endl;
2445 ss <<
"Name: \"CustomParam1\" Value: \"" <<
CustomParam1 <<
"\"" << std::endl;
2446 ss <<
"}" << std::endl;
2452 std::stringstream ss;
2459 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
2461 const char *string_c_str = to_deserialize.c_str();
2462 size_t string_length = to_deserialize.length();
2497 std::stringstream ss;
2498 ss <<
"{" << std::endl;
2499 ss <<
"Config Group: ClosedLoopGeneral" << std::endl;
2500 ss <<
"Name: \"ContinuousWrap\" Value: \"" <<
ContinuousWrap <<
"\"" << std::endl;
2501 ss <<
"}" << std::endl;
2507 std::stringstream ss;
2513 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
2515 const char *string_c_str = to_deserialize.c_str();
2516 size_t string_length = to_deserialize.length();
2692 kP = std::move(newKP);
2703 kI = std::move(newKI);
2714 kD = std::move(newKD);
2725 kS = std::move(newKS);
2736 kV = std::move(newKV);
2747 kA = std::move(newKA);
2758 kG = std::move(newKG);
2788 std::stringstream ss;
2789 ss <<
"{" << std::endl;
2790 ss <<
"Config Group: Slot0" << std::endl;
2791 ss <<
"Name: \"kP\" Value: \"" <<
kP <<
"\"" << std::endl;
2792 ss <<
"Name: \"kI\" Value: \"" <<
kI <<
"\"" << std::endl;
2793 ss <<
"Name: \"kD\" Value: \"" <<
kD <<
"\"" << std::endl;
2794 ss <<
"Name: \"kS\" Value: \"" <<
kS <<
"\"" << std::endl;
2795 ss <<
"Name: \"kV\" Value: \"" <<
kV <<
"\"" << std::endl;
2796 ss <<
"Name: \"kA\" Value: \"" <<
kA <<
"\"" << std::endl;
2797 ss <<
"Name: \"kG\" Value: \"" <<
kG <<
"\"" << std::endl;
2798 ss <<
"Name: \"GravityType\" Value: \"" <<
GravityType <<
"\"" << std::endl;
2800 ss <<
"}" << std::endl;
2806 std::stringstream ss;
2820 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
2822 const char *string_c_str = to_deserialize.c_str();
2823 size_t string_length = to_deserialize.length();
3006 kP = std::move(newKP);
3017 kI = std::move(newKI);
3028 kD = std::move(newKD);
3039 kS = std::move(newKS);
3050 kV = std::move(newKV);
3061 kA = std::move(newKA);
3072 kG = std::move(newKG);
3102 std::stringstream ss;
3103 ss <<
"{" << std::endl;
3104 ss <<
"Config Group: Slot1" << std::endl;
3105 ss <<
"Name: \"kP\" Value: \"" <<
kP <<
"\"" << std::endl;
3106 ss <<
"Name: \"kI\" Value: \"" <<
kI <<
"\"" << std::endl;
3107 ss <<
"Name: \"kD\" Value: \"" <<
kD <<
"\"" << std::endl;
3108 ss <<
"Name: \"kS\" Value: \"" <<
kS <<
"\"" << std::endl;
3109 ss <<
"Name: \"kV\" Value: \"" <<
kV <<
"\"" << std::endl;
3110 ss <<
"Name: \"kA\" Value: \"" <<
kA <<
"\"" << std::endl;
3111 ss <<
"Name: \"kG\" Value: \"" <<
kG <<
"\"" << std::endl;
3112 ss <<
"Name: \"GravityType\" Value: \"" <<
GravityType <<
"\"" << std::endl;
3114 ss <<
"}" << std::endl;
3120 std::stringstream ss;
3134 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
3136 const char *string_c_str = to_deserialize.c_str();
3137 size_t string_length = to_deserialize.length();
3320 kP = std::move(newKP);
3331 kI = std::move(newKI);
3342 kD = std::move(newKD);
3353 kS = std::move(newKS);
3364 kV = std::move(newKV);
3375 kA = std::move(newKA);
3386 kG = std::move(newKG);
3416 std::stringstream ss;
3417 ss <<
"{" << std::endl;
3418 ss <<
"Config Group: Slot2" << std::endl;
3419 ss <<
"Name: \"kP\" Value: \"" <<
kP <<
"\"" << std::endl;
3420 ss <<
"Name: \"kI\" Value: \"" <<
kI <<
"\"" << std::endl;
3421 ss <<
"Name: \"kD\" Value: \"" <<
kD <<
"\"" << std::endl;
3422 ss <<
"Name: \"kS\" Value: \"" <<
kS <<
"\"" << std::endl;
3423 ss <<
"Name: \"kV\" Value: \"" <<
kV <<
"\"" << std::endl;
3424 ss <<
"Name: \"kA\" Value: \"" <<
kA <<
"\"" << std::endl;
3425 ss <<
"Name: \"kG\" Value: \"" <<
kG <<
"\"" << std::endl;
3426 ss <<
"Name: \"GravityType\" Value: \"" <<
GravityType <<
"\"" << std::endl;
3428 ss <<
"}" << std::endl;
3434 std::stringstream ss;
3448 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
override
3450 const char *string_c_str = to_deserialize.c_str();
3451 size_t string_length = to_deserialize.length();
3483 int StaticFeedforwardSignSpn;
3486 std::map<int, SlotSpns> genericMap{
3488 ctre::phoenix6::spns::SpnValue::Slot0_kP,
3489 ctre::phoenix6::spns::SpnValue::Slot0_kI,
3490 ctre::phoenix6::spns::SpnValue::Slot0_kD,
3491 ctre::phoenix6::spns::SpnValue::Slot0_kS,
3492 ctre::phoenix6::spns::SpnValue::Slot0_kV,
3493 ctre::phoenix6::spns::SpnValue::Slot0_kA,
3494 ctre::phoenix6::spns::SpnValue::Slot0_kG,
3495 ctre::phoenix6::spns::SpnValue::Slot0_kG_Type,
3496 ctre::phoenix6::spns::SpnValue::Slot0_kS_Sign,
3500 ctre::phoenix6::spns::SpnValue::Slot1_kP,
3501 ctre::phoenix6::spns::SpnValue::Slot1_kI,
3502 ctre::phoenix6::spns::SpnValue::Slot1_kD,
3503 ctre::phoenix6::spns::SpnValue::Slot1_kS,
3504 ctre::phoenix6::spns::SpnValue::Slot1_kV,
3505 ctre::phoenix6::spns::SpnValue::Slot1_kA,
3506 ctre::phoenix6::spns::SpnValue::Slot1_kG,
3507 ctre::phoenix6::spns::SpnValue::Slot1_kG_Type,
3508 ctre::phoenix6::spns::SpnValue::Slot1_kS_Sign,
3512 ctre::phoenix6::spns::SpnValue::Slot2_kP,
3513 ctre::phoenix6::spns::SpnValue::Slot2_kI,
3514 ctre::phoenix6::spns::SpnValue::Slot2_kD,
3515 ctre::phoenix6::spns::SpnValue::Slot2_kS,
3516 ctre::phoenix6::spns::SpnValue::Slot2_kV,
3517 ctre::phoenix6::spns::SpnValue::Slot2_kA,
3518 ctre::phoenix6::spns::SpnValue::Slot2_kG,
3519 ctre::phoenix6::spns::SpnValue::Slot2_kG_Type,
3520 ctre::phoenix6::spns::SpnValue::Slot2_kS_Sign,
3686 kP = std::move(newKP);
3697 kI = std::move(newKI);
3708 kD = std::move(newKD);
3719 kS = std::move(newKS);
3730 kV = std::move(newKV);
3741 kA = std::move(newKA);
3752 kG = std::move(newKG);
3790 std::stringstream ss;
3791 ss <<
"{" << std::endl;
3792 ss <<
"Config Group: Slot" << std::endl;
3793 ss <<
"Name: \"kP\" Value: \"" <<
kP <<
"\"" << std::endl;
3794 ss <<
"Name: \"kI\" Value: \"" <<
kI <<
"\"" << std::endl;
3795 ss <<
"Name: \"kD\" Value: \"" <<
kD <<
"\"" << std::endl;
3796 ss <<
"Name: \"kS\" Value: \"" <<
kS <<
"\"" << std::endl;
3797 ss <<
"Name: \"kV\" Value: \"" <<
kV <<
"\"" << std::endl;
3798 ss <<
"Name: \"kA\" Value: \"" <<
kA <<
"\"" << std::endl;
3799 ss <<
"Name: \"kG\" Value: \"" <<
kG <<
"\"" << std::endl;
3800 ss <<
"Name: \"GravityType\" Value: \"" <<
GravityType <<
"\"" << std::endl;
3802 ss <<
"}" << std::endl;
3808 std::stringstream ss;
3809 SlotSpns currentSpns = genericMap.at(
SlotNumber);
3823 ctre::phoenix::StatusCode
Deserialize(
const std::string& to_deserialize)
3825 const char *string_c_str = to_deserialize.c_str();
3826 size_t string_length = to_deserialize.length();
3827 SlotSpns currentSpns = genericMap.at(
SlotNumber);
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:1984
AudioConfigs & WithBeepOnBoot(bool newBeepOnBoot)
Modifies this configuration's BeepOnBoot parameter and returns itself for method-chaining and easier ...
Definition: Configs.hpp:2021
bool BeepOnConfig
If true, the TalonFX will beep during configuration API calls if device is disabled.
Definition: Configs.hpp:2003
bool AllowMusicDurDisable
If true, the TalonFX will allow Orchestra and MusicTone requests during disabled state.
Definition: Configs.hpp:2013
std::string Serialize() const override
Definition: Configs.hpp:2063
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:2073
std::string ToString() const override
Definition: Configs.hpp:2051
AudioConfigs & WithAllowMusicDurDisable(bool newAllowMusicDurDisable)
Modifies this configuration's AllowMusicDurDisable parameter and returns itself for method-chaining a...
Definition: Configs.hpp:2043
AudioConfigs & WithBeepOnConfig(bool newBeepOnConfig)
Modifies this configuration's BeepOnConfig parameter and returns itself for method-chaining and easie...
Definition: Configs.hpp:2032
bool BeepOnBoot
If true, the TalonFX will beep during boot-up.
Definition: Configs.hpp:1994
Configs that affect general behavior during closed-looping.
Definition: Configs.hpp:2476
bool ContinuousWrap
Wrap position error within [-0.5,+0.5) mechanism rotations.
Definition: Configs.hpp:2490
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:2513
std::string ToString() const override
Definition: Configs.hpp:2495
std::string Serialize() const override
Definition: Configs.hpp:2505
Configs that affect the closed-loop control of this motor controller.
Definition: Configs.hpp:1575
double TorqueClosedLoopRampPeriod
If non-zero, this determines how much time to ramp from 0A output to 300A during closed-loop modes.
Definition: Configs.hpp:1606
std::string Serialize() const override
Definition: Configs.hpp:1656
double VoltageClosedLoopRampPeriod
If non-zero, this determines how much time to ramp from 0V output to 12V during closed-loop modes.
Definition: Configs.hpp:1596
ClosedLoopRampsConfigs & WithDutyCycleClosedLoopRampPeriod(double newDutyCycleClosedLoopRampPeriod)
Modifies this configuration's DutyCycleClosedLoopRampPeriod parameter and returns itself for method-c...
Definition: Configs.hpp:1614
ClosedLoopRampsConfigs & WithTorqueClosedLoopRampPeriod(double newTorqueClosedLoopRampPeriod)
Modifies this configuration's TorqueClosedLoopRampPeriod parameter and returns itself for method-chai...
Definition: Configs.hpp:1636
double DutyCycleClosedLoopRampPeriod
If non-zero, this determines how much time to ramp from 0% output to 100% during closed-loop modes.
Definition: Configs.hpp:1586
ClosedLoopRampsConfigs & WithVoltageClosedLoopRampPeriod(double newVoltageClosedLoopRampPeriod)
Modifies this configuration's VoltageClosedLoopRampPeriod parameter and returns itself for method-cha...
Definition: Configs.hpp:1625
std::string ToString() const override
Definition: Configs.hpp:1644
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:1666
Configs that directly affect current limiting features.
Definition: Configs.hpp:616
bool StatorCurrentLimitEnable
Enable motor stator current limiting.
Definition: Configs.hpp:635
double StatorCurrentLimit
The amount of current allowed in the motor (motoring and regen current).
Definition: Configs.hpp:629
double SupplyCurrentLimit
The amount of supply current allowed.
Definition: Configs.hpp:648
CurrentLimitsConfigs & WithSupplyCurrentThreshold(double newSupplyCurrentThreshold)
Modifies this configuration's SupplyCurrentThreshold parameter and returns itself for method-chaining...
Definition: Configs.hpp:729
CurrentLimitsConfigs & WithSupplyCurrentLimit(double newSupplyCurrentLimit)
Modifies this configuration's SupplyCurrentLimit parameter and returns itself for method-chaining and...
Definition: Configs.hpp:707
double SupplyCurrentThreshold
Delay supply current limiting until current exceeds this threshold for longer than SupplyTimeThreshol...
Definition: Configs.hpp:666
std::string Serialize() const override
Definition: Configs.hpp:763
CurrentLimitsConfigs & WithSupplyCurrentLimitEnable(bool newSupplyCurrentLimitEnable)
Modifies this configuration's SupplyCurrentLimitEnable parameter and returns itself for method-chaini...
Definition: Configs.hpp:718
CurrentLimitsConfigs & WithStatorCurrentLimit(double newStatorCurrentLimit)
Modifies this configuration's StatorCurrentLimit parameter and returns itself for method-chaining and...
Definition: Configs.hpp:685
double SupplyTimeThreshold
Allows unlimited current for a period of time before current limiting occurs.
Definition: Configs.hpp:677
CurrentLimitsConfigs & WithSupplyTimeThreshold(double newSupplyTimeThreshold)
Modifies this configuration's SupplyTimeThreshold parameter and returns itself for method-chaining an...
Definition: Configs.hpp:740
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:776
CurrentLimitsConfigs & WithStatorCurrentLimitEnable(bool newStatorCurrentLimitEnable)
Modifies this configuration's StatorCurrentLimitEnable parameter and returns itself for method-chaini...
Definition: Configs.hpp:696
std::string ToString() const override
Definition: Configs.hpp:748
bool SupplyCurrentLimitEnable
Enable motor supply current limiting.
Definition: Configs.hpp:654
Custom Params.
Definition: Configs.hpp:2391
CustomParamsConfigs & WithCustomParam1(int newCustomParam1)
Modifies this configuration's CustomParam1 parameter and returns itself for method-chaining and easie...
Definition: Configs.hpp:2431
std::string ToString() const override
Definition: Configs.hpp:2439
int CustomParam0
Custom parameter 0.
Definition: Configs.hpp:2402
std::string Serialize() const override
Definition: Configs.hpp:2450
int CustomParam1
Custom parameter 1.
Definition: Configs.hpp:2412
CustomParamsConfigs & WithCustomParam0(int newCustomParam0)
Modifies this configuration's CustomParam0 parameter and returns itself for method-chaining and easie...
Definition: Configs.hpp:2420
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:2459
Configs related to constants used for differential control of a mechanism.
Definition: Configs.hpp:1355
std::string Serialize() const override
Definition: Configs.hpp:1436
std::string ToString() const override
Definition: Configs.hpp:1424
double PeakDifferentialDutyCycle
Maximum differential output during duty cycle based differential control modes.
Definition: Configs.hpp:1366
double PeakDifferentialTorqueCurrent
Maximum differential output during torque current based differential control modes.
Definition: Configs.hpp:1386
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:1446
DifferentialConstantsConfigs & WithPeakDifferentialDutyCycle(double newPeakDifferentialDutyCycle)
Modifies this configuration's PeakDifferentialDutyCycle parameter and returns itself for method-chain...
Definition: Configs.hpp:1394
DifferentialConstantsConfigs & WithPeakDifferentialTorqueCurrent(double newPeakDifferentialTorqueCurrent)
Modifies this configuration's PeakDifferentialTorqueCurrent parameter and returns itself for method-c...
Definition: Configs.hpp:1416
double PeakDifferentialVoltage
Maximum differential output during voltage based differential control modes.
Definition: Configs.hpp:1376
DifferentialConstantsConfigs & WithPeakDifferentialVoltage(double newPeakDifferentialVoltage)
Modifies this configuration's PeakDifferentialVoltage parameter and returns itself for method-chainin...
Definition: Configs.hpp:1405
Configs related to sensors used for differential control of a mechanism.
Definition: Configs.hpp:1229
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:1336
DifferentialSensorsConfigs & WithDifferentialTalonFXSensorID(int newDifferentialTalonFXSensorID)
Modifies this configuration's DifferentialTalonFXSensorID parameter and returns itself for method-cha...
Definition: Configs.hpp:1295
std::string Serialize() const override
Definition: Configs.hpp:1326
DifferentialSensorsConfigs & WithDifferentialRemoteSensorID(int newDifferentialRemoteSensorID)
Modifies this configuration's DifferentialRemoteSensorID parameter and returns itself for method-chai...
Definition: Configs.hpp:1306
DifferentialSensorsConfigs & WithDifferentialSensorSource(signals::DifferentialSensorSourceValue newDifferentialSensorSource)
Modifies this configuration's DifferentialSensorSource parameter and returns itself for method-chaini...
Definition: Configs.hpp:1284
std::string ToString() const override
Definition: Configs.hpp:1314
signals::DifferentialSensorSourceValue DifferentialSensorSource
Choose what sensor source is used for differential control of a mechanism.
Definition: Configs.hpp:1255
int DifferentialRemoteSensorID
Device ID of which remote sensor to use on the differential axis.
Definition: Configs.hpp:1276
int DifferentialTalonFXSensorID
Device ID of which remote Talon FX to use.
Definition: Configs.hpp:1265
Configs that affect the feedback of this motor controller.
Definition: Configs.hpp:1022
FeedbackConfigs & WithSensorToMechanismRatio(double newSensorToMechanismRatio)
Modifies this configuration's SensorToMechanismRatio parameter and returns itself for method-chaining...
Definition: Configs.hpp:1125
std::string ToString() const override
Definition: Configs.hpp:1182
FeedbackConfigs & WithFeedbackSensorSource(signals::FeedbackSensorSourceValue newFeedbackSensorSource)
Modifies this configuration's FeedbackSensorSource parameter and returns itself for method-chaining a...
Definition: Configs.hpp:1147
double FeedbackRotorOffset
This offset is applied to the absolute integrated rotor sensor.
Definition: Configs.hpp:1034
signals::FeedbackSensorSourceValue FeedbackSensorSource
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition: Configs.hpp:1096
FeedbackConfigs & WithRemoteCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use Remote CANcoder by passing in the CANcoder obje...
double SensorToMechanismRatio
This is the ratio of sensor rotations to the mechanism's output.
Definition: Configs.hpp:1047
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:1208
std::string Serialize() const override
Definition: Configs.hpp:1196
double RotorToSensorRatio
Talon FX is capable of fusing a remote CANcoder with its rotor sensor to produce a high-bandwidth sen...
Definition: Configs.hpp:1060
FeedbackConfigs & WithFeedbackRotorOffset(double newFeedbackRotorOffset)
Modifies this configuration's FeedbackRotorOffset parameter and returns itself for method-chaining an...
Definition: Configs.hpp:1114
FeedbackConfigs & WithFeedbackRemoteSensorID(int newFeedbackRemoteSensorID)
Modifies this configuration's FeedbackRemoteSensorID parameter and returns itself for method-chaining...
Definition: Configs.hpp:1158
FeedbackConfigs & WithRotorToSensorRatio(double newRotorToSensorRatio)
Modifies this configuration's RotorToSensorRatio parameter and returns itself for method-chaining and...
Definition: Configs.hpp:1136
int FeedbackRemoteSensorID
Device ID of which remote device to use.
Definition: Configs.hpp:1106
FeedbackConfigs & WithFusedCANcoder(const hardware::core::CoreCANcoder &device)
Helper method to configure this feedback group to use Fused CANcoder by passing in the CANcoder objec...
Configs to trim the Pigeon2's gyroscope.
Definition: Configs.hpp:261
GyroTrimConfigs & WithGyroScalarZ(double newGyroScalarZ)
Modifies this configuration's GyroScalarZ parameter and returns itself for method-chaining and easier...
Definition: Configs.hpp:319
std::string Serialize() const override
Definition: Configs.hpp:339
std::string ToString() const override
Definition: Configs.hpp:327
double GyroScalarX
The gyro scalar component for the X axis.
Definition: Configs.hpp:271
GyroTrimConfigs & WithGyroScalarY(double newGyroScalarY)
Modifies this configuration's GyroScalarY parameter and returns itself for method-chaining and easier...
Definition: Configs.hpp:308
GyroTrimConfigs & WithGyroScalarX(double newGyroScalarX)
Modifies this configuration's GyroScalarX parameter and returns itself for method-chaining and easier...
Definition: Configs.hpp:297
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:349
double GyroScalarZ
The gyro scalar component for the Z axis.
Definition: Configs.hpp:289
double GyroScalarY
The gyro scalar component for the Y axis.
Definition: Configs.hpp:280
Configs that change how the motor controller behaves under different limit switch statse.
Definition: Configs.hpp:1687
std::string ToString() const override
Definition: Configs.hpp:1917
signals::ForwardLimitTypeValue ForwardLimitType
Determines if limit is normally-open (default) or normally-closed.
Definition: Configs.hpp:1694
HardwareLimitSwitchConfigs & WithForwardLimitRemoteSensorID(int newForwardLimitRemoteSensorID)
Modifies this configuration's ForwardLimitRemoteSensorID parameter and returns itself for method-chai...
Definition: Configs.hpp:1843
signals::ForwardLimitSourceValue ForwardLimitSource
Determines where to poll the forward limit switch.
Definition: Configs.hpp:1724
HardwareLimitSwitchConfigs & WithReverseLimitSource(signals::ReverseLimitSourceValue newReverseLimitSource)
Modifies this configuration's ReverseLimitSource parameter and returns itself for method-chaining and...
Definition: Configs.hpp:1898
bool ForwardLimitEnable
If enabled, motor output is set to neutral when forward limit switch is asseted and positive output i...
Definition: Configs.hpp:1718
HardwareLimitSwitchConfigs & WithReverseLimitRemoteSensorID(int newReverseLimitRemoteSensorID)
Modifies this configuration's ReverseLimitRemoteSensorID parameter and returns itself for method-chai...
Definition: Configs.hpp:1909
bool ReverseLimitAutosetPositionEnable
If enabled, the position is auto-set to a specific value, specified by ReverseLimitAutosetPositionVal...
Definition: Configs.hpp:1747
bool ForwardLimitAutosetPositionEnable
If enabled, the position is auto-set to a specific value, specified by ForwardLimitAutosetPositionVal...
Definition: Configs.hpp:1701
signals::ReverseLimitTypeValue ReverseLimitType
Determines if limit is normally-open (default) or normally-closed.
Definition: Configs.hpp:1740
HardwareLimitSwitchConfigs & WithForwardLimitSource(signals::ForwardLimitSourceValue newForwardLimitSource)
Modifies this configuration's ForwardLimitSource parameter and returns itself for method-chaining and...
Definition: Configs.hpp:1832
double ReverseLimitAutosetPositionValue
The value to auto-set the position to.
Definition: Configs.hpp:1757
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:1957
int ForwardLimitRemoteSensorID
Device ID of the device if using remote limit switch features.
Definition: Configs.hpp:1734
double ForwardLimitAutosetPositionValue
The value to auto-set the position to.
Definition: Configs.hpp:1711
signals::ReverseLimitSourceValue ReverseLimitSource
Determines where to poll the reverse limit switch.
Definition: Configs.hpp:1770
HardwareLimitSwitchConfigs & WithForwardLimitAutosetPositionEnable(bool newForwardLimitAutosetPositionEnable)
Modifies this configuration's ForwardLimitAutosetPositionEnable parameter and returns itself for meth...
Definition: Configs.hpp:1799
HardwareLimitSwitchConfigs & WithReverseLimitEnable(bool newReverseLimitEnable)
Modifies this configuration's ReverseLimitEnable parameter and returns itself for method-chaining and...
Definition: Configs.hpp:1887
std::string Serialize() const override
Definition: Configs.hpp:1938
HardwareLimitSwitchConfigs & WithReverseLimitType(signals::ReverseLimitTypeValue newReverseLimitType)
Modifies this configuration's ReverseLimitType parameter and returns itself for method-chaining and e...
Definition: Configs.hpp:1854
HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionEnable(bool newReverseLimitAutosetPositionEnable)
Modifies this configuration's ReverseLimitAutosetPositionEnable parameter and returns itself for meth...
Definition: Configs.hpp:1865
HardwareLimitSwitchConfigs & WithForwardLimitEnable(bool newForwardLimitEnable)
Modifies this configuration's ForwardLimitEnable parameter and returns itself for method-chaining and...
Definition: Configs.hpp:1821
HardwareLimitSwitchConfigs & WithForwardLimitAutosetPositionValue(double newForwardLimitAutosetPositionValue)
Modifies this configuration's ForwardLimitAutosetPositionValue parameter and returns itself for metho...
Definition: Configs.hpp:1810
HardwareLimitSwitchConfigs & WithReverseLimitAutosetPositionValue(double newReverseLimitAutosetPositionValue)
Modifies this configuration's ReverseLimitAutosetPositionValue parameter and returns itself for metho...
Definition: Configs.hpp:1876
bool ReverseLimitEnable
If enabled, motor output is set to neutral when reverse limit switch is asseted and positive output i...
Definition: Configs.hpp:1764
int ReverseLimitRemoteSensorID
Device ID of the device if using remote limit switch features.
Definition: Configs.hpp:1780
HardwareLimitSwitchConfigs & WithForwardLimitType(signals::ForwardLimitTypeValue newForwardLimitType)
Modifies this configuration's ForwardLimitType parameter and returns itself for method-chaining and e...
Definition: Configs.hpp:1788
Configs that affect the magnet sensor and how to interpret it.
Definition: Configs.hpp:46
std::string Serialize() const override
Definition: Configs.hpp:121
signals::AbsoluteSensorRangeValue AbsoluteSensorRange
The range of the absolute sensor, either [-0.5, 0.5) or [0, 1).
Definition: Configs.hpp:71
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:131
MagnetSensorConfigs & WithMagnetOffset(double newMagnetOffset)
Modifies this configuration's MagnetOffset parameter and returns itself for method-chaining and easie...
Definition: Configs.hpp:90
double MagnetOffset
This offset is added to the reported position, allowing the application to trim the zero position.
Definition: Configs.hpp:65
MagnetSensorConfigs & WithSensorDirection(signals::SensorDirectionValue newSensorDirection)
Modifies this configuration's SensorDirection parameter and returns itself for method-chaining and ea...
Definition: Configs.hpp:79
std::string ToString() const override
Definition: Configs.hpp:109
signals::SensorDirectionValue SensorDirection
Direction of the sensor to determine positive facing the LED side of the CANcoder.
Definition: Configs.hpp:53
MagnetSensorConfigs & WithAbsoluteSensorRange(signals::AbsoluteSensorRangeValue newAbsoluteSensorRange)
Modifies this configuration's AbsoluteSensorRange parameter and returns itself for method-chaining an...
Definition: Configs.hpp:101
Configs for Motion Magic®.
Definition: Configs.hpp:2220
double MotionMagicCruiseVelocity
This is the maximum velocity Motion Magic® based control modes are allowed to use.
Definition: Configs.hpp:2234
MotionMagicConfigs & WithMotionMagicJerk(double newMotionMagicJerk)
Modifies this configuration's MotionMagicJerk parameter and returns itself for method-chaining and ea...
Definition: Configs.hpp:2315
MotionMagicConfigs & WithMotionMagicAcceleration(double newMotionMagicAcceleration)
Modifies this configuration's MotionMagicAcceleration parameter and returns itself for method-chainin...
Definition: Configs.hpp:2304
MotionMagicConfigs & WithMotionMagicCruiseVelocity(double newMotionMagicCruiseVelocity)
Modifies this configuration's MotionMagicCruiseVelocity parameter and returns itself for method-chain...
Definition: Configs.hpp:2293
std::string Serialize() const override
Definition: Configs.hpp:2359
double MotionMagicJerk
This is the target jerk (acceleration derivative) Motion Magic® based control modes are allowed to us...
Definition: Configs.hpp:2258
double MotionMagicExpo_kV
This is the target kV used only by Motion Magic® Expo control modes, in units of V/rps.
Definition: Configs.hpp:2271
double MotionMagicAcceleration
This is the target acceleration Motion Magic® based control modes are allowed to use.
Definition: Configs.hpp:2245
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:2371
double MotionMagicExpo_kA
This is the target kA used only by Motion Magic® Expo control modes, in units of V/rps².
Definition: Configs.hpp:2285
MotionMagicConfigs & WithMotionMagicExpo_kV(double newMotionMagicExpo_kV)
Modifies this configuration's MotionMagicExpo_kV parameter and returns itself for method-chaining and...
Definition: Configs.hpp:2326
std::string ToString() const override
Definition: Configs.hpp:2345
MotionMagicConfigs & WithMotionMagicExpo_kA(double newMotionMagicExpo_kA)
Modifies this configuration's MotionMagicExpo_kA parameter and returns itself for method-chaining and...
Definition: Configs.hpp:2337
Configs that directly affect motor-output.
Definition: Configs.hpp:468
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:595
MotorOutputConfigs & WithNeutralMode(signals::NeutralModeValue newNeutralMode)
Modifies this configuration's NeutralMode parameter and returns itself for method-chaining and easier...
Definition: Configs.hpp:528
MotorOutputConfigs & WithPeakForwardDutyCycle(double newPeakForwardDutyCycle)
Modifies this configuration's PeakForwardDutyCycle parameter and returns itself for method-chaining a...
Definition: Configs.hpp:550
double PeakForwardDutyCycle
Maximum (forward) output during duty cycle based control modes.
Definition: Configs.hpp:499
double DutyCycleNeutralDeadband
Configures the output deadband percentage.
Definition: Configs.hpp:489
signals::NeutralModeValue NeutralMode
The state of the motor controller bridge when output is neutral or disabled.
Definition: Configs.hpp:480
MotorOutputConfigs & WithDutyCycleNeutralDeadband(double newDutyCycleNeutralDeadband)
Modifies this configuration's DutyCycleNeutralDeadband parameter and returns itself for method-chaini...
Definition: Configs.hpp:539
MotorOutputConfigs & WithPeakReverseDutyCycle(double newPeakReverseDutyCycle)
Modifies this configuration's PeakReverseDutyCycle parameter and returns itself for method-chaining a...
Definition: Configs.hpp:561
double PeakReverseDutyCycle
Minimum (reverse) output during duty cycle based control modes.
Definition: Configs.hpp:509
MotorOutputConfigs & WithInverted(signals::InvertedValue newInverted)
Modifies this configuration's Inverted parameter and returns itself for method-chaining and easier to...
Definition: Configs.hpp:517
std::string ToString() const override
Definition: Configs.hpp:569
signals::InvertedValue Inverted
Invert state of the device.
Definition: Configs.hpp:474
std::string Serialize() const override
Definition: Configs.hpp:583
Configs for Pigeon 2's Mount Pose configuration.
Definition: Configs.hpp:151
MountPoseConfigs & WithMountPoseRoll(double newMountPoseRoll)
Modifies this configuration's MountPoseRoll parameter and returns itself for method-chaining and easi...
Definition: Configs.hpp:209
double MountPoseYaw
The mounting calibration yaw-component.
Definition: Configs.hpp:161
double MountPosePitch
The mounting calibration pitch-component.
Definition: Configs.hpp:170
MountPoseConfigs & WithMountPosePitch(double newMountPosePitch)
Modifies this configuration's MountPosePitch parameter and returns itself for method-chaining and eas...
Definition: Configs.hpp:198
std::string ToString() const override
Definition: Configs.hpp:217
MountPoseConfigs & WithMountPoseYaw(double newMountPoseYaw)
Modifies this configuration's MountPoseYaw parameter and returns itself for method-chaining and easie...
Definition: Configs.hpp:187
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:239
double MountPoseRoll
The mounting calibration roll-component.
Definition: Configs.hpp:179
std::string Serialize() const override
Definition: Configs.hpp:229
Configs that affect the open-loop control of this motor controller.
Definition: Configs.hpp:1465
OpenLoopRampsConfigs & WithTorqueOpenLoopRampPeriod(double newTorqueOpenLoopRampPeriod)
Modifies this configuration's TorqueOpenLoopRampPeriod parameter and returns itself for method-chaini...
Definition: Configs.hpp:1526
std::string Serialize() const override
Definition: Configs.hpp:1546
OpenLoopRampsConfigs & WithDutyCycleOpenLoopRampPeriod(double newDutyCycleOpenLoopRampPeriod)
Modifies this configuration's DutyCycleOpenLoopRampPeriod parameter and returns itself for method-cha...
Definition: Configs.hpp:1504
double DutyCycleOpenLoopRampPeriod
If non-zero, this determines how much time to ramp from 0% output to 100% during open-loop modes.
Definition: Configs.hpp:1476
OpenLoopRampsConfigs & WithVoltageOpenLoopRampPeriod(double newVoltageOpenLoopRampPeriod)
Modifies this configuration's VoltageOpenLoopRampPeriod parameter and returns itself for method-chain...
Definition: Configs.hpp:1515
std::string ToString() const override
Definition: Configs.hpp:1534
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:1556
double VoltageOpenLoopRampPeriod
If non-zero, this determines how much time to ramp from 0V output to 12V during open-loop modes.
Definition: Configs.hpp:1486
double TorqueOpenLoopRampPeriod
If non-zero, this determines how much time to ramp from 0A output to 300A during open-loop modes.
Definition: Configs.hpp:1496
Definition: Configs.hpp:27
friend std::ostream & operator<<(std::ostream &str, const ParentConfiguration &v)
Definition: Configs.hpp:30
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:368
bool DisableTemperatureCompensation
Disables using the temperature compensation feature.
Definition: Configs.hpp:384
std::string ToString() const override
Definition: Configs.hpp:428
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:450
Pigeon2FeaturesConfigs & WithDisableNoMotionCalibration(bool newDisableNoMotionCalibration)
Modifies this configuration's DisableNoMotionCalibration parameter and returns itself for method-chai...
Definition: Configs.hpp:420
std::string Serialize() const override
Definition: Configs.hpp:440
bool DisableNoMotionCalibration
Disables using the no-motion calibration feature.
Definition: Configs.hpp:390
Pigeon2FeaturesConfigs & WithEnableCompass(bool newEnableCompass)
Modifies this configuration's EnableCompass parameter and returns itself for method-chaining and easi...
Definition: Configs.hpp:398
bool EnableCompass
Turns on or off the magnetometer fusing for 9-axis.
Definition: Configs.hpp:378
Pigeon2FeaturesConfigs & WithDisableTemperatureCompensation(bool newDisableTemperatureCompensation)
Modifies this configuration's DisableTemperatureCompensation parameter and returns itself for method-...
Definition: Configs.hpp:409
Gains for the specified slot.
Definition: Configs.hpp:2530
Slot0Configs & WithKP(double newKP)
Modifies this configuration's kP parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:2690
static Slot0Configs From(const SlotConfigs &value)
Slot0Configs & WithKV(double newKV)
Modifies this configuration's kV parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:2734
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition: Configs.hpp:2682
Slot0Configs & WithKD(double newKD)
Modifies this configuration's kD parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:2712
std::string ToString() const override
Definition: Configs.hpp:2786
signals::GravityTypeValue GravityType
Gravity Feedforward Type.
Definition: Configs.hpp:2667
Slot0Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition: Configs.hpp:2767
double kD
Derivative Gain.
Definition: Configs.hpp:2584
double kG
Gravity Feedforward Gain.
Definition: Configs.hpp:2650
double kV
Velocity Feedforward Gain.
Definition: Configs.hpp:2620
double kI
Integral Gain.
Definition: Configs.hpp:2565
Slot0Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition: Configs.hpp:2778
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:2820
Slot0Configs & WithKI(double newKI)
Modifies this configuration's kI parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:2701
double kA
Acceleration Feedforward Gain.
Definition: Configs.hpp:2636
double kP
Proportional Gain.
Definition: Configs.hpp:2547
Slot0Configs & WithKG(double newKG)
Modifies this configuration's kG parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:2756
std::string Serialize() const override
Definition: Configs.hpp:2804
Slot0Configs & WithKS(double newKS)
Modifies this configuration's kS parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:2723
Slot0Configs & WithKA(double newKA)
Modifies this configuration's kA parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:2745
double kS
Static Feedforward Gain.
Definition: Configs.hpp:2604
Gains for the specified slot.
Definition: Configs.hpp:2845
Slot1Configs & WithKS(double newKS)
Modifies this configuration's kS parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3037
Slot1Configs & WithKI(double newKI)
Modifies this configuration's kI parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3015
std::string Serialize() const override
Definition: Configs.hpp:3118
static Slot1Configs From(const SlotConfigs &value)
double kD
Derivative Gain.
Definition: Configs.hpp:2899
double kI
Integral Gain.
Definition: Configs.hpp:2880
double kS
Static Feedforward Gain.
Definition: Configs.hpp:2919
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition: Configs.hpp:2996
Slot1Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition: Configs.hpp:3081
double kA
Acceleration Feedforward Gain.
Definition: Configs.hpp:2951
Slot1Configs & WithKV(double newKV)
Modifies this configuration's kV parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3048
double kG
Gravity Feedforward Gain.
Definition: Configs.hpp:2965
std::string ToString() const override
Definition: Configs.hpp:3100
Slot1Configs & WithKD(double newKD)
Modifies this configuration's kD parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3026
double kP
Proportional Gain.
Definition: Configs.hpp:2862
signals::GravityTypeValue GravityType
Gravity Feedforward Type.
Definition: Configs.hpp:2981
Slot1Configs & WithKG(double newKG)
Modifies this configuration's kG parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3070
Slot1Configs & WithKP(double newKP)
Modifies this configuration's kP parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3004
Slot1Configs & WithKA(double newKA)
Modifies this configuration's kA parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3059
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:3134
Slot1Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition: Configs.hpp:3092
double kV
Velocity Feedforward Gain.
Definition: Configs.hpp:2935
Gains for the specified slot.
Definition: Configs.hpp:3159
double kV
Velocity Feedforward Gain.
Definition: Configs.hpp:3249
std::string Serialize() const override
Definition: Configs.hpp:3432
Slot2Configs & WithKV(double newKV)
Modifies this configuration's kV parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3362
signals::GravityTypeValue GravityType
Gravity Feedforward Type.
Definition: Configs.hpp:3295
double kP
Proportional Gain.
Definition: Configs.hpp:3176
Slot2Configs & WithKD(double newKD)
Modifies this configuration's kD parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3340
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:3448
double kI
Integral Gain.
Definition: Configs.hpp:3194
Slot2Configs & WithKI(double newKI)
Modifies this configuration's kI parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3329
double kA
Acceleration Feedforward Gain.
Definition: Configs.hpp:3265
Slot2Configs & WithKA(double newKA)
Modifies this configuration's kA parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3373
Slot2Configs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition: Configs.hpp:3406
double kG
Gravity Feedforward Gain.
Definition: Configs.hpp:3279
Slot2Configs & WithKP(double newKP)
Modifies this configuration's kP parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3318
double kS
Static Feedforward Gain.
Definition: Configs.hpp:3233
static Slot2Configs From(const SlotConfigs &value)
Slot2Configs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition: Configs.hpp:3395
Slot2Configs & WithKG(double newKG)
Modifies this configuration's kG parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3384
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition: Configs.hpp:3310
std::string ToString() const override
Definition: Configs.hpp:3414
Slot2Configs & WithKS(double newKS)
Modifies this configuration's kS parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3351
double kD
Derivative Gain.
Definition: Configs.hpp:3213
Gains for the specified slot.
Definition: Configs.hpp:3472
static SlotConfigs From(const Slot2Configs &value)
std::string ToString() const
Definition: Configs.hpp:3788
double kP
Proportional Gain.
Definition: Configs.hpp:3541
static SlotConfigs From(const Slot1Configs &value)
SlotConfigs & WithKA(double newKA)
Modifies this configuration's kA parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3739
SlotConfigs & WithGravityType(signals::GravityTypeValue newGravityType)
Modifies this configuration's GravityType parameter and returns itself for method-chaining and easier...
Definition: Configs.hpp:3761
SlotConfigs & WithKD(double newKD)
Modifies this configuration's kD parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3706
double kG
Gravity Feedforward Gain.
Definition: Configs.hpp:3644
double kI
Integral Gain.
Definition: Configs.hpp:3559
SlotConfigs & WithKV(double newKV)
Modifies this configuration's kV parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3728
double kA
Acceleration Feedforward Gain.
Definition: Configs.hpp:3630
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize)
Definition: Configs.hpp:3823
signals::StaticFeedforwardSignValue StaticFeedforwardSign
Static Feedforward Sign during position closed loop.
Definition: Configs.hpp:3676
SlotConfigs & WithKP(double newKP)
Modifies this configuration's kP parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3684
double kD
Derivative Gain.
Definition: Configs.hpp:3578
SlotConfigs & WithKG(double newKG)
Modifies this configuration's kG parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3750
int SlotNumber
Chooses which slot these configs are for.
Definition: Configs.hpp:3782
double kV
Velocity Feedforward Gain.
Definition: Configs.hpp:3614
SlotConfigs & WithKS(double newKS)
Modifies this configuration's kS parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3717
std::string Serialize() const
Definition: Configs.hpp:3806
static SlotConfigs From(const Slot0Configs &value)
signals::GravityTypeValue GravityType
Gravity Feedforward Type.
Definition: Configs.hpp:3661
SlotConfigs & WithKI(double newKI)
Modifies this configuration's kI parameter and returns itself for method-chaining and easier to use c...
Definition: Configs.hpp:3695
SlotConfigs & WithStaticFeedforwardSign(signals::StaticFeedforwardSignValue newStaticFeedforwardSign)
Modifies this configuration's StaticFeedforwardSign parameter and returns itself for method-chaining ...
Definition: Configs.hpp:3772
double kS
Static Feedforward Gain.
Definition: Configs.hpp:3598
Configs that affect how software-limit switches behave.
Definition: Configs.hpp:2092
double ForwardSoftLimitThreshold
Position threshold for forward soft limit features.
Definition: Configs.hpp:2117
std::string ToString() const override
Definition: Configs.hpp:2176
double ReverseSoftLimitThreshold
Position threshold for reverse soft limit features.
Definition: Configs.hpp:2127
SoftwareLimitSwitchConfigs & WithForwardSoftLimitEnable(bool newForwardSoftLimitEnable)
Modifies this configuration's ForwardSoftLimitEnable parameter and returns itself for method-chaining...
Definition: Configs.hpp:2135
SoftwareLimitSwitchConfigs & WithForwardSoftLimitThreshold(double newForwardSoftLimitThreshold)
Modifies this configuration's ForwardSoftLimitThreshold parameter and returns itself for method-chain...
Definition: Configs.hpp:2157
SoftwareLimitSwitchConfigs & WithReverseSoftLimitEnable(bool newReverseSoftLimitEnable)
Modifies this configuration's ReverseSoftLimitEnable parameter and returns itself for method-chaining...
Definition: Configs.hpp:2146
std::string Serialize() const override
Definition: Configs.hpp:2189
SoftwareLimitSwitchConfigs & WithReverseSoftLimitThreshold(double newReverseSoftLimitThreshold)
Modifies this configuration's ReverseSoftLimitThreshold parameter and returns itself for method-chain...
Definition: Configs.hpp:2168
bool ReverseSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ReverseSoftLimitThreshold and reve...
Definition: Configs.hpp:2107
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:2200
bool ForwardSoftLimitEnable
If enabled, the motor output is set to neutral if position exceeds ForwardSoftLimitThreshold and forw...
Definition: Configs.hpp:2100
Configs to control the maximum and minimum applied torque when using Torque Current control types.
Definition: Configs.hpp:910
std::string ToString() const override
Definition: Configs.hpp:979
double TorqueNeutralDeadband
Configures the output deadband during torque current based control modes.
Definition: Configs.hpp:941
TorqueCurrentConfigs & WithTorqueNeutralDeadband(double newTorqueNeutralDeadband)
Modifies this configuration's TorqueNeutralDeadband parameter and returns itself for method-chaining ...
Definition: Configs.hpp:971
double PeakForwardTorqueCurrent
Maximum (forward) output during torque current based control modes.
Definition: Configs.hpp:921
TorqueCurrentConfigs & WithPeakForwardTorqueCurrent(double newPeakForwardTorqueCurrent)
Modifies this configuration's PeakForwardTorqueCurrent parameter and returns itself for method-chaini...
Definition: Configs.hpp:949
TorqueCurrentConfigs & WithPeakReverseTorqueCurrent(double newPeakReverseTorqueCurrent)
Modifies this configuration's PeakReverseTorqueCurrent parameter and returns itself for method-chaini...
Definition: Configs.hpp:960
std::string Serialize() const override
Definition: Configs.hpp:991
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:1001
double PeakReverseTorqueCurrent
Minimum (reverse) output during torque current based control modes.
Definition: Configs.hpp:931
Voltage-specific configs.
Definition: Configs.hpp:797
ctre::phoenix::StatusCode Deserialize(const std::string &to_deserialize) override
Definition: Configs.hpp:890
double PeakReverseVoltage
Minimum (reverse) output during voltage based control modes.
Definition: Configs.hpp:830
std::string Serialize() const override
Definition: Configs.hpp:880
std::string ToString() const override
Definition: Configs.hpp:868
double PeakForwardVoltage
Maximum (forward) output during voltage based control modes.
Definition: Configs.hpp:821
VoltageConfigs & WithPeakForwardVoltage(double newPeakForwardVoltage)
Modifies this configuration's PeakForwardVoltage parameter and returns itself for method-chaining and...
Definition: Configs.hpp:849
VoltageConfigs & WithSupplyVoltageTimeConstant(double newSupplyVoltageTimeConstant)
Modifies this configuration's SupplyVoltageTimeConstant parameter and returns itself for method-chain...
Definition: Configs.hpp:838
double SupplyVoltageTimeConstant
The time constant (in seconds) of the low-pass filter for the supply voltage.
Definition: Configs.hpp:812
VoltageConfigs & WithPeakReverseVoltage(double newPeakReverseVoltage)
Modifies this configuration's PeakReverseVoltage parameter and returns itself for method-chaining and...
Definition: Configs.hpp:860
Class for CANcoder, a CAN based magnetic encoder that provides absolute and relative position along w...
Definition: CoreCANcoder.hpp:498
The range of the absolute sensor, either [-0.5, 0.5) or [0, 1).
Definition: SpnEnums.hpp:749
static constexpr int Signed_PlusMinusHalf
Definition: SpnEnums.hpp:754
int value
Definition: SpnEnums.hpp:751
Choose what sensor source is used for differential control of a mechanism.
Definition: SpnEnums.hpp:2146
static constexpr int Disabled
Definition: SpnEnums.hpp:2150
int value
Definition: SpnEnums.hpp:2148
Choose what sensor source is reported via API and used by closed-loop and limit features.
Definition: SpnEnums.hpp:1628
int value
Definition: SpnEnums.hpp:1630
static constexpr int RotorSensor
Definition: SpnEnums.hpp:1632
Determines where to poll the forward limit switch.
Definition: SpnEnums.hpp:1769
static constexpr int LimitSwitchPin
Definition: SpnEnums.hpp:1773
int value
Definition: SpnEnums.hpp:1771
Determines if limit is normally-open (default) or normally-closed.
Definition: SpnEnums.hpp:1703
static constexpr int NormallyOpen
Definition: SpnEnums.hpp:1707
int value
Definition: SpnEnums.hpp:1705
Gravity Feedforward Type.
Definition: SpnEnums.hpp:1402
static constexpr int Elevator_Static
Definition: SpnEnums.hpp:1406
int value
Definition: SpnEnums.hpp:1404
Invert state of the device.
Definition: SpnEnums.hpp:1467
static constexpr int CounterClockwise_Positive
Definition: SpnEnums.hpp:1471
int value
Definition: SpnEnums.hpp:1469
The state of the motor controller bridge when output is neutral or disabled.
Definition: SpnEnums.hpp:1533
int value
Definition: SpnEnums.hpp:1535
static constexpr int Coast
Definition: SpnEnums.hpp:1537
Determines where to poll the reverse limit switch.
Definition: SpnEnums.hpp:1906
int value
Definition: SpnEnums.hpp:1908
static constexpr int LimitSwitchPin
Definition: SpnEnums.hpp:1910
Determines if limit is normally-open (default) or normally-closed.
Definition: SpnEnums.hpp:1840
static constexpr int NormallyOpen
Definition: SpnEnums.hpp:1844
int value
Definition: SpnEnums.hpp:1842
Direction of the sensor to determine positive facing the LED side of the CANcoder.
Definition: SpnEnums.hpp:246
static constexpr int CounterClockwise_Positive
Definition: SpnEnums.hpp:250
int value
Definition: SpnEnums.hpp:248
Static Feedforward Sign during position closed loop.
Definition: SpnEnums.hpp:2229
int value
Definition: SpnEnums.hpp:2231
static constexpr int UseVelocitySign
Definition: SpnEnums.hpp:2233
Definition: RcManualEvent.hpp:12