-
Notifications
You must be signed in to change notification settings - Fork 2
Home
BadgerLog is an annotation-based NetworkTables wrapper that contains features that SmartDashboard and the raw NetworkTables API lack.
There are a few steps when installing the BadgerLog vendordep
-
Add a new (online) vendor dependency in VS Code.
https://raw.githubusercontent.com/team1306/badger-log/master/vendordep.json -
Add the following to the end of the plugins block in
build.gradleplugins { //... Any other plugins id 'io.freefair.aspectj.post-compile-weaving' version '8.14' }
-
Add the following to the end of the dependencies block in
build.gradledependencies { //... Any other dependencies implementation 'org.aspectj:aspectjrt:1.9.24' aspect 'com.github.team1306:badger-log:2025.4.2' annotationProcessor 'com.github.team1306:badger-log:2025.4.2' }
-
For simulation there are two options. The default WPILib simulation will not work correctly
-
Running the
simulate javagradle task. This will not start debugging./gradlew simulateJava -
Install the
Gradle For JavaVSCode extension. This will start with debugging- To open simulation, you need to open the Gradle side menu and find the
simulateJavaReleaseorsimulateJavaDebugGradle task.
- To open simulation, you need to open the Gradle side menu and find the
-
BadgerLog.update must be called periodically (Usually Robot.robotPeriodic) for NetworkTables values to update and events to trigger.
BadgerLog is meant to simplify the creating and updating of NetworkTables entries. It uses the Java annotation system to achieve this.
Fields can be annotated with @Entry to create an associated NetworkTables entry.
This is detailed more in Usage
BadgerLog also supports NetworkTables events. This is detailed extensively in Events
Javadoc can be found on Jitpack