Foxglove 2.47.0
π§ Message Path Functionsβ
Message path syntax has been expanded with several new functions and capabilities. Use .@radians and .@degrees for unit conversion, .@timedelta to calculate time differences between consecutive messages, and .@rpy to convert quaternions to roll/pitch/yaw. Functions can now be chained together (e.g., /[email protected].@degrees), and filter expressions support enum names (e.g., /topic{status==OK}) with autocomplete suggestions. "Math modifiers" have been renamed to "message path functions" to reflect the broader scope.
πΊοΈ Depth Map Point Cloud Improvementsβ
Depth image point clouds in the 3D panel now support colorization using a sibling RGB topic, making it easy to visualize color-mapped depth data from RGB-D cameras like Intel RealSense and Luxonis. This release also adds support for grayscale PNG depth images and custom color modes for 32FC1 and 8UC1 depth images in the Image panel.
π Global File Drag and Dropβ
Drop supported files anywhere on the view or dashboard pages to open them. Drag .mcap and other data files onto the app to load them in the current session, or drop .foxe extension files to install themβno need to navigate to a specific panel first.
π·οΈ Map & Image Panel Tooltip Updatesβ
The Image panel now supports hover tooltips for annotations. Also, both the Image and Map panel's tooltips can now display custom metadata. LocationFix and ImageAnnotations messages support a new optional metadata field (added in foxglove schemas v1.10.1), and GeoJSON features can include properties.metadata. Use metadata to surface information like object IDs, classification labels, or sensor info directly in your visualizations.
New & Improved
- Command palette: Add panel, quick search for devices/events/recordings, Save layout, Revert layout changes, and panel settings shortcut (
,) - Improved Experimental Remote Data Loader login flow with an in-app prompt to prevent browser popup blockers
- Improved video decoding performance and memory use; avoids delay buildup during playback
- Renamed "Download layout" to "Export layout" in the command palette
- Improved Map panel performance with many pin markers; pin markers now support customizable color and size
- Updated
@foxglove/ulogdependency to fixBlobReaderin Node.js and parsing of nested structs with padding or array fields - Updated the layout overwrite confirmation dialog to mention that changes can be restored using Layout History
- Added keyboard shortcut
rto reset view in Plot and State Transitions panels - Added "Copy image" to the Image panel context menu to copy the displayed image to the clipboard
- Added "Heading (position + yaw)" follow mode to the 3D panel; Position and Fixed modes now use fixed frame orientation (Z-up)
- Map panel latest-message markers are now more visually distinct from historical markers and render above them
- Added support for JSON Schema
$refreferences when using JSON-encoded data in MCAP files and Foxglove WebSocket connections - Added keyboard shortcuts (Shift+β/β) to increase and decrease playback speed
- Removed four large action cards from the dashboard; added "Explore example datasets" card when no recent items are available
- Added copy and plot action buttons for quaternion RPY values in the Raw Messages panel
- Custom map layers in the 3D panel now default to drawing behind other scene elements
Performance
- Improved Audio panel waveform rendering performance and added loading feedback while range audio data is fetched
- Optimized message converters for lower memory and CPU usage
- Improved scrubbing performance
API
POST /eventsnow supports optionalprojectIdfor event creation- Webhook events for
event.updatedanddevice.updated - Embedded viewer:
autoplayproperty on file, device, remote-file, and recording data sources - LLM-optimized API docs at
/api/llms.txtand/api/llms-full.txt
Fixes
- Fixed Map panel "last N seconds" mode clearing the trail every N seconds during live playback
- Fixed playback buttons getting stuck in their hover state
- Fixed extra spacing at the top of the event details sidebar view
- Fixed event creation overlay in State Transitions and Plot panels to immediately reflect the selected event type color
- Fixed grid flickering in the 3D panel when using "Position" or "Fixed" mode with "Draw behind" enabled
- Fixed keyboard shortcut text being invisible in sidebar navigation tooltips
- Fixed Map panel GPS points clearing when toggling topic visibility
- Fixed per-topic arrow visibility when using live data connections in the 3D panel
- Fixed Plot panel clearing when hiding a series that uses topics from User Scripts
- Fixed layout dropdown menu not closing after selecting "Revert", "Save changes", or "Delete"
- Fixed Plot panel panning horizontally in XY plots constantly resetting the view
- Fixed Video panel showing "waiting for keyframe" when seeking during playback
- Fixed spurious "missing transform" error icons on grid layers during initial load
- Fixed recordings table column widths resetting when changing page or sort order
- Fixed Map panel crash during teardown
- Fixed Map panel covariance ellipses blocking mouse interactions with point markers from other topics
- Fixed drag-and-drop for topics and panels in the embedded Foxglove viewer
- Fixed camera-dependent transparency artifacts for SceneEntity cubes in the 3D panel
- Fixed Image panel crash when hovering over images with invalid camera calibration
- Fixed "Data went back in time" warnings when seeking
- Fixed crash when receiving malformed TF messages with non-array transforms data
- Fixed crash when receiving malformed JSON messages over Rosbridge connections
- Fixed enum names not displaying in Raw Messages panel when using a filter after a slice
- Fixed time input handling in download/export dialogs causing unexpected date changes
- Updated layout overwrite confirmation to open when saving org layouts from Layout History; added clickable text to open Layout History from the modal
- Fixed Map panel crash when metadata contains undefined values
- Fixed remote data loader showing HTTP status text instead of error messages from the loader
- Fixed tooltip flickering when hovering over Map panel points during playback
- Fixed Image panel annotation tooltips not updating when underlying data changes while the mouse is stationary
- Fixed SceneEntity metadata not appearing in Image panel hover tooltips; updated Image panel docs to list SceneEntity/SceneUpdate as supported messages
- Fixed Table panel only showing the first array item when using
[:](slice-all) in the message path - Fixed message path function modifiers like
@absand@addnot being applied when using streamed data sources
Deprecated
- Removed the experimental
PanelOverlayExtensionAPI - Removed the Velodyne data source from "Open connection"
Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: x64 arm64 | Mac: Apple Silicon Intel