Foxglove 2.41.0
π― Configurable Fixed Frame for 3D Panelsβ
You can now choose a fixed frame for 3D panels instead of always using the TF root. The fixed frame dropdown controls the coordinate system used for rendering and accumulation, giving you more control over how your 3D data is visualized.
This is particularly useful when working with complex TF trees where you want to use a specific frame as your world reference.
π Depth Images as Point Cloudsβ
The 3D panel now supports rendering uncompressed depth images as point clouds. This enables visualization of depth camera data directly in 3D space, with configurable depth scale and point size settings.
Depth scale defaults to 0.001 for 8-bit and 16-bit images, and 1.0 for 32-bit images. You can customize this value to match your camera system's depth scale configuration.
π @norm Math Modifier for Vector Fieldsβ
A new @norm math modifier lets you plot the norm (magnitude) of 2D or 3D vectors directly using message path syntax. For example, you can use /imu.linear_acceleration.@norm to plot the magnitude of a linear acceleration vector over time.
This eliminates the need to create a user script just to compute vector magnitudes, making it easier to visualize overall vector behavior in your plots.
π Create Visualization Links Using Event IDsβ
Share links can now include the ds.eventId parameter when using the foxglove-stream data source. This allows you to create shareable URLs that directly stream data for a specific event without needing to manually specify device ID and time range.
New & Improved
- 3D panel now shows voxel details in the object inspector when clicking on VoxelGrid objects
- Image panel now displays RGB values in the tooltip for RGB and BGR images
- Image panel now includes an option to display raw (distorted) images even when camera calibration is available, useful for wide field of view cameras such as fisheye
- Improved styling and selection behavior in the event sidebar, including scroll-into-view on selection
- Shared query field for searching both typed properties and untyped metadata in device events
- Added event ID filter to device events page for searching specific events by ID
- Added action buttons to copy and plot vector norm values from the Raw Messages panel
- Topic message converters can now access and watch global variables from your layout
- Embed API now supports organization extensions in hosted embed instances
- Image panel shows a visual indicator when video decoding falls behind playback
- Table panel now preserves the selected page index during playback
- Simplified loading states across device, event, and settings tables with unified spinner
Fixes
- Fixed jerkiness in label size slider by removing precision constraint
- Restored refresh hotkey functionality on desktop
- Fixed issue with state charts and user scripts on live data sources
- Fixed handling of flatbuffer messages in AudioPanel waveform renderer
- GeoJSON tooltips in the Map panel now follow the mouse cursor for better visibility
- Fixed support for empty string frame IDs in the 3D panel
Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal
Primary Site v0.0.86
Foxglove 2.40.0
πΌοΈ Synced Pixel Cursor Across Image Panelsβ
Hovering on a pixel in the Image panel now shows the pixel value across all Image panels displaying images sharing the same frame_id and dimensions.
π Improvements to Embedding Foxgloveβ
The embed API now includes several enhancements:
-
getLayoutmethod: The API now includes a method to export the current layout from the embed. This enables programmatic access to layout data for sharing and other use cases.For the React package, a
refis available to access this functionality:const viewerRef = useRef<FoxgloveViewer>(null);
const layout = await viewerRef.current?.getLayout(); -
Recordings by Device: You can now select a recording data source by
deviceNameordeviceIdwith optionalstartandendtime parameters. This enables more flexible data source selection in embedded Foxglove instances.
π Event Details Pageβ
You can now view details of individual events on a dedicated page. This page provides a way to link to a specific event. All actions from the event list page are available, including visualize, view recordings, download, and delete.
π Fisheye62 Distortion Modelβ
Added support for the Fisheye62 distortion model, a distortion model that adds tangential distortion parameters (p0, p1) to the KannalaβBrandt distortion model, along with an optional critical angle (ΞΈcrit). This model is compatible with SymForce and Project Aria Fisheye62 calibrations. If ΞΈcrit is not provided, it is calculated automatically from the radial coefficients.
New & Improved
- The
pointClouds.tsUser Scripts utility now supports int8, uint32, and float64 for ROS PointCloud2 messages - Topic converter extension topics can now be used as input topics for user scripts
- Problems tab badge count now includes player and session problems
- Added copy and plot buttons for timestamp structs in the Raw Messages panel
- Improved error messaging when an advertised channel uses an unknown schema
- The Raw Messages panel now displays a degree symbol next to
rpyvalues for quaternion fields
Fixes
- Fixed 5s delay when unmounting extension panels
- Fixed the ability to select Grid and VoxelGrid objects in the 3D panel when using the inspector
- Fixed live subscriptions on topic aliases for state transition charts
- Fixed an issue with keyframe lookback on aliased image topics
- Fixed GridMap and Grid disappearing in the 3D panel when viewed from certain angles
- Fixed Grid gradient coloring using auto for min and max values
- Fixed an issue where if a series in an index-based plot contained all NaN values, other series would not display
- Restored
@derivativeand@deltamodifiers for filtered paths - Fixed crashes and freezes when loading invalid or empty VoxelGrid messages
- Fixed cursor moving while typing in metadata search input
- Fixed error when message-path plots point to series with no data
- Fixed plots reloading data when a series before them is deleted
- Fixed the playback bar buttons being enabled after the "Create Event" modal closes
- Fixed seek-on-click behavior for events in sidebar
Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: Universal | Mac: Universal
Primary Site v0.0.85
Foxglove 2.39.2
Agent v1.4.5
Agentβ
This release contains minor improvements.
Changed
- Added support for
AWS_SESSION_TOKEN - Fixed an issue with HTTP/2 keepalive timeout configuration
- Changed log level for messages about empty bag files, from info to debug
Docs: About, Install | Debian Packages: amd64, arm64 | Binary Files: amd64, arm64
Primary Site v0.0.84
This primary site release adds an optional feature that will send health metrics to Foxglove.
These metrics are all Prometheus metrics generated by the Foxglove services in the chart (query-server, inbox-listener or indexer, and site-controller) as well as the new kube-state-metrics component that monitors the pods and deployments in your cluster's Foxglove namespace.
This feature can be disabled by setting the following in your values.yaml:
globals:
publishSiteMetrics: false
Added
-
Added new deployment for
kube-state-metrics. This will monitor the Foxglove namespace and produce metrics about the health of pods.It can be disabled by updating your
values.yamlfile:kubeStateMetrics:
enabled: false -
The
site-controllerwill now gather health metrics from the Foxglove namespace and send them to Foxglove. These metrics will be used to monitor the health of your deployment.It can be disabled by updating your
values.yamlfile:globals:
publishSiteMetrics: false
Foxglove 2.39.1
Primary Site v0.0.83
Added
- Added the
https://embed.foxglove.devURL to the query server allowed CORS origin list. This an embedded Foxglove to read from primary sites.