From 8f289564267b622e1bc7bff439982bb5e51e6587 Mon Sep 17 00:00:00 2001 From: thenetworkgrinch Date: Mon, 13 Feb 2023 17:21:24 -0600 Subject: [PATCH] Updated support for Talons --- docs/allclasses-index.html | 34 +- docs/allclasses.html | 7 +- docs/allpackages-index.html | 2 +- docs/constant-values.html | 52 +- docs/deprecated-list.html | 2 +- docs/help-doc.html | 2 +- docs/index-files/index-1.html | 12 +- docs/index-files/index-10.html | 2 +- docs/index-files/index-11.html | 2 +- docs/index-files/index-12.html | 12 +- docs/index-files/index-13.html | 2 +- docs/index-files/index-14.html | 2 +- docs/index-files/index-15.html | 12 +- docs/index-files/index-16.html | 6 +- docs/index-files/index-17.html | 76 +- docs/index-files/index-18.html | 46 +- docs/index-files/index-19.html | 2 +- docs/index-files/index-2.html | 10 +- docs/index-files/index-20.html | 31 +- docs/index-files/index-21.html | 2 +- docs/index-files/index-22.html | 2 +- docs/index-files/index-23.html | 2 +- docs/index-files/index-24.html | 2 +- docs/index-files/index-3.html | 40 +- docs/index-files/index-4.html | 4 +- docs/index-files/index-5.html | 2 +- docs/index-files/index-6.html | 20 +- docs/index-files/index-7.html | 26 +- docs/index-files/index-8.html | 2 +- docs/index-files/index-9.html | 10 +- docs/index.html | 2 +- docs/member-search-index.js | 2 +- docs/overview-summary.html | 2 +- docs/overview-tree.html | 7 +- docs/swervelib/SwerveController.html | 2 +- docs/swervelib/SwerveDrive.html | 2 +- docs/swervelib/SwerveModule.html | 2 +- docs/swervelib/encoders/CANCoderSwerve.html | 2 +- .../encoders/SparkMaxEncoderSwerve.html | 2 +- .../encoders/SwerveAbsoluteEncoder.html | 2 +- docs/swervelib/encoders/package-summary.html | 2 +- docs/swervelib/encoders/package-tree.html | 2 +- docs/swervelib/imu/NavXSwerve.html | 2 +- docs/swervelib/imu/Pigeon2Swerve.html | 2 +- docs/swervelib/imu/PigeonSwerve.html | 2 +- docs/swervelib/imu/SwerveIMU.html | 2 +- docs/swervelib/imu/package-summary.html | 2 +- docs/swervelib/imu/package-tree.html | 2 +- docs/swervelib/math/SwerveKinematics2.html | 2 +- docs/swervelib/math/SwerveMath.html | 2 +- docs/swervelib/math/SwerveModuleState2.html | 2 +- docs/swervelib/math/package-summary.html | 2 +- docs/swervelib/math/package-tree.html | 2 +- .../SparkMaxSwerve.SparkMAX_slotIdx.html | 2 +- docs/swervelib/motors/SparkMaxSwerve.html | 2 +- docs/swervelib/motors/SwerveMotor.html | 4 +- .../motors/TalonFXSwerve.CTRE_pidIdx.html | 450 +++++++++ .../TalonFXSwerve.CTRE_remoteSensor.html | 424 ++++++++ .../motors/TalonFXSwerve.CTRE_slotIdx.html | 450 +++++++++ docs/swervelib/motors/TalonFXSwerve.html | 902 +++++++++++++++++ .../motors/TalonSRXSwerve.CTRE_pidIdx.html | 450 +++++++++ .../TalonSRXSwerve.CTRE_remoteSensor.html | 424 ++++++++ .../motors/TalonSRXSwerve.CTRE_slotIdx.html | 450 +++++++++ docs/swervelib/motors/TalonSRXSwerve.html | 915 ++++++++++++++++++ docs/swervelib/motors/package-summary.html | 32 +- docs/swervelib/motors/package-tree.html | 7 +- docs/swervelib/package-summary.html | 2 +- docs/swervelib/package-tree.html | 2 +- docs/swervelib/parser/PIDFConfig.html | 2 +- .../parser/SwerveControllerConfiguration.html | 2 +- .../parser/SwerveDriveConfiguration.html | 2 +- .../parser/SwerveModuleConfiguration.html | 2 +- .../SwerveModulePhysicalCharacteristics.html | 2 +- docs/swervelib/parser/SwerveParser.html | 2 +- .../parser/deserializer/PIDFRange.html | 2 +- .../parser/deserializer/package-summary.html | 2 +- .../parser/deserializer/package-tree.html | 2 +- .../parser/json/ControllerPropertiesJson.html | 2 +- docs/swervelib/parser/json/DeviceJson.html | 2 +- docs/swervelib/parser/json/ModuleJson.html | 2 +- .../parser/json/MotorConfigDouble.html | 2 +- .../swervelib/parser/json/MotorConfigInt.html | 2 +- .../parser/json/PIDFPropertiesJson.html | 2 +- .../parser/json/PhysicalPropertiesJson.html | 2 +- .../parser/json/SwerveDriveJson.html | 2 +- .../parser/json/modules/BoolMotorJson.html | 2 +- .../parser/json/modules/LocationJson.html | 2 +- .../parser/json/modules/package-summary.html | 2 +- .../parser/json/modules/package-tree.html | 2 +- .../parser/json/package-summary.html | 2 +- docs/swervelib/parser/json/package-tree.html | 2 +- docs/swervelib/parser/package-summary.html | 2 +- docs/swervelib/parser/package-tree.html | 2 +- docs/type-search-index.js | 2 +- swervelib/SwerveController.java | 4 +- swervelib/SwerveDrive.java | 12 +- swervelib/SwerveModule.java | 10 +- swervelib/encoders/CANCoderSwerve.java | 2 +- swervelib/encoders/SparkMaxEncoderSwerve.java | 4 +- swervelib/encoders/SwerveAbsoluteEncoder.java | 2 +- swervelib/imu/NavXSwerve.java | 2 +- swervelib/imu/Pigeon2Swerve.java | 2 +- swervelib/imu/PigeonSwerve.java | 2 +- swervelib/imu/SwerveIMU.java | 2 +- swervelib/math/SwerveKinematics2.java | 2 +- swervelib/math/SwerveMath.java | 10 +- swervelib/math/SwerveModuleState2.java | 2 +- swervelib/motors/SparkMaxSwerve.java | 6 +- swervelib/motors/SwerveMotor.java | 6 +- swervelib/motors/TalonFXSwerve.java | 312 ++++++ swervelib/motors/TalonSRXSwerve.java | 323 +++++++ swervelib/parser/PIDFConfig.java | 4 +- .../parser/SwerveControllerConfiguration.java | 7 +- .../parser/SwerveDriveConfiguration.java | 6 +- .../parser/SwerveModuleConfiguration.java | 17 +- .../SwerveModulePhysicalCharacteristics.java | 2 +- swervelib/parser/SwerveParser.java | 16 +- swervelib/parser/deserializer/PIDFRange.java | 2 +- .../parser/json/ControllerPropertiesJson.java | 10 +- swervelib/parser/json/DeviceJson.java | 36 +- swervelib/parser/json/ModuleJson.java | 25 +- swervelib/parser/json/PIDFPropertiesJson.java | 7 +- .../parser/json/PhysicalPropertiesJson.java | 7 +- swervelib/parser/json/SwerveDriveJson.java | 5 +- .../parser/json/modules/BoolMotorJson.java | 2 +- .../parser/json/modules/LocationJson.java | 2 +- 126 files changed, 5706 insertions(+), 190 deletions(-) create mode 100644 docs/swervelib/motors/TalonFXSwerve.CTRE_pidIdx.html create mode 100644 docs/swervelib/motors/TalonFXSwerve.CTRE_remoteSensor.html create mode 100644 docs/swervelib/motors/TalonFXSwerve.CTRE_slotIdx.html create mode 100644 docs/swervelib/motors/TalonFXSwerve.html create mode 100644 docs/swervelib/motors/TalonSRXSwerve.CTRE_pidIdx.html create mode 100644 docs/swervelib/motors/TalonSRXSwerve.CTRE_remoteSensor.html create mode 100644 docs/swervelib/motors/TalonSRXSwerve.CTRE_slotIdx.html create mode 100644 docs/swervelib/motors/TalonSRXSwerve.html create mode 100644 swervelib/motors/TalonFXSwerve.java create mode 100644 swervelib/motors/TalonSRXSwerve.java diff --git a/docs/allclasses-index.html b/docs/allclasses-index.html index 7165dff..0e44131 100644 --- a/docs/allclasses-index.html +++ b/docs/allclasses-index.html @@ -2,7 +2,7 @@ - + All Classes @@ -28,7 +28,7 @@ catch(err) { } //--> -var data = {"i0":2,"i1":2,"i2":2,"i3":2,"i4":2,"i5":2,"i6":2,"i7":2,"i8":2,"i9":2,"i10":2,"i11":2,"i12":2,"i13":2,"i14":2,"i15":2,"i16":2,"i17":4,"i18":2,"i19":2,"i20":2,"i21":2,"i22":2,"i23":2,"i24":2,"i25":2,"i26":2,"i27":2,"i28":2,"i29":2,"i30":2,"i31":2,"i32":2}; +var data = {"i0":2,"i1":2,"i2":2,"i3":2,"i4":2,"i5":2,"i6":2,"i7":2,"i8":2,"i9":2,"i10":2,"i11":2,"i12":2,"i13":2,"i14":2,"i15":2,"i16":2,"i17":4,"i18":2,"i19":2,"i20":2,"i21":2,"i22":2,"i23":2,"i24":2,"i25":2,"i26":2,"i27":2,"i28":2,"i29":2,"i30":2,"i31":2,"i32":2,"i33":2,"i34":2,"i35":4,"i36":4,"i37":4}; var tabs = {65535:["t0","All Classes"],2:["t2","Class Summary"],4:["t3","Enum Summary"]}; var altColor = "altColor"; var rowColor = "rowColor"; @@ -310,6 +310,36 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
Helper class used to parse the JSON directory with specified configuration options.
+ +TalonFXSwerve + +
TalonFX Swerve Motor.
+ + + +TalonSRXSwerve + +
WPI_TalonSRX Swerve Motor.
+ + + +TalonSRXSwerve.CTRE_pidIdx + +
The Talon PID to use onboard.
+ + + +TalonSRXSwerve.CTRE_remoteSensor + +
The remote sensor.
+ + + +TalonSRXSwerve.CTRE_slotIdx + +
The Talon SRX Slot profile used to configure the motor to use for the PID.
+ + diff --git a/docs/allclasses.html b/docs/allclasses.html index 6a37bc0..56e1ff4 100644 --- a/docs/allclasses.html +++ b/docs/allclasses.html @@ -2,7 +2,7 @@ - + All Classes @@ -55,6 +55,11 @@
  • SwerveModuleState2
  • SwerveMotor
  • SwerveParser
  • +
  • TalonFXSwerve
  • +
  • TalonSRXSwerve
  • +
  • TalonSRXSwerve.CTRE_pidIdx
  • +
  • TalonSRXSwerve.CTRE_remoteSensor
  • +
  • TalonSRXSwerve.CTRE_slotIdx
  • diff --git a/docs/allpackages-index.html b/docs/allpackages-index.html index 424c13d..dda37cf 100644 --- a/docs/allpackages-index.html +++ b/docs/allpackages-index.html @@ -2,7 +2,7 @@ - + All Packages diff --git a/docs/constant-values.html b/docs/constant-values.html index a7b581e..e1d54c9 100644 --- a/docs/constant-values.html +++ b/docs/constant-values.html @@ -2,7 +2,7 @@ - + Constant Field Values @@ -97,6 +97,56 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));

    Constant Field Values

    Contents

    + +
    + +
    + + +
    +

    swervelib.motors.*

    +
    diff --git a/docs/deprecated-list.html b/docs/deprecated-list.html index c7e1c6f..3e393ff 100644 --- a/docs/deprecated-list.html +++ b/docs/deprecated-list.html @@ -2,7 +2,7 @@ - + Deprecated List diff --git a/docs/help-doc.html b/docs/help-doc.html index 38a3b09..7230763 100644 --- a/docs/help-doc.html +++ b/docs/help-doc.html @@ -2,7 +2,7 @@ - + API Help diff --git a/docs/index-files/index-1.html b/docs/index-files/index-1.html index d856f70..d08d4c5 100644 --- a/docs/index-files/index-1.html +++ b/docs/index-files/index-1.html @@ -2,7 +2,7 @@ - + A-Index @@ -102,6 +102,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Absolute encoder attached to the SparkMax (if exists)
    +
    absoluteEncoder - Variable in class swervelib.motors.TalonFXSwerve
    +
    +
    Whether the absolute encoder is integrated.
    +
    +
    absoluteEncoder - Variable in class swervelib.motors.TalonSRXSwerve
    +
    +
    Whether the absolute encoder is integrated.
    +
    absoluteEncoder - Variable in class swervelib.parser.SwerveModuleConfiguration
    The Absolute Encoder for the swerve module.
    @@ -216,6 +224,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Algebraically apply a deadband using a piece wise function.
    +
    AUXILIARY_PID - swervelib.motors.TalonSRXSwerve.CTRE_pidIdx
    +
     
    A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes All Packages diff --git a/docs/index-files/index-10.html b/docs/index-files/index-10.html index 6a12b02..fbd12c3 100644 --- a/docs/index-files/index-10.html +++ b/docs/index-files/index-10.html @@ -2,7 +2,7 @@ - + K-Index diff --git a/docs/index-files/index-11.html b/docs/index-files/index-11.html index 94e5bd3..992ff13 100644 --- a/docs/index-files/index-11.html +++ b/docs/index-files/index-11.html @@ -2,7 +2,7 @@ - + L-Index diff --git a/docs/index-files/index-12.html b/docs/index-files/index-12.html index 211804f..f7db7de 100644 --- a/docs/index-files/index-12.html +++ b/docs/index-files/index-12.html @@ -2,7 +2,7 @@ - + M-Index @@ -174,10 +174,20 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Swerve Modules.
    +
    MotionProfile - swervelib.motors.TalonSRXSwerve.CTRE_slotIdx
    +
     
    motor - Variable in class swervelib.motors.SparkMaxSwerve
    SparkMAX Instance.
    +
    motor - Variable in class swervelib.motors.TalonFXSwerve
    +
    +
    TalonFX motor controller.
    +
    +
    motor - Variable in class swervelib.motors.TalonSRXSwerve
    +
    +
    TalonSRX motor controller.
    +
    MotorConfigDouble - Class in swervelib.parser.json
    Used to store doubles for motor configuration.
    diff --git a/docs/index-files/index-13.html b/docs/index-files/index-13.html index 3dfb9b4..937546a 100644 --- a/docs/index-files/index-13.html +++ b/docs/index-files/index-13.html @@ -2,7 +2,7 @@ - + N-Index diff --git a/docs/index-files/index-14.html b/docs/index-files/index-14.html index 8d30b0e..314fc74 100644 --- a/docs/index-files/index-14.html +++ b/docs/index-files/index-14.html @@ -2,7 +2,7 @@ - + O-Index diff --git a/docs/index-files/index-15.html b/docs/index-files/index-15.html index 1cfcc55..9a4cb08 100644 --- a/docs/index-files/index-15.html +++ b/docs/index-files/index-15.html @@ -2,7 +2,7 @@ - + P-Index @@ -182,6 +182,16 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Position - swervelib.motors.SparkMaxSwerve.SparkMAX_slotIdx
     
    +
    positionConversionFactor - Variable in class swervelib.motors.TalonFXSwerve
    +
    +
    The position conversion factor.
    +
    +
    positionConversionFactor - Variable in class swervelib.motors.TalonSRXSwerve
    +
    +
    The position conversion factor.
    +
    +
    PRIMARY_PID - swervelib.motors.TalonSRXSwerve.CTRE_pidIdx
    +
     
    A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes All Packages diff --git a/docs/index-files/index-16.html b/docs/index-files/index-16.html index 0d1c740..2920065 100644 --- a/docs/index-files/index-16.html +++ b/docs/index-files/index-16.html @@ -2,7 +2,7 @@ - + R-Index @@ -102,6 +102,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    The minimum number of seconds to take for the motor to go from 0 to full throttle.
    +
    REMOTE_SENSOR_0 - swervelib.motors.TalonSRXSwerve.CTRE_remoteSensor
    +
     
    +
    REMOTE_SENSOR_1 - swervelib.motors.TalonSRXSwerve.CTRE_remoteSensor
    +
     
    replaceSwerveModuleFeedforward(SimpleMotorFeedforward) - Method in class swervelib.SwerveDrive
    Setup the swerve module feedforward.
    diff --git a/docs/index-files/index-17.html b/docs/index-files/index-17.html index 671ed7e..1e8d4b2 100644 --- a/docs/index-files/index-17.html +++ b/docs/index-files/index-17.html @@ -2,7 +2,7 @@ - + S-Index @@ -106,6 +106,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the percentage output.
    +
    set(double) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the percentage output.
    +
    +
    set(double) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the percentage output.
    +
    setAbsoluteEncoder(SwerveAbsoluteEncoder) - Method in class swervelib.motors.SparkMaxSwerve
    Set the absolute encoder to be a compatible absolute encoder.
    @@ -114,6 +122,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the absolute encoder to be a compatible absolute encoder.
    +
    setAbsoluteEncoder(SwerveAbsoluteEncoder) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the absolute encoder to be a compatible absolute encoder.
    +
    +
    setAbsoluteEncoder(SwerveAbsoluteEncoder) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the absolute encoder to be a compatible absolute encoder.
    +
    setAngle(double) - Method in class swervelib.SwerveModule
    Set the angle for the module.
    @@ -132,6 +148,16 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with voltage compensation.
    +
    setCurrentLimit(int) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with + voltage compensation.
    +
    +
    setCurrentLimit(int) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with + voltage compensation.
    +
    setDesiredState(SwerveModuleState2, boolean) - Method in class swervelib.SwerveModule
    Set the desired state of the swerve module.
    @@ -148,6 +174,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the motor to be inverted.
    +
    setInverted(boolean) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the motor to be inverted.
    +
    +
    setInverted(boolean) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the motor to be inverted.
    +
    setLoopRampRate(double) - Method in class swervelib.motors.SparkMaxSwerve
    Set the maximum rate the open/closed loop output can change by.
    @@ -156,6 +190,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the maximum rate the open/closed loop output can change by.
    +
    setLoopRampRate(double) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the maximum rate the open/closed loop output can change by.
    +
    +
    setLoopRampRate(double) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the maximum rate the open/closed loop output can change by.
    +
    setModuleStates(SwerveModuleState2[], boolean) - Method in class swervelib.SwerveDrive
    Set the module states (azimuth and velocity) directly.
    @@ -168,6 +210,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the idle mode.
    +
    setMotorBrake(boolean) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the idle mode.
    +
    +
    setMotorBrake(boolean) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the idle mode.
    +
    setMotorBrake(boolean) - Method in class swervelib.SwerveDrive
    Sets the drive motors to brake/coast mode.
    @@ -184,6 +234,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the integrated encoder position.
    +
    setPosition(double) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the integrated encoder position.
    +
    +
    setPosition(double) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the integrated encoder position.
    +
    setReference(double, double) - Method in class swervelib.motors.SparkMaxSwerve
    Set the closed loop PID controller reference point.
    @@ -192,6 +250,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the closed loop PID controller reference point.
    +
    setReference(double, double) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the closed loop PID controller reference point.
    +
    +
    setReference(double, double) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the closed loop PID controller reference point.
    +
    setVoltageCompensation(double) - Method in class swervelib.motors.SparkMaxSwerve
    Set the voltage compensation for the swerve module motor.
    @@ -200,6 +266,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Set the voltage compensation for the swerve module motor.
    +
    setVoltageCompensation(double) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Set the voltage compensation for the swerve module motor.
    +
    +
    setVoltageCompensation(double) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Set the voltage compensation for the swerve module motor.
    +
    setYaw(double) - Method in class swervelib.imu.NavXSwerve
    Set the yaw in degrees.
    diff --git a/docs/index-files/index-18.html b/docs/index-files/index-18.html index ba225e3..f03f080 100644 --- a/docs/index-files/index-18.html +++ b/docs/index-files/index-18.html @@ -2,7 +2,7 @@ - + T-Index @@ -98,10 +98,52 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));

    T

    +
    TalonFXSwerve - Class in swervelib.motors
    +
    +
    TalonFX Swerve Motor.
    +
    +
    TalonFXSwerve(int, boolean) - Constructor for class swervelib.motors.TalonFXSwerve
    +
    +
    Construct the TalonFX swerve motor given the ID.
    +
    +
    TalonFXSwerve(int, String, boolean) - Constructor for class swervelib.motors.TalonFXSwerve
    +
    +
    Construct the TalonFX swerve motor given the ID and CANBus.
    +
    +
    TalonFXSwerve(WPI_TalonFX, boolean) - Constructor for class swervelib.motors.TalonFXSwerve
    +
    +
    Constructor for TalonFX swerve motor.
    +
    +
    TalonSRXSwerve - Class in swervelib.motors
    +
    +
    WPI_TalonSRX Swerve Motor.
    +
    +
    TalonSRXSwerve(int, boolean) - Constructor for class swervelib.motors.TalonSRXSwerve
    +
    +
    Construct the TalonSRX swerve motor given the ID.
    +
    +
    TalonSRXSwerve(WPI_TalonSRX, boolean) - Constructor for class swervelib.motors.TalonSRXSwerve
    +
    +
    Constructor for TalonSRX swerve motor.
    +
    +
    TalonSRXSwerve.CTRE_pidIdx - Enum in swervelib.motors
    +
    +
    The Talon PID to use onboard.
    +
    +
    TalonSRXSwerve.CTRE_remoteSensor - Enum in swervelib.motors
    +
    +
    The remote sensor.
    +
    +
    TalonSRXSwerve.CTRE_slotIdx - Enum in swervelib.motors
    +
    +
    The Talon SRX Slot profile used to configure the motor to use for the PID.
    +
    thetaController - Variable in class swervelib.SwerveController
    PID Controller for the robot heading.
    +
    THIRD_PID - swervelib.motors.TalonSRXSwerve.CTRE_pidIdx
    +
     
    time - Variable in class swervelib.SwerveModule
    Timer for simulation.
    @@ -126,6 +168,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Performs forward kinematics to return the resulting chassis state from the given module states.
    +
    Turning - swervelib.motors.TalonSRXSwerve.CTRE_slotIdx
    +
     
    type - Variable in class swervelib.parser.json.DeviceJson
    The device type, e.g.
    diff --git a/docs/index-files/index-19.html b/docs/index-files/index-19.html index f082bca..42f234e 100644 --- a/docs/index-files/index-19.html +++ b/docs/index-files/index-19.html @@ -2,7 +2,7 @@ - + U-Index diff --git a/docs/index-files/index-2.html b/docs/index-files/index-2.html index 33037d7..50ad68e 100644 --- a/docs/index-files/index-2.html +++ b/docs/index-files/index-2.html @@ -2,7 +2,7 @@ - + B-Index @@ -114,6 +114,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Save the configurations from flash to EEPROM.
    +
    burnFlash() - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Save the configurations from flash to EEPROM.
    +
    +
    burnFlash() - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Save the configurations from flash to EEPROM.
    +
    A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes All Packages diff --git a/docs/index-files/index-20.html b/docs/index-files/index-20.html index 96b420f..4d3bbcf 100644 --- a/docs/index-files/index-20.html +++ b/docs/index-files/index-20.html @@ -2,7 +2,7 @@ - + V-Index @@ -102,13 +102,42 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Returns the enum constant of this type with the specified name.
    +
    valueOf(String) - Static method in enum swervelib.motors.TalonSRXSwerve.CTRE_pidIdx
    +
    +
    Returns the enum constant of this type with the specified name.
    +
    +
    valueOf(String) - Static method in enum swervelib.motors.TalonSRXSwerve.CTRE_remoteSensor
    +
    +
    Returns the enum constant of this type with the specified name.
    +
    +
    valueOf(String) - Static method in enum swervelib.motors.TalonSRXSwerve.CTRE_slotIdx
    +
    +
    Returns the enum constant of this type with the specified name.
    +
    values() - Static method in enum swervelib.motors.SparkMaxSwerve.SparkMAX_slotIdx
    Returns an array containing the constants of this enum type, in the order they are declared.
    +
    values() - Static method in enum swervelib.motors.TalonSRXSwerve.CTRE_pidIdx
    +
    +
    Returns an array containing the constants of this enum type, in +the order they are declared.
    +
    +
    values() - Static method in enum swervelib.motors.TalonSRXSwerve.CTRE_remoteSensor
    +
    +
    Returns an array containing the constants of this enum type, in +the order they are declared.
    +
    +
    values() - Static method in enum swervelib.motors.TalonSRXSwerve.CTRE_slotIdx
    +
    +
    Returns an array containing the constants of this enum type, in +the order they are declared.
    +
    Velocity - swervelib.motors.SparkMaxSwerve.SparkMAX_slotIdx
     
    +
    Velocity - swervelib.motors.TalonSRXSwerve.CTRE_slotIdx
    +
     
    velocityPIDF - Variable in class swervelib.parser.SwerveModuleConfiguration
    PIDF configuration options for the drive motor closed-loop PID controller.
    diff --git a/docs/index-files/index-21.html b/docs/index-files/index-21.html index dfd01fb..eb4635a 100644 --- a/docs/index-files/index-21.html +++ b/docs/index-files/index-21.html @@ -2,7 +2,7 @@ - + W-Index diff --git a/docs/index-files/index-22.html b/docs/index-files/index-22.html index bf13b63..23d0924 100644 --- a/docs/index-files/index-22.html +++ b/docs/index-files/index-22.html @@ -2,7 +2,7 @@ - + X-Index diff --git a/docs/index-files/index-23.html b/docs/index-files/index-23.html index 35c70e9..fb9e32b 100644 --- a/docs/index-files/index-23.html +++ b/docs/index-files/index-23.html @@ -2,7 +2,7 @@ - + Y-Index diff --git a/docs/index-files/index-24.html b/docs/index-files/index-24.html index 47efe99..f599370 100644 --- a/docs/index-files/index-24.html +++ b/docs/index-files/index-24.html @@ -2,7 +2,7 @@ - + Z-Index diff --git a/docs/index-files/index-3.html b/docs/index-files/index-3.html index dd9c0bf..3ef6033 100644 --- a/docs/index-files/index-3.html +++ b/docs/index-files/index-3.html @@ -2,7 +2,7 @@ - + C-Index @@ -182,6 +182,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Clear the sticky faults on the motor controller.
    +
    clearStickyFaults() - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Clear the sticky faults on the motor controller.
    +
    +
    clearStickyFaults() - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Clear the sticky faults on the motor controller.
    +
    config - Variable in class swervelib.SwerveController
    SwerveControllerConfiguration object storing data to generate the PIDController for controlling the @@ -215,6 +223,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Configure the integrated encoder for the swerve module.
    +
    configureIntegratedEncoder(double) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Configure the integrated encoder for the swerve module.
    +
    +
    configureIntegratedEncoder(double) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Configure the integrated encoder for the swerve module.
    +
    configurePIDF(PIDFConfig) - Method in class swervelib.motors.SparkMaxSwerve
    Configure the PIDF values for the closed loop controller.
    @@ -223,6 +239,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Configure the PIDF values for the closed loop controller.
    +
    configurePIDF(PIDFConfig) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Configure the PIDF values for the closed loop controller.
    +
    +
    configurePIDF(PIDFConfig) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Configure the PIDF values for the closed loop controller.
    +
    configurePIDWrapping(double, double) - Method in class swervelib.motors.SparkMaxSwerve
    Configure the PID wrapping for the position closed loop controller.
    @@ -231,6 +255,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Configure the PID wrapping for the position closed loop controller.
    +
    configurePIDWrapping(double, double) - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Configure the PID wrapping for the position closed loop controller.
    +
    +
    configurePIDWrapping(double, double) - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Configure the PID wrapping for the position closed loop controller.
    +
    controllerPropertiesJson - Static variable in class swervelib.parser.SwerveParser
    Parsed controllerproperties.json
    @@ -285,6 +317,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Create SwerveDrive from JSON configuration directory.
    +
    CTRE_pidIdx() - Constructor for enum swervelib.motors.TalonSRXSwerve.CTRE_pidIdx
    +
     
    +
    CTRE_remoteSensor() - Constructor for enum swervelib.motors.TalonSRXSwerve.CTRE_remoteSensor
    +
     
    +
    CTRE_slotIdx() - Constructor for enum swervelib.motors.TalonSRXSwerve.CTRE_slotIdx
    +
     
    currentLimit - Variable in class swervelib.parser.json.PhysicalPropertiesJson
    The current limit in AMPs to apply to the motors.
    diff --git a/docs/index-files/index-4.html b/docs/index-files/index-4.html index e2fe14c..5186433 100644 --- a/docs/index-files/index-4.html +++ b/docs/index-files/index-4.html @@ -2,7 +2,7 @@ - + D-Index @@ -117,6 +117,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    DeviceJson() - Constructor for class swervelib.parser.json.DeviceJson
     
    +
    Distance - swervelib.motors.TalonSRXSwerve.CTRE_slotIdx
    +
     
    drive - Variable in class swervelib.parser.json.ModuleJson
    Drive motor device configuration.
    diff --git a/docs/index-files/index-5.html b/docs/index-files/index-5.html index bbd577e..c8d3e0b 100644 --- a/docs/index-files/index-5.html +++ b/docs/index-files/index-5.html @@ -2,7 +2,7 @@ - + E-Index diff --git a/docs/index-files/index-6.html b/docs/index-files/index-6.html index a1964d2..5b75309 100644 --- a/docs/index-files/index-6.html +++ b/docs/index-files/index-6.html @@ -2,7 +2,7 @@ - + F-Index @@ -134,6 +134,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Factory default already occurred.
    +
    factoryDefaultOccurred - Variable in class swervelib.motors.TalonFXSwerve
    +
    +
    Factory default already occurred.
    +
    +
    factoryDefaultOccurred - Variable in class swervelib.motors.TalonSRXSwerve
    +
    +
    Factory default already occurred.
    +
    factoryDefaults() - Method in class swervelib.motors.SparkMaxSwerve
    Configure the factory defaults.
    @@ -142,6 +150,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Configure the factory defaults.
    +
    factoryDefaults() - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Configure the factory defaults.
    +
    +
    factoryDefaults() - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Configure the factory defaults.
    +
    fakePos - Variable in class swervelib.SwerveModule
    Current state.
    @@ -154,6 +170,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Field object.
    +
    FOURTH_PID - swervelib.motors.TalonSRXSwerve.CTRE_pidIdx
    +
     
    A B C D E F G H I K L M N O P R S T U V W X Y Z 
    All Classes All Packages diff --git a/docs/index-files/index-7.html b/docs/index-files/index-7.html index 3f379bf..2e5bff3 100644 --- a/docs/index-files/index-7.html +++ b/docs/index-files/index-7.html @@ -2,7 +2,7 @@ - + G-Index @@ -166,6 +166,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Get the motor object from the module.
    +
    getMotor() - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Get the motor object from the module.
    +
    +
    getMotor() - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Get the motor object from the module.
    +
    getPitch() - Method in class swervelib.SwerveDrive
    Gets the current yaw angle of the robot, as reported by the imu.
    @@ -182,6 +190,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Get the position of the integrated encoder.
    +
    getPosition() - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Get the position of the integrated encoder.
    +
    +
    getPosition() - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Get the position of the integrated encoder.
    +
    getPosition() - Method in class swervelib.SwerveModule
     
    getPositionEncoderConversion(boolean) - Method in class swervelib.parser.SwerveModuleConfiguration
    @@ -228,6 +244,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Get the velocity of the integrated encoder.
    +
    getVelocity() - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Get the velocity of the integrated encoder.
    +
    +
    getVelocity() - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Get the velocity of the integrated encoder.
    +
    getYaw() - Method in class swervelib.SwerveDrive
    Gets the current yaw angle of the robot, as reported by the imu.
    diff --git a/docs/index-files/index-8.html b/docs/index-files/index-8.html index a0c1af9..e357c41 100644 --- a/docs/index-files/index-8.html +++ b/docs/index-files/index-8.html @@ -2,7 +2,7 @@ - + H-Index diff --git a/docs/index-files/index-9.html b/docs/index-files/index-9.html index a66b5db..166fabb 100644 --- a/docs/index-files/index-9.html +++ b/docs/index-files/index-9.html @@ -2,7 +2,7 @@ - + I-Index @@ -144,6 +144,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Queries whether the absolute encoder is directly attached to the motor controller.
    +
    isAttachedAbsoluteEncoder() - Method in class swervelib.motors.TalonFXSwerve
    +
    +
    Queries whether the absolute encoder is directly attached to the motor controller.
    +
    +
    isAttachedAbsoluteEncoder() - Method in class swervelib.motors.TalonSRXSwerve
    +
    +
    Queries whether the absolute encoder is directly attached to the motor controller.
    +
    isDriveMotor - Variable in class swervelib.motors.SwerveMotor
    Whether the swerve motor is a drive motor.
    diff --git a/docs/index.html b/docs/index.html index b8d173c..7756bd3 100644 --- a/docs/index.html +++ b/docs/index.html @@ -2,7 +2,7 @@ - + Overview diff --git a/docs/member-search-index.js b/docs/member-search-index.js index 703456f..13a653e 100644 --- a/docs/member-search-index.js +++ b/docs/member-search-index.js @@ -1 +1 @@ -memberSearchIndex = [{"p":"swervelib","c":"SwerveModule","l":"absoluteEncoder"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"absoluteEncoder"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"absoluteEncoder"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"absoluteEncoderInverted"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"absoluteEncoderInverted"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"absoluteEncoderOffset"},{"p":"swervelib","c":"SwerveDrive","l":"angle"},{"p":"swervelib","c":"SwerveModule","l":"angle"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"angle"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"angle"},{"p":"swervelib.parser.json","c":"MotorConfigDouble","l":"angle"},{"p":"swervelib.parser.json","c":"MotorConfigInt","l":"angle"},{"p":"swervelib.parser.json","c":"PIDFPropertiesJson","l":"angle"},{"p":"swervelib.parser.json.modules","c":"BoolMotorJson","l":"angle"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleEncoderPulsePerRotation"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleGearRatio"},{"p":"swervelib.parser.json","c":"ControllerPropertiesJson","l":"angleJoystickRadiusDeadband"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"angleJoyStickRadiusDeadband"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"angleKV"},{"p":"swervelib","c":"SwerveModule","l":"angleMotor"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"angleMotor"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleMotorCurrentLimit"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleMotorFreeSpeedRPM"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"angleMotorFreeSpeedRPM"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"angleMotorInverted"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleMotorRampRate"},{"p":"swervelib","c":"SwerveModule","l":"angleOffset"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"angleOffset"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"anglePIDF"},{"p":"swervelib.math","c":"SwerveMath","l":"applyDeadband(double, boolean, double)","url":"applyDeadband(double,boolean,double)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"bigInverseKinematics"},{"p":"swervelib.parser.json.modules","c":"BoolMotorJson","l":"BoolMotorJson()","url":"%3Cinit%3E()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"burnFlash()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"burnFlash()"},{"p":"swervelib.math","c":"SwerveMath","l":"calcMaxAccel(Rotation2d, double, double, Translation3d, SwerveDriveConfiguration)","url":"calcMaxAccel(edu.wpi.first.math.geometry.Rotation2d,double,double,edu.wpi.first.math.geometry.Translation3d,swervelib.parser.SwerveDriveConfiguration)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateAngleKV(double, double, double)","url":"calculateAngleKV(double,double,double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateDegreesPerSteeringRotation(double, double)","url":"calculateDegreesPerSteeringRotation(double,double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateMaxAcceleration(double, double, double, double, double)","url":"calculateMaxAcceleration(double,double,double,double,double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateMaxAcceleration(double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateMaxAngularVelocity(double, double, double)","url":"calculateMaxAngularVelocity(double,double,double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateMetersPerRotation(double, double, double)","url":"calculateMetersPerRotation(double,double,double)"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"canbus"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"CANCoderSwerve(int, String)","url":"%3Cinit%3E(int,java.lang.String)"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"CANCoderSwerve(int)","url":"%3Cinit%3E(int)"},{"p":"swervelib.parser","c":"SwerveParser","l":"checkDirectory(File)","url":"checkDirectory(java.io.File)"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"clearStickyFaults()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"clearStickyFaults()"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"clearStickyFaults()"},{"p":"swervelib.imu","c":"NavXSwerve","l":"clearStickyFaults()"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"clearStickyFaults()"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"clearStickyFaults()"},{"p":"swervelib.imu","c":"SwerveIMU","l":"clearStickyFaults()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"clearStickyFaults()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"clearStickyFaults()"},{"p":"swervelib","c":"SwerveController","l":"config"},{"p":"swervelib","c":"SwerveModule","l":"configuration"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"configure(boolean)"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"configure(boolean)"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"configure(boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"configureCANStatusFrames(int, int, int, int, int)","url":"configureCANStatusFrames(int,int,int,int,int)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"configureIntegratedEncoder(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"configureIntegratedEncoder(double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"configurePIDF(PIDFConfig)","url":"configurePIDF(swervelib.parser.PIDFConfig)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"configurePIDF(PIDFConfig)","url":"configurePIDF(swervelib.parser.PIDFConfig)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"configurePIDWrapping(double, double)","url":"configurePIDWrapping(double,double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"configurePIDWrapping(double, double)","url":"configurePIDWrapping(double,double)"},{"p":"swervelib.parser","c":"SwerveParser","l":"controllerPropertiesJson"},{"p":"swervelib.parser.json","c":"ControllerPropertiesJson","l":"ControllerPropertiesJson()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.json","c":"ControllerPropertiesJson","l":"createControllerConfiguration(SwerveDriveConfiguration)","url":"createControllerConfiguration(swervelib.parser.SwerveDriveConfiguration)"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"createDriveFeedforward()"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"createEncoder()"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"createIMU()"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"createIntegratedEncoder(SwerveMotor)","url":"createIntegratedEncoder(swervelib.motors.SwerveMotor)"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"createModuleConfiguration(PIDFConfig, PIDFConfig, double, SwerveModulePhysicalCharacteristics)","url":"createModuleConfiguration(swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics)"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"createModules(SwerveModuleConfiguration[])","url":"createModules(swervelib.parser.SwerveModuleConfiguration[])"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"createMotor(boolean)"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"createPhysicalProperties(double)"},{"p":"swervelib.parser","c":"PIDFConfig","l":"createPIDController()"},{"p":"swervelib.parser","c":"SwerveParser","l":"createSwerveDrive()"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"currentLimit"},{"p":"swervelib.parser","c":"PIDFConfig","l":"d"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"desaturateWheelSpeeds(SwerveModuleState2[], ChassisSpeeds, double, double, double)","url":"desaturateWheelSpeeds(swervelib.math.SwerveModuleState2[],edu.wpi.first.math.kinematics.ChassisSpeeds,double,double,double)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"desaturateWheelSpeeds(SwerveModuleState2[], double)","url":"desaturateWheelSpeeds(swervelib.math.SwerveModuleState2[],double)"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"DeviceJson()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"drive"},{"p":"swervelib.parser.json","c":"MotorConfigDouble","l":"drive"},{"p":"swervelib.parser.json","c":"MotorConfigInt","l":"drive"},{"p":"swervelib.parser.json","c":"PIDFPropertiesJson","l":"drive"},{"p":"swervelib.parser.json.modules","c":"BoolMotorJson","l":"drive"},{"p":"swervelib","c":"SwerveDrive","l":"drive(Translation2d, double, boolean, boolean)","url":"drive(edu.wpi.first.math.geometry.Translation2d,double,boolean,boolean)"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"driveEncoderPulsePerRotation"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"driveGearRatio"},{"p":"swervelib","c":"SwerveModule","l":"driveMotor"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"driveMotor"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"driveMotorCurrentLimit"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"driveMotorInverted"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"driveMotorRampRate"},{"p":"swervelib","c":"SwerveModule","l":"dt"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"encoder"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"encoder"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"encoder"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"encoder"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"encoderPulsePerRotation"},{"p":"swervelib.parser","c":"PIDFConfig","l":"f"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"factoryDefault()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"factoryDefault()"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"factoryDefault()"},{"p":"swervelib.imu","c":"NavXSwerve","l":"factoryDefault()"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"factoryDefault()"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"factoryDefault()"},{"p":"swervelib.imu","c":"SwerveIMU","l":"factoryDefault()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"factoryDefaultOccurred"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"factoryDefaults()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"factoryDefaults()"},{"p":"swervelib","c":"SwerveModule","l":"fakePos"},{"p":"swervelib","c":"SwerveModule","l":"feedforward"},{"p":"swervelib","c":"SwerveDrive","l":"field"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"gearRatio"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"getAbsoluteEncoder()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"getAbsoluteEncoder()"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"getAbsoluteEncoder()"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"getAbsolutePosition()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"getAbsolutePosition()"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"getAbsolutePosition()"},{"p":"swervelib","c":"SwerveModule","l":"getCANCoder()"},{"p":"swervelib","c":"SwerveDrive","l":"getFieldVelocity()"},{"p":"swervelib.imu","c":"NavXSwerve","l":"getIMU()"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"getIMU()"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"getIMU()"},{"p":"swervelib.imu","c":"SwerveIMU","l":"getIMU()"},{"p":"swervelib.parser","c":"SwerveParser","l":"getModuleConfigurationByName(String, SwerveDriveConfiguration)","url":"getModuleConfigurationByName(java.lang.String,swervelib.parser.SwerveDriveConfiguration)"},{"p":"swervelib","c":"SwerveDrive","l":"getModulePositions()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"getMotor()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"getMotor()"},{"p":"swervelib","c":"SwerveDrive","l":"getPitch()"},{"p":"swervelib","c":"SwerveDrive","l":"getPose()"},{"p":"swervelib","c":"SwerveModule","l":"getPosition()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"getPosition()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"getPosition()"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"getPositionEncoderConversion(boolean)"},{"p":"swervelib","c":"SwerveModule","l":"getRelativeEncoder()"},{"p":"swervelib","c":"SwerveDrive","l":"getRobotVelocity()"},{"p":"swervelib","c":"SwerveModule","l":"getState()"},{"p":"swervelib","c":"SwerveDrive","l":"getStates()"},{"p":"swervelib","c":"SwerveDrive","l":"getSwerveModulePoses(Pose2d)","url":"getSwerveModulePoses(edu.wpi.first.math.geometry.Pose2d)"},{"p":"swervelib","c":"SwerveController","l":"getTargetSpeeds(double, double, double, double, double)","url":"getTargetSpeeds(double,double,double,double,double)"},{"p":"swervelib","c":"SwerveController","l":"getTargetSpeeds(double, double, double, double)","url":"getTargetSpeeds(double,double,double,double)"},{"p":"swervelib","c":"SwerveController","l":"getTranslation2d(ChassisSpeeds)","url":"getTranslation2d(edu.wpi.first.math.kinematics.ChassisSpeeds)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"getVelocity()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"getVelocity()"},{"p":"swervelib","c":"SwerveDrive","l":"getYaw()"},{"p":"swervelib.imu","c":"NavXSwerve","l":"getYawPitchRoll(double[])"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"getYawPitchRoll(double[])"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"getYawPitchRoll(double[])"},{"p":"swervelib.imu","c":"SwerveIMU","l":"getYawPitchRoll(double[])"},{"p":"swervelib.imu","c":"NavXSwerve","l":"gyro"},{"p":"swervelib.parser.json","c":"ControllerPropertiesJson","l":"heading"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"headingPIDF"},{"p":"swervelib.parser","c":"PIDFConfig","l":"i"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"id"},{"p":"swervelib","c":"SwerveDrive","l":"imu"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"imu"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"imu"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"imu"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"imu"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"inverted"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"invertedIMU"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"invertedIMU"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"isAttachedAbsoluteEncoder()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"isAttachedAbsoluteEncoder()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"isDriveMotor"},{"p":"swervelib.parser","c":"PIDFConfig","l":"iz"},{"p":"swervelib","c":"SwerveDrive","l":"kinematics"},{"p":"swervelib","c":"SwerveController","l":"lastAngle"},{"p":"swervelib","c":"SwerveModule","l":"lastAngle"},{"p":"swervelib","c":"SwerveDrive","l":"lastTime"},{"p":"swervelib","c":"SwerveModule","l":"lastTime"},{"p":"swervelib.math","c":"SwerveMath","l":"limitVelocity(Translation2d, ChassisSpeeds, Pose2d, double, double, double, Translation3d, SwerveDriveConfiguration)","url":"limitVelocity(edu.wpi.first.math.geometry.Translation2d,edu.wpi.first.math.kinematics.ChassisSpeeds,edu.wpi.first.math.geometry.Pose2d,double,double,double,edu.wpi.first.math.geometry.Translation3d,swervelib.parser.SwerveDriveConfiguration)"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"location"},{"p":"swervelib.parser.json.modules","c":"LocationJson","l":"LocationJson()","url":"%3Cinit%3E()"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_forwardKinematics"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_inverseKinematics"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_modules"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_moduleStates"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_numModules"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_prevCoR"},{"p":"swervelib.parser.deserializer","c":"PIDFRange","l":"max"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"maxAngularVelocity"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"maxSpeed"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"maxSpeed"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"maxSpeed"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"maxSpeed"},{"p":"swervelib.parser.deserializer","c":"PIDFRange","l":"min"},{"p":"swervelib.parser","c":"SwerveParser","l":"moduleConfigs"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"moduleCount"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"ModuleJson()","url":"%3Cinit%3E()"},{"p":"swervelib.parser","c":"SwerveParser","l":"moduleJsons"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"moduleLocation"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"moduleLocationsMeters"},{"p":"swervelib","c":"SwerveModule","l":"moduleNumber"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"modules"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"modules"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"motor"},{"p":"swervelib.parser.json","c":"MotorConfigDouble","l":"MotorConfigDouble()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.json","c":"MotorConfigDouble","l":"MotorConfigDouble(double, double)","url":"%3Cinit%3E(double,double)"},{"p":"swervelib.parser.json","c":"MotorConfigInt","l":"MotorConfigInt()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.json","c":"MotorConfigInt","l":"MotorConfigInt(int, int)","url":"%3Cinit%3E(int,int)"},{"p":"swervelib.imu","c":"NavXSwerve","l":"NavXSwerve()","url":"%3Cinit%3E()"},{"p":"swervelib","c":"SwerveModule","l":"omega"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"omegaRadPerSecond"},{"p":"swervelib.parser","c":"SwerveParser","l":"openJson(File)","url":"openJson(java.io.File)"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"optimalVoltage"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"optimalVoltage"},{"p":"swervelib.parser","c":"PIDFConfig","l":"output"},{"p":"swervelib.parser","c":"PIDFConfig","l":"p"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"physicalCharacteristics"},{"p":"swervelib.parser","c":"SwerveParser","l":"physicalPropertiesJson"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"PhysicalPropertiesJson()","url":"%3Cinit%3E()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"pid"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig()","url":"%3Cinit%3E()"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig(double, double, double, double, double)","url":"%3Cinit%3E(double,double,double,double,double)"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig(double, double, double, double)","url":"%3Cinit%3E(double,double,double,double)"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig(double, double, double)","url":"%3Cinit%3E(double,double,double)"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig(double, double)","url":"%3Cinit%3E(double,double)"},{"p":"swervelib.parser","c":"SwerveParser","l":"pidfPropertiesJson"},{"p":"swervelib.parser.json","c":"PIDFPropertiesJson","l":"PIDFPropertiesJson()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.deserializer","c":"PIDFRange","l":"PIDFRange()","url":"%3Cinit%3E()"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"Pigeon2Swerve(int, String)","url":"%3Cinit%3E(int,java.lang.String)"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"Pigeon2Swerve(int)","url":"%3Cinit%3E(int)"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"PigeonSwerve(int)","url":"%3Cinit%3E(int)"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"Position"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"rampRate"},{"p":"swervelib","c":"SwerveDrive","l":"replaceSwerveModuleFeedforward(SimpleMotorFeedforward)","url":"replaceSwerveModuleFeedforward(edu.wpi.first.math.controller.SimpleMotorFeedforward)"},{"p":"swervelib","c":"SwerveDrive","l":"resetOdometry(Pose2d)","url":"resetOdometry(edu.wpi.first.math.geometry.Pose2d)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"set(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"set(double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setAbsoluteEncoder(SwerveAbsoluteEncoder)","url":"setAbsoluteEncoder(swervelib.encoders.SwerveAbsoluteEncoder)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setAbsoluteEncoder(SwerveAbsoluteEncoder)","url":"setAbsoluteEncoder(swervelib.encoders.SwerveAbsoluteEncoder)"},{"p":"swervelib","c":"SwerveModule","l":"setAngle(double)"},{"p":"swervelib","c":"SwerveDrive","l":"setChassisSpeeds(ChassisSpeeds)","url":"setChassisSpeeds(edu.wpi.first.math.kinematics.ChassisSpeeds)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setCurrentLimit(int)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setCurrentLimit(int)"},{"p":"swervelib","c":"SwerveModule","l":"setDesiredState(SwerveModuleState2, boolean)","url":"setDesiredState(swervelib.math.SwerveModuleState2,boolean)"},{"p":"swervelib","c":"SwerveDrive","l":"setDriveBrake()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setInverted(boolean)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setInverted(boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setLoopRampRate(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setLoopRampRate(double)"},{"p":"swervelib","c":"SwerveDrive","l":"setModuleStates(SwerveModuleState2[], boolean)","url":"setModuleStates(swervelib.math.SwerveModuleState2[],boolean)"},{"p":"swervelib","c":"SwerveDrive","l":"setMotorBrake(boolean)"},{"p":"swervelib","c":"SwerveModule","l":"setMotorBrake(boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setMotorBrake(boolean)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setMotorBrake(boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setPosition(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setPosition(double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setReference(double, double)","url":"setReference(double,double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setReference(double, double)","url":"setReference(double,double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setVoltageCompensation(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setVoltageCompensation(double)"},{"p":"swervelib.imu","c":"NavXSwerve","l":"setYaw(double)"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"setYaw(double)"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"setYaw(double)"},{"p":"swervelib.imu","c":"SwerveIMU","l":"setYaw(double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"Simulation"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"SparkMAX_slotIdx()","url":"%3Cinit%3E()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"SparkMaxEncoderSwerve(SwerveMotor)","url":"%3Cinit%3E(swervelib.motors.SwerveMotor)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"SparkMaxSwerve(CANSparkMax, boolean)","url":"%3Cinit%3E(com.revrobotics.CANSparkMax,boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"SparkMaxSwerve(int, boolean)","url":"%3Cinit%3E(int,boolean)"},{"p":"swervelib","c":"SwerveModule","l":"speed"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"speedMetersPerSecond"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"SwerveAbsoluteEncoder()","url":"%3Cinit%3E()"},{"p":"swervelib","c":"SwerveDrive","l":"swerveController"},{"p":"swervelib","c":"SwerveController","l":"SwerveController(SwerveControllerConfiguration)","url":"%3Cinit%3E(swervelib.parser.SwerveControllerConfiguration)"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"SwerveControllerConfiguration(SwerveDriveConfiguration, PIDFConfig, double)","url":"%3Cinit%3E(swervelib.parser.SwerveDriveConfiguration,swervelib.parser.PIDFConfig,double)"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"SwerveControllerConfiguration(SwerveDriveConfiguration, PIDFConfig)","url":"%3Cinit%3E(swervelib.parser.SwerveDriveConfiguration,swervelib.parser.PIDFConfig)"},{"p":"swervelib","c":"SwerveDrive","l":"SwerveDrive(SwerveDriveConfiguration, SwerveControllerConfiguration)","url":"%3Cinit%3E(swervelib.parser.SwerveDriveConfiguration,swervelib.parser.SwerveControllerConfiguration)"},{"p":"swervelib","c":"SwerveDrive","l":"swerveDriveConfiguration"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"SwerveDriveConfiguration(SwerveModuleConfiguration[], SwerveIMU, double, boolean)","url":"%3Cinit%3E(swervelib.parser.SwerveModuleConfiguration[],swervelib.imu.SwerveIMU,double,boolean)"},{"p":"swervelib.parser","c":"SwerveParser","l":"swerveDriveJson"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"SwerveDriveJson()","url":"%3Cinit%3E()"},{"p":"swervelib","c":"SwerveDrive","l":"swerveDrivePoseEstimator"},{"p":"swervelib.imu","c":"SwerveIMU","l":"SwerveIMU()","url":"%3Cinit%3E()"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"SwerveKinematics2(Translation2d...)","url":"%3Cinit%3E(edu.wpi.first.math.geometry.Translation2d...)"},{"p":"swervelib.math","c":"SwerveMath","l":"SwerveMath()","url":"%3Cinit%3E()"},{"p":"swervelib","c":"SwerveModule","l":"SwerveModule(int, SwerveModuleConfiguration)","url":"%3Cinit%3E(int,swervelib.parser.SwerveModuleConfiguration)"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"SwerveModuleConfiguration(SwerveMotor, SwerveMotor, SwerveAbsoluteEncoder, double, double, double, PIDFConfig, PIDFConfig, double, SwerveModulePhysicalCharacteristics, boolean, boolean, boolean)","url":"%3Cinit%3E(swervelib.motors.SwerveMotor,swervelib.motors.SwerveMotor,swervelib.encoders.SwerveAbsoluteEncoder,double,double,double,swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics,boolean,boolean,boolean)"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"SwerveModuleConfiguration(SwerveMotor, SwerveMotor, SwerveAbsoluteEncoder, double, double, double, PIDFConfig, PIDFConfig, double, SwerveModulePhysicalCharacteristics)","url":"%3Cinit%3E(swervelib.motors.SwerveMotor,swervelib.motors.SwerveMotor,swervelib.encoders.SwerveAbsoluteEncoder,double,double,double,swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics)"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"SwerveModulePhysicalCharacteristics(double, double, double, double, double, double, int, int, double, double, int, int)","url":"%3Cinit%3E(double,double,double,double,double,double,int,int,double,double,int,int)"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"SwerveModulePhysicalCharacteristics(double, double, double, double, double, double, int, int)","url":"%3Cinit%3E(double,double,double,double,double,double,int,int)"},{"p":"swervelib","c":"SwerveDrive","l":"swerveModules"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"SwerveModuleState2()","url":"%3Cinit%3E()"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"SwerveModuleState2(double, Rotation2d, double)","url":"%3Cinit%3E(double,edu.wpi.first.math.geometry.Rotation2d,double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"SwerveMotor()","url":"%3Cinit%3E()"},{"p":"swervelib.parser","c":"SwerveParser","l":"SwerveParser(File)","url":"%3Cinit%3E(java.io.File)"},{"p":"swervelib","c":"SwerveModule","l":"synchronizeEncoders()"},{"p":"swervelib","c":"SwerveController","l":"thetaController"},{"p":"swervelib","c":"SwerveModule","l":"time"},{"p":"swervelib","c":"SwerveDrive","l":"timer"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"toChassisSpeeds(SwerveModuleState2...)","url":"toChassisSpeeds(swervelib.math.SwerveModuleState2...)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"toSwerveModuleStates(ChassisSpeeds, Translation2d)","url":"toSwerveModuleStates(edu.wpi.first.math.kinematics.ChassisSpeeds,edu.wpi.first.math.geometry.Translation2d)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"toSwerveModuleStates(ChassisSpeeds)","url":"toSwerveModuleStates(edu.wpi.first.math.kinematics.ChassisSpeeds)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"toTwist2d(SwerveModulePosition...)","url":"toTwist2d(edu.wpi.first.math.kinematics.SwerveModulePosition...)"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"type"},{"p":"swervelib","c":"SwerveDrive","l":"updateOdometry()"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"valueOf(String)","url":"valueOf(java.lang.String)"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"values()"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"Velocity"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"velocityPIDF"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"wheelDiameter"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"wheelDiameter"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"wheelGripCoefficientOfFriction"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"wheelGripCoefficientOfFriction"},{"p":"swervelib","c":"SwerveController","l":"withinHypotDeadband(double, double)","url":"withinHypotDeadband(double,double)"},{"p":"swervelib.parser.json.modules","c":"LocationJson","l":"x"},{"p":"swervelib.parser.json.modules","c":"LocationJson","l":"y"},{"p":"swervelib.imu","c":"NavXSwerve","l":"yawOffset"},{"p":"swervelib","c":"SwerveDrive","l":"zeroGyro()"}] \ No newline at end of file +memberSearchIndex = [{"p":"swervelib","c":"SwerveModule","l":"absoluteEncoder"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"absoluteEncoder"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"absoluteEncoder"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"absoluteEncoder"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"absoluteEncoder"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"absoluteEncoderInverted"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"absoluteEncoderInverted"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"absoluteEncoderOffset"},{"p":"swervelib","c":"SwerveDrive","l":"angle"},{"p":"swervelib","c":"SwerveModule","l":"angle"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"angle"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"angle"},{"p":"swervelib.parser.json","c":"MotorConfigDouble","l":"angle"},{"p":"swervelib.parser.json","c":"MotorConfigInt","l":"angle"},{"p":"swervelib.parser.json","c":"PIDFPropertiesJson","l":"angle"},{"p":"swervelib.parser.json.modules","c":"BoolMotorJson","l":"angle"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleEncoderPulsePerRotation"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleGearRatio"},{"p":"swervelib.parser.json","c":"ControllerPropertiesJson","l":"angleJoystickRadiusDeadband"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"angleJoyStickRadiusDeadband"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"angleKV"},{"p":"swervelib","c":"SwerveModule","l":"angleMotor"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"angleMotor"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleMotorCurrentLimit"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleMotorFreeSpeedRPM"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"angleMotorFreeSpeedRPM"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"angleMotorInverted"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"angleMotorRampRate"},{"p":"swervelib","c":"SwerveModule","l":"angleOffset"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"angleOffset"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"anglePIDF"},{"p":"swervelib.math","c":"SwerveMath","l":"applyDeadband(double, boolean, double)","url":"applyDeadband(double,boolean,double)"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_pidIdx","l":"AUXILIARY_PID"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"bigInverseKinematics"},{"p":"swervelib.parser.json.modules","c":"BoolMotorJson","l":"BoolMotorJson()","url":"%3Cinit%3E()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"burnFlash()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"burnFlash()"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"burnFlash()"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"burnFlash()"},{"p":"swervelib.math","c":"SwerveMath","l":"calcMaxAccel(Rotation2d, double, double, Translation3d, SwerveDriveConfiguration)","url":"calcMaxAccel(edu.wpi.first.math.geometry.Rotation2d,double,double,edu.wpi.first.math.geometry.Translation3d,swervelib.parser.SwerveDriveConfiguration)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateAngleKV(double, double, double)","url":"calculateAngleKV(double,double,double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateDegreesPerSteeringRotation(double, double)","url":"calculateDegreesPerSteeringRotation(double,double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateMaxAcceleration(double, double, double, double, double)","url":"calculateMaxAcceleration(double,double,double,double,double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateMaxAcceleration(double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateMaxAngularVelocity(double, double, double)","url":"calculateMaxAngularVelocity(double,double,double)"},{"p":"swervelib.math","c":"SwerveMath","l":"calculateMetersPerRotation(double, double, double)","url":"calculateMetersPerRotation(double,double,double)"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"canbus"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"CANCoderSwerve(int, String)","url":"%3Cinit%3E(int,java.lang.String)"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"CANCoderSwerve(int)","url":"%3Cinit%3E(int)"},{"p":"swervelib.parser","c":"SwerveParser","l":"checkDirectory(File)","url":"checkDirectory(java.io.File)"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"clearStickyFaults()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"clearStickyFaults()"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"clearStickyFaults()"},{"p":"swervelib.imu","c":"NavXSwerve","l":"clearStickyFaults()"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"clearStickyFaults()"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"clearStickyFaults()"},{"p":"swervelib.imu","c":"SwerveIMU","l":"clearStickyFaults()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"clearStickyFaults()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"clearStickyFaults()"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"clearStickyFaults()"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"clearStickyFaults()"},{"p":"swervelib","c":"SwerveController","l":"config"},{"p":"swervelib","c":"SwerveModule","l":"configuration"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"configure(boolean)"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"configure(boolean)"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"configure(boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"configureCANStatusFrames(int, int, int, int, int)","url":"configureCANStatusFrames(int,int,int,int,int)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"configureIntegratedEncoder(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"configureIntegratedEncoder(double)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"configureIntegratedEncoder(double)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"configureIntegratedEncoder(double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"configurePIDF(PIDFConfig)","url":"configurePIDF(swervelib.parser.PIDFConfig)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"configurePIDF(PIDFConfig)","url":"configurePIDF(swervelib.parser.PIDFConfig)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"configurePIDF(PIDFConfig)","url":"configurePIDF(swervelib.parser.PIDFConfig)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"configurePIDF(PIDFConfig)","url":"configurePIDF(swervelib.parser.PIDFConfig)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"configurePIDWrapping(double, double)","url":"configurePIDWrapping(double,double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"configurePIDWrapping(double, double)","url":"configurePIDWrapping(double,double)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"configurePIDWrapping(double, double)","url":"configurePIDWrapping(double,double)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"configurePIDWrapping(double, double)","url":"configurePIDWrapping(double,double)"},{"p":"swervelib.parser","c":"SwerveParser","l":"controllerPropertiesJson"},{"p":"swervelib.parser.json","c":"ControllerPropertiesJson","l":"ControllerPropertiesJson()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.json","c":"ControllerPropertiesJson","l":"createControllerConfiguration(SwerveDriveConfiguration)","url":"createControllerConfiguration(swervelib.parser.SwerveDriveConfiguration)"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"createDriveFeedforward()"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"createEncoder()"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"createIMU()"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"createIntegratedEncoder(SwerveMotor)","url":"createIntegratedEncoder(swervelib.motors.SwerveMotor)"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"createModuleConfiguration(PIDFConfig, PIDFConfig, double, SwerveModulePhysicalCharacteristics)","url":"createModuleConfiguration(swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics)"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"createModules(SwerveModuleConfiguration[])","url":"createModules(swervelib.parser.SwerveModuleConfiguration[])"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"createMotor(boolean)"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"createPhysicalProperties(double)"},{"p":"swervelib.parser","c":"PIDFConfig","l":"createPIDController()"},{"p":"swervelib.parser","c":"SwerveParser","l":"createSwerveDrive()"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_pidIdx","l":"CTRE_pidIdx()","url":"%3Cinit%3E()"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_remoteSensor","l":"CTRE_remoteSensor()","url":"%3Cinit%3E()"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_slotIdx","l":"CTRE_slotIdx()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"currentLimit"},{"p":"swervelib.parser","c":"PIDFConfig","l":"d"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"desaturateWheelSpeeds(SwerveModuleState2[], ChassisSpeeds, double, double, double)","url":"desaturateWheelSpeeds(swervelib.math.SwerveModuleState2[],edu.wpi.first.math.kinematics.ChassisSpeeds,double,double,double)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"desaturateWheelSpeeds(SwerveModuleState2[], double)","url":"desaturateWheelSpeeds(swervelib.math.SwerveModuleState2[],double)"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"DeviceJson()","url":"%3Cinit%3E()"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_slotIdx","l":"Distance"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"drive"},{"p":"swervelib.parser.json","c":"MotorConfigDouble","l":"drive"},{"p":"swervelib.parser.json","c":"MotorConfigInt","l":"drive"},{"p":"swervelib.parser.json","c":"PIDFPropertiesJson","l":"drive"},{"p":"swervelib.parser.json.modules","c":"BoolMotorJson","l":"drive"},{"p":"swervelib","c":"SwerveDrive","l":"drive(Translation2d, double, boolean, boolean)","url":"drive(edu.wpi.first.math.geometry.Translation2d,double,boolean,boolean)"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"driveEncoderPulsePerRotation"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"driveGearRatio"},{"p":"swervelib","c":"SwerveModule","l":"driveMotor"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"driveMotor"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"driveMotorCurrentLimit"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"driveMotorInverted"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"driveMotorRampRate"},{"p":"swervelib","c":"SwerveModule","l":"dt"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"encoder"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"encoder"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"encoder"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"encoder"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"encoderPulsePerRotation"},{"p":"swervelib.parser","c":"PIDFConfig","l":"f"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"factoryDefault()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"factoryDefault()"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"factoryDefault()"},{"p":"swervelib.imu","c":"NavXSwerve","l":"factoryDefault()"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"factoryDefault()"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"factoryDefault()"},{"p":"swervelib.imu","c":"SwerveIMU","l":"factoryDefault()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"factoryDefaultOccurred"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"factoryDefaultOccurred"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"factoryDefaultOccurred"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"factoryDefaults()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"factoryDefaults()"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"factoryDefaults()"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"factoryDefaults()"},{"p":"swervelib","c":"SwerveModule","l":"fakePos"},{"p":"swervelib","c":"SwerveModule","l":"feedforward"},{"p":"swervelib","c":"SwerveDrive","l":"field"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_pidIdx","l":"FOURTH_PID"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"gearRatio"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"getAbsoluteEncoder()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"getAbsoluteEncoder()"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"getAbsoluteEncoder()"},{"p":"swervelib.encoders","c":"CANCoderSwerve","l":"getAbsolutePosition()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"getAbsolutePosition()"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"getAbsolutePosition()"},{"p":"swervelib","c":"SwerveModule","l":"getCANCoder()"},{"p":"swervelib","c":"SwerveDrive","l":"getFieldVelocity()"},{"p":"swervelib.imu","c":"NavXSwerve","l":"getIMU()"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"getIMU()"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"getIMU()"},{"p":"swervelib.imu","c":"SwerveIMU","l":"getIMU()"},{"p":"swervelib.parser","c":"SwerveParser","l":"getModuleConfigurationByName(String, SwerveDriveConfiguration)","url":"getModuleConfigurationByName(java.lang.String,swervelib.parser.SwerveDriveConfiguration)"},{"p":"swervelib","c":"SwerveDrive","l":"getModulePositions()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"getMotor()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"getMotor()"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"getMotor()"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"getMotor()"},{"p":"swervelib","c":"SwerveDrive","l":"getPitch()"},{"p":"swervelib","c":"SwerveDrive","l":"getPose()"},{"p":"swervelib","c":"SwerveModule","l":"getPosition()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"getPosition()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"getPosition()"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"getPosition()"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"getPosition()"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"getPositionEncoderConversion(boolean)"},{"p":"swervelib","c":"SwerveModule","l":"getRelativeEncoder()"},{"p":"swervelib","c":"SwerveDrive","l":"getRobotVelocity()"},{"p":"swervelib","c":"SwerveModule","l":"getState()"},{"p":"swervelib","c":"SwerveDrive","l":"getStates()"},{"p":"swervelib","c":"SwerveDrive","l":"getSwerveModulePoses(Pose2d)","url":"getSwerveModulePoses(edu.wpi.first.math.geometry.Pose2d)"},{"p":"swervelib","c":"SwerveController","l":"getTargetSpeeds(double, double, double, double, double)","url":"getTargetSpeeds(double,double,double,double,double)"},{"p":"swervelib","c":"SwerveController","l":"getTargetSpeeds(double, double, double, double)","url":"getTargetSpeeds(double,double,double,double)"},{"p":"swervelib","c":"SwerveController","l":"getTranslation2d(ChassisSpeeds)","url":"getTranslation2d(edu.wpi.first.math.kinematics.ChassisSpeeds)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"getVelocity()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"getVelocity()"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"getVelocity()"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"getVelocity()"},{"p":"swervelib","c":"SwerveDrive","l":"getYaw()"},{"p":"swervelib.imu","c":"NavXSwerve","l":"getYawPitchRoll(double[])"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"getYawPitchRoll(double[])"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"getYawPitchRoll(double[])"},{"p":"swervelib.imu","c":"SwerveIMU","l":"getYawPitchRoll(double[])"},{"p":"swervelib.imu","c":"NavXSwerve","l":"gyro"},{"p":"swervelib.parser.json","c":"ControllerPropertiesJson","l":"heading"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"headingPIDF"},{"p":"swervelib.parser","c":"PIDFConfig","l":"i"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"id"},{"p":"swervelib","c":"SwerveDrive","l":"imu"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"imu"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"imu"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"imu"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"imu"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"inverted"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"invertedIMU"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"invertedIMU"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"isAttachedAbsoluteEncoder()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"isAttachedAbsoluteEncoder()"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"isAttachedAbsoluteEncoder()"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"isAttachedAbsoluteEncoder()"},{"p":"swervelib.motors","c":"SwerveMotor","l":"isDriveMotor"},{"p":"swervelib.parser","c":"PIDFConfig","l":"iz"},{"p":"swervelib","c":"SwerveDrive","l":"kinematics"},{"p":"swervelib","c":"SwerveController","l":"lastAngle"},{"p":"swervelib","c":"SwerveModule","l":"lastAngle"},{"p":"swervelib","c":"SwerveDrive","l":"lastTime"},{"p":"swervelib","c":"SwerveModule","l":"lastTime"},{"p":"swervelib.math","c":"SwerveMath","l":"limitVelocity(Translation2d, ChassisSpeeds, Pose2d, double, double, double, Translation3d, SwerveDriveConfiguration)","url":"limitVelocity(edu.wpi.first.math.geometry.Translation2d,edu.wpi.first.math.kinematics.ChassisSpeeds,edu.wpi.first.math.geometry.Pose2d,double,double,double,edu.wpi.first.math.geometry.Translation3d,swervelib.parser.SwerveDriveConfiguration)"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"location"},{"p":"swervelib.parser.json.modules","c":"LocationJson","l":"LocationJson()","url":"%3Cinit%3E()"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_forwardKinematics"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_inverseKinematics"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_modules"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_moduleStates"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_numModules"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"m_prevCoR"},{"p":"swervelib.parser.deserializer","c":"PIDFRange","l":"max"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"maxAngularVelocity"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"maxSpeed"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"maxSpeed"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"maxSpeed"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"maxSpeed"},{"p":"swervelib.parser.deserializer","c":"PIDFRange","l":"min"},{"p":"swervelib.parser","c":"SwerveParser","l":"moduleConfigs"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"moduleCount"},{"p":"swervelib.parser.json","c":"ModuleJson","l":"ModuleJson()","url":"%3Cinit%3E()"},{"p":"swervelib.parser","c":"SwerveParser","l":"moduleJsons"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"moduleLocation"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"moduleLocationsMeters"},{"p":"swervelib","c":"SwerveModule","l":"moduleNumber"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"modules"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"modules"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_slotIdx","l":"MotionProfile"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"motor"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"motor"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"motor"},{"p":"swervelib.parser.json","c":"MotorConfigDouble","l":"MotorConfigDouble()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.json","c":"MotorConfigDouble","l":"MotorConfigDouble(double, double)","url":"%3Cinit%3E(double,double)"},{"p":"swervelib.parser.json","c":"MotorConfigInt","l":"MotorConfigInt()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.json","c":"MotorConfigInt","l":"MotorConfigInt(int, int)","url":"%3Cinit%3E(int,int)"},{"p":"swervelib.imu","c":"NavXSwerve","l":"NavXSwerve()","url":"%3Cinit%3E()"},{"p":"swervelib","c":"SwerveModule","l":"omega"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"omegaRadPerSecond"},{"p":"swervelib.parser","c":"SwerveParser","l":"openJson(File)","url":"openJson(java.io.File)"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"optimalVoltage"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"optimalVoltage"},{"p":"swervelib.parser","c":"PIDFConfig","l":"output"},{"p":"swervelib.parser","c":"PIDFConfig","l":"p"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"physicalCharacteristics"},{"p":"swervelib.parser","c":"SwerveParser","l":"physicalPropertiesJson"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"PhysicalPropertiesJson()","url":"%3Cinit%3E()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"pid"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig()","url":"%3Cinit%3E()"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig(double, double, double, double, double)","url":"%3Cinit%3E(double,double,double,double,double)"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig(double, double, double, double)","url":"%3Cinit%3E(double,double,double,double)"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig(double, double, double)","url":"%3Cinit%3E(double,double,double)"},{"p":"swervelib.parser","c":"PIDFConfig","l":"PIDFConfig(double, double)","url":"%3Cinit%3E(double,double)"},{"p":"swervelib.parser","c":"SwerveParser","l":"pidfPropertiesJson"},{"p":"swervelib.parser.json","c":"PIDFPropertiesJson","l":"PIDFPropertiesJson()","url":"%3Cinit%3E()"},{"p":"swervelib.parser.deserializer","c":"PIDFRange","l":"PIDFRange()","url":"%3Cinit%3E()"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"Pigeon2Swerve(int, String)","url":"%3Cinit%3E(int,java.lang.String)"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"Pigeon2Swerve(int)","url":"%3Cinit%3E(int)"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"PigeonSwerve(int)","url":"%3Cinit%3E(int)"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"Position"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"positionConversionFactor"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"positionConversionFactor"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_pidIdx","l":"PRIMARY_PID"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"rampRate"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_remoteSensor","l":"REMOTE_SENSOR_0"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_remoteSensor","l":"REMOTE_SENSOR_1"},{"p":"swervelib","c":"SwerveDrive","l":"replaceSwerveModuleFeedforward(SimpleMotorFeedforward)","url":"replaceSwerveModuleFeedforward(edu.wpi.first.math.controller.SimpleMotorFeedforward)"},{"p":"swervelib","c":"SwerveDrive","l":"resetOdometry(Pose2d)","url":"resetOdometry(edu.wpi.first.math.geometry.Pose2d)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"set(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"set(double)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"set(double)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"set(double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setAbsoluteEncoder(SwerveAbsoluteEncoder)","url":"setAbsoluteEncoder(swervelib.encoders.SwerveAbsoluteEncoder)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setAbsoluteEncoder(SwerveAbsoluteEncoder)","url":"setAbsoluteEncoder(swervelib.encoders.SwerveAbsoluteEncoder)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"setAbsoluteEncoder(SwerveAbsoluteEncoder)","url":"setAbsoluteEncoder(swervelib.encoders.SwerveAbsoluteEncoder)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"setAbsoluteEncoder(SwerveAbsoluteEncoder)","url":"setAbsoluteEncoder(swervelib.encoders.SwerveAbsoluteEncoder)"},{"p":"swervelib","c":"SwerveModule","l":"setAngle(double)"},{"p":"swervelib","c":"SwerveDrive","l":"setChassisSpeeds(ChassisSpeeds)","url":"setChassisSpeeds(edu.wpi.first.math.kinematics.ChassisSpeeds)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setCurrentLimit(int)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setCurrentLimit(int)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"setCurrentLimit(int)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"setCurrentLimit(int)"},{"p":"swervelib","c":"SwerveModule","l":"setDesiredState(SwerveModuleState2, boolean)","url":"setDesiredState(swervelib.math.SwerveModuleState2,boolean)"},{"p":"swervelib","c":"SwerveDrive","l":"setDriveBrake()"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setInverted(boolean)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setInverted(boolean)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"setInverted(boolean)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"setInverted(boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setLoopRampRate(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setLoopRampRate(double)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"setLoopRampRate(double)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"setLoopRampRate(double)"},{"p":"swervelib","c":"SwerveDrive","l":"setModuleStates(SwerveModuleState2[], boolean)","url":"setModuleStates(swervelib.math.SwerveModuleState2[],boolean)"},{"p":"swervelib","c":"SwerveDrive","l":"setMotorBrake(boolean)"},{"p":"swervelib","c":"SwerveModule","l":"setMotorBrake(boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setMotorBrake(boolean)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setMotorBrake(boolean)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"setMotorBrake(boolean)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"setMotorBrake(boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setPosition(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setPosition(double)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"setPosition(double)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"setPosition(double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setReference(double, double)","url":"setReference(double,double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setReference(double, double)","url":"setReference(double,double)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"setReference(double, double)","url":"setReference(double,double)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"setReference(double, double)","url":"setReference(double,double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"setVoltageCompensation(double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"setVoltageCompensation(double)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"setVoltageCompensation(double)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"setVoltageCompensation(double)"},{"p":"swervelib.imu","c":"NavXSwerve","l":"setYaw(double)"},{"p":"swervelib.imu","c":"Pigeon2Swerve","l":"setYaw(double)"},{"p":"swervelib.imu","c":"PigeonSwerve","l":"setYaw(double)"},{"p":"swervelib.imu","c":"SwerveIMU","l":"setYaw(double)"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"Simulation"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"SparkMAX_slotIdx()","url":"%3Cinit%3E()"},{"p":"swervelib.encoders","c":"SparkMaxEncoderSwerve","l":"SparkMaxEncoderSwerve(SwerveMotor)","url":"%3Cinit%3E(swervelib.motors.SwerveMotor)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"SparkMaxSwerve(CANSparkMax, boolean)","url":"%3Cinit%3E(com.revrobotics.CANSparkMax,boolean)"},{"p":"swervelib.motors","c":"SparkMaxSwerve","l":"SparkMaxSwerve(int, boolean)","url":"%3Cinit%3E(int,boolean)"},{"p":"swervelib","c":"SwerveModule","l":"speed"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"speedMetersPerSecond"},{"p":"swervelib.encoders","c":"SwerveAbsoluteEncoder","l":"SwerveAbsoluteEncoder()","url":"%3Cinit%3E()"},{"p":"swervelib","c":"SwerveDrive","l":"swerveController"},{"p":"swervelib","c":"SwerveController","l":"SwerveController(SwerveControllerConfiguration)","url":"%3Cinit%3E(swervelib.parser.SwerveControllerConfiguration)"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"SwerveControllerConfiguration(SwerveDriveConfiguration, PIDFConfig, double)","url":"%3Cinit%3E(swervelib.parser.SwerveDriveConfiguration,swervelib.parser.PIDFConfig,double)"},{"p":"swervelib.parser","c":"SwerveControllerConfiguration","l":"SwerveControllerConfiguration(SwerveDriveConfiguration, PIDFConfig)","url":"%3Cinit%3E(swervelib.parser.SwerveDriveConfiguration,swervelib.parser.PIDFConfig)"},{"p":"swervelib","c":"SwerveDrive","l":"SwerveDrive(SwerveDriveConfiguration, SwerveControllerConfiguration)","url":"%3Cinit%3E(swervelib.parser.SwerveDriveConfiguration,swervelib.parser.SwerveControllerConfiguration)"},{"p":"swervelib","c":"SwerveDrive","l":"swerveDriveConfiguration"},{"p":"swervelib.parser","c":"SwerveDriveConfiguration","l":"SwerveDriveConfiguration(SwerveModuleConfiguration[], SwerveIMU, double, boolean)","url":"%3Cinit%3E(swervelib.parser.SwerveModuleConfiguration[],swervelib.imu.SwerveIMU,double,boolean)"},{"p":"swervelib.parser","c":"SwerveParser","l":"swerveDriveJson"},{"p":"swervelib.parser.json","c":"SwerveDriveJson","l":"SwerveDriveJson()","url":"%3Cinit%3E()"},{"p":"swervelib","c":"SwerveDrive","l":"swerveDrivePoseEstimator"},{"p":"swervelib.imu","c":"SwerveIMU","l":"SwerveIMU()","url":"%3Cinit%3E()"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"SwerveKinematics2(Translation2d...)","url":"%3Cinit%3E(edu.wpi.first.math.geometry.Translation2d...)"},{"p":"swervelib.math","c":"SwerveMath","l":"SwerveMath()","url":"%3Cinit%3E()"},{"p":"swervelib","c":"SwerveModule","l":"SwerveModule(int, SwerveModuleConfiguration)","url":"%3Cinit%3E(int,swervelib.parser.SwerveModuleConfiguration)"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"SwerveModuleConfiguration(SwerveMotor, SwerveMotor, SwerveAbsoluteEncoder, double, double, double, PIDFConfig, PIDFConfig, double, SwerveModulePhysicalCharacteristics, boolean, boolean, boolean)","url":"%3Cinit%3E(swervelib.motors.SwerveMotor,swervelib.motors.SwerveMotor,swervelib.encoders.SwerveAbsoluteEncoder,double,double,double,swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics,boolean,boolean,boolean)"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"SwerveModuleConfiguration(SwerveMotor, SwerveMotor, SwerveAbsoluteEncoder, double, double, double, PIDFConfig, PIDFConfig, double, SwerveModulePhysicalCharacteristics)","url":"%3Cinit%3E(swervelib.motors.SwerveMotor,swervelib.motors.SwerveMotor,swervelib.encoders.SwerveAbsoluteEncoder,double,double,double,swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics)"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"SwerveModulePhysicalCharacteristics(double, double, double, double, double, double, int, int, double, double, int, int)","url":"%3Cinit%3E(double,double,double,double,double,double,int,int,double,double,int,int)"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"SwerveModulePhysicalCharacteristics(double, double, double, double, double, double, int, int)","url":"%3Cinit%3E(double,double,double,double,double,double,int,int)"},{"p":"swervelib","c":"SwerveDrive","l":"swerveModules"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"SwerveModuleState2()","url":"%3Cinit%3E()"},{"p":"swervelib.math","c":"SwerveModuleState2","l":"SwerveModuleState2(double, Rotation2d, double)","url":"%3Cinit%3E(double,edu.wpi.first.math.geometry.Rotation2d,double)"},{"p":"swervelib.motors","c":"SwerveMotor","l":"SwerveMotor()","url":"%3Cinit%3E()"},{"p":"swervelib.parser","c":"SwerveParser","l":"SwerveParser(File)","url":"%3Cinit%3E(java.io.File)"},{"p":"swervelib","c":"SwerveModule","l":"synchronizeEncoders()"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"TalonFXSwerve(int, boolean)","url":"%3Cinit%3E(int,boolean)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"TalonFXSwerve(int, String, boolean)","url":"%3Cinit%3E(int,java.lang.String,boolean)"},{"p":"swervelib.motors","c":"TalonFXSwerve","l":"TalonFXSwerve(WPI_TalonFX, boolean)","url":"%3Cinit%3E(com.ctre.phoenix.motorcontrol.can.WPI_TalonFX,boolean)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"TalonSRXSwerve(int, boolean)","url":"%3Cinit%3E(int,boolean)"},{"p":"swervelib.motors","c":"TalonSRXSwerve","l":"TalonSRXSwerve(WPI_TalonSRX, boolean)","url":"%3Cinit%3E(com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX,boolean)"},{"p":"swervelib","c":"SwerveController","l":"thetaController"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_pidIdx","l":"THIRD_PID"},{"p":"swervelib","c":"SwerveModule","l":"time"},{"p":"swervelib","c":"SwerveDrive","l":"timer"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"toChassisSpeeds(SwerveModuleState2...)","url":"toChassisSpeeds(swervelib.math.SwerveModuleState2...)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"toSwerveModuleStates(ChassisSpeeds, Translation2d)","url":"toSwerveModuleStates(edu.wpi.first.math.kinematics.ChassisSpeeds,edu.wpi.first.math.geometry.Translation2d)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"toSwerveModuleStates(ChassisSpeeds)","url":"toSwerveModuleStates(edu.wpi.first.math.kinematics.ChassisSpeeds)"},{"p":"swervelib.math","c":"SwerveKinematics2","l":"toTwist2d(SwerveModulePosition...)","url":"toTwist2d(edu.wpi.first.math.kinematics.SwerveModulePosition...)"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_slotIdx","l":"Turning"},{"p":"swervelib.parser.json","c":"DeviceJson","l":"type"},{"p":"swervelib","c":"SwerveDrive","l":"updateOdometry()"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"valueOf(String)","url":"valueOf(java.lang.String)"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_pidIdx","l":"valueOf(String)","url":"valueOf(java.lang.String)"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_remoteSensor","l":"valueOf(String)","url":"valueOf(java.lang.String)"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_slotIdx","l":"valueOf(String)","url":"valueOf(java.lang.String)"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"values()"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_pidIdx","l":"values()"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_remoteSensor","l":"values()"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_slotIdx","l":"values()"},{"p":"swervelib.motors","c":"SparkMaxSwerve.SparkMAX_slotIdx","l":"Velocity"},{"p":"swervelib.motors","c":"TalonSRXSwerve.CTRE_slotIdx","l":"Velocity"},{"p":"swervelib.parser","c":"SwerveModuleConfiguration","l":"velocityPIDF"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"wheelDiameter"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"wheelDiameter"},{"p":"swervelib.parser","c":"SwerveModulePhysicalCharacteristics","l":"wheelGripCoefficientOfFriction"},{"p":"swervelib.parser.json","c":"PhysicalPropertiesJson","l":"wheelGripCoefficientOfFriction"},{"p":"swervelib","c":"SwerveController","l":"withinHypotDeadband(double, double)","url":"withinHypotDeadband(double,double)"},{"p":"swervelib.parser.json.modules","c":"LocationJson","l":"x"},{"p":"swervelib.parser.json.modules","c":"LocationJson","l":"y"},{"p":"swervelib.imu","c":"NavXSwerve","l":"yawOffset"},{"p":"swervelib","c":"SwerveDrive","l":"zeroGyro()"}] \ No newline at end of file diff --git a/docs/overview-summary.html b/docs/overview-summary.html index 8ecdb9c..7cc64fe 100644 --- a/docs/overview-summary.html +++ b/docs/overview-summary.html @@ -2,7 +2,7 @@ - + Generated Documentation (Untitled) diff --git a/docs/overview-tree.html b/docs/overview-tree.html index 0eee707..99bfbc1 100644 --- a/docs/overview-tree.html +++ b/docs/overview-tree.html @@ -2,7 +2,7 @@ - + Class Hierarchy @@ -160,6 +160,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  • swervelib.motors.SwerveMotor
  • swervelib.parser.SwerveParser
  • @@ -175,6 +177,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  • java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
  • diff --git a/docs/swervelib/SwerveController.html b/docs/swervelib/SwerveController.html index cccfa54..8db91c4 100644 --- a/docs/swervelib/SwerveController.html +++ b/docs/swervelib/SwerveController.html @@ -2,7 +2,7 @@ - + SwerveController diff --git a/docs/swervelib/SwerveDrive.html b/docs/swervelib/SwerveDrive.html index 9182b2a..598822f 100644 --- a/docs/swervelib/SwerveDrive.html +++ b/docs/swervelib/SwerveDrive.html @@ -2,7 +2,7 @@ - + SwerveDrive diff --git a/docs/swervelib/SwerveModule.html b/docs/swervelib/SwerveModule.html index afba1a3..2dd62f8 100644 --- a/docs/swervelib/SwerveModule.html +++ b/docs/swervelib/SwerveModule.html @@ -2,7 +2,7 @@ - + SwerveModule diff --git a/docs/swervelib/encoders/CANCoderSwerve.html b/docs/swervelib/encoders/CANCoderSwerve.html index a8f3a7a..aa7b70e 100644 --- a/docs/swervelib/encoders/CANCoderSwerve.html +++ b/docs/swervelib/encoders/CANCoderSwerve.html @@ -2,7 +2,7 @@ - + CANCoderSwerve diff --git a/docs/swervelib/encoders/SparkMaxEncoderSwerve.html b/docs/swervelib/encoders/SparkMaxEncoderSwerve.html index 90a6748..d18feb0 100644 --- a/docs/swervelib/encoders/SparkMaxEncoderSwerve.html +++ b/docs/swervelib/encoders/SparkMaxEncoderSwerve.html @@ -2,7 +2,7 @@ - + SparkMaxEncoderSwerve diff --git a/docs/swervelib/encoders/SwerveAbsoluteEncoder.html b/docs/swervelib/encoders/SwerveAbsoluteEncoder.html index 971ab18..939bdfd 100644 --- a/docs/swervelib/encoders/SwerveAbsoluteEncoder.html +++ b/docs/swervelib/encoders/SwerveAbsoluteEncoder.html @@ -2,7 +2,7 @@ - + SwerveAbsoluteEncoder diff --git a/docs/swervelib/encoders/package-summary.html b/docs/swervelib/encoders/package-summary.html index 4986c01..830710b 100644 --- a/docs/swervelib/encoders/package-summary.html +++ b/docs/swervelib/encoders/package-summary.html @@ -2,7 +2,7 @@ - + swervelib.encoders diff --git a/docs/swervelib/encoders/package-tree.html b/docs/swervelib/encoders/package-tree.html index 6e2529e..8a81eb2 100644 --- a/docs/swervelib/encoders/package-tree.html +++ b/docs/swervelib/encoders/package-tree.html @@ -2,7 +2,7 @@ - + swervelib.encoders Class Hierarchy diff --git a/docs/swervelib/imu/NavXSwerve.html b/docs/swervelib/imu/NavXSwerve.html index a3b17ed..52d8918 100644 --- a/docs/swervelib/imu/NavXSwerve.html +++ b/docs/swervelib/imu/NavXSwerve.html @@ -2,7 +2,7 @@ - + NavXSwerve diff --git a/docs/swervelib/imu/Pigeon2Swerve.html b/docs/swervelib/imu/Pigeon2Swerve.html index a60e635..6743f5e 100644 --- a/docs/swervelib/imu/Pigeon2Swerve.html +++ b/docs/swervelib/imu/Pigeon2Swerve.html @@ -2,7 +2,7 @@ - + Pigeon2Swerve diff --git a/docs/swervelib/imu/PigeonSwerve.html b/docs/swervelib/imu/PigeonSwerve.html index bf93568..c57aa2d 100644 --- a/docs/swervelib/imu/PigeonSwerve.html +++ b/docs/swervelib/imu/PigeonSwerve.html @@ -2,7 +2,7 @@ - + PigeonSwerve diff --git a/docs/swervelib/imu/SwerveIMU.html b/docs/swervelib/imu/SwerveIMU.html index b10b1f7..570b579 100644 --- a/docs/swervelib/imu/SwerveIMU.html +++ b/docs/swervelib/imu/SwerveIMU.html @@ -2,7 +2,7 @@ - + SwerveIMU diff --git a/docs/swervelib/imu/package-summary.html b/docs/swervelib/imu/package-summary.html index d5dc5b9..502dd20 100644 --- a/docs/swervelib/imu/package-summary.html +++ b/docs/swervelib/imu/package-summary.html @@ -2,7 +2,7 @@ - + swervelib.imu diff --git a/docs/swervelib/imu/package-tree.html b/docs/swervelib/imu/package-tree.html index e3bce60..5a7d0b8 100644 --- a/docs/swervelib/imu/package-tree.html +++ b/docs/swervelib/imu/package-tree.html @@ -2,7 +2,7 @@ - + swervelib.imu Class Hierarchy diff --git a/docs/swervelib/math/SwerveKinematics2.html b/docs/swervelib/math/SwerveKinematics2.html index 7db12d1..61f2ad3 100644 --- a/docs/swervelib/math/SwerveKinematics2.html +++ b/docs/swervelib/math/SwerveKinematics2.html @@ -2,7 +2,7 @@ - + SwerveKinematics2 diff --git a/docs/swervelib/math/SwerveMath.html b/docs/swervelib/math/SwerveMath.html index cba1fe1..e008fff 100644 --- a/docs/swervelib/math/SwerveMath.html +++ b/docs/swervelib/math/SwerveMath.html @@ -2,7 +2,7 @@ - + SwerveMath diff --git a/docs/swervelib/math/SwerveModuleState2.html b/docs/swervelib/math/SwerveModuleState2.html index ad193f0..92c5bd8 100644 --- a/docs/swervelib/math/SwerveModuleState2.html +++ b/docs/swervelib/math/SwerveModuleState2.html @@ -2,7 +2,7 @@ - + SwerveModuleState2 diff --git a/docs/swervelib/math/package-summary.html b/docs/swervelib/math/package-summary.html index 7c508fc..0669b48 100644 --- a/docs/swervelib/math/package-summary.html +++ b/docs/swervelib/math/package-summary.html @@ -2,7 +2,7 @@ - + swervelib.math diff --git a/docs/swervelib/math/package-tree.html b/docs/swervelib/math/package-tree.html index 95b2a58..bf597c8 100644 --- a/docs/swervelib/math/package-tree.html +++ b/docs/swervelib/math/package-tree.html @@ -2,7 +2,7 @@ - + swervelib.math Class Hierarchy diff --git a/docs/swervelib/motors/SparkMaxSwerve.SparkMAX_slotIdx.html b/docs/swervelib/motors/SparkMaxSwerve.SparkMAX_slotIdx.html index ae5498e..91229d7 100644 --- a/docs/swervelib/motors/SparkMaxSwerve.SparkMAX_slotIdx.html +++ b/docs/swervelib/motors/SparkMaxSwerve.SparkMAX_slotIdx.html @@ -2,7 +2,7 @@ - + SparkMaxSwerve.SparkMAX_slotIdx diff --git a/docs/swervelib/motors/SparkMaxSwerve.html b/docs/swervelib/motors/SparkMaxSwerve.html index d02923c..fd3d382 100644 --- a/docs/swervelib/motors/SparkMaxSwerve.html +++ b/docs/swervelib/motors/SparkMaxSwerve.html @@ -2,7 +2,7 @@ - + SparkMaxSwerve diff --git a/docs/swervelib/motors/SwerveMotor.html b/docs/swervelib/motors/SwerveMotor.html index 35d657a..0f154ee 100644 --- a/docs/swervelib/motors/SwerveMotor.html +++ b/docs/swervelib/motors/SwerveMotor.html @@ -2,7 +2,7 @@ - + SwerveMotor @@ -133,7 +133,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  • Direct Known Subclasses:
    -
    SparkMaxSwerve
    +
    SparkMaxSwerve, TalonFXSwerve, TalonSRXSwerve

    public abstract class SwerveMotor
    diff --git a/docs/swervelib/motors/TalonFXSwerve.CTRE_pidIdx.html b/docs/swervelib/motors/TalonFXSwerve.CTRE_pidIdx.html
    new file mode 100644
    index 0000000..5c0077d
    --- /dev/null
    +++ b/docs/swervelib/motors/TalonFXSwerve.CTRE_pidIdx.html
    @@ -0,0 +1,450 @@
    +
    +
    +
    +
    +
    +TalonFXSwerve.CTRE_pidIdx
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    + +
    +
    + +

    Enum TalonFXSwerve.CTRE_pidIdx

    +
    +
    + +
    + +
    +
    + +
    +
    +
      +
    • + +
      + +
      + +
      +
        +
      • + + +

        Constructor Detail

        + + + +
          +
        • +

          CTRE_pidIdx

          +
          private CTRE_pidIdx()
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Detail

        + + + +
          +
        • +

          values

          +
          public static TalonFXSwerve.CTRE_pidIdx[] values()
          +
          Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
          +for (TalonFXSwerve.CTRE_pidIdx c : TalonFXSwerve.CTRE_pidIdx.values())
          +    System.out.println(c);
          +
          +
          +
          Returns:
          +
          an array containing the constants of this enum type, in the order they are declared
          +
          +
        • +
        + + + +
          +
        • +

          valueOf

          +
          public static TalonFXSwerve.CTRE_pidIdx valueOf​(String name)
          +
          Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.)
          +
          +
          Parameters:
          +
          name - the name of the enum constant to be returned.
          +
          Returns:
          +
          the enum constant with the specified name
          +
          Throws:
          +
          IllegalArgumentException - if this enum type has no constant with the specified name
          +
          NullPointerException - if the argument is null
          +
          +
        • +
        +
      • +
      +
      +
    • +
    +
    +
    +
    + + + + diff --git a/docs/swervelib/motors/TalonFXSwerve.CTRE_remoteSensor.html b/docs/swervelib/motors/TalonFXSwerve.CTRE_remoteSensor.html new file mode 100644 index 0000000..951c78e --- /dev/null +++ b/docs/swervelib/motors/TalonFXSwerve.CTRE_remoteSensor.html @@ -0,0 +1,424 @@ + + + + + +TalonFXSwerve.CTRE_remoteSensor + + + + + + + + + + + + + + + +
    + +
    + +
    +
    + +

    Enum TalonFXSwerve.CTRE_remoteSensor

    +
    +
    + +
    + +
    +
    + +
    +
    +
      +
    • + +
      + +
      + +
      +
        +
      • + + +

        Constructor Detail

        + + + +
          +
        • +

          CTRE_remoteSensor

          +
          private CTRE_remoteSensor()
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Detail

        + + + +
          +
        • +

          values

          +
          public static TalonFXSwerve.CTRE_remoteSensor[] values()
          +
          Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
          +for (TalonFXSwerve.CTRE_remoteSensor c : TalonFXSwerve.CTRE_remoteSensor.values())
          +    System.out.println(c);
          +
          +
          +
          Returns:
          +
          an array containing the constants of this enum type, in the order they are declared
          +
          +
        • +
        + + + +
          +
        • +

          valueOf

          +
          public static TalonFXSwerve.CTRE_remoteSensor valueOf​(String name)
          +
          Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.)
          +
          +
          Parameters:
          +
          name - the name of the enum constant to be returned.
          +
          Returns:
          +
          the enum constant with the specified name
          +
          Throws:
          +
          IllegalArgumentException - if this enum type has no constant with the specified name
          +
          NullPointerException - if the argument is null
          +
          +
        • +
        +
      • +
      +
      +
    • +
    +
    +
    +
    + + + + diff --git a/docs/swervelib/motors/TalonFXSwerve.CTRE_slotIdx.html b/docs/swervelib/motors/TalonFXSwerve.CTRE_slotIdx.html new file mode 100644 index 0000000..c327356 --- /dev/null +++ b/docs/swervelib/motors/TalonFXSwerve.CTRE_slotIdx.html @@ -0,0 +1,450 @@ + + + + + +TalonFXSwerve.CTRE_slotIdx + + + + + + + + + + + + + + + +
    + +
    + +
    +
    + +

    Enum TalonFXSwerve.CTRE_slotIdx

    +
    +
    + +
    + +
    +
    + +
    +
    +
      +
    • + +
      + +
      + +
      +
        +
      • + + +

        Constructor Detail

        + + + +
          +
        • +

          CTRE_slotIdx

          +
          private CTRE_slotIdx()
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Detail

        + + + +
          +
        • +

          values

          +
          public static TalonFXSwerve.CTRE_slotIdx[] values()
          +
          Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
          +for (TalonFXSwerve.CTRE_slotIdx c : TalonFXSwerve.CTRE_slotIdx.values())
          +    System.out.println(c);
          +
          +
          +
          Returns:
          +
          an array containing the constants of this enum type, in the order they are declared
          +
          +
        • +
        + + + +
          +
        • +

          valueOf

          +
          public static TalonFXSwerve.CTRE_slotIdx valueOf​(String name)
          +
          Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.)
          +
          +
          Parameters:
          +
          name - the name of the enum constant to be returned.
          +
          Returns:
          +
          the enum constant with the specified name
          +
          Throws:
          +
          IllegalArgumentException - if this enum type has no constant with the specified name
          +
          NullPointerException - if the argument is null
          +
          +
        • +
        +
      • +
      +
      +
    • +
    +
    +
    +
    + + + + diff --git a/docs/swervelib/motors/TalonFXSwerve.html b/docs/swervelib/motors/TalonFXSwerve.html new file mode 100644 index 0000000..6d8f8af --- /dev/null +++ b/docs/swervelib/motors/TalonFXSwerve.html @@ -0,0 +1,902 @@ + + + + + +TalonFXSwerve + + + + + + + + + + + + + + + +
    + +
    + +
    +
    + +

    Class TalonFXSwerve

    +
    +
    + +
    +
      +
    • +
      +
      public class TalonFXSwerve
      +extends SwerveMotor
      +
      TalonFX Swerve Motor.
      +
    • +
    +
    +
    +
      +
    • + +
      +
        +
      • + + +

        Field Summary

        + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        Fields 
        Modifier and TypeFieldDescription
        private booleanabsoluteEncoder +
        Whether the absolute encoder is integrated.
        +
        private booleanfactoryDefaultOccurred +
        Factory default already occurred.
        +
        (package private) com.ctre.phoenix.motorcontrol.can.WPI_TalonFXmotor +
        TalonFX motor controller.
        +
        private doublepositionConversionFactor +
        The position conversion factor.
        +
        + +
      • +
      +
      + +
      +
        +
      • + + +

        Constructor Summary

        + + + + + + + + + + + + + + + + + + +
        Constructors 
        ConstructorDescription
        TalonFXSwerve​(int id, + boolean isDriveMotor) +
        Construct the TalonFX swerve motor given the ID.
        +
        TalonFXSwerve​(int id, + String canbus, + boolean isDriveMotor) +
        Construct the TalonFX swerve motor given the ID and CANBus.
        +
        TalonFXSwerve​(com.ctre.phoenix.motorcontrol.can.WPI_TalonFX motor, + boolean isDriveMotor) +
        Constructor for TalonFX swerve motor.
        +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Summary

        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        All Methods Instance Methods Concrete Methods 
        Modifier and TypeMethodDescription
        voidburnFlash() +
        Save the configurations from flash to EEPROM.
        +
        voidclearStickyFaults() +
        Clear the sticky faults on the motor controller.
        +
        voidconfigureIntegratedEncoder​(double positionConversionFactor) +
        Configure the integrated encoder for the swerve module.
        +
        voidconfigurePIDF​(PIDFConfig config) +
        Configure the PIDF values for the closed loop controller.
        +
        voidconfigurePIDWrapping​(double minInput, + double maxInput) +
        Configure the PID wrapping for the position closed loop controller.
        +
        voidfactoryDefaults() +
        Configure the factory defaults.
        +
        ObjectgetMotor() +
        Get the motor object from the module.
        +
        doublegetPosition() +
        Get the position of the integrated encoder.
        +
        doublegetVelocity() +
        Get the velocity of the integrated encoder.
        +
        booleanisAttachedAbsoluteEncoder() +
        Queries whether the absolute encoder is directly attached to the motor controller.
        +
        voidset​(double percentOutput) +
        Set the percentage output.
        +
        SwerveMotorsetAbsoluteEncoder​(SwerveAbsoluteEncoder encoder) +
        Set the absolute encoder to be a compatible absolute encoder.
        +
        voidsetCurrentLimit​(int currentLimit) +
        Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with + voltage compensation.
        +
        voidsetInverted​(boolean inverted) +
        Set the motor to be inverted.
        +
        voidsetLoopRampRate​(double rampRate) +
        Set the maximum rate the open/closed loop output can change by.
        +
        voidsetMotorBrake​(boolean isBrakeMode) +
        Set the idle mode.
        +
        voidsetPosition​(double position) +
        Set the integrated encoder position.
        +
        voidsetReference​(double setpoint, + double feedforward) +
        Set the closed loop PID controller reference point.
        +
        voidsetVoltageCompensation​(double nominalVoltage) +
        Set the voltage compensation for the swerve module motor.
        +
        + +
      • +
      +
      +
    • +
    +
    +
    +
      +
    • + +
      +
        +
      • + + +

        Field Detail

        + + + +
          +
        • +

          motor

          +
          com.ctre.phoenix.motorcontrol.can.WPI_TalonFX motor
          +
          TalonFX motor controller.
          +
        • +
        + + + +
          +
        • +

          factoryDefaultOccurred

          +
          private final boolean factoryDefaultOccurred
          +
          Factory default already occurred.
          +
          +
          See Also:
          +
          Constant Field Values
          +
          +
        • +
        + + + +
          +
        • +

          absoluteEncoder

          +
          private boolean absoluteEncoder
          +
          Whether the absolute encoder is integrated.
          +
        • +
        + + + +
          +
        • +

          positionConversionFactor

          +
          private double positionConversionFactor
          +
          The position conversion factor.
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Constructor Detail

        + + + +
          +
        • +

          TalonFXSwerve

          +
          public TalonFXSwerve​(com.ctre.phoenix.motorcontrol.can.WPI_TalonFX motor,
          +                     boolean isDriveMotor)
          +
          Constructor for TalonFX swerve motor.
          +
          +
          Parameters:
          +
          motor - Motor to use.
          +
          isDriveMotor - Whether this motor is a drive motor.
          +
          +
        • +
        + + + +
          +
        • +

          TalonFXSwerve

          +
          public TalonFXSwerve​(int id,
          +                     String canbus,
          +                     boolean isDriveMotor)
          +
          Construct the TalonFX swerve motor given the ID and CANBus.
          +
          +
          Parameters:
          +
          id - ID of the TalonFX on the CANBus.
          +
          canbus - CANBus on which the TalonFX is on.
          +
          isDriveMotor - Whether the motor is a drive or steering motor.
          +
          +
        • +
        + + + +
          +
        • +

          TalonFXSwerve

          +
          public TalonFXSwerve​(int id,
          +                     boolean isDriveMotor)
          +
          Construct the TalonFX swerve motor given the ID.
          +
          +
          Parameters:
          +
          id - ID of the TalonFX on the canbus.
          +
          isDriveMotor - Whether the motor is a drive or steering motor.
          +
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Detail

        + + + +
          +
        • +

          factoryDefaults

          +
          public void factoryDefaults()
          +
          Configure the factory defaults.
          +
          +
          Specified by:
          +
          factoryDefaults in class SwerveMotor
          +
          +
        • +
        + + + +
          +
        • +

          clearStickyFaults

          +
          public void clearStickyFaults()
          +
          Clear the sticky faults on the motor controller.
          +
          +
          Specified by:
          +
          clearStickyFaults in class SwerveMotor
          +
          +
        • +
        + + + + + + + +
          +
        • +

          configureIntegratedEncoder

          +
          public void configureIntegratedEncoder​(double positionConversionFactor)
          +
          Configure the integrated encoder for the swerve module. Sets the conversion factors for position and velocity.
          +
          +
          Specified by:
          +
          configureIntegratedEncoder in class SwerveMotor
          +
          Parameters:
          +
          positionConversionFactor - The conversion factor to apply for position.
          +
          +
        • +
        + + + +
          +
        • +

          configurePIDF

          +
          public void configurePIDF​(PIDFConfig config)
          +
          Configure the PIDF values for the closed loop controller. 0 is disabled or off.
          +
          +
          Specified by:
          +
          configurePIDF in class SwerveMotor
          +
          Parameters:
          +
          config - Configuration class holding the PIDF values.
          +
          +
        • +
        + + + +
          +
        • +

          configurePIDWrapping

          +
          public void configurePIDWrapping​(double minInput,
          +                                 double maxInput)
          +
          Configure the PID wrapping for the position closed loop controller.
          +
          +
          Specified by:
          +
          configurePIDWrapping in class SwerveMotor
          +
          Parameters:
          +
          minInput - Minimum PID input.
          +
          maxInput - Maximum PID input.
          +
          +
        • +
        + + + +
          +
        • +

          setMotorBrake

          +
          public void setMotorBrake​(boolean isBrakeMode)
          +
          Set the idle mode.
          +
          +
          Specified by:
          +
          setMotorBrake in class SwerveMotor
          +
          Parameters:
          +
          isBrakeMode - Set the brake mode.
          +
          +
        • +
        + + + +
          +
        • +

          setInverted

          +
          public void setInverted​(boolean inverted)
          +
          Set the motor to be inverted.
          +
          +
          Specified by:
          +
          setInverted in class SwerveMotor
          +
          Parameters:
          +
          inverted - State of inversion.
          +
          +
        • +
        + + + +
          +
        • +

          burnFlash

          +
          public void burnFlash()
          +
          Save the configurations from flash to EEPROM.
          +
          +
          Specified by:
          +
          burnFlash in class SwerveMotor
          +
          +
        • +
        + + + +
          +
        • +

          set

          +
          public void set​(double percentOutput)
          +
          Set the percentage output.
          +
          +
          Specified by:
          +
          set in class SwerveMotor
          +
          Parameters:
          +
          percentOutput - percent out for the motor controller.
          +
          +
        • +
        + + + +
          +
        • +

          setReference

          +
          public void setReference​(double setpoint,
          +                         double feedforward)
          +
          Set the closed loop PID controller reference point.
          +
          +
          Specified by:
          +
          setReference in class SwerveMotor
          +
          Parameters:
          +
          setpoint - Setpoint in MPS or Angle in degrees.
          +
          feedforward - Feedforward in volt-meter-per-second or kV.
          +
          +
        • +
        + + + +
          +
        • +

          getVelocity

          +
          public double getVelocity()
          +
          Get the velocity of the integrated encoder.
          +
          +
          Specified by:
          +
          getVelocity in class SwerveMotor
          +
          Returns:
          +
          velocity
          +
          +
        • +
        + + + +
          +
        • +

          getPosition

          +
          public double getPosition()
          +
          Get the position of the integrated encoder.
          +
          +
          Specified by:
          +
          getPosition in class SwerveMotor
          +
          Returns:
          +
          Position
          +
          +
        • +
        + + + +
          +
        • +

          setPosition

          +
          public void setPosition​(double position)
          +
          Set the integrated encoder position.
          +
          +
          Specified by:
          +
          setPosition in class SwerveMotor
          +
          Parameters:
          +
          position - Integrated encoder position. Should be angle in degrees or meters per second.
          +
          +
        • +
        + + + +
          +
        • +

          setVoltageCompensation

          +
          public void setVoltageCompensation​(double nominalVoltage)
          +
          Set the voltage compensation for the swerve module motor.
          +
          +
          Specified by:
          +
          setVoltageCompensation in class SwerveMotor
          +
          Parameters:
          +
          nominalVoltage - Nominal voltage for operation to output to.
          +
          +
        • +
        + + + +
          +
        • +

          setCurrentLimit

          +
          public void setCurrentLimit​(int currentLimit)
          +
          Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with + voltage compensation. This is useful to protect the motor from current spikes.
          +
          +
          Specified by:
          +
          setCurrentLimit in class SwerveMotor
          +
          Parameters:
          +
          currentLimit - Current limit in AMPS at free speed.
          +
          +
        • +
        + + + +
          +
        • +

          setLoopRampRate

          +
          public void setLoopRampRate​(double rampRate)
          +
          Set the maximum rate the open/closed loop output can change by.
          +
          +
          Specified by:
          +
          setLoopRampRate in class SwerveMotor
          +
          Parameters:
          +
          rampRate - Time in seconds to go from 0 to full throttle.
          +
          +
        • +
        + + + +
          +
        • +

          getMotor

          +
          public Object getMotor()
          +
          Get the motor object from the module.
          +
          +
          Specified by:
          +
          getMotor in class SwerveMotor
          +
          Returns:
          +
          Motor object.
          +
          +
        • +
        + + + +
          +
        • +

          isAttachedAbsoluteEncoder

          +
          public boolean isAttachedAbsoluteEncoder()
          +
          Queries whether the absolute encoder is directly attached to the motor controller.
          +
          +
          Specified by:
          +
          isAttachedAbsoluteEncoder in class SwerveMotor
          +
          Returns:
          +
          connected absolute encoder state.
          +
          +
        • +
        +
      • +
      +
      +
    • +
    +
    +
    +
    + + + + diff --git a/docs/swervelib/motors/TalonSRXSwerve.CTRE_pidIdx.html b/docs/swervelib/motors/TalonSRXSwerve.CTRE_pidIdx.html new file mode 100644 index 0000000..3741af5 --- /dev/null +++ b/docs/swervelib/motors/TalonSRXSwerve.CTRE_pidIdx.html @@ -0,0 +1,450 @@ + + + + + +TalonSRXSwerve.CTRE_pidIdx + + + + + + + + + + + + + + + +
    + +
    + +
    +
    + +

    Enum TalonSRXSwerve.CTRE_pidIdx

    +
    +
    + +
    + +
    +
    + +
    +
    +
      +
    • + +
      + +
      + +
      +
        +
      • + + +

        Constructor Detail

        + + + +
          +
        • +

          CTRE_pidIdx

          +
          private CTRE_pidIdx()
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Detail

        + + + +
          +
        • +

          values

          +
          public static TalonSRXSwerve.CTRE_pidIdx[] values()
          +
          Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
          +for (TalonSRXSwerve.CTRE_pidIdx c : TalonSRXSwerve.CTRE_pidIdx.values())
          +    System.out.println(c);
          +
          +
          +
          Returns:
          +
          an array containing the constants of this enum type, in the order they are declared
          +
          +
        • +
        + + + +
          +
        • +

          valueOf

          +
          public static TalonSRXSwerve.CTRE_pidIdx valueOf​(String name)
          +
          Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.)
          +
          +
          Parameters:
          +
          name - the name of the enum constant to be returned.
          +
          Returns:
          +
          the enum constant with the specified name
          +
          Throws:
          +
          IllegalArgumentException - if this enum type has no constant with the specified name
          +
          NullPointerException - if the argument is null
          +
          +
        • +
        +
      • +
      +
      +
    • +
    +
    +
    +
    + + + + diff --git a/docs/swervelib/motors/TalonSRXSwerve.CTRE_remoteSensor.html b/docs/swervelib/motors/TalonSRXSwerve.CTRE_remoteSensor.html new file mode 100644 index 0000000..34d4bb1 --- /dev/null +++ b/docs/swervelib/motors/TalonSRXSwerve.CTRE_remoteSensor.html @@ -0,0 +1,424 @@ + + + + + +TalonSRXSwerve.CTRE_remoteSensor + + + + + + + + + + + + + + + +
    + +
    + +
    +
    + +

    Enum TalonSRXSwerve.CTRE_remoteSensor

    +
    +
    + +
    + +
    +
    + +
    +
    +
      +
    • + +
      + +
      + +
      +
        +
      • + + +

        Constructor Detail

        + + + +
          +
        • +

          CTRE_remoteSensor

          +
          private CTRE_remoteSensor()
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Detail

        + + + +
          +
        • +

          values

          +
          public static TalonSRXSwerve.CTRE_remoteSensor[] values()
          +
          Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
          +for (TalonSRXSwerve.CTRE_remoteSensor c : TalonSRXSwerve.CTRE_remoteSensor.values())
          +    System.out.println(c);
          +
          +
          +
          Returns:
          +
          an array containing the constants of this enum type, in the order they are declared
          +
          +
        • +
        + + + +
          +
        • +

          valueOf

          +
          public static TalonSRXSwerve.CTRE_remoteSensor valueOf​(String name)
          +
          Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.)
          +
          +
          Parameters:
          +
          name - the name of the enum constant to be returned.
          +
          Returns:
          +
          the enum constant with the specified name
          +
          Throws:
          +
          IllegalArgumentException - if this enum type has no constant with the specified name
          +
          NullPointerException - if the argument is null
          +
          +
        • +
        +
      • +
      +
      +
    • +
    +
    +
    +
    + + + + diff --git a/docs/swervelib/motors/TalonSRXSwerve.CTRE_slotIdx.html b/docs/swervelib/motors/TalonSRXSwerve.CTRE_slotIdx.html new file mode 100644 index 0000000..bd0df16 --- /dev/null +++ b/docs/swervelib/motors/TalonSRXSwerve.CTRE_slotIdx.html @@ -0,0 +1,450 @@ + + + + + +TalonSRXSwerve.CTRE_slotIdx + + + + + + + + + + + + + + + +
    + +
    + +
    +
    + +

    Enum TalonSRXSwerve.CTRE_slotIdx

    +
    +
    + +
    + +
    +
    + +
    +
    +
      +
    • + +
      + +
      + +
      +
        +
      • + + +

        Constructor Detail

        + + + +
          +
        • +

          CTRE_slotIdx

          +
          private CTRE_slotIdx()
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Detail

        + + + +
          +
        • +

          values

          +
          public static TalonSRXSwerve.CTRE_slotIdx[] values()
          +
          Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
          +for (TalonSRXSwerve.CTRE_slotIdx c : TalonSRXSwerve.CTRE_slotIdx.values())
          +    System.out.println(c);
          +
          +
          +
          Returns:
          +
          an array containing the constants of this enum type, in the order they are declared
          +
          +
        • +
        + + + +
          +
        • +

          valueOf

          +
          public static TalonSRXSwerve.CTRE_slotIdx valueOf​(String name)
          +
          Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.)
          +
          +
          Parameters:
          +
          name - the name of the enum constant to be returned.
          +
          Returns:
          +
          the enum constant with the specified name
          +
          Throws:
          +
          IllegalArgumentException - if this enum type has no constant with the specified name
          +
          NullPointerException - if the argument is null
          +
          +
        • +
        +
      • +
      +
      +
    • +
    +
    +
    +
    + + + + diff --git a/docs/swervelib/motors/TalonSRXSwerve.html b/docs/swervelib/motors/TalonSRXSwerve.html new file mode 100644 index 0000000..25896ae --- /dev/null +++ b/docs/swervelib/motors/TalonSRXSwerve.html @@ -0,0 +1,915 @@ + + + + + +TalonSRXSwerve + + + + + + + + + + + + + + + +
    + +
    + +
    +
    + +

    Class TalonSRXSwerve

    +
    +
    + +
    +
      +
    • +
      +
      public class TalonSRXSwerve
      +extends SwerveMotor
      +
      WPI_TalonSRX Swerve Motor.
      +
    • +
    +
    +
    +
      +
    • + +
      + +
      + +
      +
        +
      • + + +

        Field Summary

        + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        Fields 
        Modifier and TypeFieldDescription
        private booleanabsoluteEncoder +
        Whether the absolute encoder is integrated.
        +
        private booleanfactoryDefaultOccurred +
        Factory default already occurred.
        +
        (package private) com.ctre.phoenix.motorcontrol.can.WPI_TalonSRXmotor +
        TalonSRX motor controller.
        +
        private doublepositionConversionFactor +
        The position conversion factor.
        +
        + +
      • +
      +
      + +
      +
        +
      • + + +

        Constructor Summary

        + + + + + + + + + + + + + + +
        Constructors 
        ConstructorDescription
        TalonSRXSwerve​(int id, + boolean isDriveMotor) +
        Construct the TalonSRX swerve motor given the ID.
        +
        TalonSRXSwerve​(com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX motor, + boolean isDriveMotor) +
        Constructor for TalonSRX swerve motor.
        +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Summary

        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        All Methods Instance Methods Concrete Methods 
        Modifier and TypeMethodDescription
        voidburnFlash() +
        Save the configurations from flash to EEPROM.
        +
        voidclearStickyFaults() +
        Clear the sticky faults on the motor controller.
        +
        voidconfigureIntegratedEncoder​(double positionConversionFactor) +
        Configure the integrated encoder for the swerve module.
        +
        voidconfigurePIDF​(PIDFConfig config) +
        Configure the PIDF values for the closed loop controller.
        +
        voidconfigurePIDWrapping​(double minInput, + double maxInput) +
        Configure the PID wrapping for the position closed loop controller.
        +
        voidfactoryDefaults() +
        Configure the factory defaults.
        +
        ObjectgetMotor() +
        Get the motor object from the module.
        +
        doublegetPosition() +
        Get the position of the integrated encoder.
        +
        doublegetVelocity() +
        Get the velocity of the integrated encoder.
        +
        booleanisAttachedAbsoluteEncoder() +
        Queries whether the absolute encoder is directly attached to the motor controller.
        +
        voidset​(double percentOutput) +
        Set the percentage output.
        +
        SwerveMotorsetAbsoluteEncoder​(SwerveAbsoluteEncoder encoder) +
        Set the absolute encoder to be a compatible absolute encoder.
        +
        voidsetCurrentLimit​(int currentLimit) +
        Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with + voltage compensation.
        +
        voidsetInverted​(boolean inverted) +
        Set the motor to be inverted.
        +
        voidsetLoopRampRate​(double rampRate) +
        Set the maximum rate the open/closed loop output can change by.
        +
        voidsetMotorBrake​(boolean isBrakeMode) +
        Set the idle mode.
        +
        voidsetPosition​(double position) +
        Set the integrated encoder position.
        +
        voidsetReference​(double setpoint, + double feedforward) +
        Set the closed loop PID controller reference point.
        +
        voidsetVoltageCompensation​(double nominalVoltage) +
        Set the voltage compensation for the swerve module motor.
        +
        + +
      • +
      +
      +
    • +
    +
    +
    +
      +
    • + +
      +
        +
      • + + +

        Field Detail

        + + + +
          +
        • +

          factoryDefaultOccurred

          +
          private final boolean factoryDefaultOccurred
          +
          Factory default already occurred.
          +
          +
          See Also:
          +
          Constant Field Values
          +
          +
        • +
        + + + +
          +
        • +

          motor

          +
          com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX motor
          +
          TalonSRX motor controller.
          +
        • +
        + + + +
          +
        • +

          absoluteEncoder

          +
          private boolean absoluteEncoder
          +
          Whether the absolute encoder is integrated.
          +
        • +
        + + + +
          +
        • +

          positionConversionFactor

          +
          private double positionConversionFactor
          +
          The position conversion factor.
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Constructor Detail

        + + + +
          +
        • +

          TalonSRXSwerve

          +
          public TalonSRXSwerve​(com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX motor,
          +                      boolean isDriveMotor)
          +
          Constructor for TalonSRX swerve motor.
          +
          +
          Parameters:
          +
          motor - Motor to use.
          +
          isDriveMotor - Whether this motor is a drive motor.
          +
          +
        • +
        + + + +
          +
        • +

          TalonSRXSwerve

          +
          public TalonSRXSwerve​(int id,
          +                      boolean isDriveMotor)
          +
          Construct the TalonSRX swerve motor given the ID.
          +
          +
          Parameters:
          +
          id - ID of the TalonSRX on the canbus.
          +
          isDriveMotor - Whether the motor is a drive or steering motor.
          +
          +
        • +
        +
      • +
      +
      + +
      +
        +
      • + + +

        Method Detail

        + + + +
          +
        • +

          factoryDefaults

          +
          public void factoryDefaults()
          +
          Configure the factory defaults.
          +
          +
          Specified by:
          +
          factoryDefaults in class SwerveMotor
          +
          +
        • +
        + + + +
          +
        • +

          clearStickyFaults

          +
          public void clearStickyFaults()
          +
          Clear the sticky faults on the motor controller.
          +
          +
          Specified by:
          +
          clearStickyFaults in class SwerveMotor
          +
          +
        • +
        + + + + + + + +
          +
        • +

          configureIntegratedEncoder

          +
          public void configureIntegratedEncoder​(double positionConversionFactor)
          +
          Configure the integrated encoder for the swerve module. Sets the conversion factors for position and velocity.
          +
          +
          Specified by:
          +
          configureIntegratedEncoder in class SwerveMotor
          +
          Parameters:
          +
          positionConversionFactor - The conversion factor to apply for position.
          +
          +
        • +
        + + + +
          +
        • +

          configurePIDF

          +
          public void configurePIDF​(PIDFConfig config)
          +
          Configure the PIDF values for the closed loop controller. 0 is disabled or off.
          +
          +
          Specified by:
          +
          configurePIDF in class SwerveMotor
          +
          Parameters:
          +
          config - Configuration class holding the PIDF values.
          +
          +
        • +
        + + + +
          +
        • +

          configurePIDWrapping

          +
          public void configurePIDWrapping​(double minInput,
          +                                 double maxInput)
          +
          Configure the PID wrapping for the position closed loop controller.
          +
          +
          Specified by:
          +
          configurePIDWrapping in class SwerveMotor
          +
          Parameters:
          +
          minInput - Minimum PID input.
          +
          maxInput - Maximum PID input.
          +
          +
        • +
        + + + +
          +
        • +

          setMotorBrake

          +
          public void setMotorBrake​(boolean isBrakeMode)
          +
          Set the idle mode.
          +
          +
          Specified by:
          +
          setMotorBrake in class SwerveMotor
          +
          Parameters:
          +
          isBrakeMode - Set the brake mode.
          +
          +
        • +
        + + + +
          +
        • +

          setInverted

          +
          public void setInverted​(boolean inverted)
          +
          Set the motor to be inverted.
          +
          +
          Specified by:
          +
          setInverted in class SwerveMotor
          +
          Parameters:
          +
          inverted - State of inversion.
          +
          +
        • +
        + + + +
          +
        • +

          burnFlash

          +
          public void burnFlash()
          +
          Save the configurations from flash to EEPROM.
          +
          +
          Specified by:
          +
          burnFlash in class SwerveMotor
          +
          +
        • +
        + + + +
          +
        • +

          set

          +
          public void set​(double percentOutput)
          +
          Set the percentage output.
          +
          +
          Specified by:
          +
          set in class SwerveMotor
          +
          Parameters:
          +
          percentOutput - percent out for the motor controller.
          +
          +
        • +
        + + + +
          +
        • +

          setReference

          +
          public void setReference​(double setpoint,
          +                         double feedforward)
          +
          Set the closed loop PID controller reference point.
          +
          +
          Specified by:
          +
          setReference in class SwerveMotor
          +
          Parameters:
          +
          setpoint - Setpoint in MPS or Angle in degrees.
          +
          feedforward - Feedforward in volt-meter-per-second or kV.
          +
          +
        • +
        + + + +
          +
        • +

          getVelocity

          +
          public double getVelocity()
          +
          Get the velocity of the integrated encoder.
          +
          +
          Specified by:
          +
          getVelocity in class SwerveMotor
          +
          Returns:
          +
          velocity
          +
          +
        • +
        + + + +
          +
        • +

          getPosition

          +
          public double getPosition()
          +
          Get the position of the integrated encoder.
          +
          +
          Specified by:
          +
          getPosition in class SwerveMotor
          +
          Returns:
          +
          Position
          +
          +
        • +
        + + + +
          +
        • +

          setPosition

          +
          public void setPosition​(double position)
          +
          Set the integrated encoder position.
          +
          +
          Specified by:
          +
          setPosition in class SwerveMotor
          +
          Parameters:
          +
          position - Integrated encoder position. Should be angle in degrees or meters per second.
          +
          +
        • +
        + + + +
          +
        • +

          setVoltageCompensation

          +
          public void setVoltageCompensation​(double nominalVoltage)
          +
          Set the voltage compensation for the swerve module motor.
          +
          +
          Specified by:
          +
          setVoltageCompensation in class SwerveMotor
          +
          Parameters:
          +
          nominalVoltage - Nominal voltage for operation to output to.
          +
          +
        • +
        + + + +
          +
        • +

          setCurrentLimit

          +
          public void setCurrentLimit​(int currentLimit)
          +
          Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with + voltage compensation. This is useful to protect the motor from current spikes.
          +
          +
          Specified by:
          +
          setCurrentLimit in class SwerveMotor
          +
          Parameters:
          +
          currentLimit - Current limit in AMPS at free speed.
          +
          +
        • +
        + + + +
          +
        • +

          setLoopRampRate

          +
          public void setLoopRampRate​(double rampRate)
          +
          Set the maximum rate the open/closed loop output can change by.
          +
          +
          Specified by:
          +
          setLoopRampRate in class SwerveMotor
          +
          Parameters:
          +
          rampRate - Time in seconds to go from 0 to full throttle.
          +
          +
        • +
        + + + +
          +
        • +

          getMotor

          +
          public Object getMotor()
          +
          Get the motor object from the module.
          +
          +
          Specified by:
          +
          getMotor in class SwerveMotor
          +
          Returns:
          +
          Motor object.
          +
          +
        • +
        + + + +
          +
        • +

          isAttachedAbsoluteEncoder

          +
          public boolean isAttachedAbsoluteEncoder()
          +
          Queries whether the absolute encoder is directly attached to the motor controller.
          +
          +
          Specified by:
          +
          isAttachedAbsoluteEncoder in class SwerveMotor
          +
          Returns:
          +
          connected absolute encoder state.
          +
          +
        • +
        +
      • +
      +
      +
    • +
    +
    +
    +
    + + + + diff --git a/docs/swervelib/motors/package-summary.html b/docs/swervelib/motors/package-summary.html index ad76058..73832c2 100644 --- a/docs/swervelib/motors/package-summary.html +++ b/docs/swervelib/motors/package-summary.html @@ -2,7 +2,7 @@ - + swervelib.motors @@ -118,6 +118,18 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Swerve motor abstraction which defines a standard interface for motors within a swerve module.
    + +TalonFXSwerve + +
    TalonFX Swerve Motor.
    + + + +TalonSRXSwerve + +
    WPI_TalonSRX Swerve Motor.
    + +
  • @@ -135,6 +147,24 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    REV Slots for PID configuration.
    + +TalonSRXSwerve.CTRE_pidIdx + +
    The Talon PID to use onboard.
    + + + +TalonSRXSwerve.CTRE_remoteSensor + +
    The remote sensor.
    + + + +TalonSRXSwerve.CTRE_slotIdx + +
    The Talon SRX Slot profile used to configure the motor to use for the PID.
    + + diff --git a/docs/swervelib/motors/package-tree.html b/docs/swervelib/motors/package-tree.html index 0da2c29..3b835d0 100644 --- a/docs/swervelib/motors/package-tree.html +++ b/docs/swervelib/motors/package-tree.html @@ -2,7 +2,7 @@ - + swervelib.motors Class Hierarchy @@ -109,6 +109,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  • swervelib.motors.SwerveMotor
  • @@ -123,6 +125,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  • java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
  • diff --git a/docs/swervelib/package-summary.html b/docs/swervelib/package-summary.html index dc5bd2b..dadb015 100644 --- a/docs/swervelib/package-summary.html +++ b/docs/swervelib/package-summary.html @@ -2,7 +2,7 @@ - + swervelib diff --git a/docs/swervelib/package-tree.html b/docs/swervelib/package-tree.html index f07486f..eae96fc 100644 --- a/docs/swervelib/package-tree.html +++ b/docs/swervelib/package-tree.html @@ -2,7 +2,7 @@ - + swervelib Class Hierarchy diff --git a/docs/swervelib/parser/PIDFConfig.html b/docs/swervelib/parser/PIDFConfig.html index 77b07b5..46c76c0 100644 --- a/docs/swervelib/parser/PIDFConfig.html +++ b/docs/swervelib/parser/PIDFConfig.html @@ -2,7 +2,7 @@ - + PIDFConfig diff --git a/docs/swervelib/parser/SwerveControllerConfiguration.html b/docs/swervelib/parser/SwerveControllerConfiguration.html index d863944..2bcdbcc 100644 --- a/docs/swervelib/parser/SwerveControllerConfiguration.html +++ b/docs/swervelib/parser/SwerveControllerConfiguration.html @@ -2,7 +2,7 @@ - + SwerveControllerConfiguration diff --git a/docs/swervelib/parser/SwerveDriveConfiguration.html b/docs/swervelib/parser/SwerveDriveConfiguration.html index 00f7541..5ed6280 100644 --- a/docs/swervelib/parser/SwerveDriveConfiguration.html +++ b/docs/swervelib/parser/SwerveDriveConfiguration.html @@ -2,7 +2,7 @@ - + SwerveDriveConfiguration diff --git a/docs/swervelib/parser/SwerveModuleConfiguration.html b/docs/swervelib/parser/SwerveModuleConfiguration.html index 71163af..4a1d46c 100644 --- a/docs/swervelib/parser/SwerveModuleConfiguration.html +++ b/docs/swervelib/parser/SwerveModuleConfiguration.html @@ -2,7 +2,7 @@ - + SwerveModuleConfiguration diff --git a/docs/swervelib/parser/SwerveModulePhysicalCharacteristics.html b/docs/swervelib/parser/SwerveModulePhysicalCharacteristics.html index f3889d7..83ee91c 100644 --- a/docs/swervelib/parser/SwerveModulePhysicalCharacteristics.html +++ b/docs/swervelib/parser/SwerveModulePhysicalCharacteristics.html @@ -2,7 +2,7 @@ - + SwerveModulePhysicalCharacteristics diff --git a/docs/swervelib/parser/SwerveParser.html b/docs/swervelib/parser/SwerveParser.html index 5c399a7..47b585e 100644 --- a/docs/swervelib/parser/SwerveParser.html +++ b/docs/swervelib/parser/SwerveParser.html @@ -2,7 +2,7 @@ - + SwerveParser diff --git a/docs/swervelib/parser/deserializer/PIDFRange.html b/docs/swervelib/parser/deserializer/PIDFRange.html index 29a6542..2d86251 100644 --- a/docs/swervelib/parser/deserializer/PIDFRange.html +++ b/docs/swervelib/parser/deserializer/PIDFRange.html @@ -2,7 +2,7 @@ - + PIDFRange diff --git a/docs/swervelib/parser/deserializer/package-summary.html b/docs/swervelib/parser/deserializer/package-summary.html index c511a1d..eb6ba23 100644 --- a/docs/swervelib/parser/deserializer/package-summary.html +++ b/docs/swervelib/parser/deserializer/package-summary.html @@ -2,7 +2,7 @@ - + swervelib.parser.deserializer diff --git a/docs/swervelib/parser/deserializer/package-tree.html b/docs/swervelib/parser/deserializer/package-tree.html index 30e5932..c218069 100644 --- a/docs/swervelib/parser/deserializer/package-tree.html +++ b/docs/swervelib/parser/deserializer/package-tree.html @@ -2,7 +2,7 @@ - + swervelib.parser.deserializer Class Hierarchy diff --git a/docs/swervelib/parser/json/ControllerPropertiesJson.html b/docs/swervelib/parser/json/ControllerPropertiesJson.html index a05900e..37911ec 100644 --- a/docs/swervelib/parser/json/ControllerPropertiesJson.html +++ b/docs/swervelib/parser/json/ControllerPropertiesJson.html @@ -2,7 +2,7 @@ - + ControllerPropertiesJson diff --git a/docs/swervelib/parser/json/DeviceJson.html b/docs/swervelib/parser/json/DeviceJson.html index 6d533a1..840231f 100644 --- a/docs/swervelib/parser/json/DeviceJson.html +++ b/docs/swervelib/parser/json/DeviceJson.html @@ -2,7 +2,7 @@ - + DeviceJson diff --git a/docs/swervelib/parser/json/ModuleJson.html b/docs/swervelib/parser/json/ModuleJson.html index 688e56d..af4b80c 100644 --- a/docs/swervelib/parser/json/ModuleJson.html +++ b/docs/swervelib/parser/json/ModuleJson.html @@ -2,7 +2,7 @@ - + ModuleJson diff --git a/docs/swervelib/parser/json/MotorConfigDouble.html b/docs/swervelib/parser/json/MotorConfigDouble.html index 40421dc..80f6370 100644 --- a/docs/swervelib/parser/json/MotorConfigDouble.html +++ b/docs/swervelib/parser/json/MotorConfigDouble.html @@ -2,7 +2,7 @@ - + MotorConfigDouble diff --git a/docs/swervelib/parser/json/MotorConfigInt.html b/docs/swervelib/parser/json/MotorConfigInt.html index 5875228..4280560 100644 --- a/docs/swervelib/parser/json/MotorConfigInt.html +++ b/docs/swervelib/parser/json/MotorConfigInt.html @@ -2,7 +2,7 @@ - + MotorConfigInt diff --git a/docs/swervelib/parser/json/PIDFPropertiesJson.html b/docs/swervelib/parser/json/PIDFPropertiesJson.html index 48787db..265f590 100644 --- a/docs/swervelib/parser/json/PIDFPropertiesJson.html +++ b/docs/swervelib/parser/json/PIDFPropertiesJson.html @@ -2,7 +2,7 @@ - + PIDFPropertiesJson diff --git a/docs/swervelib/parser/json/PhysicalPropertiesJson.html b/docs/swervelib/parser/json/PhysicalPropertiesJson.html index 6763a6e..741e9e2 100644 --- a/docs/swervelib/parser/json/PhysicalPropertiesJson.html +++ b/docs/swervelib/parser/json/PhysicalPropertiesJson.html @@ -2,7 +2,7 @@ - + PhysicalPropertiesJson diff --git a/docs/swervelib/parser/json/SwerveDriveJson.html b/docs/swervelib/parser/json/SwerveDriveJson.html index c2f631a..83a87de 100644 --- a/docs/swervelib/parser/json/SwerveDriveJson.html +++ b/docs/swervelib/parser/json/SwerveDriveJson.html @@ -2,7 +2,7 @@ - + SwerveDriveJson diff --git a/docs/swervelib/parser/json/modules/BoolMotorJson.html b/docs/swervelib/parser/json/modules/BoolMotorJson.html index 9792d6e..0c647b7 100644 --- a/docs/swervelib/parser/json/modules/BoolMotorJson.html +++ b/docs/swervelib/parser/json/modules/BoolMotorJson.html @@ -2,7 +2,7 @@ - + BoolMotorJson diff --git a/docs/swervelib/parser/json/modules/LocationJson.html b/docs/swervelib/parser/json/modules/LocationJson.html index 13eafdc..b8acbea 100644 --- a/docs/swervelib/parser/json/modules/LocationJson.html +++ b/docs/swervelib/parser/json/modules/LocationJson.html @@ -2,7 +2,7 @@ - + LocationJson diff --git a/docs/swervelib/parser/json/modules/package-summary.html b/docs/swervelib/parser/json/modules/package-summary.html index 50da16a..9c9702d 100644 --- a/docs/swervelib/parser/json/modules/package-summary.html +++ b/docs/swervelib/parser/json/modules/package-summary.html @@ -2,7 +2,7 @@ - + swervelib.parser.json.modules diff --git a/docs/swervelib/parser/json/modules/package-tree.html b/docs/swervelib/parser/json/modules/package-tree.html index afbfcc9..2cedf92 100644 --- a/docs/swervelib/parser/json/modules/package-tree.html +++ b/docs/swervelib/parser/json/modules/package-tree.html @@ -2,7 +2,7 @@ - + swervelib.parser.json.modules Class Hierarchy diff --git a/docs/swervelib/parser/json/package-summary.html b/docs/swervelib/parser/json/package-summary.html index de8c4d9..d0f1498 100644 --- a/docs/swervelib/parser/json/package-summary.html +++ b/docs/swervelib/parser/json/package-summary.html @@ -2,7 +2,7 @@ - + swervelib.parser.json diff --git a/docs/swervelib/parser/json/package-tree.html b/docs/swervelib/parser/json/package-tree.html index 637214f..50806f9 100644 --- a/docs/swervelib/parser/json/package-tree.html +++ b/docs/swervelib/parser/json/package-tree.html @@ -2,7 +2,7 @@ - + swervelib.parser.json Class Hierarchy diff --git a/docs/swervelib/parser/package-summary.html b/docs/swervelib/parser/package-summary.html index 2340ec1..53312fe 100644 --- a/docs/swervelib/parser/package-summary.html +++ b/docs/swervelib/parser/package-summary.html @@ -2,7 +2,7 @@ - + swervelib.parser diff --git a/docs/swervelib/parser/package-tree.html b/docs/swervelib/parser/package-tree.html index b383095..ef2d9b4 100644 --- a/docs/swervelib/parser/package-tree.html +++ b/docs/swervelib/parser/package-tree.html @@ -2,7 +2,7 @@ - + swervelib.parser Class Hierarchy diff --git a/docs/type-search-index.js b/docs/type-search-index.js index 6b2ef30..560a5d7 100644 --- a/docs/type-search-index.js +++ b/docs/type-search-index.js @@ -1 +1 @@ -typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"swervelib.parser.json.modules","l":"BoolMotorJson"},{"p":"swervelib.encoders","l":"CANCoderSwerve"},{"p":"swervelib.parser.json","l":"ControllerPropertiesJson"},{"p":"swervelib.parser.json","l":"DeviceJson"},{"p":"swervelib.parser.json.modules","l":"LocationJson"},{"p":"swervelib.parser.json","l":"ModuleJson"},{"p":"swervelib.parser.json","l":"MotorConfigDouble"},{"p":"swervelib.parser.json","l":"MotorConfigInt"},{"p":"swervelib.imu","l":"NavXSwerve"},{"p":"swervelib.parser.json","l":"PhysicalPropertiesJson"},{"p":"swervelib.parser","l":"PIDFConfig"},{"p":"swervelib.parser.json","l":"PIDFPropertiesJson"},{"p":"swervelib.parser.deserializer","l":"PIDFRange"},{"p":"swervelib.imu","l":"Pigeon2Swerve"},{"p":"swervelib.imu","l":"PigeonSwerve"},{"p":"swervelib.motors","l":"SparkMaxSwerve.SparkMAX_slotIdx"},{"p":"swervelib.encoders","l":"SparkMaxEncoderSwerve"},{"p":"swervelib.motors","l":"SparkMaxSwerve"},{"p":"swervelib.encoders","l":"SwerveAbsoluteEncoder"},{"p":"swervelib","l":"SwerveController"},{"p":"swervelib.parser","l":"SwerveControllerConfiguration"},{"p":"swervelib","l":"SwerveDrive"},{"p":"swervelib.parser","l":"SwerveDriveConfiguration"},{"p":"swervelib.parser.json","l":"SwerveDriveJson"},{"p":"swervelib.imu","l":"SwerveIMU"},{"p":"swervelib.math","l":"SwerveKinematics2"},{"p":"swervelib.math","l":"SwerveMath"},{"p":"swervelib","l":"SwerveModule"},{"p":"swervelib.parser","l":"SwerveModuleConfiguration"},{"p":"swervelib.parser","l":"SwerveModulePhysicalCharacteristics"},{"p":"swervelib.math","l":"SwerveModuleState2"},{"p":"swervelib.motors","l":"SwerveMotor"},{"p":"swervelib.parser","l":"SwerveParser"}] \ No newline at end of file +typeSearchIndex = [{"l":"All Classes","url":"allclasses-index.html"},{"p":"swervelib.parser.json.modules","l":"BoolMotorJson"},{"p":"swervelib.encoders","l":"CANCoderSwerve"},{"p":"swervelib.parser.json","l":"ControllerPropertiesJson"},{"p":"swervelib.motors","l":"TalonSRXSwerve.CTRE_pidIdx"},{"p":"swervelib.motors","l":"TalonSRXSwerve.CTRE_remoteSensor"},{"p":"swervelib.motors","l":"TalonSRXSwerve.CTRE_slotIdx"},{"p":"swervelib.parser.json","l":"DeviceJson"},{"p":"swervelib.parser.json.modules","l":"LocationJson"},{"p":"swervelib.parser.json","l":"ModuleJson"},{"p":"swervelib.parser.json","l":"MotorConfigDouble"},{"p":"swervelib.parser.json","l":"MotorConfigInt"},{"p":"swervelib.imu","l":"NavXSwerve"},{"p":"swervelib.parser.json","l":"PhysicalPropertiesJson"},{"p":"swervelib.parser","l":"PIDFConfig"},{"p":"swervelib.parser.json","l":"PIDFPropertiesJson"},{"p":"swervelib.parser.deserializer","l":"PIDFRange"},{"p":"swervelib.imu","l":"Pigeon2Swerve"},{"p":"swervelib.imu","l":"PigeonSwerve"},{"p":"swervelib.motors","l":"SparkMaxSwerve.SparkMAX_slotIdx"},{"p":"swervelib.encoders","l":"SparkMaxEncoderSwerve"},{"p":"swervelib.motors","l":"SparkMaxSwerve"},{"p":"swervelib.encoders","l":"SwerveAbsoluteEncoder"},{"p":"swervelib","l":"SwerveController"},{"p":"swervelib.parser","l":"SwerveControllerConfiguration"},{"p":"swervelib","l":"SwerveDrive"},{"p":"swervelib.parser","l":"SwerveDriveConfiguration"},{"p":"swervelib.parser.json","l":"SwerveDriveJson"},{"p":"swervelib.imu","l":"SwerveIMU"},{"p":"swervelib.math","l":"SwerveKinematics2"},{"p":"swervelib.math","l":"SwerveMath"},{"p":"swervelib","l":"SwerveModule"},{"p":"swervelib.parser","l":"SwerveModuleConfiguration"},{"p":"swervelib.parser","l":"SwerveModulePhysicalCharacteristics"},{"p":"swervelib.math","l":"SwerveModuleState2"},{"p":"swervelib.motors","l":"SwerveMotor"},{"p":"swervelib.parser","l":"SwerveParser"},{"p":"swervelib.motors","l":"TalonFXSwerve"},{"p":"swervelib.motors","l":"TalonSRXSwerve"}] \ No newline at end of file diff --git a/swervelib/SwerveController.java b/swervelib/SwerveController.java index 95af09b..9be36f6 100644 --- a/swervelib/SwerveController.java +++ b/swervelib/SwerveController.java @@ -1,9 +1,9 @@ -package frc.robot.subsystems.swervedrive2.swervelib; +package swervelib; import edu.wpi.first.math.controller.PIDController; import edu.wpi.first.math.geometry.Translation2d; import edu.wpi.first.math.kinematics.ChassisSpeeds; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveControllerConfiguration; +import swervelib.parser.SwerveControllerConfiguration; /** * Controller class used to convert raw inputs into robot speeds. diff --git a/swervelib/SwerveDrive.java b/swervelib/SwerveDrive.java index 05ac76b..80ed1b8 100644 --- a/swervelib/SwerveDrive.java +++ b/swervelib/SwerveDrive.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib; +package swervelib; import edu.wpi.first.math.VecBuilder; import edu.wpi.first.math.controller.SimpleMotorFeedforward; @@ -13,13 +13,13 @@ import edu.wpi.first.wpilibj.Timer; import edu.wpi.first.wpilibj.smartdashboard.Field2d; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.Robot; -import frc.robot.subsystems.swervedrive2.swervelib.imu.SwerveIMU; -import frc.robot.subsystems.swervedrive2.swervelib.math.SwerveKinematics2; -import frc.robot.subsystems.swervedrive2.swervelib.math.SwerveModuleState2; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveControllerConfiguration; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveDriveConfiguration; import java.util.ArrayList; import java.util.List; +import swervelib.imu.SwerveIMU; +import swervelib.math.SwerveKinematics2; +import swervelib.math.SwerveModuleState2; +import swervelib.parser.SwerveControllerConfiguration; +import swervelib.parser.SwerveDriveConfiguration; /** * Swerve Drive class representing and controlling the swerve drive. diff --git a/swervelib/SwerveModule.java b/swervelib/SwerveModule.java index d08a4c0..2f55ca4 100644 --- a/swervelib/SwerveModule.java +++ b/swervelib/SwerveModule.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib; +package swervelib; import edu.wpi.first.math.controller.SimpleMotorFeedforward; import edu.wpi.first.math.geometry.Rotation2d; @@ -7,10 +7,10 @@ import edu.wpi.first.math.kinematics.SwerveModuleState; import edu.wpi.first.wpilibj.Timer; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc.robot.Robot; -import frc.robot.subsystems.swervedrive2.swervelib.encoders.SwerveAbsoluteEncoder; -import frc.robot.subsystems.swervedrive2.swervelib.math.SwerveModuleState2; -import frc.robot.subsystems.swervedrive2.swervelib.motors.SwerveMotor; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveModuleConfiguration; +import swervelib.encoders.SwerveAbsoluteEncoder; +import swervelib.math.SwerveModuleState2; +import swervelib.motors.SwerveMotor; +import swervelib.parser.SwerveModuleConfiguration; /** * The Swerve Module class which represents and controls Swerve Modules for the swerve drive. diff --git a/swervelib/encoders/CANCoderSwerve.java b/swervelib/encoders/CANCoderSwerve.java index 1e5e0f5..d0290f5 100644 --- a/swervelib/encoders/CANCoderSwerve.java +++ b/swervelib/encoders/CANCoderSwerve.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.encoders; +package swervelib.encoders; import com.ctre.phoenix.sensors.AbsoluteSensorRange; import com.ctre.phoenix.sensors.CANCoderConfiguration; diff --git a/swervelib/encoders/SparkMaxEncoderSwerve.java b/swervelib/encoders/SparkMaxEncoderSwerve.java index 5e61227..cc2aa24 100644 --- a/swervelib/encoders/SparkMaxEncoderSwerve.java +++ b/swervelib/encoders/SparkMaxEncoderSwerve.java @@ -1,9 +1,9 @@ -package frc.robot.subsystems.swervedrive2.swervelib.encoders; +package swervelib.encoders; import com.revrobotics.AbsoluteEncoder; import com.revrobotics.CANSparkMax; import com.revrobotics.SparkMaxAbsoluteEncoder.Type; -import frc.robot.subsystems.swervedrive2.swervelib.motors.SwerveMotor; +import swervelib.motors.SwerveMotor; /** * SparkMax absolute encoder, attached through the data port. diff --git a/swervelib/encoders/SwerveAbsoluteEncoder.java b/swervelib/encoders/SwerveAbsoluteEncoder.java index f63086c..7091782 100644 --- a/swervelib/encoders/SwerveAbsoluteEncoder.java +++ b/swervelib/encoders/SwerveAbsoluteEncoder.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.encoders; +package swervelib.encoders; /** * Swerve abstraction class to define a standard interface with absolute encoders for swerve modules.. diff --git a/swervelib/imu/NavXSwerve.java b/swervelib/imu/NavXSwerve.java index 0f4cbeb..0a6c101 100644 --- a/swervelib/imu/NavXSwerve.java +++ b/swervelib/imu/NavXSwerve.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.imu; +package swervelib.imu; import com.kauailabs.navx.frc.AHRS; import edu.wpi.first.wpilibj.DriverStation; diff --git a/swervelib/imu/Pigeon2Swerve.java b/swervelib/imu/Pigeon2Swerve.java index f811d33..c2dd63f 100644 --- a/swervelib/imu/Pigeon2Swerve.java +++ b/swervelib/imu/Pigeon2Swerve.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.imu; +package swervelib.imu; import com.ctre.phoenix.sensors.Pigeon2Configuration; import com.ctre.phoenix.sensors.WPI_Pigeon2; diff --git a/swervelib/imu/PigeonSwerve.java b/swervelib/imu/PigeonSwerve.java index e94a62f..4f1330b 100644 --- a/swervelib/imu/PigeonSwerve.java +++ b/swervelib/imu/PigeonSwerve.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.imu; +package swervelib.imu; import com.ctre.phoenix.sensors.WPI_PigeonIMU; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; diff --git a/swervelib/imu/SwerveIMU.java b/swervelib/imu/SwerveIMU.java index a6ad31e..f46c545 100644 --- a/swervelib/imu/SwerveIMU.java +++ b/swervelib/imu/SwerveIMU.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.imu; +package swervelib.imu; /** * Swerve IMU abstraction to define a standard interface with a swerve drive. diff --git a/swervelib/math/SwerveKinematics2.java b/swervelib/math/SwerveKinematics2.java index 533ef41..182e8e2 100644 --- a/swervelib/math/SwerveKinematics2.java +++ b/swervelib/math/SwerveKinematics2.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.math; +package swervelib.math; import edu.wpi.first.math.MathSharedStore; import edu.wpi.first.math.MathUsageId; diff --git a/swervelib/math/SwerveMath.java b/swervelib/math/SwerveMath.java index 66e8737..127d699 100644 --- a/swervelib/math/SwerveMath.java +++ b/swervelib/math/SwerveMath.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.math; +package swervelib.math; import edu.wpi.first.math.geometry.Pose2d; import edu.wpi.first.math.geometry.Rotation2d; @@ -6,10 +6,10 @@ import edu.wpi.first.math.geometry.Translation2d; import edu.wpi.first.math.geometry.Translation3d; import edu.wpi.first.math.kinematics.ChassisSpeeds; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; -import frc.robot.subsystems.swervedrive2.swervelib.SwerveController; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveDriveConfiguration; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveModuleConfiguration; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveParser; +import swervelib.SwerveController; +import swervelib.parser.SwerveDriveConfiguration; +import swervelib.parser.SwerveModuleConfiguration; +import swervelib.parser.SwerveParser; /** * Mathematical functions which pertain to swerve drive. diff --git a/swervelib/math/SwerveModuleState2.java b/swervelib/math/SwerveModuleState2.java index 143af0e..ecb6a4d 100644 --- a/swervelib/math/SwerveModuleState2.java +++ b/swervelib/math/SwerveModuleState2.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.math; +package swervelib.math; import edu.wpi.first.math.geometry.Rotation2d; import edu.wpi.first.math.kinematics.SwerveModuleState; diff --git a/swervelib/motors/SparkMaxSwerve.java b/swervelib/motors/SparkMaxSwerve.java index b78e9de..93d0b2a 100644 --- a/swervelib/motors/SparkMaxSwerve.java +++ b/swervelib/motors/SparkMaxSwerve.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.motors; +package swervelib.motors; import com.revrobotics.AbsoluteEncoder; import com.revrobotics.CANSparkMax; @@ -8,8 +8,8 @@ import com.revrobotics.CANSparkMaxLowLevel.MotorType; import com.revrobotics.CANSparkMaxLowLevel.PeriodicFrame; import com.revrobotics.RelativeEncoder; import com.revrobotics.SparkMaxPIDController; -import frc.robot.subsystems.swervedrive2.swervelib.encoders.SwerveAbsoluteEncoder; -import frc.robot.subsystems.swervedrive2.swervelib.parser.PIDFConfig; +import swervelib.encoders.SwerveAbsoluteEncoder; +import swervelib.parser.PIDFConfig; /** * An implementation of {@link CANSparkMax} as a {@link SwerveMotor}. diff --git a/swervelib/motors/SwerveMotor.java b/swervelib/motors/SwerveMotor.java index fd014f5..71794df 100644 --- a/swervelib/motors/SwerveMotor.java +++ b/swervelib/motors/SwerveMotor.java @@ -1,7 +1,7 @@ -package frc.robot.subsystems.swervedrive2.swervelib.motors; +package swervelib.motors; -import frc.robot.subsystems.swervedrive2.swervelib.encoders.SwerveAbsoluteEncoder; -import frc.robot.subsystems.swervedrive2.swervelib.parser.PIDFConfig; +import swervelib.encoders.SwerveAbsoluteEncoder; +import swervelib.parser.PIDFConfig; /** * Swerve motor abstraction which defines a standard interface for motors within a swerve module. diff --git a/swervelib/motors/TalonFXSwerve.java b/swervelib/motors/TalonFXSwerve.java new file mode 100644 index 0000000..1baaf32 --- /dev/null +++ b/swervelib/motors/TalonFXSwerve.java @@ -0,0 +1,312 @@ +package swervelib.motors; + +import com.ctre.phoenix.motorcontrol.ControlMode; +import com.ctre.phoenix.motorcontrol.DemandType; +import com.ctre.phoenix.motorcontrol.NeutralMode; +import com.ctre.phoenix.motorcontrol.RemoteFeedbackDevice; +import com.ctre.phoenix.motorcontrol.SupplyCurrentLimitConfiguration; +import com.ctre.phoenix.motorcontrol.can.WPI_TalonFX; +import com.ctre.phoenix.sensors.CANCoder; +import swervelib.encoders.SwerveAbsoluteEncoder; +import swervelib.motors.TalonSRXSwerve.CTRE_remoteSensor; +import swervelib.motors.TalonSRXSwerve.CTRE_slotIdx; +import swervelib.parser.PIDFConfig; + +/** + * {@link com.ctre.phoenix.motorcontrol.can.TalonFX} Swerve Motor. + */ +public class TalonFXSwerve extends SwerveMotor +{ + + /** + * TalonFX motor controller. + */ + WPI_TalonFX motor; + /** + * Factory default already occurred. + */ + private final boolean factoryDefaultOccurred = false; + /** + * Whether the absolute encoder is integrated. + */ + private boolean absoluteEncoder = false; + /** + * The position conversion factor. + */ + private double positionConversionFactor = 1; + + /** + * Constructor for TalonFX swerve motor. + * + * @param motor Motor to use. + * @param isDriveMotor Whether this motor is a drive motor. + */ + public TalonFXSwerve(WPI_TalonFX motor, boolean isDriveMotor) + { + this.isDriveMotor = isDriveMotor; + this.motor = motor; + + factoryDefaults(); + clearStickyFaults(); + } + + /** + * Construct the TalonFX swerve motor given the ID and CANBus. + * + * @param id ID of the TalonFX on the CANBus. + * @param canbus CANBus on which the TalonFX is on. + * @param isDriveMotor Whether the motor is a drive or steering motor. + */ + public TalonFXSwerve(int id, String canbus, boolean isDriveMotor) + { + this(new WPI_TalonFX(id, canbus), isDriveMotor); + } + + /** + * Construct the TalonFX swerve motor given the ID. + * + * @param id ID of the TalonFX on the canbus. + * @param isDriveMotor Whether the motor is a drive or steering motor. + */ + public TalonFXSwerve(int id, boolean isDriveMotor) + { + this(new WPI_TalonFX(id), isDriveMotor); + } + + /** + * Configure the factory defaults. + */ + @Override + public void factoryDefaults() + { + if (!factoryDefaultOccurred) + { + motor.configFactoryDefault(); + } + } + + /** + * Clear the sticky faults on the motor controller. + */ + @Override + public void clearStickyFaults() + { + motor.clearStickyFaults(); + } + + + /** + * Set the absolute encoder to be a compatible absolute encoder. + * + * @param encoder The encoder to use. + */ + @Override + public SwerveMotor setAbsoluteEncoder(SwerveAbsoluteEncoder encoder) + { + if (encoder.getAbsoluteEncoder() instanceof CANCoder) + { + motor.configSelectedFeedbackSensor(RemoteFeedbackDevice.RemoteSensor0); + motor.configRemoteFeedbackFilter((CANCoder) encoder.getAbsoluteEncoder(), + CTRE_remoteSensor.REMOTE_SENSOR_0.ordinal()); + absoluteEncoder = true; + } + return this; + } + + /** + * Configure the integrated encoder for the swerve module. Sets the conversion factors for position and velocity. + * + * @param positionConversionFactor The conversion factor to apply for position. + */ + @Override + public void configureIntegratedEncoder(double positionConversionFactor) + { + this.positionConversionFactor = positionConversionFactor; + motor.configSelectedFeedbackCoefficient(positionConversionFactor); + } + + /** + * Configure the PIDF values for the closed loop controller. 0 is disabled or off. + * + * @param config Configuration class holding the PIDF values. + */ + @Override + public void configurePIDF(PIDFConfig config) + { + int slotIdx = isDriveMotor ? CTRE_slotIdx.Velocity.ordinal() : CTRE_slotIdx.Turning.ordinal(); + motor.config_kP(slotIdx, config.p); + motor.config_kI(slotIdx, config.i); + motor.config_kD(slotIdx, config.d); + motor.config_kF(slotIdx, config.f); + motor.config_IntegralZone(slotIdx, config.iz); + motor.configClosedLoopPeakOutput(slotIdx, config.output.max); + } + + /** + * Configure the PID wrapping for the position closed loop controller. + * + * @param minInput Minimum PID input. + * @param maxInput Maximum PID input. + */ + @Override + public void configurePIDWrapping(double minInput, double maxInput) + { + motor.configFeedbackNotContinuous(true, 100); + // Do nothing + } + + /** + * Set the idle mode. + * + * @param isBrakeMode Set the brake mode. + */ + @Override + public void setMotorBrake(boolean isBrakeMode) + { + motor.setNeutralMode(isBrakeMode ? NeutralMode.Brake : NeutralMode.Coast); + } + + /** + * Set the motor to be inverted. + * + * @param inverted State of inversion. + */ + @Override + public void setInverted(boolean inverted) + { + motor.setInverted(inverted); + } + + /** + * Save the configurations from flash to EEPROM. + */ + @Override + public void burnFlash() + { + // Do nothing + } + + /** + * Set the percentage output. + * + * @param percentOutput percent out for the motor controller. + */ + @Override + public void set(double percentOutput) + { + motor.set(percentOutput); + } + + /** + * Set the closed loop PID controller reference point. + * + * @param setpoint Setpoint in MPS or Angle in degrees. + * @param feedforward Feedforward in volt-meter-per-second or kV. + */ + @Override + public void setReference(double setpoint, double feedforward) + { + motor.set(isDriveMotor ? ControlMode.Velocity : ControlMode.Position, isDriveMotor ? setpoint * .1 : setpoint, + DemandType.ArbitraryFeedForward, + feedforward); + } + + /** + * Get the velocity of the integrated encoder. + * + * @return velocity + */ + @Override + public double getVelocity() + { + return motor.getSelectedSensorVelocity() * (100 * positionConversionFactor); + } + + /** + * Get the position of the integrated encoder. + * + * @return Position + */ + @Override + public double getPosition() + { + return motor.getSelectedSensorPosition() * positionConversionFactor; + } + + /** + * Set the integrated encoder position. + * + * @param position Integrated encoder position. Should be angle in degrees or meters per second. + */ + @Override + public void setPosition(double position) + { + if (!absoluteEncoder) + { + motor.setSelectedSensorPosition(position * positionConversionFactor); + } + } + + /** + * Set the voltage compensation for the swerve module motor. + * + * @param nominalVoltage Nominal voltage for operation to output to. + */ + @Override + public void setVoltageCompensation(double nominalVoltage) + { + motor.enableVoltageCompensation(true); + motor.configVoltageCompSaturation(nominalVoltage); + } + + /** + * Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with + * voltage compensation. This is useful to protect the motor from current spikes. + * + * @param currentLimit Current limit in AMPS at free speed. + */ + @Override + public void setCurrentLimit(int currentLimit) + { + SupplyCurrentLimitConfiguration config = new SupplyCurrentLimitConfiguration(); + motor.configGetSupplyCurrentLimit(config); + config.currentLimit = currentLimit; + config.enable = true; + motor.configSupplyCurrentLimit(config); + } + + /** + * Set the maximum rate the open/closed loop output can change by. + * + * @param rampRate Time in seconds to go from 0 to full throttle. + */ + @Override + public void setLoopRampRate(double rampRate) + { + motor.configClosedloopRamp(rampRate); + motor.configOpenloopRamp(rampRate); + } + + /** + * Get the motor object from the module. + * + * @return Motor object. + */ + @Override + public Object getMotor() + { + return motor; + } + + /** + * Queries whether the absolute encoder is directly attached to the motor controller. + * + * @return connected absolute encoder state. + */ + @Override + public boolean isAttachedAbsoluteEncoder() + { + return absoluteEncoder; + } + +} diff --git a/swervelib/motors/TalonSRXSwerve.java b/swervelib/motors/TalonSRXSwerve.java new file mode 100644 index 0000000..a992d2c --- /dev/null +++ b/swervelib/motors/TalonSRXSwerve.java @@ -0,0 +1,323 @@ +package swervelib.motors; + +import com.ctre.phoenix.motorcontrol.ControlMode; +import com.ctre.phoenix.motorcontrol.DemandType; +import com.ctre.phoenix.motorcontrol.FeedbackDevice; +import com.ctre.phoenix.motorcontrol.NeutralMode; +import com.ctre.phoenix.motorcontrol.RemoteFeedbackDevice; +import com.ctre.phoenix.motorcontrol.SupplyCurrentLimitConfiguration; +import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; +import com.ctre.phoenix.sensors.CANCoder; +import swervelib.encoders.SwerveAbsoluteEncoder; +import swervelib.parser.PIDFConfig; + +/** + * {@link com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX} Swerve Motor. + */ +public class TalonSRXSwerve extends SwerveMotor +{ + + /** + * Factory default already occurred. + */ + private final boolean factoryDefaultOccurred = false; + /** + * TalonSRX motor controller. + */ + WPI_TalonSRX motor; + /** + * Whether the absolute encoder is integrated. + */ + private boolean absoluteEncoder = false; + /** + * The position conversion factor. + */ + private double positionConversionFactor = 1; + + /** + * Constructor for TalonSRX swerve motor. + * + * @param motor Motor to use. + * @param isDriveMotor Whether this motor is a drive motor. + */ + public TalonSRXSwerve(WPI_TalonSRX motor, boolean isDriveMotor) + { + this.isDriveMotor = isDriveMotor; + this.motor = motor; + motor.configSelectedFeedbackSensor(FeedbackDevice.QuadEncoder); + + factoryDefaults(); + clearStickyFaults(); + } + + /** + * Construct the TalonSRX swerve motor given the ID. + * + * @param id ID of the TalonSRX on the canbus. + * @param isDriveMotor Whether the motor is a drive or steering motor. + */ + public TalonSRXSwerve(int id, boolean isDriveMotor) + { + this(new WPI_TalonSRX(id), isDriveMotor); + } + + /** + * Configure the factory defaults. + */ + @Override + public void factoryDefaults() + { + if (!factoryDefaultOccurred) + { + motor.configFactoryDefault(); + } + } + + /** + * Clear the sticky faults on the motor controller. + */ + @Override + public void clearStickyFaults() + { + motor.clearStickyFaults(); + } + + + /** + * Set the absolute encoder to be a compatible absolute encoder. + * + * @param encoder The encoder to use. + */ + @Override + public SwerveMotor setAbsoluteEncoder(SwerveAbsoluteEncoder encoder) + { + if (encoder.getAbsoluteEncoder() instanceof CANCoder) + { + motor.configSelectedFeedbackSensor(RemoteFeedbackDevice.RemoteSensor0); + motor.configRemoteFeedbackFilter((CANCoder) encoder.getAbsoluteEncoder(), + CTRE_remoteSensor.REMOTE_SENSOR_0.ordinal()); + absoluteEncoder = true; + } + return this; + } + + /** + * Configure the integrated encoder for the swerve module. Sets the conversion factors for position and velocity. + * + * @param positionConversionFactor The conversion factor to apply for position. + */ + @Override + public void configureIntegratedEncoder(double positionConversionFactor) + { + this.positionConversionFactor = positionConversionFactor; + motor.configSelectedFeedbackCoefficient(positionConversionFactor); + } + + /** + * Configure the PIDF values for the closed loop controller. 0 is disabled or off. + * + * @param config Configuration class holding the PIDF values. + */ + @Override + public void configurePIDF(PIDFConfig config) + { + int slotIdx = isDriveMotor ? CTRE_slotIdx.Velocity.ordinal() : CTRE_slotIdx.Turning.ordinal(); + motor.config_kP(slotIdx, config.p); + motor.config_kI(slotIdx, config.i); + motor.config_kD(slotIdx, config.d); + motor.config_kF(slotIdx, config.f); + motor.config_IntegralZone(slotIdx, config.iz); + motor.configClosedLoopPeakOutput(slotIdx, config.output.max); + } + + /** + * Configure the PID wrapping for the position closed loop controller. + * + * @param minInput Minimum PID input. + * @param maxInput Maximum PID input. + */ + @Override + public void configurePIDWrapping(double minInput, double maxInput) + { + motor.configFeedbackNotContinuous(true, 100); + // Do nothing + } + + /** + * Set the idle mode. + * + * @param isBrakeMode Set the brake mode. + */ + @Override + public void setMotorBrake(boolean isBrakeMode) + { + motor.setNeutralMode(isBrakeMode ? NeutralMode.Brake : NeutralMode.Coast); + } + + /** + * Set the motor to be inverted. + * + * @param inverted State of inversion. + */ + @Override + public void setInverted(boolean inverted) + { + motor.setInverted(inverted); + } + + /** + * Save the configurations from flash to EEPROM. + */ + @Override + public void burnFlash() + { + // Do nothing + } + + /** + * Set the percentage output. + * + * @param percentOutput percent out for the motor controller. + */ + @Override + public void set(double percentOutput) + { + motor.set(percentOutput); + } + + /** + * Set the closed loop PID controller reference point. + * + * @param setpoint Setpoint in MPS or Angle in degrees. + * @param feedforward Feedforward in volt-meter-per-second or kV. + */ + @Override + public void setReference(double setpoint, double feedforward) + { + motor.set(isDriveMotor ? ControlMode.Velocity : ControlMode.Position, isDriveMotor ? setpoint * .1 : setpoint, + DemandType.ArbitraryFeedForward, + feedforward); + } + + /** + * Get the velocity of the integrated encoder. + * + * @return velocity + */ + @Override + public double getVelocity() + { + return motor.getSelectedSensorVelocity() * (100 * positionConversionFactor); + } + + /** + * Get the position of the integrated encoder. + * + * @return Position + */ + @Override + public double getPosition() + { + return motor.getSelectedSensorPosition() * positionConversionFactor; + } + + /** + * Set the integrated encoder position. + * + * @param position Integrated encoder position. Should be angle in degrees or meters per second. + */ + @Override + public void setPosition(double position) + { + if (!absoluteEncoder) + { + motor.setSelectedSensorPosition(position * positionConversionFactor); + } + } + + /** + * Set the voltage compensation for the swerve module motor. + * + * @param nominalVoltage Nominal voltage for operation to output to. + */ + @Override + public void setVoltageCompensation(double nominalVoltage) + { + motor.enableVoltageCompensation(true); + motor.configVoltageCompSaturation(nominalVoltage); + } + + /** + * Set the current limit for the swerve drive motor, remember this may cause jumping if used in conjunction with + * voltage compensation. This is useful to protect the motor from current spikes. + * + * @param currentLimit Current limit in AMPS at free speed. + */ + @Override + public void setCurrentLimit(int currentLimit) + { + SupplyCurrentLimitConfiguration config = new SupplyCurrentLimitConfiguration(); + motor.configSupplyCurrentLimit(config); + config.currentLimit = currentLimit; + config.enable = true; + motor.configSupplyCurrentLimit(config); + } + + /** + * Set the maximum rate the open/closed loop output can change by. + * + * @param rampRate Time in seconds to go from 0 to full throttle. + */ + @Override + public void setLoopRampRate(double rampRate) + { + motor.configClosedloopRamp(rampRate); + motor.configOpenloopRamp(rampRate); + } + + /** + * Get the motor object from the module. + * + * @return Motor object. + */ + @Override + public Object getMotor() + { + return motor; + } + + /** + * Queries whether the absolute encoder is directly attached to the motor controller. + * + * @return connected absolute encoder state. + */ + @Override + public boolean isAttachedAbsoluteEncoder() + { + return absoluteEncoder; + } + + /** + * The Talon SRX Slot profile used to configure the motor to use for the PID. + */ + enum CTRE_slotIdx + { + Distance, Turning, Velocity, MotionProfile + } + + /** + * The Talon PID to use onboard. + */ + enum CTRE_pidIdx + { + PRIMARY_PID, AUXILIARY_PID, THIRD_PID, FOURTH_PID + } + + /** + * The remote sensor. + */ + enum CTRE_remoteSensor + { + REMOTE_SENSOR_0, REMOTE_SENSOR_1 + } +} diff --git a/swervelib/parser/PIDFConfig.java b/swervelib/parser/PIDFConfig.java index 49e2c90..c052b66 100644 --- a/swervelib/parser/PIDFConfig.java +++ b/swervelib/parser/PIDFConfig.java @@ -1,7 +1,7 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser; +package swervelib.parser; import edu.wpi.first.math.controller.PIDController; -import frc.robot.subsystems.swervedrive2.swervelib.parser.deserializer.PIDFRange; +import swervelib.parser.deserializer.PIDFRange; /** * Hold the PIDF and Integral Zone values for a PID. diff --git a/swervelib/parser/SwerveControllerConfiguration.java b/swervelib/parser/SwerveControllerConfiguration.java index 4e78c6a..f77ffcb 100644 --- a/swervelib/parser/SwerveControllerConfiguration.java +++ b/swervelib/parser/SwerveControllerConfiguration.java @@ -1,10 +1,9 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser; +package swervelib.parser; -import static frc.robot.subsystems.swervedrive2.swervelib.math.SwerveMath.calculateMaxAngularVelocity; +import static swervelib.math.SwerveMath.calculateMaxAngularVelocity; /** - * Swerve Controller configuration class which is used to configure - * {@link frc.robot.subsystems.swervedrive2.swervelib.SwerveController}. + * Swerve Controller configuration class which is used to configure {@link swervelib.SwerveController}. */ public class SwerveControllerConfiguration { diff --git a/swervelib/parser/SwerveDriveConfiguration.java b/swervelib/parser/SwerveDriveConfiguration.java index 74717d1..81b7b81 100644 --- a/swervelib/parser/SwerveDriveConfiguration.java +++ b/swervelib/parser/SwerveDriveConfiguration.java @@ -1,8 +1,8 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser; +package swervelib.parser; import edu.wpi.first.math.geometry.Translation2d; -import frc.robot.subsystems.swervedrive2.swervelib.SwerveModule; -import frc.robot.subsystems.swervedrive2.swervelib.imu.SwerveIMU; +import swervelib.SwerveModule; +import swervelib.imu.SwerveIMU; /** * Swerve drive configurations used during SwerveDrive construction. diff --git a/swervelib/parser/SwerveModuleConfiguration.java b/swervelib/parser/SwerveModuleConfiguration.java index 7f670e9..5db7113 100644 --- a/swervelib/parser/SwerveModuleConfiguration.java +++ b/swervelib/parser/SwerveModuleConfiguration.java @@ -1,18 +1,17 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser; +package swervelib.parser; -import static frc.robot.subsystems.swervedrive2.swervelib.math.SwerveMath.calculateAngleKV; -import static frc.robot.subsystems.swervedrive2.swervelib.math.SwerveMath.calculateDegreesPerSteeringRotation; -import static frc.robot.subsystems.swervedrive2.swervelib.math.SwerveMath.calculateMaxAcceleration; -import static frc.robot.subsystems.swervedrive2.swervelib.math.SwerveMath.calculateMetersPerRotation; +import static swervelib.math.SwerveMath.calculateAngleKV; +import static swervelib.math.SwerveMath.calculateDegreesPerSteeringRotation; +import static swervelib.math.SwerveMath.calculateMaxAcceleration; +import static swervelib.math.SwerveMath.calculateMetersPerRotation; import edu.wpi.first.math.controller.SimpleMotorFeedforward; import edu.wpi.first.math.geometry.Translation2d; -import frc.robot.subsystems.swervedrive2.swervelib.encoders.SwerveAbsoluteEncoder; -import frc.robot.subsystems.swervedrive2.swervelib.motors.SwerveMotor; +import swervelib.encoders.SwerveAbsoluteEncoder; +import swervelib.motors.SwerveMotor; /** - * Swerve Module configuration class which is used to configure - * {@link frc.robot.subsystems.swervedrive2.swervelib.SwerveModule}. + * Swerve Module configuration class which is used to configure {@link swervelib.SwerveModule}. */ public class SwerveModuleConfiguration { diff --git a/swervelib/parser/SwerveModulePhysicalCharacteristics.java b/swervelib/parser/SwerveModulePhysicalCharacteristics.java index e49dc70..3d6405e 100644 --- a/swervelib/parser/SwerveModulePhysicalCharacteristics.java +++ b/swervelib/parser/SwerveModulePhysicalCharacteristics.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser; +package swervelib.parser; /** * Configuration class which stores physical characteristics shared between every swerve module. diff --git a/swervelib/parser/SwerveParser.java b/swervelib/parser/SwerveParser.java index ae05146..6d14239 100644 --- a/swervelib/parser/SwerveParser.java +++ b/swervelib/parser/SwerveParser.java @@ -1,18 +1,18 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser; +package swervelib.parser; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import edu.wpi.first.math.util.Units; -import frc.robot.subsystems.swervedrive2.swervelib.SwerveDrive; -import frc.robot.subsystems.swervedrive2.swervelib.SwerveModule; -import frc.robot.subsystems.swervedrive2.swervelib.parser.json.ControllerPropertiesJson; -import frc.robot.subsystems.swervedrive2.swervelib.parser.json.ModuleJson; -import frc.robot.subsystems.swervedrive2.swervelib.parser.json.PIDFPropertiesJson; -import frc.robot.subsystems.swervedrive2.swervelib.parser.json.PhysicalPropertiesJson; -import frc.robot.subsystems.swervedrive2.swervelib.parser.json.SwerveDriveJson; import java.io.File; import java.io.IOException; import java.util.HashMap; +import swervelib.SwerveDrive; +import swervelib.SwerveModule; +import swervelib.parser.json.ControllerPropertiesJson; +import swervelib.parser.json.ModuleJson; +import swervelib.parser.json.PIDFPropertiesJson; +import swervelib.parser.json.PhysicalPropertiesJson; +import swervelib.parser.json.SwerveDriveJson; /** * Helper class used to parse the JSON directory with specified configuration options. diff --git a/swervelib/parser/deserializer/PIDFRange.java b/swervelib/parser/deserializer/PIDFRange.java index 3df05d1..c90f231 100644 --- a/swervelib/parser/deserializer/PIDFRange.java +++ b/swervelib/parser/deserializer/PIDFRange.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.deserializer; +package swervelib.parser.deserializer; /** * Class to hold the minimum and maximum input or output of the PIDF. diff --git a/swervelib/parser/json/ControllerPropertiesJson.java b/swervelib/parser/json/ControllerPropertiesJson.java index 58453fb..9cd4426 100644 --- a/swervelib/parser/json/ControllerPropertiesJson.java +++ b/swervelib/parser/json/ControllerPropertiesJson.java @@ -1,11 +1,11 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.json; +package swervelib.parser.json; -import frc.robot.subsystems.swervedrive2.swervelib.parser.PIDFConfig; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveControllerConfiguration; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveDriveConfiguration; +import swervelib.parser.PIDFConfig; +import swervelib.parser.SwerveControllerConfiguration; +import swervelib.parser.SwerveDriveConfiguration; /** - * {@link frc.robot.subsystems.swervedrive2.swervelib.SwerveController} parsed class. Used to access the JSON data. + * {@link swervelib.SwerveController} parsed class. Used to access the JSON data. */ public class ControllerPropertiesJson { diff --git a/swervelib/parser/json/DeviceJson.java b/swervelib/parser/json/DeviceJson.java index 2bd2673..33f08e2 100644 --- a/swervelib/parser/json/DeviceJson.java +++ b/swervelib/parser/json/DeviceJson.java @@ -1,14 +1,16 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.json; +package swervelib.parser.json; -import frc.robot.subsystems.swervedrive2.swervelib.encoders.CANCoderSwerve; -import frc.robot.subsystems.swervedrive2.swervelib.encoders.SparkMaxEncoderSwerve; -import frc.robot.subsystems.swervedrive2.swervelib.encoders.SwerveAbsoluteEncoder; -import frc.robot.subsystems.swervedrive2.swervelib.imu.NavXSwerve; -import frc.robot.subsystems.swervedrive2.swervelib.imu.Pigeon2Swerve; -import frc.robot.subsystems.swervedrive2.swervelib.imu.PigeonSwerve; -import frc.robot.subsystems.swervedrive2.swervelib.imu.SwerveIMU; -import frc.robot.subsystems.swervedrive2.swervelib.motors.SparkMaxSwerve; -import frc.robot.subsystems.swervedrive2.swervelib.motors.SwerveMotor; +import swervelib.encoders.CANCoderSwerve; +import swervelib.encoders.SparkMaxEncoderSwerve; +import swervelib.encoders.SwerveAbsoluteEncoder; +import swervelib.imu.NavXSwerve; +import swervelib.imu.Pigeon2Swerve; +import swervelib.imu.PigeonSwerve; +import swervelib.imu.SwerveIMU; +import swervelib.motors.SparkMaxSwerve; +import swervelib.motors.SwerveMotor; +import swervelib.motors.TalonFXSwerve; +import swervelib.motors.TalonSRXSwerve; /** * Device JSON parsed class. Used to access the JSON data. @@ -76,11 +78,19 @@ public class DeviceJson */ public SwerveMotor createMotor(boolean isDriveMotor) { - if (type.equals("sparkmax")) + switch (type) { - return new SparkMaxSwerve(id, isDriveMotor); + case "sparkmax": + return new SparkMaxSwerve(id, isDriveMotor); + case "falcon": + case "talonfx": + return new TalonFXSwerve(id, canbus != null ? canbus : "", isDriveMotor); + case "talonsrx": + return new TalonSRXSwerve(id, isDriveMotor); + default: + throw new RuntimeException(type + " is not a recognized absolute encoder type."); + } - throw new RuntimeException(type + " is not a recognized absolute encoder type."); } /** diff --git a/swervelib/parser/json/ModuleJson.java b/swervelib/parser/json/ModuleJson.java index 1b52a00..f78e909 100644 --- a/swervelib/parser/json/ModuleJson.java +++ b/swervelib/parser/json/ModuleJson.java @@ -1,16 +1,19 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.json; +package swervelib.parser.json; import edu.wpi.first.math.util.Units; -import frc.robot.subsystems.swervedrive2.swervelib.encoders.SwerveAbsoluteEncoder; -import frc.robot.subsystems.swervedrive2.swervelib.motors.SwerveMotor; -import frc.robot.subsystems.swervedrive2.swervelib.parser.PIDFConfig; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveModuleConfiguration; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveModulePhysicalCharacteristics; -import frc.robot.subsystems.swervedrive2.swervelib.parser.json.modules.BoolMotorJson; -import frc.robot.subsystems.swervedrive2.swervelib.parser.json.modules.LocationJson; +import swervelib.encoders.CANCoderSwerve; +import swervelib.encoders.SwerveAbsoluteEncoder; +import swervelib.motors.SwerveMotor; +import swervelib.motors.TalonFXSwerve; +import swervelib.motors.TalonSRXSwerve; +import swervelib.parser.PIDFConfig; +import swervelib.parser.SwerveModuleConfiguration; +import swervelib.parser.SwerveModulePhysicalCharacteristics; +import swervelib.parser.json.modules.BoolMotorJson; +import swervelib.parser.json.modules.LocationJson; /** - * {@link frc.robot.subsystems.swervedrive2.swervelib.SwerveModule} JSON parsed class. Used to access the JSON data. + * {@link swervelib.SwerveModule} JSON parsed class. Used to access the JSON data. */ public class ModuleJson { @@ -65,6 +68,10 @@ public class ModuleJson { absEncoder = angle.createIntegratedEncoder(angleMotor); angleMotor.setAbsoluteEncoder(absEncoder); + } else if ((angleMotor instanceof TalonFXSwerve || angleMotor instanceof TalonSRXSwerve) && + absEncoder instanceof CANCoderSwerve) + { + angleMotor.setAbsoluteEncoder(absEncoder); } return new SwerveModuleConfiguration(drive.createMotor(true), angleMotor, absEncoder, diff --git a/swervelib/parser/json/PIDFPropertiesJson.java b/swervelib/parser/json/PIDFPropertiesJson.java index 589a7e6..9dd9dc0 100644 --- a/swervelib/parser/json/PIDFPropertiesJson.java +++ b/swervelib/parser/json/PIDFPropertiesJson.java @@ -1,10 +1,9 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.json; +package swervelib.parser.json; -import frc.robot.subsystems.swervedrive2.swervelib.parser.PIDFConfig; +import swervelib.parser.PIDFConfig; /** - * {@link frc.robot.subsystems.swervedrive2.swervelib.SwerveModule} PID with Feedforward for the drive motor and angle - * motor. + * {@link swervelib.SwerveModule} PID with Feedforward for the drive motor and angle motor. */ public class PIDFPropertiesJson { diff --git a/swervelib/parser/json/PhysicalPropertiesJson.java b/swervelib/parser/json/PhysicalPropertiesJson.java index 52553b2..eee440b 100644 --- a/swervelib/parser/json/PhysicalPropertiesJson.java +++ b/swervelib/parser/json/PhysicalPropertiesJson.java @@ -1,11 +1,10 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.json; +package swervelib.parser.json; import edu.wpi.first.math.util.Units; -import frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveModulePhysicalCharacteristics; +import swervelib.parser.SwerveModulePhysicalCharacteristics; /** - * {@link frc.robot.subsystems.swervedrive2.swervelib.parser.SwerveModulePhysicalCharacteristics} parsed data. Used to - * configure the SwerveModule. + * {@link swervelib.parser.SwerveModulePhysicalCharacteristics} parsed data. Used to configure the SwerveModule. */ public class PhysicalPropertiesJson { diff --git a/swervelib/parser/json/SwerveDriveJson.java b/swervelib/parser/json/SwerveDriveJson.java index a3f0d35..b505d77 100644 --- a/swervelib/parser/json/SwerveDriveJson.java +++ b/swervelib/parser/json/SwerveDriveJson.java @@ -1,8 +1,7 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.json; +package swervelib.parser.json; /** - * {@link frc.robot.subsystems.swervedrive2.swervelib.SwerveDrive} JSON parsed class. Used to access parsed data from - * the swervedrive.json file. + * {@link swervelib.SwerveDrive} JSON parsed class. Used to access parsed data from the swervedrive.json file. */ public class SwerveDriveJson { diff --git a/swervelib/parser/json/modules/BoolMotorJson.java b/swervelib/parser/json/modules/BoolMotorJson.java index b37b4cc..f6d603f 100644 --- a/swervelib/parser/json/modules/BoolMotorJson.java +++ b/swervelib/parser/json/modules/BoolMotorJson.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.json.modules; +package swervelib.parser.json.modules; /** * Inverted motor JSON parsed class. Used to access the JSON data. diff --git a/swervelib/parser/json/modules/LocationJson.java b/swervelib/parser/json/modules/LocationJson.java index 50f214d..4c4a5f0 100644 --- a/swervelib/parser/json/modules/LocationJson.java +++ b/swervelib/parser/json/modules/LocationJson.java @@ -1,4 +1,4 @@ -package frc.robot.subsystems.swervedrive2.swervelib.parser.json.modules; +package swervelib.parser.json.modules; /** * Location JSON parsed class. Used to access the JSON data. Module locations, in inches, as distances to the center of