A lightweight python library to parse MavLink log files
Project description
pyulog
A lightweight python to parse log files from ArduPilot vehicles based on the MavLink protocol. It is built on top of pymavlink and uses NumPy under the hood to vectorize messages.
Installation
Installation with pip:
pip install pyulog
or via Poetry
Installation from source:
poetry add pyulog
Development
Install the package in editable mode:
pip install -e .
Pymavlog is built using Poetry, so make sure to have it in your local development environment
pip install poetry
Lastly, install the pre-commit hooks
pip install pre-commit
pre-commit install
Testing
poetry run pytest tests --cov pymavlog
or
make tests
Usage
The main class of the package is MavLog
, which parses the log file messages in-memory as NumPy arrays. You can parse a file like:
from pymavlog import MavLog
filepath = "foo/bar.bin"
mavlog = MavLog("foo/bar.bin")
mavlog.parse()
and access the messages like:
imu_messages = mavlog.get("IMU")
and do some calculations, for example calculating the average value:
avg_gyr_x = imu_messages["GyrX"].mean()
More info in the docs (TBD).
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.