Choosing a Dashboard

A dashboard is a program used to retrieve and display information about the operation of your robot. There are two main types of dashboards that teams may need: driver and programmer dashboards. Some dashboards will try to accommodate both purposes.

Driver Dashboard

During competition the drive team will use this dashboard to get information from the robot. It should focus on conveying key information instantly. This is often best accomplished by using large, colorful, and easy to understand visual elements. Most teams will also use this dashboard to select their autonomous routine.

Take caution to carefully consider what needs to be on this dashboard and if there is another better way of communicating that information. Any members of the drive team (especially the driver) looking at the dashboard takes their focus away from the match. Using LEDs to indicate the state of your robot is a good example of a way to communicate useful information to the driver without having to take their eyes off the robot.

Programming Dashboard

This dashboard is designed for debugging code and analyzing data from the robot. It supports the monitoring of a wide variety of information simultaneously, prioritizing function and utility over simplicity or ease of use. This functionality often includes complex data visualization and graphing across extended periods. In scenarios where there is an overwhelming amount of data to review, real-time analysis becomes challenging. The capability to examine past data and replay it proves to be extremely beneficial. While some dashboards may log data transmitted to them, on-robot telemetry using the DataLog class simplifies the process.

Included Dashboards (oldest to newest)

Glass (Programming) - robot data visualization tool. Its GUI is extremely similar to that of the Simulation GUI. In its current state, it is meant to be used as a programmer’s tool rather than a proper dashboard in a competition environment, with a focus on high performance real time plotting.

AdvantageScope (Programming / Third Party) - robot diagnostics, log review/analysis, and data visualization application. It reads the WPILib Data Log (.wpilog) and Driver Station Log (.dslog / .dsevents) file formats, plus live robot data viewing.

Elastic (Driver / Third Party) - simple and modern Shuffleboard alternative made by Team 353. It is meant to serve as a dashboard for competition but can also be used for testing. It features draggable and resizable card widgets.

External Dashboards (All Third Party)

FRC Web Components (Driver) - A web-based dashboard that can be installed as a standalone application, or as a JavaScript package for custom dashboard solutions.

QDash (Driver) - described as a reliable, high-performance, low-footprint dashboard. QDash has been specifically designed to use as few resources as possible without sacrificing features or aesthetics.

Reflect (Driver) - a modern, web-based FRC dashboard focused on performance and usability with customizable widgets. Made by team 2702.