Skip to main content

Foxglove 2.18.0

⏯️ Require approval for new users

Enterprise organization admins can now require approval for new users. When enabled, users with an email from your domain can request to join your Foxglove organization. As an admin, you will receive an email notification and can approve or deny the request. Requesting users will not have access or be billed unless approved. Configure approval flows under Organization Settings > General.

Approval flow settings

New & Improved
  • Numeric inputs in panel settings now provide feedback when a value is out of range or will be rounded
  • The Problems sidebar now shows the full error title when expanding an error
  • Entries in the State Transitions panel now render beyond the min and max axis ticks for clarity
Performance
  • Improved the display behavior of items under "Recently Viewed" for slower connections
  • Improved the stability of high-throughput WebSocket connections
Fixes
  • The layout menu now closes after creating a new layout
  • The export recording dialog now closes after downloading a file
  • Fixed a bug causing User Scripts to generate duplicate messages when pausing and resuming playback on a message's exact timestamp
  • Fixed a bug where menu item text would sometimes be highlighted when clicking on the item
  • Double-clicking the State Transitions button in the Raw Messages panel now only creates a single entry
  • Fixed a bug where messages with multiple instances in PX4 Ulog files would be merged into a single topic
  • Fixed a bug causing the x-axis indicator to drift while zooming or playing back in the Plot and State Transitions panels
  • Fixed a bug causing the player to unpause if using the arrow keys to seek forward then immediately backward
  • Double clicking an .mcap or .bag file will once again open it in a new window rather than a previous window

Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal

Foxglove 2.17.0

🛍️ Multi-file playback

We've added support for playback of multiple local files at once. With this update, you can select Open local file(s) from Foxglove, select multiple items from your file system, and immediately view the combined data.

The playback experience is the same as uploading multiple files to Foxglove data management or merging them locally using the mcap merge CLI command. For consecutive recording files (recorded one after another), you can now play from start to end through both files. For overlapping files, you'll see topics from all files and play through the messages in log_time order. Transforms must all belong to the same transform tree and all messages on the same topic must have the same schema.

📂 Organize layouts with folders

You can now create folders to organize your personal and shared layouts. Organize your team's layouts and keep them tidy by clicking the ⋮ menu next to any layout to add it to a folder.

📈 Plot & State Transitions using Publish Time

You can now create time-series plots andstate transitions using message publish_time in addition to the default log_time (occasionally refered to as receive time) and optional header.stamp fields.

🧘 Simplify Plot CSV output

We've simplified the CSV output when exporting data from the Plot panel. Right-click the top bar of any plot and select Download plot data as CSV. The output will now contain a single timestamp column, making it easier to work with.

For time-based plots, the value will be the timestamp selected for that series in the panel settings. For index-based and custom x-axis plots, the value will be the log_time of the message.

Plot CSV export

📋 Easily copy logs

We added a button to copy the logs you're currently looking at in the Log panel to the clipboard. We love the little things that make your day-to-day workflow faster and easier.

Copy logs

New & Improved
Performance
  • Improved performance when resizing panels
Fixes
  • Fixed a bug where reloading the desktop app would not retain the current connection information
  • Fixed a bug that would occasionally occur when reconnecting to a WebSocket
  • Fixed a bug preventing the 3D panel's Open in raw message action from handling topic names with spaces
  • Fixed a bug preventing message converters from running on Transform messages
  • Fixed a bug preventing User Script log() output from correctly rendering true Boolean values
  • Fixed a bug that stripped whitespace from layout names
  • Fixed a bug where files with many MCAP attachments may fail to import
  • Added missing support for inputting numeric timezone offsets in the playback time input
  • Fixed a bug causing panels to crash when receiving CompressedVideo messages without timestamps
  • Fixed a bug causing the camera to jump when moving the camera after going from Fixed to Follow pose mode
API

Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal

Foxglove 2.16.1

⚡ All new State Transitions panel

We re-wrote the State Transitions panel from the ground up to improve performance and usability. While things may look the same, the new State Transitions panel is more than 2x faster loading saved data, and more than 10x faster rendering high-frequency (> 1kHz) messages as points. We've also cut latency in half when panning and zooming, making it feel smoother and more responsive.

We've also made lots of little tweaks like making labels easier to understand when you zoom out. This is only a start; we have more to come.

Before

After

⛵ Expand and explore topics

The updated topic sidebar (open with [ shortcut) allows you to expand and explore topics in your data. You can now see the structure of your data and easily navigate through it. Select fields you're interested in and drag them into relevant panels to visualize them.

🧠 Intelligent settings for live vs replay

The Plot panel and State Transitions panel now automatically switch the default time-range displayed based on the data source type. Live data defaults to showing the last 30 seconds while replayed recordings show the full time-range. These defaults can be overridden in the panel settings.

♻️ Manage data retention on your devices

The Foxglove Agent now makes managing data on your robot easy. Once you've installed the Foxglove Agent on your robot and connected it to Foxglove using a device token, set the retainRecordingsSeconds property for your device using the devices API. As data gets on your robot's disk ages out, the Foxglove Agent will automatically delete it based on the policy you've set.

Setting the retention period to zero retains data indefinitely and is the default state. You can set different retention policies for each of your devices and update them at any time. Each time your device connects to Foxglove, it will automatically sync its settings.

You can now copy links to your visualization or download data from the visualizaiton UI. Click the ⌄ button in the top bar next to the data source name to copy a link to your current visualization or download the data. On download you'll be able to edit the time range, which topics you want, and the format of the data.

New & Improved
  • Improved search in the topic sidebar to make it easier to find specific message fields
  • Added a splash screen when launching the app
  • Font size can now be changed for the Indicator panel in the settings
  • Global variables are now supported in message paths for the Indicator and Gauge panels
  • Added support for DELIMITED_CDR2-encoded appendable sequences and arrays
Performance
  • Plot panel stability improvements
  • Reduced desktop app initialization time
  • Stability improvements for panels subscribing to the transform tree
  • Improved app stability for Ubunutu 22.04 users
Fixes
  • Fixed a bug with the importStatus field of webhooks notifications for recordings that were deleted and then re-uploaded
  • Fixed a bug where Map panel settings would not display in some cases
  • Fixed a bug causing the last message to be skipped during playback in some cases
  • Fixed a bug where the performance sidebar would show multiple entries for user scripts
  • Fixed a bug causing the app to occasionally crash when double-clicking files to open them in the desktop app
  • Fixed a bug preventing editable transform fields in the 3D panel from being set to values less than 0.1
  • Fixed a bug preventing user scripts from importing .ts modules in certain scenarios
  • Fixed a bug where publishTime was not set on message events when streaming from Foxglove
  • Fixed a bug where transform frames would be incorrectly visualized when their parent frame changed
  • Fixed a bug loading flatbuffer data with large or numerous fields
API
  • Deprecated mcap0 in favor of mcap as an outputFormat option for /data/stream
  • You can now create devices automatically when using the /data/upload API by specifying a new deviceName

Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal

Agent v1.2.0

Static Builds

We now build Foxglove Agent statically. This will allow foxglove-agent to run on more Linux versions and distributions.

Fixes
  • Fixed a bug where the Foxglove Agent exits when running on distributions with unsupported glibc version
  • The agent now will fetch and respect the configured per-device recording retention period

Docs: About, Install | Debian Packages: amd64, arm64 | Binary Files: amd64, arm64

Primary Site v0.0.50

This release contains an change in behavior when providing a device name in Foxglove MCAP metadata.

New & Improved
  • Changed: When supplying a device name in Foxglove MCAP metadata, the device no longer needs to be created in advance. If a device with that name does not yet exist, it will be created during processing of the recording by the inbox listener.

Docs: About | Install | Upgrade

Foxglove 2.15.0

🏭 Quickly refine playback time range

It's now smoother to refine the playback time range you've selected in the timeline view. If you update the range, the seek time will automatically update to also be within the new range.

New & Improved
  • When logging in using a magic link, emails now include a plain text copy of the link for copy/pasting
Performance
Fixes
  • Fixed a bug where the 'add panel' menu would not close after hitting 'enter' to add a panel
  • Fixed a bug causing scene entity models to flicker under some circumstances
  • Fixed a bug preventing users from opening symlinks to a local file in some cases
  • Fixed a bug preventing the click to publish feature in the 3D panel from working when using the Foxglove bridge with simulations
  • Fixed a bug where user scripts were not working when there were conflicting datatypes
  • Fixed a bug where the ROS_PACKAGE_PATH environment variable was not being used when the app setting with the same name was set to an empty string

Downloads: Linux: deb amd64, snap amd64 | Windows: Universal | Mac: Universal