Skip to content
Quick-FlashPublic

About

Plot viewing tool, currently targeting PX4 ULG files with plans for Betaflight bbl files and PX4/Ardupilot tlogs

Resources

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Enlumi

Native desktop viewer for time-series logs. Open ULog (.ulg) or Betaflight Blackbox (.bbl, .bfl, .cfl, .txt, .log) files, browse signals, and drag fields onto docked plots.

Features

  • Split, tab, resize, and link plots; edit line appearance and reorder legends.
  • Set each plot's background or apply its color to all open plots. Automatic line colors follow Betaflight Blackbox Explorer's palette independently in each plot.
  • Click saved geometry to edit it; drag it onto a plot to place it. Hover a state legend entry to see its mode colors. Screenshot legends include geometry.
  • Search fields and recorded parameters, with Ctrl/Shift selection and group dragging. Field search leaves saved plots, views, workspaces, geometry, and profile files visible.
  • Built-in filters and custom Rust functions compiled to WebAssembly.
  • JSON profiles for field names/units, filter chains, geometry, flight-mode bands, and reusable views, with optional firmware matching.
  • FFT, PSD, spectrograms, and field-conditioned heatmaps in docked plots.
  • SVG/PNG export and clipboard screenshots of individual plots or visible docks together.

Downloads

Nightly builds support Windows x86_64, Linux x86_64, and macOS Intel/Apple Silicon. Extract the whole archive; portable bundles include example profiles and a Rust-to-WASM compiler for custom filters. No separate Rust installation is needed to use them.

Each push to master starts a nightly build. Downloads publish after all platform checks pass. Builds are unsigned; macOS builds are not notarized.

Linux archives include Ubuntu 22.04+ (linux-x86_64) and rolling Arch Linux (arch-linux-x86_64) builds. Choose matching distribution.

To receive update notices, enable Nightly builds under Updates, then restart. Checks run once at startup. Portable installations offer Update & restart when a newer completed build is available. Restart closes current log and unsaved work.

Build and run

Install Rust through rustup, Git, and native build tools. Repository selects its required nightly toolchain; keep Cargo.lock for reproducible dependency versions.

Shared plotting library uses upstream Git revision pinned in Cargo.toml.

  • Windows: Visual Studio Build Tools with Desktop development with C++ and a Windows SDK. Use the MSVC Rust target.
  • macOS: Xcode Command Line Tools.
  • Linux (Debian/Ubuntu):
sudo apt-get update
sudo apt-get install -y build-essential pkg-config libx11-dev libxkbcommon-dev \
  libxkbcommon-x11-dev libwayland-dev libxcb1-dev libxcursor-dev libxi-dev \
  libxrandr-dev libfontconfig1-dev fonts-dejavu-core
  • Linux (Arch and derivatives):
sudo pacman -Syu --needed base-devel rustup git libx11 libxkbcommon \
  libxkbcommon-x11 wayland libxcb libxcursor libxi libxrandr fontconfig ttf-dejavu

Set ENLUMI_BUILD_PLATFORM=arch-linux-x86_64 when making Arch portable bundles so built-in updater keeps selecting Arch archives.

From repository root:

cargo run --locked --release -p enlumi
# Or open a log directly:
cargo run --locked --release -p enlumi -- /path/to/flight.BBL

A desktop session and GPU supported by wgpu are required. See portable build instructions to package the app with its offline filter compiler.

First plot

  1. Click Open log or drop a log file into the window, then expand a field group and drag a field onto a plot.
  2. Ctrl/Shift-click to select multiple fields, then drag the selection together.
  3. Drag plot tabs onto docking guides to arrange panels. Use Links to share axes or pointers; double-click a tab title to rename it.

Limits

Enlumi is under active development. One log file is open at a time; plots and filters are kept in memory. Full session saving and cross-file comparison are not implemented. Lines within a plot share one Y axis.

Blackbox values retain raw log units until profiles or filters convert them. GPS/home records and event annotations are not exposed. Incomplete logs and parser limits produce load warnings.

Documentation and development

Run local checks before submitting changes:

cargo xtask pre-commit

License

GNU AGPL version 3 or later. See copyright and third-party notices for dependency and fixture licenses.

About

Plot viewing tool, currently targeting PX4 ULG files with plans for Betaflight bbl files and PX4/Ardupilot tlogs

Resources

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages