Skip to content

v2.8.0

Choose a tag to compare

@github-actions github-actions released this 02 Apr 02:22
· 183 commits to main since this release

What's New in v2.8.0

Stackable Log Viewer

The most requested visualization feature is here — stacked plot areas let you split your chart into multiple independent panels, each with its own Y-axis and channel set. No more struggling to compare RPM (0–8000) and Lambda (0.7–1.3) on the same scale.

  • Toggle stacked mode from the view options to split your chart into separate vertically-stacked panels
  • Up to 10 plot areas — create named panels like "Engine", "Fuel", "Temps" and assign channels to each
  • Drag to resize — adjust the height of each plot area by dragging the dividers between them
  • Collapse panels — minimize plot areas you don't need right now without losing your channel assignments
  • Per-plot channel management — add and remove channels from individual plots, or move channels between plots
  • Shared timeline — all stacked plots share the same time axis, cursor position, and playback controls, so everything stays synchronized as you scrub through the log
  • Works with all tools — stacked mode integrates with the existing channel selection, color assignment, min/max legends, and cursor value readouts

When you disable stacked mode, all channels consolidate back to a single chart — nothing is lost.

MCP Server — Claude Desktop Integration

UltraLog now embeds a Model Context Protocol (MCP) server that lets Claude Desktop (or any MCP-compatible AI client) control the application in real time. When UltraLog launches, it starts an MCP endpoint at http://localhost:52453/mcp that exposes 23 tools for AI-assisted log analysis:

  • File management — Load, close, and inspect ECU log files
  • Channel operations — List channels, select/deselect channels for display, get time-series data and statistics (min, max, mean, std dev, median)
  • Computed channels — Create, delete, and list computed channels from mathematical formulas
  • Formula evaluation — Evaluate arbitrary formulas against log data without creating permanent channels
  • Playback control — Play, pause, stop, set cursor position, and set visible time range
  • Analysis tools — Find peaks in channel data, compute Pearson correlation between channels
  • View switching — Switch between time-series chart, scatter plot, and histogram views

To connect Claude Desktop, add UltraLog as a Streamable HTTP MCP server pointing to http://localhost:52453/mcp.

New ECU Format: BlueDriver OBD-II

Added support for BlueDriver OBD-II diagnostic scanner log files (.csv). BlueDriver is a popular Bluetooth OBD-II scanner used for reading live data from any OBD-II compliant vehicle.

AFR/Lambda Unit Preference

Added a new unit preference for Air-Fuel Ratio (AFR) and Lambda display, letting you switch between AFR and Lambda units across all channels that report mixture data.

UI Polish

  • Improved histogram and scatter plot tool properties panels with better layout and controls
  • Refined tool properties panel styling
  • Cursor tracking now defaults to on for a better out-of-the-box experience

Under the Hood

  • Rust toolchain updated from 1.92.0 to 1.94.1
  • egui ecosystem upgraded to eframe 0.34.1, egui_plot 0.35.0, egui_extras 0.34.1
  • Dependency updates: zip 8.5, printpdf 0.9 (complete PDF export rewrite), strum 0.28, dirs 6.0, ureq 3.3, serde_yml (replacing deprecated serde_yaml), chrono 0.4.44
  • OpenECU Alliance API — Fixed spec refresh parsing for the updated API response format; added Diagnostics channel category
  • PDF export rewritten to use printpdf 0.9's Op-based API

Installation

macOS

  1. Download the appropriate .dmg file for your Mac:
    • Intel Mac: ultralog-macos-intel.dmg
    • Apple Silicon (M1/M2/M3/M4): ultralog-macos-arm64.dmg
  2. Open the DMG and drag UltraLog to your Applications folder
  3. On first run, right-click the app and select "Open" to bypass Gatekeeper

Windows

  1. Download ultralog-windows.zip
  2. Extract the zip file
  3. Run ultralog-windows.exe

Linux

  1. Download ultralog-linux.tar.gz
  2. Extract: tar -xzf ultralog-linux.tar.gz
  3. Run: ./ultralog-linux

What's Changed

🔄 Other Changes

Full Changelog: v2.6.0...v2.8.0