SkillAgentSearch skills...

UltraLog

Better Log viewer for all Aftermarket ECUs

Install / Use

/learn @ClassicMiniDIY/UltraLog
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

UltraLog

<img width="500" alt="UltraLog Banner" src="https://github.com/user-attachments/assets/9924e8ae-ace8-4b16-a8d6-cbf456a8bc62" />

A high-performance, cross-platform ECU log viewer written in Rust.

CI License Version


Overview

UltraLog is an independent, open-source desktop application designed for automotive tuners, engineers, and enthusiasts who need to analyze ECU (Engine Control Unit) log data. Built with Rust for maximum performance, it handles large log files (millions of data points) smoothly using advanced downsampling algorithms while maintaining visual accuracy.

Purpose: UltraLog exists to provide data interoperability for the automotive tuning community. It reads standard export formats (CSV, binary logs) from various ECU systems, enabling users to analyze their own vehicle telemetry data in a unified, cross-platform tool without vendor lock-in.

Key Benefits:

  • Fast - Handles massive log files without lag using LTTB downsampling
  • Universal - Supports multiple ECU formats in one unified interface for cross-platform data analysis
  • Cross-platform - Runs natively on Windows, macOS, and Linux
  • Accessible - Colorblind-friendly palette and clear visualization
  • Open - AGPL-3.0 licensed with documented format specifications for community benefit

Features

Data Visualization

  • Multi-channel overlay - Plot up to 10 data channels simultaneously on a single chart
  • Normalized display - All channels scaled 0-1 for easy comparison regardless of original units
  • Min/Max legend - Peak values displayed for each channel at a glance
  • Real-time cursor values - Legend shows live values at cursor position with proper units
  • High-performance rendering - LTTB (Largest Triangle Three Buckets) algorithm reduces millions of points to 2,000 while preserving visual fidelity
  • Stacked plot areas - Split the chart into up to 10 independent vertically-stacked panels, each with its own Y-axis and channel set — ideal for comparing channels with wildly different scales

Timeline and Playback

  • Interactive timeline - Click anywhere on the chart or use the scrubber to navigate
  • Playback controls - Play, pause, stop with adjustable speed (0.25x, 0.5x, 1x, 2x, 4x, 8x)
  • Cursor tracking mode - Keep the cursor centered while scrubbing through data
  • Manual time input - Type a specific time in seconds to jump directly to that position

Multi-File Support

  • Tab-based interface - Open multiple log files with Chrome-style tabs
  • Drag and drop - Simply drop files onto the window to load them
  • Per-tab state - Each tab maintains its own channel selections and view settings
  • Duplicate detection - Prevents loading the same file twice

Unit Conversion

Configurable units for 8 measurement categories:

  • Temperature - Kelvin, Celsius, Fahrenheit
  • Pressure - kPa, PSI, Bar
  • Speed - km/h, mph
  • Distance - km, miles
  • Fuel Economy - L/100km, MPG
  • Volume - Liters, Gallons
  • Flow Rate - L/min, GPM
  • Acceleration - m/s², g
  • AFR/Lambda - Air-Fuel Ratio, Lambda

Export Options

  • PNG Export - Save chart views as PNG images
  • PDF Export - Generate PDF reports of your visualizations

Computed Channels

  • Formula-based virtual channels - Create custom channels from mathematical expressions
  • Time-shifting support - Reference past/future values with index offsets (RPM[-1]) or time offsets (Boost@-0.5s)
  • Reusable library - Save formulas as templates to use across different log files
  • Full expression support - All standard math functions: sin, cos, sqrt, abs, max, min, etc.
  • Example formulas:
    • RPM * 0.5 - Simple arithmetic
    • "Manifold Pressure" - "Barometric Pressure" - Quoted channel names with spaces
    • RPM[-1] - RPM - RPM change from previous sample
    • max(AFR1, AFR2) - Maximum of two channels
    • sqrt(TPS * MAP) - Complex calculations

Additional Tools

  • Scatter Plot - XY scatter visualization for channel correlation analysis
  • Histogram - 2D heatmap visualization with configurable grid sizes (10x10 to 25x25) for analyzing channel distributions
  • MCP Server - Built-in Model Context Protocol server lets Claude Desktop (or any MCP client) control UltraLog — load files, select channels, get stats, create computed channels, and run analysis via http://localhost:52453/mcp
  • Analysis Tools - Built-in signal processing and statistics:
    • Filters - Moving average, Kalman filter, and other signal processing tools
    • Statistics - Min/max, percentiles, standard deviation calculations
    • AFR Analysis - Air-Fuel Ratio analysis with target comparison
    • Derived Channels - Calculated channels from existing data
  • Normalization Editor - Create custom field name mappings for cross-ECU comparison
  • Field Normalization - Maps ECU-specific channel names to standard names (e.g., "Act_AFR" → "AFR")

