Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
72 commits
Select commit Hold shift + click to select a range
87b1a30
small fix
LuckyCookie274 Mar 7, 2026
1aabb98
added wiggle logic
AnoushkaGharat Mar 14, 2026
028f0ad
inital global vision + sotm implementation
originalhawk242 Mar 15, 2026
1cc4596
added megatag2 tag checking (on mobile)
originalhawk242 Mar 15, 2026
0f65ddc
fixed vision formatting and robotcontainer errors
originalhawk242 Mar 15, 2026
7201f92
finished shoot on the move implementation, ready to test
originalhawk242 Mar 17, 2026
ed5acbc
Adjusted the shooter numbers according to the new shooter
team7461 Mar 16, 2026
bcaa0be
Hooded shooter pid
team7461 Mar 16, 2026
5fc7f5e
Merge remote-tracking branch 'origin/Main' into swerve
team7461 Mar 17, 2026
514017b
Merged master into swerve
team7461 Mar 17, 2026
250fe24
Got rid of files created in git merge
team7461 Mar 17, 2026
ec87b35
Fixed the conflicts with state machine and intake state
team7461 Mar 17, 2026
8454e9c
Cleaned up autos
team7461 Mar 17, 2026
3423571
Fixed the left bumper code
team7461 Mar 17, 2026
1781764
fixed robot aiming with the intake
originalhawk242 Mar 17, 2026
739a109
no longer crashes when reading april tags
team7461 Mar 17, 2026
07303a7
localization fixes
originalhawk242 Mar 17, 2026
b67d3bb
Merge branch 'sotm_vision' of https://github.com/SushiSquad7461/2026-…
originalhawk242 Mar 17, 2026
493b2a8
Refactor vision/shooting: AutoAlign command, MegaTag2 improvements
originalhawk242 Mar 17, 2026
70d8783
Merge origin/swerve into sotm_vision
originalhawk242 Mar 17, 2026
cf0f09f
fixed imu seeding
originalhawk242 Mar 17, 2026
c3f2190
fix: Rotation2d degrees bug, PRESHOOT feeder leak, gyro reset pose de…
originalhawk242 Mar 17, 2026
5dab0df
updated autos
team7461 Mar 18, 2026
c6cf233
Merge origin/swerve into sotm_vision
originalhawk242 Mar 18, 2026
ce8cf4b
Auto
team7461 Mar 18, 2026
c5ae01e
fix: re-seed Limelight IMUs after gyro reset, fix pipeline latency lo…
originalhawk242 Mar 18, 2026
19ff833
fix: apply maxSpeed/maxAngularVelocity scaling in AutoAlign
originalhawk242 Mar 18, 2026
bf82382
fix: AutoAlign heading frame, rotation clamping, end() stop
originalhawk242 Mar 18, 2026
6146285
Hood SOTM integration: auto-calculated hood angle from physics sim, f…
originalhawk242 Mar 18, 2026
cf5637f
feat: update SimParameters record with hood angle sweep constants
originalhawk242 Mar 18, 2026
46b5145
refactor: rename ShotLUT.ShotParameters.velocity to rpm for clarity
originalhawk242 Mar 18, 2026
9523237
feat: add angle-sweep LUT generation to ProjectileSimulator
originalhawk242 Mar 18, 2026
dd9543c
test: add ProjectileSimulatorTest for angle-sweep LUT
originalhawk242 Mar 18, 2026
9bcb1ee
feat: ShotCalculator supports unified ShotLUT with hoodAngleDeg
originalhawk242 Mar 18, 2026
3ae7779
feat: AutoAlign uses shot.hoodAngleDeg() from unified ShotLUT
originalhawk242 Mar 18, 2026
2b10d04
feat: Vision uses unified ShotLUT, remove deprecated APIs
originalhawk242 Mar 18, 2026
897c37b
cleanup: remove dead kinematic hood angle calculation
originalhawk242 Mar 18, 2026
6bc175e
values to check on elastic
LuckyCookie274 Mar 18, 2026
e3ddfe5
fixed hub constants
LuckyCookie274 Mar 18, 2026
bddf70e
always rotate when isValid
LuckyCookie274 Mar 18, 2026
846cd49
displays last commanded hood target
LuckyCookie274 Mar 18, 2026
0d3e989
changed hood gear ratio
LuckyCookie274 Mar 18, 2026
06fcadb
cleanup: remove unused Velocity import, use hoodStepDegrees constant …
originalhawk242 Mar 18, 2026
ba13770
fix: shooter RPM API now takes flywheel RPM; apply 4:3 gear ratio in …
originalhawk242 Mar 18, 2026
8d89be8
fix: correct flywheel gear ratio to 3/4 (flywheel spins faster than m…
originalhawk242 Mar 18, 2026
63fa707
config: update hood range to 0-30deg (pending experimental confirmation)
originalhawk242 Mar 18, 2026
dbca405
fixed hood gear ration
LuckyCookie274 Mar 19, 2026
587651b
Merge branch 'sotm_vision' of https://github.com/SushiSquad7461/2026-…
LuckyCookie274 Mar 19, 2026
bbc122b
latest constants
team7461 Mar 19, 2026
4333dc7
Shot table sotm
LuckyCookie274 Mar 19, 2026
016c6a2
docs: add CLAUDE.md for Claude Code context
originalhawk242 Mar 19, 2026
219d45b
pre practice field setpoints
team7461 Mar 20, 2026
5cde73e
changed intake angle
team7461 Mar 20, 2026
896d320
feat: replace generated LUT with hand-tuned ShotTable for SOTM
LuckyCookie274 Mar 20, 2026
fc2d751
fix: correct Red alliance gyro heading and seed pose from vision at s…
LuckyCookie274 Mar 20, 2026
66ecca5
latest lut
team7461 Mar 20, 2026
3cf3b2f
Merge branch 'sotm-shot-table' into sotm_vision
LuckyCookie274 Mar 20, 2026
804583f
Merge branch 'sotm_vision' of https://github.com/SushiSquad7461/2026-…
team7461 Mar 20, 2026
b1dab03
fix: use raw gyro heading for MegaTag2 and remove dead code
LuckyCookie274 Mar 20, 2026
ac8c198
fix: gyro reset race condition and heading source consistency
LuckyCookie274 Mar 20, 2026
2bd508e
fix: eliminate remaining gyro race conditions in pose init and IMU seed
LuckyCookie274 Mar 20, 2026
e97d174
fix: MT2 best practices — no setYaw, sanity checks, community std devs
LuckyCookie274 Mar 20, 2026
4fa575b
fix: merge MT2 best practices — no setYaw, sanity checks, community s…
LuckyCookie274 Mar 20, 2026
62f35dc
fix: vision/SOTM robustness — heading bootstrap, gyro offset, pose re…
originalhawk242 Mar 20, 2026
98a75e2
fix: pose re-bootstrap after auto and tighter vision std devs
originalhawk242 Mar 20, 2026
403a2c2
added vision.requestRebootstrap
LuckyCookie274 Mar 20, 2026
7e66143
uses tx ty to align
LuckyCookie274 Mar 20, 2026
85a3972
fixed camera yaw error
LuckyCookie274 Mar 20, 2026
506ea1a
updated shot table
team7461 Mar 20, 2026
22bafe0
remove vision unit tests
originalhawk242 Mar 21, 2026
1ec0e80
fix: LUT clamp, duplicate getPose, missing AutoAlign requirements
originalhawk242 Mar 21, 2026
9afbdff
increased intake roller speed from 0.35 to 0.5
originalhawk242 Mar 21, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -188,3 +188,8 @@ compile_commands.json

# Build-time generated constants
src/main/java/frc/robot/BuildConstants.java
src/main/java/frc/robot/.BuildConstants.java.swp

# Local planning and AI assistant files (not for repo)
docs/
.claude/
55 changes: 55 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Build Commands

```bash
./gradlew build # Compile + run tests
./gradlew compileJava # Compile only (fastest check)
./gradlew deploy # Deploy to RoboRIO
```

CI runs `./gradlew build` on push/PR to Main using `wpilib/roborio-cross-ubuntu:2025-22.04`.

## Architecture

FRC Team 7461 (Sushi Squad) command-based robot using **WPILib 2026**, **AdvantageKit**, and **Phoenix6** (CTRE TalonFX/Kraken motors).

### IO Abstraction Pattern

Every subsystem uses an IO interface layer for hardware abstraction:
- `ShooterIO` (interface) → `ShooterIOKraken` (real hardware) / `ShooterIOSim` (simulation)
- `IntakeIO` → `IntakeReal` / `IntakeSim`
- `HopperIO` → `HopperIOReal` / `HopperIOSim`
- `ModuleIO` → `ModuleIOTalonFX` / `ModuleIOSim`
- `GyroIO` → `GyroIOPigeon2` / `GyroIONavX`

`RobotContainer` selects real vs sim implementations based on `Robot.isReal()`.

### State Machine

`StateMachine.java` maps robot-level states (`IDLE`, `SHOOT_ONLY`, `INTAKE_DOWN`, `INTAKE_DOWN_AND_SHOOT`) to per-subsystem states for shooter, hopper, and intake.

### Subsystems

- **Swerve** — SDS MK4i L3 with KrakenX60, Pigeon2 gyro, PathPlanner autos
- **Shooter** — Flywheel (3:4 gear ratio, flywheel faster than motor) + hooded mechanism with MotionMagic + feeder
- **Intake** — Deployed pivot + rollers, TalonFX with MotionMagic
- **Hopper** — Simple transport motor
- **Vision** — Dual Limelights ("limelight-left" primary, "limelight-right" secondary), ProjectileSimulator for ballistics, ShotCalculator with LUT

### Key Constants Location

`src/main/java/frc/robot/generated/Constants.java` — auto-generated by gversion plugin. Subsystem-specific constants live in their respective subsystem files (e.g., `ShooterSubsystem.java`, `Intake.java`).

### Vendor Libraries

Phoenix6 26.1.1, AdvantageKit 26.0.0, PathplannerLib 2026.1.2, PhotonLib v2026.2.2, REVLib 2026.0.2. Vendordep JSONs are in `/vendordeps/`.

## Conventions

- Gear ratios are expressed as motor rotations per mechanism rotation (e.g., `FLYWHEEL_GEAR_RATIO = 3.0/4.0` means flywheel spins faster than motor)
- Shooter RPM API takes flywheel RPM; the gear ratio conversion happens inside `ShooterIOKraken`
- AdvantageKit `@AutoLog` annotation processor generates logging boilerplate
- Autonomous paths are PathPlanner `.path` files registered as named commands in `AutoCommands`
49 changes: 0 additions & 49 deletions src/main/deploy/pathplanner/autos/B1_Hub_HP.auto

This file was deleted.

67 changes: 0 additions & 67 deletions src/main/deploy/pathplanner/autos/B1_Hub_HP_Shoot.auto

This file was deleted.

49 changes: 0 additions & 49 deletions src/main/deploy/pathplanner/autos/B2_Hub_HP.auto

This file was deleted.

67 changes: 0 additions & 67 deletions src/main/deploy/pathplanner/autos/B2_Hub_HP_Shoot.auto

This file was deleted.

49 changes: 0 additions & 49 deletions src/main/deploy/pathplanner/autos/B3_Hub_HP.auto

This file was deleted.

Loading
Loading