From c76b7f8879dd3f9bbbd3f0e04d46e5d5f1d3f7c9 Mon Sep 17 00:00:00 2001 From: LTeixeira4909 Date: Fri, 17 Jan 2025 21:30:05 -0500 Subject: [PATCH] WORKING OFFSETS AHHHHH --- .vscode/launch.json | 7 + src/main/java/frc/robot/RobotContainer.java | 13 +- .../robot/subsystems/elevator/Elevator.java | 60 ++- .../robot/subsystems/elevator/ElevatorIO.java | 16 +- .../elevator/ElevatorIOTalonFX.java | 91 ++-- vendordeps/PathplannerLib-2025.1.1.json | 38 -- vendordeps/PathplannerLib-2025.2.1.json | 38 ++ vendordeps/Phoenix6-25.1.0.json | 389 ---------------- vendordeps/Phoenix6-25.2.0.json | 419 ++++++++++++++++++ 9 files changed, 589 insertions(+), 482 deletions(-) delete mode 100644 vendordeps/PathplannerLib-2025.1.1.json create mode 100644 vendordeps/PathplannerLib-2025.2.1.json delete mode 100644 vendordeps/Phoenix6-25.1.0.json create mode 100644 vendordeps/Phoenix6-25.2.0.json diff --git a/.vscode/launch.json b/.vscode/launch.json index b8c1920..ead5664 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,6 +1,13 @@ { "version": "0.2.0", "configurations": [ + { + "type": "java", + "name": "Main", + "request": "launch", + "mainClass": "frc.robot.Main", + "projectName": "2025-Reefscape" + }, { "type": "wpilib", "name": "WPILib Desktop Debug", diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index 7a74741..b56f9c1 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -50,7 +50,12 @@ public RobotContainer() { s_Elevator = new Elevator(new ElevatorIOTalonFX()); configureBindings(); } + + + public void periodic() { + System.out.println("Elevator Command"+s_Elevator.getCurrentCommand()); + } private void configureBindings() { // Note that X is defined as forward according to WPILib convention, // and Y is defined as to the left according to WPILib convention. @@ -77,11 +82,15 @@ private void configureBindings() { // point.withModuleDirection( // new Rotation2d(-joystick.getLeftY(), -joystick.getLeftX())))); - joystick.x().whileTrue(s_Shooter.shootL2()).onFalse(s_Shooter.stop()); + joystick.rightTrigger().whileTrue(s_Shooter.shootL2()).onFalse(s_Shooter.stop()); joystick.y().whileTrue(s_Shooter.intake()).onFalse(s_Shooter.stop()); joystick.a().whileTrue(s_Shooter.shootTrough()).onFalse(s_Shooter.stop()); - joystick.b().whileTrue(s_Elevator.goToL1()).onFalse(s_Elevator.stop()); + joystick.b().onTrue(s_Elevator.goToL1()).onFalse(s_Elevator.stop()); + joystick.leftBumper().onTrue(s_Elevator.goToL2 + ()).onFalse(s_Elevator.stop()); + joystick.rightBumper().onTrue(s_Elevator.goToL3()).onFalse(s_Elevator.stop()); + joystick.leftTrigger().onTrue(s_Elevator.goToL4()).onFalse(s_Elevator.stop()); joystick.povUp().whileTrue(s_Elevator.moveUp()).onFalse(s_Elevator.stop()); joystick.povDown().whileTrue(s_Elevator.moveDown()).onFalse(s_Elevator.stop()); diff --git a/src/main/java/frc/robot/subsystems/elevator/Elevator.java b/src/main/java/frc/robot/subsystems/elevator/Elevator.java index 169231a..3c94ae8 100644 --- a/src/main/java/frc/robot/subsystems/elevator/Elevator.java +++ b/src/main/java/frc/robot/subsystems/elevator/Elevator.java @@ -1,16 +1,26 @@ package frc.robot.subsystems.elevator; +import edu.wpi.first.networktables.DoublePublisher; +import edu.wpi.first.networktables.NetworkTable; +import edu.wpi.first.networktables.NetworkTableInstance; import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Elevator extends SubsystemBase { - private final ElevatorIO m_io; - private final double L1Setpoint = 100; - private final double L2Setpoint = 5; - private final double L3Setpoint = 0; - private final double L4Setpoint = 0; + private final NetworkTableInstance inst = NetworkTableInstance.getDefault(); + private final NetworkTable elevatorTable = inst.getTable("Elevator"); + private final DoublePublisher motorValPub= elevatorTable.getDoubleTopic("Motor Val").publish(); + private final DoublePublisher motorVolPub= elevatorTable.getDoubleTopic("Motor Vol").publish(); + private final DoublePublisher rotPub= elevatorTable.getDoubleTopic("Rotations").publish(); + private final DoublePublisher setPub= elevatorTable.getDoubleTopic("Setpoint").publish(); - final double m_gearRatio = 5/1 * 5/1 * 48/72; + private final ElevatorIO m_io; + private final double L1Setpoint = 29; + private final double L2Setpoint = 32.5; + private final double L3Setpoint = 51.5; + private final double L4Setpoint = 76; + //inch to rotations of the motor + final double m_gearRatio = 0.5 * (1d / (1.75100 * Math.PI)) * ( 2d / 3d ) * 25; public Elevator(ElevatorIO io) { m_io = io; @@ -18,23 +28,47 @@ public Elevator(ElevatorIO io) { } public Command moveUp() { - return this.run(() -> m_io.setVoltage(1)); + return this.runOnce(() -> m_io.setVoltage(3)).withName("UP"); } public Command stop() { - return this.run(() -> m_io.setVoltage(0)); + return this.runOnce(() -> m_io.setVoltage(0)).withName("Stop"); } public Command moveDown() { - return this.run(() -> m_io.setVoltage(-1)); + return this.runOnce(() -> m_io.setVoltage(-3)).withName("Move Down"); } public Command goToL1(){ // return this.run(() -> m_io.gotosetpoint(L1Setpoint,m_gearRatio)); - return this.run(() -> { - // System.out.println("L1"); + return this.runOnce(() -> { m_io.gotosetpoint(L1Setpoint, m_gearRatio); - }); + }).withName("L1"); + } + public Command goToL2(){ + // return this.run(() -> m_io.gotosetpoint(L1Setpoint,m_gearRatio)); + return this.runOnce(() -> { + m_io.gotosetpoint(L2Setpoint, m_gearRatio); + }).withName("L2"); + } + public Command goToL3(){ + // return this.run(() -> m_io.gotosetpoint(L1Setpoint,m_gearRatio)); + return this.runOnce(() -> { + m_io.gotosetpoint(L3Setpoint, m_gearRatio); + }).withName("L3"); + } + public Command goToL4(){ + // return this.run(() -> m_io.gotosetpoint(L1Setpoint,m_gearRatio)); + return this.runOnce(() -> { + m_io.gotosetpoint(L4Setpoint, m_gearRatio); + }).withName("L4"); + } + @Override + public void periodic() { + super.periodic(); + motorValPub.set(m_io.getVelocity()); + motorVolPub.set(m_io.getVoltage()); + setPub.set(m_io.getSetpoint()); + rotPub.set(m_io.getPosition()); } - } diff --git a/src/main/java/frc/robot/subsystems/elevator/ElevatorIO.java b/src/main/java/frc/robot/subsystems/elevator/ElevatorIO.java index 314a682..9d5d2f4 100644 --- a/src/main/java/frc/robot/subsystems/elevator/ElevatorIO.java +++ b/src/main/java/frc/robot/subsystems/elevator/ElevatorIO.java @@ -1,9 +1,13 @@ package frc.robot.subsystems.elevator; +import org.littletonrobotics.junction.AutoLog; + import edu.wpi.first.wpilibj2.command.Command; +import edu.wpi.first.wpilibj2.command.InstantCommand; public interface ElevatorIO { - + + @AutoLog public static class ElevatorIOInputs { public double voltage = 0d; } @@ -12,5 +16,13 @@ public default void setVoltage(double voltage) {} public default void setBrakeMode(boolean enableBrakeMode) {} - public abstract Command gotosetpoint(double setpoint, double gearRatio); + public default void gotosetpoint(double setpoint, double gearRatio) {} + + public default double getVelocity() { return 0; } + + public default double getVoltage() { return 0; } + + public default double getPosition() { return 0; } + + public default double getSetpoint() { return 0; } } \ No newline at end of file diff --git a/src/main/java/frc/robot/subsystems/elevator/ElevatorIOTalonFX.java b/src/main/java/frc/robot/subsystems/elevator/ElevatorIOTalonFX.java index 7e4dfb8..a9fd029 100644 --- a/src/main/java/frc/robot/subsystems/elevator/ElevatorIOTalonFX.java +++ b/src/main/java/frc/robot/subsystems/elevator/ElevatorIOTalonFX.java @@ -1,5 +1,6 @@ package frc.robot.subsystems.elevator; +import com.ctre.phoenix6.configs.MotorOutputConfigs; import com.ctre.phoenix6.configs.Slot0Configs; import com.ctre.phoenix6.configs.TalonFXConfiguration; import com.ctre.phoenix6.controls.Follower; @@ -7,55 +8,64 @@ import com.ctre.phoenix6.controls.VelocityVoltage; import com.ctre.phoenix6.controls.VoltageOut; import com.ctre.phoenix6.hardware.TalonFX; +import com.ctre.phoenix6.signals.InvertedValue; import com.ctre.phoenix6.signals.NeutralModeValue; +import edu.wpi.first.networktables.DoubleArrayPublisher; +import edu.wpi.first.networktables.DoublePublisher; +import edu.wpi.first.networktables.NetworkTable; +import edu.wpi.first.networktables.NetworkTableInstance; import edu.wpi.first.wpilibj2.command.Command; +import edu.wpi.first.wpilibj2.command.InstantCommand; import edu.wpi.first.wpilibj2.command.SubsystemBase; public class ElevatorIOTalonFX extends SubsystemBase implements ElevatorIO{ - + + private final TalonFX m_left; private final TalonFX m_right; - final PositionVoltage m_request = new PositionVoltage(0).withSlot(0); + private double m_rotations; + final PositionVoltage m_request; //final VelocityVoltage m_request = new VelocityVoltage(0).withSlot(0); //private final PositionVoltage m_request; public ElevatorIOTalonFX() { - + + + m_left = new TalonFX(21, "CANivore2"); m_right = new TalonFX(22, "CANivore2"); - + m_request = new PositionVoltage(0).withSlot(0); + final TalonFXConfiguration elevatorMotorConfig = new TalonFXConfiguration(); + final MotorOutputConfigs outputConfigs = new MotorOutputConfigs(); + outputConfigs.Inverted = InvertedValue.Clockwise_Positive; elevatorMotorConfig.CurrentLimits.SupplyCurrentLimit = 40.0; elevatorMotorConfig.CurrentLimits.SupplyCurrentLimitEnable = true; // in init function, set slot 0 gains var slot0Configs = new Slot0Configs(); - slot0Configs.kP = 2.4; // An error of 1 rotation results in 2.4 V output + slot0Configs.kP = 1; // An error of 1 rotation results in 2.4 V output slot0Configs.kI = 0; // no output for integrated error - slot0Configs.kD = 1; // A velocity of 1 rps results in 0.1 V output - m_left.setControl(new Follower(22, false)); - - m_right.setPosition(0); - // create a position closed-loop request, voltage output, slot 0 configs - //m_request = new PositionVoltage(0).withSlot(0); - // - - // set position to 10 rotations - - m_left.getConfigurator().apply(slot0Configs); - m_right.getConfigurator().apply(slot0Configs); - + slot0Configs.kD = 0; // A velocity of 1 rps results in 0.1 V output + slot0Configs.kG = 0;; + + m_right.setPosition(29 * (0.5 * (1d / (1.75100 * Math.PI)) * ( 2d / 3d ) * 25)); m_left.getConfigurator().apply(elevatorMotorConfig); m_right.getConfigurator().apply(elevatorMotorConfig); + m_right.getConfigurator().apply(outputConfigs); + m_left.getConfigurator().apply(slot0Configs); + m_right.getConfigurator().apply(slot0Configs); + m_left.setControl(new Follower(22, true)); } public void setVoltage(double voltage) { - final VoltageOut m_request = new VoltageOut(0); - - m_left.setControl(m_request.withOutput(-voltage)); - m_right.setControl(m_request.withOutput(voltage)); + // return this.runOnce(()->{ + final VoltageOut request = new VoltageOut(0); + m_left.setControl(request.withOutput(-voltage)); + m_right.setControl(request.withOutput(voltage)); + // }); System.out.println("volts:" + m_right.getMotorVoltage()); } @@ -65,23 +75,28 @@ public void setBrakeMode(boolean enableBrakeMode) { m_left.setNeutralMode(neutralModeValue); m_right.setNeutralMode(neutralModeValue); } + @Override + public void gotosetpoint(double setpoint, double gearRatio) { + double rotations = setpoint * gearRatio; + m_rotations = rotations; + System.out.println("rotations:" + rotations); + m_right.setControl(m_request.withPosition(rotations)); - public Command gotosetpoint(double setpoint, double m_gearRatio) { - return this.run(() -> { - Double rotations = setpoint + (m_gearRatio * 2 * Math.PI * 1.76/2); - m_left.setControl(m_request.withPosition(rotations)); - m_right.setControl(m_request.withPosition(rotations)); - System.out.println("POS:" + m_right.getPosition().toString()); - System.out.println("volts:" + m_right.getMotorVoltage()); - }); - // - // System.out.println("setpoint: " + setpoint); - // m_left.setControl(m_request.withPosition(10)); - // m_right.setControl(m_request.withPosition(10)); - // System.out.println("POS:" + m_right.getPosition().toString()); - // System.out.println("volts:" + m_right.getMotorVoltage() - // .toString()); } - + + public double getVelocity(){ + return m_right.getVelocity().getValueAsDouble(); + } + public double getVoltage(){ + return m_right.getMotorVoltage().getValueAsDouble(); + } + @Override + public double getPosition() { + return m_right.getPosition().getValueAsDouble(); + } + + public double getSetpoint(){ + return m_rotations; + } } diff --git a/vendordeps/PathplannerLib-2025.1.1.json b/vendordeps/PathplannerLib-2025.1.1.json deleted file mode 100644 index d14e676..0000000 --- a/vendordeps/PathplannerLib-2025.1.1.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "fileName": "PathplannerLib-2025.1.1.json", - "name": "PathplannerLib", - "version": "2025.1.1", - "uuid": "1b42324f-17c6-4875-8e77-1c312bc8c786", - "frcYear": "2025", - "mavenUrls": [ - "https://3015rangerrobotics.github.io/pathplannerlib/repo" - ], - "jsonUrl": "https://3015rangerrobotics.github.io/pathplannerlib/PathplannerLib.json", - "javaDependencies": [ - { - "groupId": "com.pathplanner.lib", - "artifactId": "PathplannerLib-java", - "version": "2025.1.1" - } - ], - "jniDependencies": [], - "cppDependencies": [ - { - "groupId": "com.pathplanner.lib", - "artifactId": "PathplannerLib-cpp", - "version": "2025.1.1", - "libName": "PathplannerLib", - "headerClassifier": "headers", - "sharedLibrary": false, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "osxuniversal", - "linuxathena", - "linuxarm32", - "linuxarm64" - ] - } - ] -} diff --git a/vendordeps/PathplannerLib-2025.2.1.json b/vendordeps/PathplannerLib-2025.2.1.json new file mode 100644 index 0000000..71e25f3 --- /dev/null +++ b/vendordeps/PathplannerLib-2025.2.1.json @@ -0,0 +1,38 @@ +{ + "fileName": "PathplannerLib-2025.2.1.json", + "name": "PathplannerLib", + "version": "2025.2.1", + "uuid": "1b42324f-17c6-4875-8e77-1c312bc8c786", + "frcYear": "2025", + "mavenUrls": [ + "https://3015rangerrobotics.github.io/pathplannerlib/repo" + ], + "jsonUrl": "https://3015rangerrobotics.github.io/pathplannerlib/PathplannerLib.json", + "javaDependencies": [ + { + "groupId": "com.pathplanner.lib", + "artifactId": "PathplannerLib-java", + "version": "2025.2.1" + } + ], + "jniDependencies": [], + "cppDependencies": [ + { + "groupId": "com.pathplanner.lib", + "artifactId": "PathplannerLib-cpp", + "version": "2025.2.1", + "libName": "PathplannerLib", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "osxuniversal", + "linuxathena", + "linuxarm32", + "linuxarm64" + ] + } + ] +} \ No newline at end of file diff --git a/vendordeps/Phoenix6-25.1.0.json b/vendordeps/Phoenix6-25.1.0.json deleted file mode 100644 index 18462c6..0000000 --- a/vendordeps/Phoenix6-25.1.0.json +++ /dev/null @@ -1,389 +0,0 @@ -{ - "fileName": "Phoenix6-25.1.0.json", - "name": "CTRE-Phoenix (v6)", - "version": "25.1.0", - "frcYear": "2025", - "uuid": "e995de00-2c64-4df5-8831-c1441420ff19", - "mavenUrls": [ - "https://maven.ctr-electronics.com/release/" - ], - "jsonUrl": "https://maven.ctr-electronics.com/release/com/ctre/phoenix6/latest/Phoenix6-frc2025-latest.json", - "conflictsWith": [ - { - "uuid": "e7900d8d-826f-4dca-a1ff-182f658e98af", - "errorMessage": "Users can not have both the replay and regular Phoenix 6 vendordeps in their robot program.", - "offlineFileName": "Phoenix6-replay-frc2025-latest.json" - } - ], - "javaDependencies": [ - { - "groupId": "com.ctre.phoenix6", - "artifactId": "wpiapi-java", - "version": "25.1.0" - } - ], - "jniDependencies": [ - { - "groupId": "com.ctre.phoenix6", - "artifactId": "api-cpp", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "linuxathena" - ], - "simMode": "hwsim" - }, - { - "groupId": "com.ctre.phoenix6", - "artifactId": "tools", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "linuxathena" - ], - "simMode": "hwsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "api-cpp-sim", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "tools-sim", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simTalonSRX", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simVictorSPX", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simPigeonIMU", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simCANCoder", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simProTalonFX", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simProCANcoder", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simProPigeon2", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simProCANrange", - "version": "25.1.0", - "isJar": false, - "skipInvalidPlatforms": true, - "validPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - } - ], - "cppDependencies": [ - { - "groupId": "com.ctre.phoenix6", - "artifactId": "wpiapi-cpp", - "version": "25.1.0", - "libName": "CTRE_Phoenix6_WPI", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "linuxathena" - ], - "simMode": "hwsim" - }, - { - "groupId": "com.ctre.phoenix6", - "artifactId": "tools", - "version": "25.1.0", - "libName": "CTRE_PhoenixTools", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "linuxathena" - ], - "simMode": "hwsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "wpiapi-cpp-sim", - "version": "25.1.0", - "libName": "CTRE_Phoenix6_WPISim", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "tools-sim", - "version": "25.1.0", - "libName": "CTRE_PhoenixTools_Sim", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simTalonSRX", - "version": "25.1.0", - "libName": "CTRE_SimTalonSRX", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simVictorSPX", - "version": "25.1.0", - "libName": "CTRE_SimVictorSPX", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simPigeonIMU", - "version": "25.1.0", - "libName": "CTRE_SimPigeonIMU", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simCANCoder", - "version": "25.1.0", - "libName": "CTRE_SimCANCoder", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simProTalonFX", - "version": "25.1.0", - "libName": "CTRE_SimProTalonFX", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simProCANcoder", - "version": "25.1.0", - "libName": "CTRE_SimProCANcoder", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simProPigeon2", - "version": "25.1.0", - "libName": "CTRE_SimProPigeon2", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - }, - { - "groupId": "com.ctre.phoenix6.sim", - "artifactId": "simProCANrange", - "version": "25.1.0", - "libName": "CTRE_SimProCANrange", - "headerClassifier": "headers", - "sharedLibrary": true, - "skipInvalidPlatforms": true, - "binaryPlatforms": [ - "windowsx86-64", - "linuxx86-64", - "linuxarm64", - "osxuniversal" - ], - "simMode": "swsim" - } - ] -} diff --git a/vendordeps/Phoenix6-25.2.0.json b/vendordeps/Phoenix6-25.2.0.json new file mode 100644 index 0000000..38747fb --- /dev/null +++ b/vendordeps/Phoenix6-25.2.0.json @@ -0,0 +1,419 @@ +{ + "fileName": "Phoenix6-25.2.0.json", + "name": "CTRE-Phoenix (v6)", + "version": "25.2.0", + "frcYear": "2025", + "uuid": "e995de00-2c64-4df5-8831-c1441420ff19", + "mavenUrls": [ + "https://maven.ctr-electronics.com/release/" + ], + "jsonUrl": "https://maven.ctr-electronics.com/release/com/ctre/phoenix6/latest/Phoenix6-frc2025-latest.json", + "conflictsWith": [ + { + "uuid": "e7900d8d-826f-4dca-a1ff-182f658e98af", + "errorMessage": "Users can not have both the replay and regular Phoenix 6 vendordeps in their robot program.", + "offlineFileName": "Phoenix6-replay-frc2025-latest.json" + } + ], + "javaDependencies": [ + { + "groupId": "com.ctre.phoenix6", + "artifactId": "wpiapi-java", + "version": "25.2.0" + } + ], + "jniDependencies": [ + { + "groupId": "com.ctre.phoenix6", + "artifactId": "api-cpp", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "linuxathena" + ], + "simMode": "hwsim" + }, + { + "groupId": "com.ctre.phoenix6", + "artifactId": "tools", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "linuxathena" + ], + "simMode": "hwsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "api-cpp-sim", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "tools-sim", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simTalonSRX", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simVictorSPX", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simPigeonIMU", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simCANCoder", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProTalonFX", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProTalonFXS", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProCANcoder", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProPigeon2", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProCANrange", + "version": "25.2.0", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + } + ], + "cppDependencies": [ + { + "groupId": "com.ctre.phoenix6", + "artifactId": "wpiapi-cpp", + "version": "25.2.0", + "libName": "CTRE_Phoenix6_WPI", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "linuxathena" + ], + "simMode": "hwsim" + }, + { + "groupId": "com.ctre.phoenix6", + "artifactId": "tools", + "version": "25.2.0", + "libName": "CTRE_PhoenixTools", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "linuxathena" + ], + "simMode": "hwsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "wpiapi-cpp-sim", + "version": "25.2.0", + "libName": "CTRE_Phoenix6_WPISim", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "tools-sim", + "version": "25.2.0", + "libName": "CTRE_PhoenixTools_Sim", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simTalonSRX", + "version": "25.2.0", + "libName": "CTRE_SimTalonSRX", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simVictorSPX", + "version": "25.2.0", + "libName": "CTRE_SimVictorSPX", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simPigeonIMU", + "version": "25.2.0", + "libName": "CTRE_SimPigeonIMU", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simCANCoder", + "version": "25.2.0", + "libName": "CTRE_SimCANCoder", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProTalonFX", + "version": "25.2.0", + "libName": "CTRE_SimProTalonFX", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProTalonFXS", + "version": "25.2.0", + "libName": "CTRE_SimProTalonFXS", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProCANcoder", + "version": "25.2.0", + "libName": "CTRE_SimProCANcoder", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProPigeon2", + "version": "25.2.0", + "libName": "CTRE_SimProPigeon2", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + }, + { + "groupId": "com.ctre.phoenix6.sim", + "artifactId": "simProCANrange", + "version": "25.2.0", + "libName": "CTRE_SimProCANrange", + "headerClassifier": "headers", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64", + "linuxarm64", + "osxuniversal" + ], + "simMode": "swsim" + } + ] +} \ No newline at end of file