55package frc .robot ;
66
77import edu .wpi .first .wpilibj .Preferences ;
8+ import edu .wpi .first .wpilibj .shuffleboard .Shuffleboard ;
89import edu .wpi .first .wpilibj2 .command .Command ;
910import edu .wpi .first .wpilibj2 .command .Commands ;
1011import edu .wpi .first .wpilibj2 .command .button .CommandXboxController ;
2425import frc .robot .subsystems .swerve .SDSModuleIO ;
2526import frc .robot .subsystems .swerve .SDSModuleIOSpark ;
2627import frc .robot .subsystems .swerve .SwerveDrive ;
28+ import frc .robot .subsystems .swerve .SwerveDrive .PresetPositionType ;
2729import frc .robot .subsystems .vision .LimelightLocations ;
2830import frc .robot .subsystems .vision .Vision ;
2931import frc .robot .subsystems .vision .VisionIO ;
@@ -60,10 +62,10 @@ public RobotContainer() {
6062 elevator = new Elevator (new ElevatorIOSpark ());
6163 // manipulator = new Manipulator(new ManipulatorIOSpark());
6264 vision = new Vision (
63- swerve ::addVisionMeasurement ,
64- new VisionIOLimelight (LimelightLocations .FRONT3 , () -> swerve .getPose ().getRotation ()),
65- new VisionIOLimelight (LimelightLocations .HIGH3 , () -> swerve .getPose ().getRotation ()),
66- new VisionIOLimelight (LimelightLocations .SIDE2 , () -> swerve .getPose ().getRotation ())
65+ swerve ::addVisionMeasurement
66+ , new VisionIOLimelight (LimelightLocations .FRONT3 , () -> swerve .getPose ().getRotation ())
67+ , new VisionIOLimelight (LimelightLocations .HIGH3 , () -> swerve .getPose ().getRotation ())
68+ // , new VisionIOLimelight(LimelightLocations.SIDE2, () -> swerve.getPose().getRotation())
6769 );
6870 break ;
6971 default :
@@ -85,14 +87,13 @@ public RobotContainer() {
8587
8688 private void configureBindings () {
8789 swerve .setToAimSuppliers (
88- driverController .x ()::getAsBoolean , // aim reef
90+ driverController .leftTrigger ()::getAsBoolean , // aim reef
8991 driverController .b ()::getAsBoolean , // aim processor
9092 driverController .a ()::getAsBoolean // aim station
9193 );
92- swerve .setToPosSuppliers (
93- driverController .povLeft ()::getAsBoolean , // left reef
94- driverController .povRight ()::getAsBoolean , // right reef
95- driverController .povDown ()::getAsBoolean // processor
94+ swerve .setReefChooserSuppliers (
95+ driverController ::getRightX ,
96+ driverController ::getRightY
9697 );
9798 swerve .setElevatorHeightSupplier (elevator ::getElevatorHeight );
9899 swerve .setDefaultCommand (swerve .runDriveInputs (
@@ -108,6 +109,9 @@ private void configureBindings() {
108109 driverController .back ().onTrue (swerve .runToggleToXPosition (true ));
109110 driverController .b ().onTrue (swerve .runUpdateControlConstants ().andThen (elevator .runUpdateControlConstants ()));
110111 driverController .start ().onTrue (swerve .runSetTempPose ());
112+ driverController .povLeft ().onTrue (swerve .runTogglePresetPosition (PresetPositionType .LEFTREEF ));
113+ driverController .povRight ().onTrue (swerve .runTogglePresetPosition (PresetPositionType .RIGHTREEF ));
114+ driverController .povUp ().onTrue (swerve .runTogglePresetPosition (PresetPositionType .PROCESSOR ));
111115
112116 // if(Constants.simMode.equals(RobotMode.SIM)) {
113117 // swerve.setDefaultCommand(swerve.runSimOdometryMoveBy(
@@ -132,28 +136,49 @@ private void configureBindings() {
132136 // driverController.povRight().onTrue(elevator.runaElevatorOpenLoopPreferences());
133137 // driverController.povRight().onFalse(elevator.runElevatorOpenLoop(0));
134138
135- // auxController.a().onTrue(manipulator.runSetManipulatorPosition(ManipulatorPosition.HOME));
136- // auxController.b().onTrue(manipulator.runSetManipulatorPosition(ManipulatorPosition.INTAKE));
137- // auxController.x().onTrue(manipulator.runSetManipulatorPosition(ManipulatorPosition.CARRY));
139+ Combo alignedOverrideCombo = new Combo ("isAligned Override Combo" , 0.5 ,
140+ auxController .leftTrigger (),
141+ auxController .leftTrigger ().negate (),
142+ auxController .leftTrigger ()
143+ );
144+ alignedOverrideCombo .getTrigger ().onTrue (Commands .run (() -> {}));
145+ Shuffleboard .getTab ("Teleoperated" )
146+ .addBoolean ("Aligned Override" , alignedOverrideCombo .getTrigger ()).
147+ withPosition (4 , 2 )
148+ .withSize (1 , 1 );
138149
139150 auxController .b ().onTrue (elevator .runToElevatorPosition (ElevatorPosition .HOME ));
140151 auxController .a ().onTrue (elevator .runToElevatorPosition (ElevatorPosition .L1 ));
141152 auxController .x ().onTrue (elevator .runToElevatorPosition (ElevatorPosition .L2 ));
142153 auxController .y ().onTrue (elevator .runToElevatorPosition (ElevatorPosition .L3 ));
143- auxController .leftBumper ().onTrue (elevator .runIntakeEffector (-4 , 4 ));
154+ auxController .leftBumper ().onTrue (elevator .runIntakeEffector (
155+ 5 , // effector volts
156+ -2 , // funnel volts
157+ () -> swerve .isAligned () || alignedOverrideCombo .getTrigger ().getAsBoolean () // is aligned supplier
158+ // () -> true
159+ ));
144160 auxController .leftBumper ().onFalse (elevator .runStopIntakeEffector ());
145- auxController .leftTrigger ().onTrue (elevator .runEffector (-6 , 3 ));
146- auxController .leftTrigger ().onFalse (elevator .runEffector (0 , 0 ));
147- auxController .rightBumper ().onTrue (elevator .runIntakeFunnel (-2 ));
148- auxController .rightBumper ().onFalse (elevator .runSetFunnelVolts (0 ));
161+
162+ // auxController.leftBumper().onTrue(elevator.runEffector(-5, 5));
163+ // auxController.leftBumper().onFalse(elevator.runEffector(0, 0));
164+ // should auto adjust speed for L1
165+ // auxController.leftTrigger().onTrue(elevator.runEffector(-6, 3));
166+ // auxController.leftTrigger().onFalse(elevator.runEffector(0, 0));
167+ auxController .leftTrigger ().onTrue (elevator .runUpdateControlConstants ());
168+ // auxController.rightBumper().onTrue(elevator.runIntakeFunnel(-2));
169+ // auxController.rightBumper().onFalse(elevator.runSetFunnelVolts(0));
170+
149171 auxController .leftStick ().onTrue (elevator .runSetDealgaeVolts (5 ));
150172 auxController .leftStick ().onFalse (elevator .runSetDealgaeVolts (0 ));
151173 auxController .rightStick ().onTrue (elevator .runSetDealgaeVolts (-8 ));
152174 auxController .rightStick ().onFalse (elevator .runSetDealgaeVolts (0 ));
153-
154175 auxController .povUp ().whileTrue (elevator .runJogElevatorPosition (0.001 ));
155176 auxController .povDown ().whileTrue (elevator .runJogElevatorPosition (-0.001 ));
156177
178+ // auxController.a().onTrue(manipulator.runSetManipulatorPosition(ManipulatorPosition.HOME));
179+ // auxController.b().onTrue(manipulator.runSetManipulatorPosition(ManipulatorPosition.INTAKE));
180+ // auxController.x().onTrue(manipulator.runSetManipulatorPosition(ManipulatorPosition.CARRY));
181+
157182 // Combo testCombo = new Combo("test combo", 1,
158183 // driverController.a(),
159184 // driverController.a().negate(),
0 commit comments