2025-Robot
Robot code for 2025 FRC season by Argos, FRC team #1756
Loading...
Searching...
No Matches
argos_lib::falcon_config Namespace Reference

Classes

struct  has_dutyCycleNeutralDeadband
 
struct  has_dutyCycleNeutralDeadband< T, decltype((void) T::dutyCycleNeutralDeadband, void())>
 
struct  has_dutyCycleOpenLoopRampPeriod
 
struct  has_dutyCycleOpenLoopRampPeriod< T, decltype((void) T::dutyCycleOpenLoopRampPeriod, void())>
 
struct  has_forwardLimit_deviceID
 
struct  has_forwardLimit_deviceID< T, decltype((void) T::forwardLimit_deviceID, void())>
 
struct  has_forwardLimit_normalState
 
struct  has_forwardLimit_normalState< T, decltype((void) T::forwardLimit_normalState, void())>
 
struct  has_forwardLimit_source
 
struct  has_forwardLimit_source< T, decltype((void) T::forwardLimit_source, void())>
 
struct  has_inverted
 
struct  has_inverted< T, decltype((void) T::inverted, void())>
 
struct  has_motionMagic_acceleration
 
struct  has_motionMagic_acceleration< T, decltype((void) T::motionMagic_acceleration, void())>
 
struct  has_motionMagic_cruiseVelocity
 
struct  has_motionMagic_cruiseVelocity< T, decltype((void) T::motionMagic_cruiseVelocity, void())>
 
struct  has_motionMagic_expo_kA
 
struct  has_motionMagic_expo_kA< T, decltype((void) T::motionMagic_expo_kA, void())>
 
struct  has_motionMagic_expo_kV
 
struct  has_motionMagic_expo_kV< T, decltype((void) T::motionMagic_expo_kV, void())>
 
struct  has_motionMagic_jerk
 
struct  has_motionMagic_jerk< T, decltype((void) T::motionMagic_jerk, void())>
 
struct  has_neutralDeadband
 
struct  has_neutralDeadband< T, decltype((void) T::neutralDeadband, void())>
 
struct  has_neutralMode
 
struct  has_neutralMode< T, decltype((void) T::neutralMode, void())>
 
struct  has_nominalOutputForward
 
struct  has_nominalOutputForward< T, decltype((void) T::nominalOutputForward, void())>
 
struct  has_nominalOutputReverse
 
struct  has_nominalOutputReverse< T, decltype((void) T::nominalOutputReverse, void())>
 
struct  has_peakOutputForward
 
struct  has_peakOutputForward< T, decltype((void) T::peakOutputForward, void())>
 
struct  has_peakOutputReverse
 
struct  has_peakOutputReverse< T, decltype((void) T::peakOutputReverse, void())>
 
struct  has_pid0_gravityType
 
struct  has_pid0_gravityType< T, decltype((void) T::pid0_gravityType, void())>
 
struct  has_pid0_kA
 
struct  has_pid0_kA< T, decltype((void) T::pid0_kA, void())>
 
struct  has_pid0_kD
 
struct  has_pid0_kD< T, decltype((void) T::pid0_kD, void())>
 
struct  has_pid0_kG
 
struct  has_pid0_kG< T, decltype((void) T::pid0_kG, void())>
 
struct  has_pid0_kI
 
struct  has_pid0_kI< T, decltype((void) T::pid0_kI, void())>
 
struct  has_pid0_kP
 
struct  has_pid0_kP< T, decltype((void) T::pid0_kP, void())>
 
struct  has_pid0_kS
 
struct  has_pid0_kS< T, decltype((void) T::pid0_kS, void())>
 
struct  has_pid0_kV
 
struct  has_pid0_kV< T, decltype((void) T::pid0_kV, void())>
 
struct  has_pid1_gravityType
 
struct  has_pid1_gravityType< T, decltype((void) T::pid1_gravityType, void())>
 
struct  has_pid1_kA
 
struct  has_pid1_kA< T, decltype((void) T::pid1_kA, void())>
 
struct  has_pid1_kD
 
struct  has_pid1_kD< T, decltype((void) T::pid1_kD, void())>
 
struct  has_pid1_kG
 
struct  has_pid1_kG< T, decltype((void) T::pid1_kG, void())>
 
struct  has_pid1_kI
 
struct  has_pid1_kI< T, decltype((void) T::pid1_kI, void())>
 
struct  has_pid1_kP
 
struct  has_pid1_kP< T, decltype((void) T::pid1_kP, void())>
 
struct  has_pid1_kS
 
struct  has_pid1_kS< T, decltype((void) T::pid1_kS, void())>
 
struct  has_pid1_kV
 
struct  has_pid1_kV< T, decltype((void) T::pid1_kV, void())>
 
struct  has_reverseLimit_deviceID
 
struct  has_reverseLimit_deviceID< T, decltype((void) T::reverseLimit_deviceID, void())>
 
