Skip to main content

215 posts tagged with "Foxglove"

Release notes for the Foxglove web and desktop app.

View All Tags

Foxglove v2.1.0

User scripts

  • Improvements to user scripts to allow returning types that consist of  fields or fields with types:
type Output = {
field1: Message<"std_msgs/String">;
field2: Array<number>;
};

It is now possible to create elaborate return types, for example:

import { Input, Message, Time } from "./types";
import { subtractTimes } from "./time";

type InputType = Message<"geometry_msgs/PoseStamped">;
type Output = {
header: InputType["header"];
time_diff: Time;
translation: Message<"geometry_msgs/Vector3">;
random_array: Array<number>;
};

export const inputs = ["/pose_stamped"];
export const output = "/pose_difference";

let lastMessage: InputType | undefined;

// Calculates translation & time difference between two subsequent poses.
export default function script(event: Input<"/pose_stamped">): Output | undefined {
const message = event.message;

if (!lastMessage) {
lastMessage = message;
return undefined;
}

const output: Output = {
header: message.header,
time_diff: subtractTimes(message.header.stamp, lastMessage.header.stamp),
translation: {
x: message.pose.position.x - lastMessage.pose.position.x,
y: message.pose.position.y - lastMessage.pose.position.y,
z: message.pose.position.z - lastMessage.pose.position.z,
},
random_array: [Math.random(), Math.random()],
};

lastMessage = message;
return output;
}

Snap package

  • Added interface to support using Foxglove with gamepads via the Snap Store.

Performance

  • Playback performance improvements when buffering data.

Foxglove v2.0.0

For more information, see our Foxglove 2.0 Announcement.

Smoother navigation

  • You can now visualize your data and manage your Devices, Recordings, and Events all in the same app. This new workflow is available both in the desktop app and at https://app.foxglove.dev/. Click the Foxglove logo to access the new navigation from the visualization screen:

    Navigation menu
  • When opening the app, you will now be greeted with the Dashboard. The “Open local file”, “Open connection”, “Recently viewed”, and “Explore sample data” features are now part of the Dashboard.

    Dashboard

Performance improvements

  • We’ve made performance improvements across plots, user scripts, 3D models, H.264 video, and general playback.
  • Fixed an issue where Windows 11 would put the app into “efficiency mode”, degrading app performance.

More panel actions

  • The panel actions overlay now has separate buttons to split right and split down, rather than a single split button that chooses a split direction automatically. Hold the backtick (`) key and hover over a panel to access the quick actions:

    Panel actions

Playback and data sources

  • The playback speed setting is no longer saved per-layout; instead, the setting will persist for an individual user/browser.
  • Topics using OMG IDL schemas now support optional member fields on mutable structs.
  • Fixed an issue with loading glTF models via package:// URLs over a WebSocket connection.
  • The “Message rate” setting has been removed. Adjusting this setting did not always have the intended effect, and the application already adapts dynamically to system performance.

Plots

  • The Plot panel now displays more information about series errors and warnings in the legend.

    Plot legend
  • Fixed some visual alignment issues in Plot and State Transitions.

3D

  • Fixed an issue in the 3D panel where the scene would not exactly track the mouse while panning in 2D mode.

Log

  • The Log panel now supports Message Converters with a toSchemaName that matches one of the panel’s supported schemas.

Extensions

  • Fixed a bug that caused a message converters to be run on allFrames when they should not have been.

Foxglove v1.87.0

Performance Improvements

  • Improved omgidl deserialization performance
  • Improved performance of 3D panel
  • Improved performance of performance sidebar
  • Reduced OOMs by buffering messages as Uint8Array
  • Fixed memory leak when switching data source

Bug Fixes

  • Fixed the start time for foxglove WebSocket player when a connection is reset
  • Fixed URDF meshes not loading when connected to rosbridge
  • Fixed empty plot minYValue and maxYValue led to a 0-0 Y scale

Other

  • Improved Chinese translations

Foxglove v1.86.0

UX Improvements

  • Improved message path dropdown rendering
  • Change new layout name generator to use friendly names
  • Desktop traffic light buttons do not scale with zoom level

Performance Improvements

  • Reduce downsamples and re-renders for plot

Bug Fixes

  • Fix collada textures not being loaded

Foxglove v1.86.1

Fixed

  • Fixed issue with plots not following the cursor when using x-axis range setting

Foxglove v1.85.0

Changed

  • Debounce updates in the Variable Slider panel
  • Improve message path autocomplete
  • Better indicate when Plot panels are loading preloaded data
  • Improved performance for processing user scripts

Fixed

  • Fix Plot panel's x-axis when using "index mode"
  • Fix bug where zooming into a Plot panel would unnecessarily downsample
  • Fix Image panel memory leak when unmounting while decoding an image
  • Fix synced annotations when an unavailable annotation topic is in the layout
  • Fix memory leak across data sources when block loading was incomplete
  • Fix page scrolling bug on narrow pages with Plot panel tooltips
  • Fix issues with disabled plot series
  • Fix erroneous instances of "reset view" on the Plot panel
  • Fix erroneous re-fetching behavior in BlockLoader
  • Fix issues with invalid series in the Plot panel
  • Fix an issue with dragging and dropping topics into the Image panel if the topic names contain special characters

Foxglove v1.84.0

Added

  • Add delete button to State Transitions panel legend

Changed

  • Update device auth dialog styling
  • Update Image panel empty state to match other panels
  • Lower maximum frame size in WebSocket player
  • Improve 3D panel performance
  • Lower transform tree history limit from 50k to 10k

Fixed

  • Bug fixes to ColorPickerInput
  • OMGIDL schema handling bug fixes
  • Plot panel bug fixes

Foxglove v1.83.0

Added

  • Add support for coloring pointclouds by distance
  • Add tooltips to 3D panel buttons

Changed

  • Reduce limit of buffered messages to mitigate OOMs
  • Reduce memory usage of plot workers
  • Disable auto-update on linux (apt/snap handle this automatically)

Fixed

  • Fix panels not receiving latest messages on newly subscribed topic that is already subscribed to by another panel
  • Fix player memory reporting in performance sidebar
  • Fixed flickering in image panel when switching between selected and unselected calibration topics