Skip to content

Commit e565b85

Browse files
committed
got maple sim workingish. Needs major refactoring
1 parent 5be2e4c commit e565b85

31 files changed

+2936
-70
lines changed

build.gradle

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ plugins {
44
id "com.peterabeles.gversion" version "1.10"
55
id 'com.diffplug.spotless' version '6.25.0'
66
id "io.freefair.lombok" version "6.6.1"
7+
// id "org.junit.jupiter" version
78
}
8-
99
java {
1010
sourceCompatibility = JavaVersion.VERSION_17
1111
targetCompatibility = JavaVersion.VERSION_17
@@ -19,6 +19,7 @@ gversion {
1919
timeZone = "America/Chicago" // Use preferred time zone
2020
indent = " "
2121
}
22+
2223
// Create commit with working changes on event branches
2324
task(eventDeploy) {
2425
doLast {
@@ -51,7 +52,12 @@ task(eventDeploy) {
5152
}
5253
}
5354
createVersionFile.dependsOn(eventDeploy)
55+
5456
def ROBOT_MAIN_CLASS = "team5427.frc.robot.Main"
57+
task(replayWatch, type: JavaExec) {
58+
mainClass = "org.littletonrobotics.junction.ReplayWatch"
59+
classpath = sourceSets.main.runtimeClasspath
60+
}
5561

5662
// Define my targets (RoboRIO) and artifacts (deployable files)
5763
// This is added by GradleRIO's backing project DeployUtils.
@@ -65,8 +71,11 @@ deploy {
6571
team = project.frc.getTeamNumber()
6672
debug = project.frc.getDebugOrDefault(false)
6773

68-
artifacts {
6974

75+
76+
artifacts {
77+
// First part is artifact name, 2nd is artifact type
78+
// getTargetTypeClass is a shortcut to get the class type using a string
7079
// The options below may improve performance, but should only be enabled on the RIO 2
7180
frcJava(getArtifactTypeClass('FRCJavaArtifact')) {
7281
final MAX_JAVA_HEAP_SIZE_MB = 100;
@@ -75,11 +84,7 @@ deploy {
7584
jvmArgs.add("-XX:+AlwaysPreTouch")
7685
}
7786

78-
// First part is artifact name, 2nd is artifact type
79-
// getTargetTypeClass is a shortcut to get the class type using a string
8087

81-
frcJava(getArtifactTypeClass('FRCJavaArtifact')) {
82-
}
8388

8489
// Static files artifact
8590
frcStaticFileDeploy(getArtifactTypeClass('FileTreeArtifact')) {
@@ -134,6 +139,12 @@ dependencies {
134139

135140
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'
136141
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
142+
// testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.1'
143+
144+
145+
146+
def akitJson = new groovy.json.JsonSlurper().parseText(new File(projectDir.getAbsolutePath() + "/vendordeps/AdvantageKit.json").text)
147+
annotationProcessor "org.littletonrobotics.akit:akit-autolog:$akitJson.version"
137148

138149
implementation 'org.team4206:battleaid:0.4.0'
139150
}
@@ -171,6 +182,7 @@ tasks.withType(JavaCompile) {
171182
options.compilerArgs.add '-XDstringConcat=inline'
172183
}
173184

185+
174186
spotless {
175187
setEnforceCheck(false)
176188
java {

gradle.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
github.username = Brainiac11
2+
github.token = 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

simgui-ds.json

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
{
2+
"Keyboard 0 Settings": {
3+
"window": {
4+
"visible": true
5+
}
6+
},
7+
"System Joysticks": {
8+
"window": {
9+
"enabled": false
10+
}
11+
},
12+
"keyboardJoysticks": [
13+
{
14+
"axisConfig": [
15+
{
16+
"decKey": 65,
17+
"incKey": 68
18+
},
19+
{
20+
"decKey": 87,
21+
"incKey": 83
22+
},
23+
{
24+
"decKey": 69,
25+
"decayRate": 0.0,
26+
"incKey": 82,
27+
"keyRate": 0.009999999776482582
28+
},
29+
{
30+
"decKey": 50,
31+
"incKey": 49
32+
},
33+
{
34+
"decKey": 52,
35+
"incKey": 51
36+
},
37+
{
38+
"decKey": 54,
39+
"incKey": 53
40+
}
41+
],
42+
"axisCount": 6,
43+
"buttonCount": 4,
44+
"buttonKeys": [
45+
90,
46+
88,
47+
67,
48+
86
49+
],
50+
"povConfig": [
51+
{
52+
"key0": 328,
53+
"key135": 323,
54+
"key180": 322,
55+
"key225": 321,
56+
"key270": 324,
57+
"key315": 327,
58+
"key45": 329,
59+
"key90": 326
60+
}
61+
],
62+
"povCount": 1
63+
},
64+
{
65+
"axisConfig": [
66+
{
67+
"decKey": 74,
68+
"incKey": 76
69+
},
70+
{
71+
"decKey": 73,
72+
"incKey": 75
73+
}
74+
],
75+
"axisCount": 2,
76+
"buttonCount": 4,
77+
"buttonKeys": [
78+
77,
79+
44,
80+
46,
81+
47
82+
],
83+
"povCount": 0
84+
},
85+
{
86+
"axisConfig": [
87+
{
88+
"decKey": 263,
89+
"incKey": 262
90+
},
91+
{
92+
"decKey": 265,
93+
"incKey": 264
94+
}
95+
],
96+
"axisCount": 2,
97+
"buttonCount": 6,
98+
"buttonKeys": [
99+
260,
100+
268,
101+
266,
102+
261,
103+
269,
104+
267
105+
],
106+
"povCount": 0
107+
},
108+
{
109+
"axisCount": 0,
110+
"buttonCount": 0,
111+
"povCount": 0
112+
}
113+
],
114+
"robotJoysticks": [
115+
{
116+
"guid": "Keyboard0"
117+
}
118+
]
119+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"field_size":{"x":17.548,"y":8.052},"nodeSizeMeters":0.3,"grid":[[true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true],[true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true],[true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true],[true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true],[true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,false,false,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true],[true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true],[true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true],[true,true,true,true,true,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,true,true,true,true,true],[true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true],[true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true]]}
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{
2+
"version": "2025.0",
3+
"waypoints": [
4+
{
5+
"anchor": {
6+
"x": 2.0,
7+
"y": 7.0
8+
},
9+
"prevControl": null,
10+
"nextControl": {
11+
"x": 3.0,
12+
"y": 7.0
13+
},
14+
"isLocked": false,
15+
"linkedName": null
16+
},
17+
{
18+
"anchor": {
19+
"x": 4.0,
20+
"y": 6.0
21+
},
22+
"prevControl": {
23+
"x": 3.0,
24+
"y": 6.0
25+
},
26+
"nextControl": null,
27+
"isLocked": false,
28+
"linkedName": null
29+
}
30+
],
31+
"rotationTargets": [],
32+
"constraintZones": [],
33+
"pointTowardsZones": [],
34+
"eventMarkers": [],
35+
"globalConstraints": {
36+
"maxVelocity": 3.0,
37+
"maxAcceleration": 3.0,
38+
"maxAngularVelocity": 540.0,
39+
"maxAngularAcceleration": 720.0,
40+
"nominalVoltage": 12.0,
41+
"unlimited": false
42+
},
43+
"goalEndState": {
44+
"velocity": 0,
45+
"rotation": 0.0
46+
},
47+
"reversed": false,
48+
"folder": null,
49+
"idealStartingState": {
50+
"velocity": 0,
51+
"rotation": 0.0
52+
},
53+
"useDefaultConstraints": true
54+
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
{
2+
"robotWidth": 0.8128,
3+
"robotLength": 0.8128,
4+
"holonomicMode": true,
5+
"pathFolders": [],
6+
"autoFolders": [],
7+
"defaultMaxVel": 5.584,
8+
"defaultMaxAccel": 3.0,
9+
"defaultMaxAngVel": 1272.0,
10+
"defaultMaxAngAccel": 720.0,
11+
"defaultNominalVoltage": 12.6,
12+
"robotMass": 53.9,
13+
"robotMOI": 6.994,
14+
"robotTrackwidth": 0.546,
15+
"driveWheelRadius": 0.049,
16+
"driveGearing": 5.36,
17+
"maxDriveSpeed": 5.584,
18+
"driveMotorType": "krakenX60FOC",
19+
"driveCurrentLimit": 60.0,
20+
"wheelCOF": 1.388,
21+
"flModuleX": 0.356,
22+
"flModuleY": 0.356,
23+
"frModuleX": 0.3556,
24+
"frModuleY": -0.3556,
25+
"blModuleX": -0.3556,
26+
"blModuleY": 0.3556,
27+
"brModuleX": -0.3556,
28+
"brModuleY": -0.3556,
29+
"bumperOffsetX": 0.0,
30+
"bumperOffsetY": 0.0,
31+
"robotFeatures": [
32+
"{\"name\":\"Rectangle\",\"type\":\"rounded_rect\",\"data\":{\"center\":{\"x\":0.2,\"y\":0.0},\"size\":{\"width\":0.2,\"length\":0.5},\"borderRadius\":0.05,\"strokeWidth\":0.02,\"filled\":true}}"
33+
]
34+
}
Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
package frc.robot;
22

3-
/** Automatically generated file containing build version information. */
3+
/**
4+
* Automatically generated file containing build version information.
5+
*/
46
public final class BuildConstants {
57
public static final String MAVEN_GROUP = "";
68
public static final String MAVEN_NAME = "SteelTalonsLibrary";
79
public static final String VERSION = "unspecified";
8-
public static final int GIT_REVISION = 3;
9-
public static final String GIT_SHA = "d38be737cc2338c96b870f082e890fcaa9be5ae5";
10-
public static final String GIT_DATE = "2025-04-12 11:48:40 CDT";
10+
public static final int GIT_REVISION = 6;
11+
public static final String GIT_SHA = "5be2e4cf20fcbbd683812a871aa6ac7d26a62317";
12+
public static final String GIT_DATE = "2025-04-12 16:18:18 CDT";
1113
public static final String GIT_BRANCH = "main";
12-
public static final String BUILD_DATE = "2025-04-12 11:53:43 CDT";
13-
public static final long BUILD_UNIX_TIME = 1744476823153L;
14+
public static final String BUILD_DATE = "2025-04-24 16:26:26 CDT";
15+
public static final long BUILD_UNIX_TIME = 1745529986093L;
1416
public static final int DIRTY = 1;
1517

16-
private BuildConstants() {}
18+
private BuildConstants(){}
1719
}

src/main/java/team5427/frc/robot/Constants.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
package team5427.frc.robot;
66

77
import com.ctre.phoenix6.CANBus;
8+
import com.pathplanner.lib.config.RobotConfig;
89
import edu.wpi.first.math.util.Units;
910

1011
/**
@@ -37,6 +38,8 @@ public static enum Mode {
3738

3839
public static final boolean kIsTuningMode = false;
3940

41+
public static RobotConfig config;
42+
4043
public static class DriverConstants {
4144
public static final int kDriverJoystickPort = 0;
4245
public static final int kOperatorJoystickPort = 1;

src/main/java/team5427/frc/robot/Robot.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ public void robotPeriodic() {
107107

108108
CommandScheduler.getInstance().run();
109109
VirtualSubsystem.periodicAll();
110+
RobotState.getInstance().log();
110111

111112
// Return to normal thread priority
112113
// Threads.setCurrentThreadPriority(false, 10);
@@ -172,5 +173,7 @@ public void simulationInit() {}
172173

173174
/** This function is called periodically whilst in simulation. */
174175
@Override
175-
public void simulationPeriodic() {}
176+
public void simulationPeriodic() {
177+
m_robotContainer.updateSimulation();
178+
}
176179
}

0 commit comments

Comments
 (0)