struct  has_reverseLimit_normalState
 
struct  has_reverseLimit_normalState< T, decltype((void) T::reverseLimit_normalState, void())>
 
struct  has_reverseLimit_source
 
struct  has_reverseLimit_source< T, decltype((void) T::reverseLimit_source, void())>
 
struct  has_rotorToSensorRatio
 
struct  has_rotorToSensorRatio< T, decltype((void) T::rotorToSensorRatio, void())>
 
struct  has_selectedSensor
 
struct  has_selectedSensor< T, decltype((void) T::selectedSensor, void())>
 
struct  has_selectedSensor_addr
 
struct  has_selectedSensor_addr< T, decltype((void) T::selectedSensor_addr, void())>
 
struct  has_sensorToMechanismRatio
 
struct  has_sensorToMechanismRatio< T, decltype((void) T::sensorToMechanismRatio, void())>
 
struct  has_statorCurrentLimit
 
struct  has_statorCurrentLimit< T, decltype((void) T::statorCurrentLimit, void())>
 
struct  has_statusFrameMotorMode
 
struct  has_statusFrameMotorMode< T, decltype((void) T::statusFrameMotorMode, void())>
 
struct  has_supplyCurrentLimit
 
struct  has_supplyCurrentLimit< T, decltype((void) T::supplyCurrentLimit, void())>
 
struct  has_supplyCurrentLowerLimit
 
struct  has_supplyCurrentLowerLimit< T, decltype((void) T::supplyCurrentLowerLimit, void())>
 
struct  has_supplyCurrentLowerTime
 
struct  has_supplyCurrentLowerTime< T, decltype((void) T::supplyCurrentLowerTime, void())>
 
struct  has_voltageOpenLoopRampPeriod
 
struct  has_voltageOpenLoopRampPeriod< T, decltype((void) T::voltageOpenLoopRampPeriod, void())>
 

Functions

template<typename T >
bool FalconConfig (ctre::phoenix6::hardware::TalonFX &motorController, units::millisecond_t configTimeout)
 Configures a CTRE Falcon with only the fields provided. All other fields are given the factory default values.
 
template<typename CompetitionConfig , typename PracticeConfig >
bool FalconConfig (ctre::phoenix6::hardware::TalonFX &motorController, units::millisecond_t configTimeout, argos_lib::RobotInstance instance)
 Configures a CTRE Falcon with configuration values according to specified robot instance.
 

Function Documentation

◆ FalconConfig() [1/2]

template<typename T >
bool argos_lib::falcon_config::FalconConfig ( ctre::phoenix6::hardware::TalonFX & motorController,
units::millisecond_t configTimeout )

Configures a CTRE Falcon with only the fields provided. All other fields are given the factory default values.

Template Parameters
TStructure containing any combination of the following members:
  • forwardLimit_deviceID
  • forwardLimit_normalState
  • forwardLimit_source
  • inverted
  • neutralDeadband
  • neutralMode
  • dutyCycleNeutralDeadband
  • peakOutputForward
  • peakOutputReverse
  • voltageOpenLoopRampPeriod
  • dutyCycleOpenLoopRampPeriod
  • pid0_kP
  • pid0_kI
  • pid0_kD
  • pid0_kS
  • pid0_kV
  • pid0_kA
  • pid0_kG
  • pid0_gravityType
  • pid1_kP
  • pid1_kI
  • pid1_kD
  • pid1_kS
  • pid1_kV
  • pid1_kA
  • pid1_kG
  • pid1_gravityType
  • motionMagic_cruiseVelocity
  • motionMagic_acceleration
  • motionMagic_jerk
  • motionMagic_expo_kV
  • motionMagic_expo_kA
  • reverseLimit_deviceID
  • reverseLimit_normalState
  • reverseLimit_source
  • rotorToSensorRatio
  • selectedSensor
  • selectedSensor_addr
  • sensorToMechanismRatio
  • statorCurrentLimit
  • statusFrameMotorMode
  • supplyCurrentLimit
  • supplyCurrentLowerLimit
  • supplyCurrentLowerTime
Parameters
motorControllerFalcon object to configure
configTimeoutTime to wait for response from Falcon
Returns
true Configuration succeeded
false Configuration failed

◆ FalconConfig() [2/2]

template<typename CompetitionConfig , typename PracticeConfig >
bool argos_lib::falcon_config::FalconConfig ( ctre::phoenix6::hardware::TalonFX & motorController,
units::millisecond_t configTimeout,
argos_lib::RobotInstance instance )

Configures a CTRE Falcon with configuration values according to specified robot instance.

Template Parameters
CompetitionConfigConfigurations to use in competition robot instance
PracticeConfigConfigurations to use in practice robot instance
Parameters
motorControllerFalcon object to configure
configTimeoutTime to wait for response from Falcon
instanceRobot instance to use
Returns
true Configuration succeeded
false Configuration failed