From ae957875de19283d8340e445275b3f38199c999c Mon Sep 17 00:00:00 2001 From: iefomit Date: Wed, 18 Mar 2026 15:25:41 -0700 Subject: [PATCH] add sd postings --- src/main/java/frc/robot/subsystems/Climb/LinearClimb.java | 2 ++ src/main/java/frc/robot/subsystems/Intake/Intake.java | 6 ++++++ src/main/java/frc/robot/subsystems/hood/Hood.java | 6 ++++++ src/main/java/frc/robot/subsystems/shooter/Shooter.java | 5 ++++- .../java/frc/robot/subsystems/spindexer/Spindexer.java | 8 ++++++++ src/main/java/frc/robot/subsystems/turret/Turret.java | 3 +++ 6 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/subsystems/Climb/LinearClimb.java b/src/main/java/frc/robot/subsystems/Climb/LinearClimb.java index 9ca7708..14d97d3 100644 --- a/src/main/java/frc/robot/subsystems/Climb/LinearClimb.java +++ b/src/main/java/frc/robot/subsystems/Climb/LinearClimb.java @@ -153,6 +153,8 @@ public class LinearClimb extends SubsystemBase implements LinearClimbIO { SmartDashboard.putNumber("Climb PID_Setpoint_Rotations", pid.getSetpoint()); SmartDashboard.putNumber("Climb Motor_Actual_Rotations", motor.getPosition().getValueAsDouble()); SmartDashboard.putNumber("Climb Motor_Actual_Meters", inputs.positionMeters); + SmartDashboard.putBoolean("Climb Calibrated", !calibrating); + SmartDashboard.putBoolean("Climb At Setpoint", atSetPoint()); Logger.recordOutput("LinearClimb setpointMeters", Units.rotationsToRadians(pid.getSetpoint()) * ClimbConstants.WHEEL_RADIUS / ClimbConstants.CLIMB_GEAR_RATIO); diff --git a/src/main/java/frc/robot/subsystems/Intake/Intake.java b/src/main/java/frc/robot/subsystems/Intake/Intake.java index f4bfdee..a01b87e 100644 --- a/src/main/java/frc/robot/subsystems/Intake/Intake.java +++ b/src/main/java/frc/robot/subsystems/Intake/Intake.java @@ -24,6 +24,7 @@ import edu.wpi.first.wpilibj.smartdashboard.MechanismLigament2d; import edu.wpi.first.wpilibj.smartdashboard.MechanismRoot2d; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import edu.wpi.first.wpilibj.util.Color8Bit; +import edu.wpi.first.wpilibj2.command.InstantCommand; import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.constants.Constants; import frc.robot.constants.IdConstants; @@ -147,6 +148,8 @@ public class Intake extends SubsystemBase implements IntakeIO{ // add some test commands. SmartDashboard.putData("Extension Mechanism", mechanism); + SmartDashboard.putData("Intake Calibrate", new InstantCommand(() -> calibrate())); + SmartDashboard.putData("Intake Stop Calibrating", new InstantCommand(() -> stopCalibrating())); if (RobotBase.isSimulation()) { // Extender simulation @@ -193,6 +196,9 @@ public class Intake extends SubsystemBase implements IntakeIO{ updateInputs(); Logger.processInputs("Intake", inputs); + + SmartDashboard.putBoolean("Intake Calibrated", !calibrating); + SmartDashboard.putBoolean("Intake At Setpoint", Math.abs(inchExtension - setpointInches) < 0.5); } public void simulationPeriodic(){ diff --git a/src/main/java/frc/robot/subsystems/hood/Hood.java b/src/main/java/frc/robot/subsystems/hood/Hood.java index 1959139..a121173 100644 --- a/src/main/java/frc/robot/subsystems/hood/Hood.java +++ b/src/main/java/frc/robot/subsystems/hood/Hood.java @@ -64,6 +64,9 @@ public class Hood extends SubsystemBase implements HoodIO { SmartDashboard.putData("max", new InstantCommand(() -> setFieldRelativeTarget(new Rotation2d(Units.degreesToRadians(HoodConstants.MAX_ANGLE)), 0))); SmartDashboard.putData("medium", new InstantCommand(() -> setFieldRelativeTarget(new Rotation2d(Units.degreesToRadians((HoodConstants.MAX_ANGLE + HoodConstants.MIN_ANGLE) / 2)), 0))); SmartDashboard.putData("min", new InstantCommand(() -> setFieldRelativeTarget(new Rotation2d(Units.degreesToRadians(HoodConstants.MIN_ANGLE)), 0))); + + SmartDashboard.putData("Hood Calibrate", new InstantCommand(() -> calibrate())); + SmartDashboard.putData("Hood Stop Calibrating", new InstantCommand(() -> stopCalibrating())); } /** @@ -148,6 +151,9 @@ public class Hood extends SubsystemBase implements HoodIO { Logger.recordOutput("Hood/velocitySetpoint", goalVelocityRadPerSec / HoodConstants.HOOD_GEAR_RATIO); Logger.recordOutput("Hood/SetpointDeg", Units.radiansToDegrees(goalAngle.getRadians())); + SmartDashboard.putBoolean("Hood Calibrated", !calibrating); + SmartDashboard.putBoolean("Hood At Setpoint", Math.abs(getPositionDeg() - goalAngle.getDegrees()) < 2.0); + } public void calibrate(){ diff --git a/src/main/java/frc/robot/subsystems/shooter/Shooter.java b/src/main/java/frc/robot/subsystems/shooter/Shooter.java index 5e751e2..71f6733 100644 --- a/src/main/java/frc/robot/subsystems/shooter/Shooter.java +++ b/src/main/java/frc/robot/subsystems/shooter/Shooter.java @@ -81,7 +81,10 @@ public class Shooter extends SubsystemBase implements ShooterIO { Logger.recordOutput("Shooter/realVelocity", shooterMotorLeft.getVelocity().getValueAsDouble() * ShooterConstants.SHOOTER_LAUNCH_DIAMETER); Logger.recordOutput("Shooter/targetVelocity", shooterTargetSpeed); - SmartDashboard.putString("WON AUTO?", (HubActive.wonAuto()) ? "WOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOON" : "lost"); + SmartDashboard.putBoolean("Shooter At Speed", atTargetSpeed()); + SmartDashboard.putBoolean("Shooter Running", shooterTargetSpeed > 0); + + SmartDashboard.putString("WON AUTO?", (HubActive.wonAuto()) ? "WOOOOOOON" : "lost"); } /** diff --git a/src/main/java/frc/robot/subsystems/spindexer/Spindexer.java b/src/main/java/frc/robot/subsystems/spindexer/Spindexer.java index 53ed3e9..0f06b8a 100644 --- a/src/main/java/frc/robot/subsystems/spindexer/Spindexer.java +++ b/src/main/java/frc/robot/subsystems/spindexer/Spindexer.java @@ -6,6 +6,7 @@ import com.ctre.phoenix6.hardware.TalonFX; import org.littletonrobotics.junction.Logger; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; +import edu.wpi.first.wpilibj2.command.InstantCommand; import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.constants.Constants; import frc.robot.constants.IdConstants; @@ -28,6 +29,10 @@ public class Spindexer extends SubsystemBase implements SpindexerIO { limitConfig.SupplyCurrentLowerLimit = SpindexerConstants.currentLimit; limitConfig.SupplyCurrentLowerTime = 1.5; motor.getConfigurator().apply(limitConfig); + + SmartDashboard.putData("Spindexer Run Forward", new InstantCommand(() -> maxSpindexer())); + SmartDashboard.putData("Spindexer Run Reverse", new InstantCommand(() -> reverseSpindexer())); + SmartDashboard.putData("Spindexer Stop", new InstantCommand(() -> stopSpindexer())); } public enum SpindexerState { @@ -56,6 +61,9 @@ public class Spindexer extends SubsystemBase implements SpindexerIO { double velocityThreshold = SpindexerConstants.spindexerVelocityWithBall * power; SmartDashboard.putNumber("Spindexer Ball Count", ballCount); + SmartDashboard.putBoolean("Spindexer Running", state == SpindexerState.MAX || state == SpindexerState.CUSTOM); + SmartDashboard.putBoolean("Spindexer Has Ball", ballCount > 0); + boolean isSpindexerSlow = inputs.spindexerVelocity < velocityThreshold; if (wasSpindexerSlow && !isSpindexerSlow && power > 0.1) { ballCount++; diff --git a/src/main/java/frc/robot/subsystems/turret/Turret.java b/src/main/java/frc/robot/subsystems/turret/Turret.java index 19d212d..beb471f 100644 --- a/src/main/java/frc/robot/subsystems/turret/Turret.java +++ b/src/main/java/frc/robot/subsystems/turret/Turret.java @@ -254,6 +254,9 @@ public class Turret extends SubsystemBase implements TurretIO{ double turretRot = crt.solve(leftAbs, rightAbs); SmartDashboard.putNumber("CRT Position", Units.rotationsToDegrees(turretRot)); + + SmartDashboard.putBoolean("Turret Calibrated", !calibrating); + SmartDashboard.putBoolean("Turret At Setpoint", atSetpoint()); } /* ---------------- Simulation ---------------- */ -- 2.39.5