Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to struct formats for telemetry #227

Closed
jwbonner opened this issue Sep 4, 2024 · 1 comment
Closed

Upgrade to struct formats for telemetry #227

jwbonner opened this issue Sep 4, 2024 · 1 comment

Comments

@jwbonner
Copy link
Contributor

jwbonner commented Sep 4, 2024

Currently, YAGSL publishes poses and swerve states to NetworkTables using double arrays. A key advantage of the WPILib struct format is that it communicates data type (pose/swerve state/etc) and units (radians/degrees). The 2025 version of AdvantageScope will take advantage of this metadata to make it easier to mix and match fields for visualization, such as allowing 2D and 3D poses to be used interchangeably without user input.

WPILib is planning to switch to struct publishing for Field2d, so we've agreed to deprecate the double array formats in AdvantageScope this year (it will display a warning when they are used, and you need to manually select the data type and units). While data from YAGSL will continue to be accessible, upgrading to struct would ensure that users have the most seamless experience moving forward.

I see the telemetry class is currently using SmartDashboard put methods. To access struct publishing you'll probably need to switch to the full NT publishing API for the relevant fields (pose and swerve state fields). In regard to dashboard compatibility, see Gold872/elastic-dashboard#91.

@thenetworkgrinch
Copy link
Contributor

thenetworkgrinch commented Sep 4, 2024

Pinging @amorygalili just so they know too

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants