Telemetry
How it works?
YAGSL uses telemetry in SwerveDrive
and SwerveModule
for consolidation. There are a few remainders of telemetry which is pushed from SwerveDrive.updateOdometry()
. All Telemtry is bound by a verbosity level in SwerveDriveTelemtry.verbosity
as a static variable. The following are the options which you can utilize.
How do I enable it?
Higher telemetry could induce some lag on the robot and slow down the cycle times. So be cautious on what you chose!
To configure the telemetry please change SwerveDriveTelemetry.verbosity
to one of the enum values that you desire.
What does it do?
Telemetry outputs relevant Swerve Drive data to NetworkTables on the roboRIO. You can view these using any dashboard you like!
Some dashboard support swerve drive widgets based off of the SmartDashboard/swerve
NetworkTable entry.
All Swerve Module data is stored under the relevant modules in SmartDashboard/swerve/modules/
which is invaluable during setup.
Swerve Module
Swerve Drive
Recommended Shuffleboard Layout
I use this layout during setup to ensure all modules are reading CCW+. This is the most common overlooked part while configuring swerve drives.
If the Raw Angle Encoder is CCW- (decreasing while rotated counter clockwise) then the angle motor needs to be inverted in the configuration file for that module.
If the Raw Absolute Encoder is CCW- (decreasing while the wheel is rotated counter clockwise) then the absolute encoder might need to be inverted for that module.
Alternative Dashboard Support
There are a few dashboard which support YAGSL widgets too! These developers are amazing and you should definitely checkout their work!
Last updated