Class TalonFXWrapper

java.lang.Object
yams.core.motorcontrollers.SmartMotorController
yams.core.motorcontrollers.remote.TalonFXWrapper

public class TalonFXWrapper extends SmartMotorController
TalonFX wrapper for a CTRE TalonFX motor controller.

External encoder discontinuity point support (CANcoder):

  • 0.5 rotations maps to AbsoluteSensorDiscontinuityPoint = 0.5, sensor range is [-0.5, 0.5)
  • 1.0 rotations maps to AbsoluteSensorDiscontinuityPoint = 1.0, sensor range is [0, 1)
Configuring a discontinuity point is optional for CANcoder; when omitted the CANcoder default is used. Set via SmartMotorControllerConfig.withExternalEncoderDiscontinuityPoint(Angle).

Example

// Configure and create a Kraken X60 TalonFX on CAN ID 5
SmartMotorControllerConfig config = new SmartMotorControllerConfig()
    .withMotorInverted(false)
    .withStatorCurrentLimit(Amps.of(60))
    .withSupplyCurrentLimit(Amps.of(80))
    .withClosedLoopController(0.3, 0.1, 0.12);
SmartMotorController motor = new TalonFXWrapper(
    new TalonFX(5), DCMotor.getKrakenX60(1), config);
Elevator elevator = new Elevator(new ElevatorConfig(motor).withDrumRadius(Inches.of(1)));