Accessibility

  • Colorblind mode - Wong's optimized color palette designed for deuteranopia, protanopia, and tritanopia
  • Font scaling - Four font sizes (S, M, L, XL) for improved readability
  • Custom font - Clear, readable Outfit typeface
  • Toast notifications - Non-intrusive feedback for user actions
  • Multilingual support - 15 languages including English, Spanish, German, French, Italian, Portuguese, Chinese, Japanese, Hindi, Arabic, Bengali, Russian, Urdu, and Indonesian

Supported ECU Formats

Haltech - Full Support

  • File type: CSV exports from Haltech NSP software
  • Features: 50+ channel types with automatic unit conversion
  • Supported data: Pressure, temperature, RPM, throttle position, boost, ignition timing, fuel trim, and more

ECUMaster EMU Pro - Full Support

  • File type: CSV exports (semicolon or tab-delimited) from EMU Pro software
  • Features: Hierarchical channel paths, automatic unit inference
  • Note: Native .emuprolog binary format not supported; export to CSV from EMU Pro

RomRaider - Full Support

  • File type: CSV exports from RomRaider ECU logging software
  • Features: Automatic unit extraction from column headers, Subaru ECU parameter support
  • Supported data: Engine speed, load, AFR corrections, timing, knock, temperatures, and all standard Subaru ECU parameters

Speeduino / rusEFI - Full Support

  • File type: MegaLogViewer binary format (.mlg)
  • Features: Binary format parsing with field type detection
  • Supported data: All standard Speeduino/rusEFI channels with timestamps

AiM - Full Support

  • File type: XRK/DRK binary format (.xrk, .drk)
  • Features: Pure Rust binary parser for AiM motorsport data loggers
  • Supported devices: MXP, MXG, MXL2, EVO5, MyChron5, and other AiM data acquisition systems
  • Supported data: All logged channels with lap times, GPS data, and metadata

Link ECU - Full Support

  • File type: Link log format (.llg)
  • Features: Binary format parser for Link G4/G4+/G4X ECUs
  • Supported data: All ECU parameters including RPM, MAP, AFR, ignition timing, temperatures, and custom channels

Emerald ECU - Full Support

  • File type: Binary format (.lg1 data + .lg2 channel definitions)
  • Features: Native binary format parser for Emerald K6/M3D ECUs
  • Supported devices: Emerald K6, M3D, and compatible ECU models
  • Supported data: TPS, Air Temp, MAP, Lambda, Oil/Fuel Pressure, Oil/Fuel Temp, Exhaust Temp, Boost Target/Duty, RPM, Coolant Temp, Battery Voltage, Ignition Advance, Injector Pulse Width, and more
  • Note: Both .lg1 (data) and .lg2 (channel definitions) files must be in the same directory

MegaSquirt / Honda Tuning Studio - Full Support

  • File type: CSV datalogs exported from TunerStudio
  • Features: Automatic channel and unit extraction, boolean value parsing (MIL lamp ON/OFF), anomalous first-row timestamp handling
  • Supported devices: MegaSquirt MS1, MS2, MS3, MS3Pro, Honda Tuning Studio, and any TunerStudio-compatible ECU
  • Supported data: RPM, MAP, TPS, injector duration/duty, ignition timing, ECT, IAT, AFR, battery voltage, boost, VSS, gear, and all logged channels

BlueDriver OBD-II - Full Support

  • File type: CSV exports from BlueDriver Bluetooth OBD-II scanner app
  • Features: Automatic channel and unit detection from BlueDriver live data exports
  • Supported data: All OBD-II PIDs logged by BlueDriver including RPM, speed, coolant temp, MAF, fuel trims, O2 sensors, and more

Coming Soon

  • AEM
  • MaxxECU
  • MoTeC

Installation

Pre-built Binaries

Download the latest release for your platform from the Releases page:

| Platform | Download | Notes | | ------------------- | ----------------------------- | ------------------ | | Windows x64 | ultralog-windows.zip | Windows 10/11 | | macOS Intel | ultralog-macos-intel.tar.gz | macOS 10.15+ | | macOS Apple Silicon | ultralog-macos-arm64.tar.gz | M1/M2/M3/M4 Macs | | Linux x64 | ultralog-linux.tar.gz | Most distributions |

Windows:

  1. Download and extract ultralog-windows.zip
  2. Run ultralog-windows.exe
  3. You may see a SmartScreen warning on first run - click "More info" → "Run anyway"

macOS:

  1. Download the appropriate .tar.gz for your Mac
  2. Extract: tar -xzf ultralog-macos-*.tar.gz
  3. On first run, right-click the file and select "Open" to bypass Gatekeeper
  4. Or remove quarantine attribute: xattr -d com.apple.quarantine ultralog-macos-*

Linux:

  1. Download and extract: tar -xzf ultralog-linux.tar.gz
View on GitHub
GitHub Stars23
CategoryDevelopment
Updated3d ago
Forks6

Languages

Rust

Security Score

95/100

Audited on Apr 2, 2026

No findings