diff --git a/src/main/deploy/pathplanner/autos/X. LeftTrench-Neutral-Trench-Shoot-Neutral-Shoot.auto b/src/main/deploy/pathplanner/autos/X. LeftTrench-Neutral-Trench-Shoot-Neutral-Shoot.auto new file mode 100644 index 0000000..5f64882 --- /dev/null +++ b/src/main/deploy/pathplanner/autos/X. LeftTrench-Neutral-Trench-Shoot-Neutral-Shoot.auto @@ -0,0 +1,149 @@ +{ + "version": "2025.0", + "command": { + "type": "sequential", + "data": { + "commands": [ + { + "type": "named", + "data": { + "name": "Intake Extended" + } + }, + { + "type": "named", + "data": { + "name": "Intake Reference" + } + }, + { + "type": "parallel", + "data": { + "commands": [ + { + "type": "path", + "data": { + "pathName": "LeftTrench-Neutral-Trench-Shoot" + } + }, + { + "type": "sequential", + "data": { + "commands": [ + { + "type": "wait", + "data": { + "waitTime": 1.5 + } + }, + { + "type": "named", + "data": { + "name": "Labubu Growl" + } + }, + { + "type": "wait", + "data": { + "waitTime": 4.2 + } + }, + { + "type": "named", + "data": { + "name": "Robot Rev Up" + } + }, + { + "type": "wait", + "data": { + "waitTime": 1.5 + } + }, + { + "type": "named", + "data": { + "name": "Robot Shoot" + } + } + ] + } + } + ] + } + }, + { + "type": "named", + "data": { + "name": "Intake Extended" + } + }, + { + "type": "named", + "data": { + "name": "Intake Reference" + } + }, + { + "type": "parallel", + "data": { + "commands": [ + { + "type": "path", + "data": { + "pathName": "ShotL-Neutral" + } + }, + { + "type": "sequential", + "data": { + "commands": [ + { + "type": "wait", + "data": { + "waitTime": 2.0 + } + }, + { + "type": "named", + "data": { + "name": "Labubu Growl" + } + }, + { + "type": "wait", + "data": { + "waitTime": 1.0 + } + }, + { + "type": "named", + "data": { + "name": "Robot Rev Up" + } + }, + { + "type": "wait", + "data": { + "waitTime": 1.5 + } + }, + { + "type": "named", + "data": { + "name": "Robot Shoot" + } + } + ] + } + } + ] + } + } + ] + } + }, + "resetOdom": true, + "folder": null, + "choreoAuto": false +} \ No newline at end of file diff --git a/src/main/deploy/pathplanner/autos/X. LeftTrench-Neutral-Trench-Shoot.auto b/src/main/deploy/pathplanner/autos/X. LeftTrench-Neutral-Trench-Shoot.auto new file mode 100644 index 0000000..fae9ba2 --- /dev/null +++ b/src/main/deploy/pathplanner/autos/X. LeftTrench-Neutral-Trench-Shoot.auto @@ -0,0 +1,87 @@ +{ + "version": "2025.0", + "command": { + "type": "sequential", + "data": { + "commands": [ + { + "type": "named", + "data": { + "name": "Intake Extended" + } + }, + { + "type": "named", + "data": { + "name": "Intake Reference" + } + }, + { + "type": "parallel", + "data": { + "commands": [ + { + "type": "path", + "data": { + "pathName": "LeftTrench-Neutral-Trench-Shoot" + } + }, + { + "type": "sequential", + "data": { + "commands": [ + { + "type": "wait", + "data": { + "waitTime": 1.5 + } + }, + { + "type": "named", + "data": { + "name": "Labubu Growl" + } + }, + { + "type": "wait", + "data": { + "waitTime": 5.0 + } + }, + { + "type": "named", + "data": { + "name": "Robot Rev Up" + } + }, + { + "type": "wait", + "data": { + "waitTime": 1.5 + } + }, + { + "type": "named", + "data": { + "name": "Robot Shoot" + } + } + ] + } + } + ] + } + }, + { + "type": "named", + "data": { + "name": "Intake Extended" + } + } + ] + } + }, + "resetOdom": true, + "folder": null, + "choreoAuto": false +} \ No newline at end of file diff --git a/src/main/deploy/pathplanner/autos/X. RightTrench-Neutral-Trench-Shoot-PlayerStation-Shoot.auto b/src/main/deploy/pathplanner/autos/X. RightTrench-Neutral-Trench-Shoot-PlayerStation-Shoot.auto index a6e80b1..43ba410 100644 --- a/src/main/deploy/pathplanner/autos/X. RightTrench-Neutral-Trench-Shoot-PlayerStation-Shoot.auto +++ b/src/main/deploy/pathplanner/autos/X. RightTrench-Neutral-Trench-Shoot-PlayerStation-Shoot.auto @@ -45,7 +45,7 @@ { "type": "wait", "data": { - "waitTime": 11.6 + "waitTime": 4.5 } }, { @@ -87,7 +87,7 @@ { "type": "wait", "data": { - "waitTime": 2.0 + "waitTime": 1.5 } }, { diff --git a/src/main/deploy/pathplanner/paths/LeftTrench-Neutral-Trench-Shoot.path b/src/main/deploy/pathplanner/paths/LeftTrench-Neutral-Trench-Shoot.path new file mode 100644 index 0000000..929a6dc --- /dev/null +++ b/src/main/deploy/pathplanner/paths/LeftTrench-Neutral-Trench-Shoot.path @@ -0,0 +1,173 @@ +{ + "version": "2025.0", + "waypoints": [ + { + "anchor": { + "x": 3.594630952380953, + "y": 7.414654761904762 + }, + "prevControl": null, + "nextControl": { + "x": 4.156107142857143, + "y": 7.457845238095238 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 7.460178571428572, + "y": 7.198702380952382 + }, + "prevControl": { + "x": 6.952690476190477, + "y": 7.522630952380953 + }, + "nextControl": { + "x": 7.89244195981076, + "y": 6.922789579857368 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 7.632940476190477, + "y": 4.71525 + }, + "prevControl": { + "x": 7.6161014126744035, + "y": 4.964682247193305 + }, + "nextControl": { + "x": 7.682415698697642, + "y": 3.9823876339562227 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 6.402011904761906, + "y": 6.561642857142857 + }, + "prevControl": { + "x": 6.45205334133696, + "y": 6.141294789912411 + }, + "nextControl": { + "x": 6.240047619047619, + "y": 7.922142857142857 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 3.594630952380953, + "y": 7.414654761904762 + }, + "prevControl": { + "x": 3.8777698932069846, + "y": 7.374206341786758 + }, + "nextControl": { + "x": 3.2690412087912097, + "y": 7.461167582417582 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 2.61204761904762, + "y": 6.216119047619048 + }, + "prevControl": { + "x": 3.0007619047619056, + "y": 6.4644642857142856 + }, + "nextControl": null, + "isLocked": false, + "linkedName": null + } + ], + "rotationTargets": [], + "constraintZones": [ + { + "name": "Constraints Zone", + "minWaypointRelativePos": 1.275434243176181, + "maxWaypointRelativePos": 1.8709677419354975, + "constraints": { + "maxVelocity": 1.2, + "maxAcceleration": 3.0, + "maxAngularVelocity": 600.0, + "maxAngularAcceleration": 750.0, + "nominalVoltage": 12.0, + "unlimited": false + } + } + ], + "pointTowardsZones": [ + { + "fieldPosition": { + "x": 7.0, + "y": 0.0 + }, + "rotationOffset": 0.0, + "minWaypointRelativePos": 1.3067552602436252, + "maxWaypointRelativePos": 2.0198511166253303, + "name": "Point Towards Zone" + }, + { + "fieldPosition": { + "x": 0.0, + "y": 7.4 + }, + "rotationOffset": 180.0, + "minWaypointRelativePos": 0.0, + "maxWaypointRelativePos": 0.6910299003322272, + "name": "Point Towards Zone" + }, + { + "fieldPosition": { + "x": 0.0, + "y": 7.4 + }, + "rotationOffset": 0.0, + "minWaypointRelativePos": 2.5913621262458837, + "maxWaypointRelativePos": 4.28, + "name": "Point Towards Zone" + }, + { + "fieldPosition": { + "x": 4.612, + "y": 4.021 + }, + "rotationOffset": 180.0, + "minWaypointRelativePos": 4.529346622369888, + "maxWaypointRelativePos": 5.0, + "name": "Point Towards Zone" + } + ], + "eventMarkers": [], + "globalConstraints": { + "maxVelocity": 3.0, + "maxAcceleration": 3.0, + "maxAngularVelocity": 600.0, + "maxAngularAcceleration": 750.0, + "nominalVoltage": 12.0, + "unlimited": true + }, + "goalEndState": { + "velocity": 0.0, + "rotation": 133.0 + }, + "reversed": false, + "folder": null, + "idealStartingState": { + "velocity": 0.0, + "rotation": 0.0 + }, + "useDefaultConstraints": false +} \ No newline at end of file diff --git a/src/main/deploy/pathplanner/paths/RightTrench-Neutral-Trench-Shoot.path b/src/main/deploy/pathplanner/paths/RightTrench-Neutral-Trench-Shoot.path index 33f2f12..cd28585 100644 --- a/src/main/deploy/pathplanner/paths/RightTrench-Neutral-Trench-Shoot.path +++ b/src/main/deploy/pathplanner/paths/RightTrench-Neutral-Trench-Shoot.path @@ -16,15 +16,15 @@ }, { "anchor": { - "x": 7.595564102564104, + "x": 7.470976190476191, "y": 0.9884102564102579 }, "prevControl": { - "x": 7.392948649818514, + "x": 7.2683607377306005, "y": 0.7987129676949314 }, "nextControl": { - "x": 7.9699166450787695, + "x": 7.845328732990856, "y": 1.3388951842695742 }, "isLocked": false, @@ -32,31 +32,31 @@ }, { "anchor": { - "x": 7.793243589743589, - "y": 3.4070769230769233 + "x": 7.595564102564104, + "y": 3.3979404761904766 }, "prevControl": { - "x": 7.776404526227516, - "y": 3.6565091702702275 + "x": 7.578725039048031, + "y": 3.6473727233837807 }, "nextControl": { - "x": 7.842718812250754, - "y": 2.674214557033146 + "x": 7.645039325071269, + "y": 2.665078110146699 }, "isLocked": false, "linkedName": null }, { "anchor": { - "x": 7.4211410256410275, + "x": 7.3306071428571435, "y": 0.9884102564102579 }, "prevControl": { - "x": 7.693106679552213, + "x": 7.602572796768329, "y": 1.2858726903756175 }, "nextControl": { - "x": 7.049038461538463, + "x": 6.958504578754579, "y": 0.5814230769230777 }, "isLocked": false, @@ -96,10 +96,10 @@ "constraintZones": [ { "name": "Constraints Zone", - "minWaypointRelativePos": 0, - "maxWaypointRelativePos": 5.0, + "minWaypointRelativePos": 1.255583126550872, + "maxWaypointRelativePos": 1.7617866004962806, "constraints": { - "maxVelocity": 1.0, + "maxVelocity": 1.2, "maxAcceleration": 3.0, "maxAngularVelocity": 600.0, "maxAngularAcceleration": 750.0, diff --git a/src/main/deploy/pathplanner/paths/ShotL-Neutral.path b/src/main/deploy/pathplanner/paths/ShotL-Neutral.path new file mode 100644 index 0000000..5ffabf4 --- /dev/null +++ b/src/main/deploy/pathplanner/paths/ShotL-Neutral.path @@ -0,0 +1,215 @@ +{ + "version": "2025.0", + "waypoints": [ + { + "anchor": { + "x": 2.612, + "y": 6.216 + }, + "prevControl": null, + "nextControl": { + "x": 2.958273419839204, + "y": 6.2585504440271835 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 3.595, + "y": 7.415 + }, + "prevControl": { + "x": 2.756519548465237, + "y": 7.377436791520136 + }, + "nextControl": { + "x": 4.203016743276786, + "y": 7.4422386310797695 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 5.786547619047619, + "y": 7.285083333333334 + }, + "prevControl": { + "x": 5.572245332631391, + "y": 7.447981654135905 + }, + "nextControl": { + "x": 6.56590740520863, + "y": 6.692665946707327 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 5.786547619047619, + "y": 3.959416666666667 + }, + "prevControl": { + "x": 5.556087373096201, + "y": 4.228987726737335 + }, + "nextControl": { + "x": 6.036389134520053, + "y": 3.6671751917974453 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 6.58557142857143, + "y": 4.27254761904762 + }, + "prevControl": { + "x": 6.494472316478745, + "y": 3.9148971897508758 + }, + "nextControl": { + "x": 6.681350061848797, + "y": 4.648569607870673 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 6.315630952380953, + "y": 7.285083333333334 + }, + "prevControl": { + "x": 6.842509529997394, + "y": 7.164317956805786 + }, + "nextControl": { + "x": 5.287977497592714, + "y": 7.520630880111148 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 3.594630952380953, + "y": 7.414654761904762 + }, + "prevControl": { + "x": 3.844619709717091, + "y": 7.417025670071149 + }, + "nextControl": { + "x": 3.0970699426307586, + "y": 7.409935863847653 + }, + "isLocked": false, + "linkedName": null + }, + { + "anchor": { + "x": 2.612, + "y": 6.216 + }, + "prevControl": { + "x": 2.844455287324918, + "y": 6.424977756526983 + }, + "nextControl": null, + "isLocked": false, + "linkedName": null + } + ], + "rotationTargets": [], + "constraintZones": [ + { + "name": "Constraints Zone", + "minWaypointRelativePos": 2.650124069478908, + "maxWaypointRelativePos": 2.8709677419354973, + "constraints": { + "maxVelocity": 2.0, + "maxAcceleration": 3.0, + "maxAngularVelocity": 600.0, + "maxAngularAcceleration": 750.0, + "nominalVoltage": 12.0, + "unlimited": false + } + } + ], + "pointTowardsZones": [ + { + "fieldPosition": { + "x": 6.0, + "y": 0.0 + }, + "rotationOffset": 0.0, + "minWaypointRelativePos": 2.306755260243625, + "maxWaypointRelativePos": 3.3975186104218427, + "name": "Point Towards Zone" + }, + { + "fieldPosition": { + "x": 0.0, + "y": 7.4 + }, + "rotationOffset": 180.0, + "minWaypointRelativePos": 0.0, + "maxWaypointRelativePos": 1.4, + "name": "Point Towards Zone" + }, + { + "fieldPosition": { + "x": 0.0, + "y": 7.4 + }, + "rotationOffset": 0.0, + "minWaypointRelativePos": 4.689826302729521, + "maxWaypointRelativePos": 6.28, + "name": "Point Towards Zone" + }, + { + "fieldPosition": { + "x": 4.612, + "y": 4.021 + }, + "rotationOffset": 180.0, + "minWaypointRelativePos": 6.529346622369888, + "maxWaypointRelativePos": 7.0, + "name": "Point Towards Zone" + }, + { + "fieldPosition": { + "x": 6.0, + "y": 0.0 + }, + "rotationOffset": 180.0, + "minWaypointRelativePos": 3.7, + "maxWaypointRelativePos": 4.5786600496277865, + "name": "Point Towards Zone" + } + ], + "eventMarkers": [], + "globalConstraints": { + "maxVelocity": 3.0, + "maxAcceleration": 3.0, + "maxAngularVelocity": 600.0, + "maxAngularAcceleration": 750.0, + "nominalVoltage": 12.0, + "unlimited": true + }, + "goalEndState": { + "velocity": 0.0, + "rotation": 133.0 + }, + "reversed": false, + "folder": null, + "idealStartingState": { + "velocity": 0.0, + "rotation": 133.0 + }, + "useDefaultConstraints": false +} \ No newline at end of file diff --git a/src/main/deploy/pathplanner/paths/ShotRightT-PlayerStation.path b/src/main/deploy/pathplanner/paths/ShotRightT-PlayerStation.path index 68761d1..d901b4f 100644 --- a/src/main/deploy/pathplanner/paths/ShotRightT-PlayerStation.path +++ b/src/main/deploy/pathplanner/paths/ShotRightT-PlayerStation.path @@ -49,7 +49,7 @@ { "name": "Constraints Zone", "minWaypointRelativePos": 0, - "maxWaypointRelativePos": 2.0, + "maxWaypointRelativePos": 0.0, "constraints": { "maxVelocity": 1.0, "maxAcceleration": 3.0, diff --git a/src/main/java/frc4388/robot/RobotContainer.java b/src/main/java/frc4388/robot/RobotContainer.java index 1f7df4f..be41220 100644 --- a/src/main/java/frc4388/robot/RobotContainer.java +++ b/src/main/java/frc4388/robot/RobotContainer.java @@ -163,9 +163,9 @@ public class RobotContainer { new WaitUntilCommand(m_robotShooter::isShooterUpToSpeed), new InstantCommand(() -> m_robotIntake.setMode(IntakeMode.Idle), m_robotIntake), new InstantCommand(()-> m_robotShooter.allowShooting(), m_robotShooter), - new WaitCommand(3), + new WaitCommand(2.75), IntakeRetracted, - new WaitCommand(4.5), + new WaitCommand(4.4), new InstantCommand(() -> m_robotShooter.denyShooting(), m_robotShooter), new InstantCommand(()->m_robotShooter.spinUpIdle(), m_robotShooter) ); @@ -184,9 +184,9 @@ public class RobotContainer { DeferredBlock.addBlock(() -> { // m_robotIntake.setMode(IntakeMode.Idle); // m_robotShooter.spinUpIdle(); + m_robotIntake.io.updateGains(); TimesNegativeOne.update(); FieldPositions.update(); - m_robotIntake.io.updateGains(); m_robotShooter.io.updateGains(); }, true); @@ -261,7 +261,7 @@ public class RobotContainer { .onTrue(new InstantCommand(() -> m_robotSwerveDrive.shiftDown())); - + new JoystickButton(getDeadbandedDriverController(), XboxController.BACK_BUTTON) .onTrue(new InstantCommand(() -> { m_robotIntake.io.updateGains(); diff --git a/src/main/java/frc4388/robot/constants/BuildConstants.java b/src/main/java/frc4388/robot/constants/BuildConstants.java index 5ce7836..1ab5650 100644 --- a/src/main/java/frc4388/robot/constants/BuildConstants.java +++ b/src/main/java/frc4388/robot/constants/BuildConstants.java @@ -7,12 +7,12 @@ public final class BuildConstants { public static final String MAVEN_GROUP = ""; public static final String MAVEN_NAME = "2026KPopRobotHunters"; public static final String VERSION = "unspecified"; - public static final int GIT_REVISION = 226; - public static final String GIT_SHA = "3be9938956b4cd7615cbba424e25342aa67b7e38"; - public static final String GIT_DATE = "2026-04-09 09:28:35 MDT"; + public static final int GIT_REVISION = 229; + public static final String GIT_SHA = "fa0342a67239f145f381f48ba48e506cdb03026f"; + public static final String GIT_DATE = "2026-04-09 12:40:33 MDT"; public static final String GIT_BRANCH = "New-Intake"; - public static final String BUILD_DATE = "2026-04-09 11:40:18 MDT"; - public static final long BUILD_UNIX_TIME = 1775756418116L; + public static final String BUILD_DATE = "2026-04-09 17:42:53 MDT"; + public static final long BUILD_UNIX_TIME = 1775778173177L; public static final int DIRTY = 1; private BuildConstants(){} diff --git a/src/main/java/frc4388/robot/subsystems/intake/IntakeConstants.java b/src/main/java/frc4388/robot/subsystems/intake/IntakeConstants.java index a5bda68..e884d92 100644 --- a/src/main/java/frc4388/robot/subsystems/intake/IntakeConstants.java +++ b/src/main/java/frc4388/robot/subsystems/intake/IntakeConstants.java @@ -57,14 +57,14 @@ public class IntakeConstants { public static final ConfigurableDouble ARM_LIMIT_RETRACTED = new ConfigurableDouble("Arm angle retracted", 0.); public static final ConfigurableDouble ARM_LIMIT_EXTENDED = new ConfigurableDouble("Arm angle extended", 1.8); //new soft limt - public static final ConfigurableDouble ARM_EXTEND_PERCENT_OUTPUT = new ConfigurableDouble("Arm extend % output", 0.4); + public static final ConfigurableDouble ARM_EXTEND_PERCENT_OUTPUT = new ConfigurableDouble("Arm extend % output", 0.5); public static final ConfigurableDouble ARM_RETRACT_PERCENT_OUTPUT = new ConfigurableDouble("Arm retract % output", -0.2); public static final ConfigurableDouble ARM_AUTO_OUTPUT = new ConfigurableDouble("Arm auto output", -0.07); public static final ConfigurableDouble ARM_REVERSE_ROLLER_RANGE = new ConfigurableDouble("Arm reverse roller range", 1.17); public static final ConfigurableDouble ROLLER_PERCENT_OUTPUT = new ConfigurableDouble("Roller Percent Output", .50); - public static final ConfigurableDouble ROLLER_LABUBU_GROWL_PERCENT_OUTPUT = new ConfigurableDouble("Roller Labubu Growl Percent Output", .75); + public static final ConfigurableDouble ROLLER_LABUBU_GROWL_PERCENT_OUTPUT = new ConfigurableDouble("Roller Labubu Growl Percent Output", .7); public static final ConfigurableDouble ROLLER_EJECT_PERCENT_OUTPUT = new ConfigurableDouble("Roller eject Percent Output", -.20); public static final ConfigurableDouble ROLLER_IDLE_PERCENT_OUTPUT = new ConfigurableDouble("Roller IDLE Percent Output", .20); public static final ConfigurableDouble ROLLER_RETRACT_PERCENT_OUTPUT = new ConfigurableDouble("Roller Retract Output", .40); diff --git a/src/main/java/frc4388/robot/subsystems/shooter/ShooterConstants.java b/src/main/java/frc4388/robot/subsystems/shooter/ShooterConstants.java index 63da997..72d2c34 100644 --- a/src/main/java/frc4388/robot/subsystems/shooter/ShooterConstants.java +++ b/src/main/java/frc4388/robot/subsystems/shooter/ShooterConstants.java @@ -26,7 +26,7 @@ public class ShooterConstants { // public static final ConfigurableDouble SHOOTER_RESTING_VELOCITY = new ConfigurableDouble("Shooter Resting Velocity", 0.0); - public static final ConfigurableDouble SHOOTER_IDLE_PERCENT_OUTPUT = new ConfigurableDouble("Shooter idle % output", 0.0);//-0.15); + public static final ConfigurableDouble SHOOTER_IDLE_PERCENT_OUTPUT = new ConfigurableDouble("Shooter idle % output", -0.15); // public static final ConfigurableDouble SHOOTER_IDLE_TARGET_VEL = new ConfigurableDouble("Shooter idle target velocity", 20.); // public static final ConfigurableDouble SHOOTER_IDLE_MAX_CURRENT = new ConfigurableDouble("Shooter Idle max current", 10);