diff --git a/simgui-ds.json b/simgui-ds.json index 14c4c68..47517dc 100644 --- a/simgui-ds.json +++ b/simgui-ds.json @@ -1,4 +1,9 @@ { + "System Joysticks": { + "window": { + "enabled": false + } + }, "keyboardJoysticks": [ { "axisConfig": [ diff --git a/src/main/java/frc4388/robot/Robot.java b/src/main/java/frc4388/robot/Robot.java index fa604d7..0dfb72d 100644 --- a/src/main/java/frc4388/robot/Robot.java +++ b/src/main/java/frc4388/robot/Robot.java @@ -15,13 +15,14 @@ import org.littletonrobotics.junction.networktables.NT4Publisher; import org.littletonrobotics.junction.wpilog.WPILOGReader; import org.littletonrobotics.junction.wpilog.WPILOGWriter; +import edu.wpi.first.wpilibj.RobotController; import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.CommandScheduler; import frc4388.robot.constants.BuildConstants; import frc4388.robot.constants.Constants.SimConstants; import frc4388.utility.DeferredBlock; -import frc4388.utility.Trim; import frc4388.utility.compute.RobotTime; +import frc4388.utility.compute.Trim; import frc4388.utility.status.FaultReporter; //import frc4388.robot.subsystems.LED; @@ -52,8 +53,8 @@ public class Robot extends LoggedRobot { m_robotContainer = new RobotContainer(); - // Create a shuffleboard update thread, that will periodically update the values on shuffleboard - FaultReporter.startThread(); + // // Create a shuffleboard update thread, that will periodically update the values on shuffleboard + // FaultReporter.startThread(); } /** @@ -205,13 +206,13 @@ public class Robot extends LoggedRobot { // } - // @Override - // public void simulationPeriodic() { - // m_robotContainer.m_robotSwerveDrive.updateSim(RobotController.getBatteryVoltage()); - // visionSim.update(m_robotContainer.m_robotSwerveDrive.getPose2d()); + @Override + public void simulationPeriodic() { + m_robotContainer.m_robotSwerveDrive.updateSim(RobotController.getBatteryVoltage()); + // visionSim.update(m_robotContainer.m_robotSwerveDrive.getPose2d()); - // // m_robotContainer.m_robotSwerveDrive. - // } + // m_robotContainer.m_robotSwerveDrive. + } diff --git a/src/main/java/frc4388/robot/RobotContainer.java b/src/main/java/frc4388/robot/RobotContainer.java index bb500ab..07623b1 100644 --- a/src/main/java/frc4388/robot/RobotContainer.java +++ b/src/main/java/frc4388/robot/RobotContainer.java @@ -15,6 +15,7 @@ import edu.wpi.first.math.geometry.Rotation2d; import edu.wpi.first.math.geometry.Translation2d; import edu.wpi.first.math.util.Units; import edu.wpi.first.wpilibj.GenericHID; +import edu.wpi.first.wpilibj.RobotBase; import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; import frc4388.utility.controller.XboxController; @@ -67,7 +68,7 @@ import frc4388.utility.compute.ReefPositionHelper.Side; * This class is where the bulk of the robot should be declared. Since * Command-based is a "declarative" paradigm, very little robot logic should * actually be handled in the {@link Robot} periodic methods (other than the - * scheduler calls). Instead, the structure of the robot (including subsystems, + * scheduler calls). Instead, the structure of the robot (2including subsystems, * commands, and button mappings) should be declared here. */ public class RobotContainer { @@ -892,8 +893,15 @@ public class RobotContainer { public void makeAutoChooser() { autoChooser = new SendableChooser(); - File dir = new File("/home/lvuser/deploy/pathplanner/autos/"); - // File dir = new File("C:\\Users\\Ridgebotics\\Documents\\GitHub\\2025RidgeScape\\src\\main\\deploy\\pathplanner\\autos\\"); + File dir; + + if(RobotBase.isReal()) { + dir = new File("/home/lvuser/deploy/pathplanner/autos/"); + } else { + // dir = new File("C:\\Users\\Ridgebotics\\Documents\\GitHub\\2025RidgeScape\\src\\main\\deploy\\pathplanner\\autos\\"); + dir = new File("/home/astatin3/Documents/GitHub/2025RidgeScape/src/main/deploy/pathplanner/autos"); + } + String[] autos = dir.list(); if(autos == null) return; diff --git a/src/main/java/frc4388/robot/constants/BuildConstants.java b/src/main/java/frc4388/robot/constants/BuildConstants.java index 581eeca..10968a7 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 = "2025RidgeScape"; public static final String VERSION = "unspecified"; - public static final int GIT_REVISION = 166; - public static final String GIT_SHA = "c183c08a3d92ff8561bef96dad52b8dd64d94f14"; - public static final String GIT_DATE = "2025-07-11 17:58:22 MDT"; + public static final int GIT_REVISION = 168; + public static final String GIT_SHA = "9fd98bce241ee2aef0855f3ce8bb0b37aee723c2"; + public static final String GIT_DATE = "2025-07-13 19:41:05 MDT"; public static final String GIT_BRANCH = "advantagekit"; - public static final String BUILD_DATE = "2025-07-13 19:23:17 MDT"; - public static final long BUILD_UNIX_TIME = 1752456197462L; + public static final String BUILD_DATE = "2025-07-14 01:44:15 MDT"; + public static final long BUILD_UNIX_TIME = 1752479055707L; public static final int DIRTY = 1; private BuildConstants(){} diff --git a/src/main/java/frc4388/robot/constants/Constants.java b/src/main/java/frc4388/robot/constants/Constants.java index add6b2d..6e8733d 100644 --- a/src/main/java/frc4388/robot/constants/Constants.java +++ b/src/main/java/frc4388/robot/constants/Constants.java @@ -20,7 +20,7 @@ import edu.wpi.first.math.numbers.N1; import edu.wpi.first.math.numbers.N3; import edu.wpi.first.math.util.Units; import edu.wpi.first.wpilibj.RobotBase; -import frc4388.utility.Trim; +import frc4388.utility.compute.Trim; import frc4388.utility.status.CanDevice; import frc4388.utility.structs.Gains; import frc4388.utility.structs.LEDPatterns; diff --git a/src/main/java/frc4388/robot/subsystems/DiffDrive.java b/src/main/java/frc4388/robot/subsystems/DiffDrive.java index d70356d..df9f29e 100644 --- a/src/main/java/frc4388/robot/subsystems/DiffDrive.java +++ b/src/main/java/frc4388/robot/subsystems/DiffDrive.java @@ -94,10 +94,10 @@ public class DiffDrive extends SubsystemBase implements Queryable { return "Diff Drive"; } - @Override - public void queryStatus() { - // TODO: Add Stuff - } + // @Override + // public void queryStatus() { + // // TODO: Add Stuff + // } @Override public Status diagnosticStatus() { diff --git a/src/main/java/frc4388/robot/subsystems/Elevator.java b/src/main/java/frc4388/robot/subsystems/Elevator.java index 68a1787..3157bae 100644 --- a/src/main/java/frc4388/robot/subsystems/Elevator.java +++ b/src/main/java/frc4388/robot/subsystems/Elevator.java @@ -378,8 +378,8 @@ public class Elevator extends SubsystemBase implements Queryable { return "Elevator"; } - @Override - public void queryStatus() {} + // @Override + // public void queryStatus() {} @Override public Status diagnosticStatus() { diff --git a/src/main/java/frc4388/robot/subsystems/LED.java b/src/main/java/frc4388/robot/subsystems/LED.java index 6d118cc..8f71195 100644 --- a/src/main/java/frc4388/robot/subsystems/LED.java +++ b/src/main/java/frc4388/robot/subsystems/LED.java @@ -53,10 +53,10 @@ public class LED extends SubsystemBase implements Queryable { return "LEDs"; } - @Override - public void queryStatus() { - SmartDashboard.putString("LED status", mode.name()); - } + // @Override + // public void queryStatus() { + // SmartDashboard.putString("LED status", mode.name()); + // } @Override public Status diagnosticStatus() { diff --git a/src/main/java/frc4388/robot/subsystems/Lidar.java b/src/main/java/frc4388/robot/subsystems/Lidar.java index 62f1a7e..d359a7e 100644 --- a/src/main/java/frc4388/robot/subsystems/Lidar.java +++ b/src/main/java/frc4388/robot/subsystems/Lidar.java @@ -1,5 +1,7 @@ package frc4388.robot.subsystems; +import org.littletonrobotics.junction.AutoLogOutput; + import edu.wpi.first.networktables.GenericEntry; import edu.wpi.first.wpilibj.Counter; import edu.wpi.first.wpilibj.shuffleboard.BuiltInLayouts; @@ -53,6 +55,7 @@ public class Lidar extends SubsystemBase implements Queryable { distance = (LidarPWM.getPeriod() * LiDARConstants.SECONDS_TO_MICROS) / LiDARConstants.LIDAR_MICROS_TO_CM; } + @AutoLogOutput public double getDistance(){ return distance; } @@ -71,11 +74,11 @@ public class Lidar extends SubsystemBase implements Queryable { return "Lidar " + name; } - @Override - public void queryStatus() { - sbDistance.setDouble(distance); - sbWithinDistance.setBoolean(withinDistance()); - } + // @Override + // public void queryStatus() { + // sbDistance.setDouble(distance); + // sbWithinDistance.setBoolean(withinDistance()); + // } @Override public Status diagnosticStatus() { diff --git a/src/main/java/frc4388/robot/subsystems/SwerveDrive.java b/src/main/java/frc4388/robot/subsystems/SwerveDrive.java index 3e21681..4a11b1b 100644 --- a/src/main/java/frc4388/robot/subsystems/SwerveDrive.java +++ b/src/main/java/frc4388/robot/subsystems/SwerveDrive.java @@ -467,13 +467,13 @@ public class SwerveDrive extends SubsystemBase implements Queryable { .withWidget(BuiltInWidgets.kNumberBar) .getEntry(); - @Override - public void queryStatus() { - sbGyro.setDouble(getGyroAngle()); - sbShiftState.setDouble(this.speedAdjust); + // @Override + // public void queryStatus() { + // sbGyro.setDouble(getGyroAngle()); + // sbShiftState.setDouble(this.speedAdjust); - // TODO: Add more status things - } + // // TODO: Add more status things + // } @Override public Status diagnosticStatus() { diff --git a/src/main/java/frc4388/robot/subsystems/Vision.java b/src/main/java/frc4388/robot/subsystems/Vision.java index 5a85772..b11c501 100644 --- a/src/main/java/frc4388/robot/subsystems/Vision.java +++ b/src/main/java/frc4388/robot/subsystems/Vision.java @@ -309,12 +309,12 @@ public class Vision extends SubsystemBase implements Queryable { // .getEntry(); - @Override - public void queryStatus() { - sbTagDetected.setBoolean(isTagDetected); - sbTagProcessed.setBoolean(isTagProcessed); - // field.setRobotPose(getPose2d()); - } + // @Override + // public void queryStatus() { + // sbTagDetected.setBoolean(isTagDetected); + // sbTagProcessed.setBoolean(isTagProcessed); + // // field.setRobotPose(getPose2d()); + // } @Override public Status diagnosticStatus() { diff --git a/src/main/java/frc4388/utility/Trim.java b/src/main/java/frc4388/utility/compute/Trim.java similarity index 98% rename from src/main/java/frc4388/utility/Trim.java rename to src/main/java/frc4388/utility/compute/Trim.java index 267d09b..429d526 100644 --- a/src/main/java/frc4388/utility/Trim.java +++ b/src/main/java/frc4388/utility/compute/Trim.java @@ -2,7 +2,7 @@ // Open Source Software; you can modify and/or share it under the terms of // the WPILib BSD license file in the root directory of this project. -package frc4388.utility; +package frc4388.utility.compute; import java.io.FileInputStream; import java.io.FileOutputStream; @@ -11,7 +11,6 @@ import java.util.ArrayList; import edu.wpi.first.networktables.GenericEntry; import edu.wpi.first.wpilibj.shuffleboard.Shuffleboard; import edu.wpi.first.wpilibj.shuffleboard.ShuffleboardTab; -import frc4388.utility.compute.DataUtils; /** * Reboot persistant Trims. diff --git a/src/main/java/frc4388/utility/controller/DeadbandedXboxController.java b/src/main/java/frc4388/utility/controller/DeadbandedXboxController.java index 75fd153..ae4202b 100644 --- a/src/main/java/frc4388/utility/controller/DeadbandedXboxController.java +++ b/src/main/java/frc4388/utility/controller/DeadbandedXboxController.java @@ -1,3 +1,4 @@ + package frc4388.utility.controller; import static frc4388.robot.constants.Constants.OIConstants.LEFT_AXIS_DEADBAND; diff --git a/src/main/java/frc4388/utility/status/FaultCANCoder.java b/src/main/java/frc4388/utility/status/FaultCANCoder.java index ad11ad6..a1631fb 100644 --- a/src/main/java/frc4388/utility/status/FaultCANCoder.java +++ b/src/main/java/frc4388/utility/status/FaultCANCoder.java @@ -22,13 +22,7 @@ public class FaultCANCoder implements Queryable { public String getName() { return name; } - - @Override - public void queryStatus() { - // TODO Auto-generated method stub - // throw new UnsupportedOperationException("Unimplemented method 'queryStatus'"); - } - + @Override public Status diagnosticStatus() { Status s = new Status(); diff --git a/src/main/java/frc4388/utility/status/FaultPhotonCamera.java b/src/main/java/frc4388/utility/status/FaultPhotonCamera.java index 0b35cb5..5ea8b70 100644 --- a/src/main/java/frc4388/utility/status/FaultPhotonCamera.java +++ b/src/main/java/frc4388/utility/status/FaultPhotonCamera.java @@ -22,9 +22,6 @@ public class FaultPhotonCamera implements Queryable { return name; } - @Override - public void queryStatus() {} - @Override public Status diagnosticStatus() { Status s = new Status(); diff --git a/src/main/java/frc4388/utility/status/FaultPidgeon2.java b/src/main/java/frc4388/utility/status/FaultPidgeon2.java index a6f0b81..1e0bb4f 100644 --- a/src/main/java/frc4388/utility/status/FaultPidgeon2.java +++ b/src/main/java/frc4388/utility/status/FaultPidgeon2.java @@ -22,13 +22,7 @@ public class FaultPidgeon2 implements Queryable { public String getName() { return name; } - - @Override - public void queryStatus() { - // TODO Auto-generated method stub - // throw new UnsupportedOperationException("Unimplemented method 'queryStatus'"); - } - + @Override public Status diagnosticStatus() { Status s = new Status(); diff --git a/src/main/java/frc4388/utility/status/FaultReporter.java b/src/main/java/frc4388/utility/status/FaultReporter.java index 853c727..6a3831a 100644 --- a/src/main/java/frc4388/utility/status/FaultReporter.java +++ b/src/main/java/frc4388/utility/status/FaultReporter.java @@ -32,25 +32,25 @@ public class FaultReporter { private static List queryables = new ArrayList<>(); - public static void startThread() { - new Thread() { - public void run() { - try{ - while(!this.isInterrupted() && this.isAlive()){ - Thread.sleep(500); - for(int i=0;i