22
33import static edu .wpi .first .units .Units .DegreesPerSecond ;
44
5+ import com .ctre .phoenix6 .BaseStatusSignal ;
56import com .ctre .phoenix6 .StatusSignal ;
6- import com .ctre .phoenix6 .configs .TalonFXConfiguration ;
7- import com .ctre .phoenix6 .configs .TalonFXConfigurator ;
7+ import com .ctre .phoenix6 .configs .TalonFXSConfiguration ;
8+ import com .ctre .phoenix6 .configs .TalonFXSConfigurator ;
89import com .ctre .phoenix6 .controls .MotionMagicVelocityDutyCycle ;
9- import com .ctre .phoenix6 .hardware .TalonFX ;
10+ import com .ctre .phoenix6 .hardware .TalonFXS ;
1011import com .ctre .phoenix6 .signals .ForwardLimitValue ;
1112import com .ctre .phoenix6 .signals .ReverseLimitValue ;
1213import edu .wpi .first .units .measure .AngularVelocity ;
1617import org .strykeforce .telemetry .TelemetryService ;
1718
1819public class CoralIOFX implements CoralIO {
19- // private objects
2020 private Logger logger ;
21- private TalonFX talonFx ;
21+ private TalonFXS talonFxs ;
2222
2323 // FX Access objects
24- TalonFXConfigurator configurator ;
24+ TalonFXSConfigurator configurator ;
2525 private MotionMagicVelocityDutyCycle velocityRequest =
2626 new MotionMagicVelocityDutyCycle (0 ).withEnableFOC (false ).withSlot (0 );
2727 StatusSignal <AngularVelocity > curVelocity ;
@@ -30,49 +30,50 @@ public class CoralIOFX implements CoralIO {
3030
3131 public CoralIOFX () {
3232 logger = LoggerFactory .getLogger (this .getClass ());
33- talonFx = new TalonFX (CoralConstants .kCoralFxId );
33+ talonFxs = new TalonFXS (CoralConstants .kCoralFxId );
3434
3535 // Config controller
36- configurator = talonFx .getConfigurator ();
37- configurator .apply (new TalonFXConfiguration ()); // Factory default motor controller
36+ configurator = talonFxs .getConfigurator ();
37+ configurator .apply (new TalonFXSConfiguration ()); // Factory default motor controller
3838 configurator .apply (CoralConstants .getFXConfig ());
3939
4040 // Attach status signals
41- curVelocity = talonFx .getVelocity ();
42- fwdLimitSwitch = talonFx .getForwardLimit ();
43- revLimitSwitch = talonFx .getReverseLimit ();
41+ curVelocity = talonFxs .getVelocity ();
42+ fwdLimitSwitch = talonFxs .getForwardLimit ();
43+ revLimitSwitch = talonFxs .getReverseLimit ();
4444 }
4545
4646 @ Override
4747 public void setVelocity (AngularVelocity velocity ) {
4848 logger .info ("Setting velocity to {} degrees per second" , velocity .in (DegreesPerSecond ));
4949
50- talonFx .setControl (velocityRequest .withVelocity (velocity ));
50+ talonFxs .setControl (velocityRequest .withVelocity (velocity ));
5151 }
5252
5353 @ Override
5454 public void enableFwdLimitSwitch (boolean enabled ) {
55- talonFx
55+ talonFxs
5656 .getConfigurator ()
5757 .apply (CoralConstants .getFXConfig ().HardwareLimitSwitch .withForwardLimitEnable (enabled ));
5858 }
5959
6060 @ Override
6161 public void enableRevLimitSwitch (boolean enabled ) {
62- talonFx
62+ talonFxs
6363 .getConfigurator ()
6464 .apply (CoralConstants .getFXConfig ().HardwareLimitSwitch .withReverseLimitEnable (enabled ));
6565 }
6666
6767 @ Override
6868 public void updateInputs (CoralIOInputs inputs ) {
69- inputs .velocity = curVelocity .refresh ().getValue ();
69+ BaseStatusSignal .refreshAll (curVelocity , fwdLimitSwitch , revLimitSwitch );
70+ inputs .velocity = curVelocity .getValue ();
7071 inputs .isFwdLimitSwitchClosed = fwdLimitSwitch .refresh ().getValue ().value == 1 ;
7172 inputs .isRevLimitSwitchClosed = revLimitSwitch .refresh ().getValue ().value == 0 ;
7273 }
7374
7475 @ Override
7576 public void registerWith (TelemetryService telemetryService ) {
76- telemetryService .register (talonFx , true );
77+ telemetryService .register (talonFxs , true );
7778 }
7879}
0 commit comments