AdvantageScope Documentation
website·Indexed 32 days ago
https://docs.advantagescope.orgA visualization and analysis tool for robot log data, featuring 2D and 3D field views, line graphs with unit-aware graphing, swerve module visualization, and support for AdvantageKit streaming. Includes AdvantageScope XR for augmented reality and AdvantageScope Lite for v27.x releases.
What's inside AdvantageScope
- AdvantageScope is a robot diagnostics, log review/analysis, and data visualization application for FIRST teams. It provides tools for analyzing robot performance, including flexible graphs, 2D/3D field visualizations of pose data with CAD-based robots, synchronized match video playback, joystick action visualization, swerve drive module vector displays, console message review, and log statistics analysis. It supports exporting data to CSV and WPILOG formats.
Overview of Unofficial REV-Compatible Logger (URCL)
URCL is a logging library for Java, C++, and Python that automatically records data from Spark Max and Spark Flex devices. It publishes periodic CAN frames to NetworkTables or DataLog, enabling live plotting and logging in AdvantageScope. Key features include:
- Automatic capture of all signals without manual device setup.
- Capture of every frame, regardless of robot loop cycle speed.
- Timestamps based on CAN RX time for higher accuracy in acceleration characterization.
- High efficiency (under 80µs per 20ms cycle).
- No impact on standard REVLib functionality.
Use the Console view to visualize log data
The Console view in AdvantageScope is used to display a single string field containing console data. To start, drag a desired string field into the main view. Each row in the view represents an update to that field: for WPILib logs, a new row is created for each saved line; for AdvantageKit logs, a new row is created for each loop cycle.Visualize robot and field data in the 3D Field tab
The 3D Field tab provides a 3D visualization of the robot and field, which is particularly useful for 3D calculations such as AprilTag localization. It supports multiple camera views (field relative, robot relative, and fixed) and integrates with AdvantageScope XR for augmented reality visualization. A synchronized timeline allows users to navigate log data, with green sections indicating autonomous mode and blue sections indicating teleoperated mode.Understand AdvantageScope data collection policies
Littleton Robotics does not collect data from users of the AdvantageScope application, the AdvantageScope XR mobile application, or the online documentation site (docs.advantagescope.org). The only exception is for users of alpha and beta releases who may be asked to complete optional online feedback surveys via Google Forms to improve future releases; personally identifying information from these surveys is not shared outside of Littleton Robotics without user consent.Monitor controller states in the Joysticks tab
The Joysticks tab displays the real-time or logged state of up to six connected controllers (IDs 0-5), matching the IDs used in the Driver Station and WPILib. Each button highlights when pressed, and axis states are displayed visually. Users can select the joystick type from the table at the bottom of the tab. A 'Generic Joystick' option is available for a grid-based view of all buttons, axes, and POVs.Understand unit-aware graphing in AdvantageScope
The line graph tab in AdvantageScope is unit-aware, allowing numeric values to be converted between compatible unit types automatically. This ensures that axes and legends are accurately labeled. Key features include:
- Automatic Conversion: When adding fields with compatible unit types to the same axis, AdvantageScope automatically converts them to a single common unit.
- Quick Switching: Users can switch to alternative compatible units via the three-dots menu near the axis title.
- Calculus Support: Integration and differentiation tools automatically calculate and display the accurate integral or derivative units.
System requirements for AdvantageScope XR
To use AdvantageScope XR, the following requirements must be met:
- Host: AdvantageScope desktop application (v4.1.0 or later) on Windows, macOS, or Linux. Firewalls on the host device should be disabled.
- Client: iPhone or iPad running iOS/iPadOS 16 or later. Devices with a LiDAR sensor (iPhone 12 Pro+ or iPad Pro spring 2020+) provide better stability.
- Network: Both host and client must be on the same network (Wi-Fi, USB tethering, etc.).
- Internet: An internet connection (e.g., cellular data) is required on the mobile device if the app has not been used recently, unless the offline version is installed.
Navigate and select fields using the AdvantageScope Sidebar
The sidebar contains available tables and fields. Fields shown in italics are selectable, and underlined tables are built-in (WPILib or AdvantageKit).
Selection Methods:
- Single Field: Drag a single field to select it.
- Multiple Fields: Hold
cmd(macOS) orctrl(Windows/Linux) and click multiple fields, then start dragging the collection to finish the selection. - Search: Type in the search box to find a field; the matching field will be highlighted and scrolled into view.
UI Controls:
- Expand/Collapse: Click the arrow to expand nested tables.
- Resize/Hide: Click and drag the right edge of the sidebar to resize or hide it.
- Toggle Visibility: Double-click the edge to toggle the sidebar visibility.
Manage views and playback using the Tab Bar
The tab bar allows switching between different data views and controlling playback.
Tab Management:
- Rearrange: Click and drag tabs to change their order.
- Rename: Right-click a tab and select
Rename.... - Export/Import: Use
File>Export Layout...to save the current tab layout and settings, orFile>Import Layout...to load one. - New Tab: Use the Plus Button to open a dropdown menu for creating a new tab.
- Pop-out Window: Use the Window Button to move a tab to a separate window for simultaneous viewing.
- Close: Use the X Button to close the current tab.
Playback Controls:
- Play Button: Start and stop real-time playback.
- Playback Settings: Right-click the Play Button to change playback speed or enable looping.
Filter and highlight messages in the Console view
The Console view provides tools to manage large amounts of log data:
- Filtering: Enter text in the 'Filter' input to show only matching rows. Use
Ctrl+Fto focus the filter input. To exclude messages containing specific text, prefix the filter text with an exclamation mark (!). - Highlighting: Click the color palette icon to toggle highlighting for messages containing the text "warning" or "error".
- Exporting: Click the save icon to export the current console data to a text file.
- Filtering: Enter text in the 'Filter' input to show only matching rows. Use
Manage live data playback and memory usage
By default, AdvantageScope locks all tabs to the current time during a live connection, with Line Graphs and Tables autoscrolling.
- Toggling Live Lock: Click the red arrow button in the navigation bar to unlock the current time, enabling the replay of past data. Alternatively, scrolling left in a line graph/timeline unlocks the view, and scrolling all the way right relocks it.
- Memory Management: Live data is stored locally for replay. To prevent high memory usage, data is discarded after a set period (default is 20 minutes). This can be adjusted to a shorter period or set to "Never" in the preferences.