From: iefomit Date: Tue, 24 Feb 2026 23:44:02 +0000 (-0800) Subject: Merge branch 'main' into trench-assist-mega X-Git-Url: https://git.taranathan.com/?a=commitdiff_plain;h=afcce12da961e56c9e427488b3e018075a85c217;p=FRC2026.git Merge branch 'main' into trench-assist-mega --- afcce12da961e56c9e427488b3e018075a85c217 diff --cc src/main/java/frc/robot/controls/PS5ControllerDriverConfig.java index d38caa5,fd5e459..ee9ffd0 --- a/src/main/java/frc/robot/controls/PS5ControllerDriverConfig.java +++ b/src/main/java/frc/robot/controls/PS5ControllerDriverConfig.java @@@ -74,17 -79,23 +79,30 @@@ public class PS5ControllerDriverConfig interrupted -> getDrivetrain().setStateDeadband(true), () -> false, getDrivetrain()).withTimeout(2)); + // Trench align + driver.get(DPad.LEFT).onTrue(new InstantCommand(() -> getDrivetrain().setTrenchAlign(true))) + .onFalse(new InstantCommand(() -> getDrivetrain().setTrenchAlign(false))); + + // Trench assist + driver.get(DPad.RIGHT).onTrue(new InstantCommand(() -> getDrivetrain().setTrenchAssist(true))) + .onFalse(new InstantCommand(() -> getDrivetrain().setTrenchAssist(false))); + + // Reverse motors - if (intake != null && spindexer != null && shooter != null){ - driver.get(PS5Button.CIRCLE).onTrue(new InstantCommand(()->{ ++ if (intake != null && spindexer != null && shooter != null) { ++ driver.get(PS5Button.CIRCLE).onTrue(new InstantCommand(() -> { + reverseMotors = new ReverseMotors(intake, spindexer); + reverseMotors.schedule(); - }) - ).onFalse(new InstantCommand(()->{ - if(reverseMotors != null){ ++ })).onFalse(new InstantCommand(() -> { ++ if (reverseMotors != null) { + reverseMotors.cancel(); + } + })); + } + // Intake if (intake != null) { - driver.get(PS5Button.CROSS).onTrue(new InstantCommand(() -> { + // Toggle intake + driver.get(PS5Button.RIGHT_TRIGGER).onTrue(new InstantCommand(() -> { if (intakeBoolean) { intake.extend(); intake.spinStart(); @@@ -97,24 -108,24 +115,24 @@@ })); // Retract if hold for 3 seconds - driver.get(PS5Button.CROSS).debounce(3.0).onTrue(new InstantCommand(() -> { - driver.get(PS5Button.RIGHT_TRIGGER).debounce(3.0).onTrue(new InstantCommand(()->{ ++ driver.get(PS5Button.RIGHT_TRIGGER).debounce(3.0).onTrue(new InstantCommand(() -> { intake.retract(); intakeBoolean = true; })); // Calibration - driver.get(PS5Button.OPTIONS).onTrue(new InstantCommand(() -> { - driver.get(PS5Button.PS).onTrue(new InstantCommand(()->{ ++ driver.get(PS5Button.PS).onTrue(new InstantCommand(() -> { intake.calibrate(); - })).onFalse(new InstantCommand(()->{ + })).onFalse(new InstantCommand(() -> { intake.stopCalibrating(); })); } // Spindexer - if (spindexer != null){ + if (spindexer != null) { // Will only run if we are not calling default shoot command - driver.get(PS5Button.LB).onTrue(new InstantCommand(() -> spindexer.maxSpindexer())) - driver.get(PS5Button.LEFT_TRIGGER).onTrue(new InstantCommand(()-> spindexer.maxSpindexer())) - .onFalse(new InstantCommand(()-> spindexer.stopSpindexer())); ++ driver.get(PS5Button.LEFT_TRIGGER).onTrue(new InstantCommand(() -> spindexer.maxSpindexer())) + .onFalse(new InstantCommand(() -> spindexer.stopSpindexer())); } // Auto shoot @@@ -136,6 -149,30 +156,28 @@@ })).onFalse(new InstantCommand(() -> { climb.stopCalibrating(); })); + + // Climb retract - driver.get(PS5Button.CROSS).onTrue(new InstantCommand(()-> { ++ driver.get(PS5Button.CROSS).onTrue(new InstantCommand(() -> { + climb.retract(); + })); + + // Drive to climb position and rumble + driver.get(PS5Button.TRIANGLE).onTrue(new SequentialCommandGroup( - new ClimbDriveCommand(climb, getDrivetrain()), - new InstantCommand(()-> this.startRumble()), - new WaitCommand(1), - new InstantCommand(()-> this.endRumble()) - ) - ); ++ new ClimbDriveCommand(climb, getDrivetrain()), ++ new InstantCommand(() -> this.startRumble()), ++ new WaitCommand(1), ++ new InstantCommand(() -> this.endRumble()))); + } + + // Hood + if (hood != null) { + // Calibration - driver.get(PS5Button.PS).onTrue(new InstantCommand(()->{ ++ driver.get(PS5Button.PS).onTrue(new InstantCommand(() -> { + hood.calibrate(); - })).onFalse(new InstantCommand(()->{ ++ })).onFalse(new InstantCommand(() -> { + hood.stopCalibrating(); + })); } }