Generate annotated HTML reports and replay views from PX4 ULog files.
Project description
ulogr
ulogr is a command-line tool that turns PX4 .ulg flight logs into a self-contained HTML report with interactive plots, sensor-quality timelines, event markers, structured JSON output, and a simple 3D flight replay.
Scope
This tool is intended for PX4 ULog files from multicopter field tests, bench tests, and post-flight review workflows where a quick visual report is useful.
It currently focuses on:
- PX4
.ulgfiles readable bypyulog - Multicopter-oriented topics such as local position, attitude, actuator outputs, battery status, estimator status, magnetometer, GPS, failsafe flags, and hover thrust estimate
- HTML reports for human review or for sharing summarized context with an LLM
It is not a flight-certification tool, a replacement for PX4 Flight Review, or a guarantee of aircraft safety.
Install
pip install ulogr
For local development from a checkout:
pip install -e .
Usage
Analyze all .ulg files in the current directory:
ulogr .
Generate a fully offline HTML file with Plotly embedded:
ulogr . --inline-plotly
Analyze one file:
ulogr flight.ulg -o flight_report.html --inline-plotly
The command writes:
ulog_analysis_report.htmlulog_analysis_report.summary.json
You can also use the compatibility script from a source checkout:
python analyze_ulog_report.py . --inline-plotly
Long-form command aliases are also installed:
ulogreport .
ulog-report-analyzer .
analyze-ulog-report .
Command Options
path Directory containing .ulg files, or a single .ulg file.
-o, --output Output HTML path. Default: ulog_analysis_report.html
--inline-plotly Embed Plotly JavaScript for offline viewing. This makes the HTML larger.
Output
The HTML report includes:
- Per-log summary cards
- Automated issue table
- Magnetometer validity table
- Sensor/data-quality timeline
- Simple 3D flight replay
- Interactive detailed plots
- Embedded JSON summary for downstream tools or LLM context
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ulogr-0.1.0.tar.gz.
File metadata
- Download URL: ulogr-0.1.0.tar.gz
- Upload date:
- Size: 18.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
87aa92980000a2e62a1091bded4f47478ea7873bcfff8e7329b447d07a20f55a
|
|
| MD5 |
1aed4df192e0c88fafccaa5d7c2aa5d0
|
|
| BLAKE2b-256 |
015cb6f296f3bc7fb54842cb1cd00c19d0de2f1842efccf73a4cab509a3284ff
|
File details
Details for the file ulogr-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ulogr-0.1.0-py3-none-any.whl
- Upload date:
- Size: 18.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
213a2b1387b3aeb20b23289b6d59fb4815e747bfa169ed9974afb4af2800b2c9
|
|
| MD5 |
8cf71db7142fbdecc980f6ee07e0460f
|
|
| BLAKE2b-256 |
be5bd11fa710bfe3a9b8a9a05adecd8b10b0e01d3a29281e68027ea503ebf26a
|