Class DifferentialSensorsConfigs

java.lang.Object
com.ctre.phoenix6.configs.DifferentialSensorsConfigs
All Implemented Interfaces:
ParentConfiguration, ISerializable

public class DifferentialSensorsConfigs
extends Object
implements ParentConfiguration
Configs related to sensors used for differential control of a mechanism.

Includes the differential sensor sources and IDs.

  • Field Details

    • DifferentialSensorSource

      Choose what sensor source is used for differential control of a mechanism. The default is Disabled. All other options require setting the DifferentialTalonFXSensorID, as the average of this Talon FX's sensor and the remote TalonFX's sensor is used for the differential controller's primary targets.

      Choose RemoteTalonFX_Diff to use another TalonFX on the same CAN bus. Talon FX will update its differential position and velocity whenever the remote TalonFX publishes its information on CAN bus. The differential controller will use the difference between this TalonFX's sensor and the remote Talon FX's sensor for the differential component of the output.

      Choose RemotePigeon2_Yaw, RemotePigeon2_Pitch, and RemotePigeon2_Roll to use another Pigeon2 on the same CAN bus (this also requires setting DifferentialRemoteSensorID). Talon FX will update its differential position to match the selected value whenever Pigeon2 publishes its information on CAN bus. Note that the Talon FX differential position will be in rotations and not degrees.

      Choose RemoteCANcoder to use another CANcoder on the same CAN bus (this also requires setting DifferentialRemoteSensorID). Talon FX will update its differential position and velocity to match the CANcoder whenever CANcoder publishes its information on CAN bus.

    • DifferentialTalonFXSensorID

      Device ID of which remote Talon FX to use. This is used when the Differential Sensor Source is not disabled.
      • Minimum Value: 0
      • Maximum Value: 62
      • Default Value: 0
      • Units:
    • DifferentialRemoteSensorID

      Device ID of which remote sensor to use on the differential axis. This is used when the Differential Sensor Source is not RemoteTalonFX_Diff.
      • Minimum Value: 0
      • Maximum Value: 62
      • Default Value: 0
      • Units:
  • Constructor Details

  • Method Details

    • withDifferentialSensorSource

      Modifies this configuration's DifferentialSensorSource parameter and returns itself for method-chaining and easier to use config API.

      Choose what sensor source is used for differential control of a mechanism. The default is Disabled. All other options require setting the DifferentialTalonFXSensorID, as the average of this Talon FX's sensor and the remote TalonFX's sensor is used for the differential controller's primary targets.

      Choose RemoteTalonFX_Diff to use another TalonFX on the same CAN bus. Talon FX will update its differential position and velocity whenever the remote TalonFX publishes its information on CAN bus. The differential controller will use the difference between this TalonFX's sensor and the remote Talon FX's sensor for the differential component of the output.

      Choose RemotePigeon2_Yaw, RemotePigeon2_Pitch, and RemotePigeon2_Roll to use another Pigeon2 on the same CAN bus (this also requires setting DifferentialRemoteSensorID). Talon FX will update its differential position to match the selected value whenever Pigeon2 publishes its information on CAN bus. Note that the Talon FX differential position will be in rotations and not degrees.

      Choose RemoteCANcoder to use another CANcoder on the same CAN bus (this also requires setting DifferentialRemoteSensorID). Talon FX will update its differential position and velocity to match the CANcoder whenever CANcoder publishes its information on CAN bus.

      Parameters:
      newDifferentialSensorSource - Parameter to modify
      Returns:
      Itself
    • withDifferentialTalonFXSensorID

      public DifferentialSensorsConfigs withDifferentialTalonFXSensorID​(int newDifferentialTalonFXSensorID)
      Modifies this configuration's DifferentialTalonFXSensorID parameter and returns itself for method-chaining and easier to use config API.

      Device ID of which remote Talon FX to use. This is used when the Differential Sensor Source is not disabled.

      • Minimum Value: 0
      • Maximum Value: 62
      • Default Value: 0
      • Units:
      Parameters:
      newDifferentialTalonFXSensorID - Parameter to modify
      Returns:
      Itself
    • withDifferentialRemoteSensorID

      public DifferentialSensorsConfigs withDifferentialRemoteSensorID​(int newDifferentialRemoteSensorID)
      Modifies this configuration's DifferentialRemoteSensorID parameter and returns itself for method-chaining and easier to use config API.

      Device ID of which remote sensor to use on the differential axis. This is used when the Differential Sensor Source is not RemoteTalonFX_Diff.

      • Minimum Value: 0
      • Maximum Value: 62
      • Default Value: 0
      • Units:
      Parameters:
      newDifferentialRemoteSensorID - Parameter to modify
      Returns:
      Itself
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • deserialize

      public StatusCode deserialize​(String to_deserialize)
      Specified by:
      deserialize in interface ParentConfiguration
    • serialize

      public String serialize()
      Specified by:
      serialize in interface ISerializable