Skip to main content

Introduction

Download Foxglove as a desktop app (available on Linux, Windows, or macOS), or navigate to the web app in a Chrome browser window.

Desktop-only features

Some features are only available via the desktop app.

Connecting to data

Extensions

  • Installing extensions via the marketplace
  • Installing extensions locally

Other

Interface

Connect to a data source to explore it with Foxglove's visualization and debugging tools.

top nav

componentdescription
App menuConnect to a data source, toggle the sidebars, or view resources
Add panelAdd a panel to the current layout
Layout menuSave your workspace view as a layout and share it with teammates
Left sidebarEdit panel settings (Panel), view data source's topics (Topics), and troubleshoot issues with your connection (Problems)
Right sidebarSet layout-wide variables (Variables), view playback metrics (Performance). Must enable debugging features in the Visualization settings to see the Performance tab
User menuSign in to your Foxglove account, configure preferences, manage extensions, and more

Settings

Configure Foxglove app settings, privacy preferences, and experimental features.

Open Visualization settings from the user menu to configure the following settings.

General

fielddescription
Color schemeChoose between light or dark mode, or follow your OS settings
Display timestamps inTimezone used to display timestamps
Timestamp formatFormatting used to display timestamps
Message rate (Hz)Message pipeline's frame rate; lowering frame rate will reduce CPU usage and redraw frequency for certain panels; rendering will continue at the usual 60fps for smooth playback
LanguageApp language (contribute translations)
UpdatesToggle ability to automatically update the desktop app
ROS_PACKAGE_PATHPaths to search for ROS packages (local file paths or package:// URLs); separate paths with standard OS path separator (e.g. ':' on Unix).
Example: /path/to/workspace/src:/opt/ros/noetic/share
AdvancedEnable features for debugging Foxglove

Privacy

Decide whether you want to send anonymized usage data or crash reports to the Foxglove team. All data will be used to improve the app.

These settings require an app relaunch to take effect.

Extensions

Select the Foxglove extensions you want to install.

Experimental features

These features are not recommended for regular use – they are either deprecated or in active development or testing.

Reach out in the Slack community, if you have any questions about any of these features.

Panel

Edit panel settings for any selected panel.

Topics

View all topics available in the data source, along with their data types and message rates.

Problems

See a list of playback errors to troubleshoot.

Variables

Set layout-wide variables that can be used in different panels with the message path syntax.

Performance

Display playback and data-streaming performance statistics. Displayed only when the "Enable panels and features for debugging Foxglove" setting is enabled in the app settings.

playback performance panel

The following statistics are displayed for a given playback session. "Instantaneous" statistics are reported based on the most recent frame, and also are averaged over the last 5 seconds.

Memory usage

Details the jsHeapSizeLimit, usedJSHeapSize, and totalJSHeapSize.

Main thread

Frame rate

The number of frames played per second. Though the player can play back at up to 60fps, this statistic will be lower if frames take longer than 16ms to render.

Latency

Measures time for information to travel from the data source to the visualization panels.

User scripts

Measures time spent executing user scripts, both individually and in total.

Data pipeline

Playback speed

The player tries to play at the speed specified by the user, but may not be able to keep up, given heavy layouts and large amounts of data. This chart displays the actual playback speed as a ratio of bag time to playback time.

Frame rate

The number of frames played per second. Though the player can play back at up to 60fps, this statistic will be lower if frames take longer than 16ms to render.

Bag frame time

The duration in bag-time for the rendered frames in milliseconds. To "keep up" with playback, Foxglove will often emit "larger" frames.

Data throughput

The amount of data received by the player in megabits per second. For remote bags, this includes topics that the player is not subscribed to. This statistic does not account for Content-Encoding compression, so it may be larger than the actual network bandwidth.

Logs

Filter logs by level (debug, info, warn, error) to troubleshoot.