Application to monitor bandwidth and message composition of a MAVLink stream
Project description
Mavometer
Mavometer is a PyQt GUI to display MAVLink Connection Information and Statistics.
It can operate on a live connection (e.g. the stream mirrored by Mission Planner) or it can read a file.
It provides connection-level information, such as protocol version, and message information, such as data rate by message type.
It is not a protocol analyzer - it does not display individual message contents. It is not a ground station - it does not read or display telemetry values from MAVLink messages.
It is written in python, and should run on any OS that supports PyQt5 and pymavlink.
Getting Started
Prerequisites
- pymavlink - MAVLink protocol implementation
- PyQt5 - Mavometer is based on the Qt version 5 framework
- UQtie - utility package for PyQt5 usage
The Mavometer distribution package does not name PyQt5 as a dependency because you may have already installed it in some custom way, and you don't want the Mavometer installation process to create a redundant PyQt5 installation.
If you don't already have it, you can install PyQt5 by doing this:
pip3 install pyqt5
pymavlink and uqtie can be installed in the same way:
pip3 install pymvalink
pip3 install uqtie
Be aware that the appropriate installation procedure for a package can vary depending on your OS and other factors.
Installing Mavometer
Install the package:
pip3 install mavometer
Or clone from GitHub:
git clone https://github.com/langrind/mavometer.git
and then run the setup script:
python3 setup.py
Run Mavometer
Say you have a Pixhawk connected to a USB port on your Linux machine:
$ mavometer --mavlink-port /dev/ttyACM0
Or you have a log file produced by QGroundControl:
$ mavometer --mavlink-port '/home/langrind/Documents/QGroundControl/Telemetry/2019-11-19 20-38-03.tlog'
For (a little) more info, RTFD.
Tests
$ mavometer --mavlink-port test/test.tlog
NOTE: timestamping is not supported yet for replaying from files, so bandwidth and frequency displays are garbage in this case.
Deployment
TBS: details about usage in different OS environments
Contributing
This project is ad hoc in nature, so I don't foresee contributions. Nevertheless, feel free to make a pull request.
Versioning
Versions are assigned in accordance with Semantic Versioning. For the versions available, see the tags on this repository.
Authors
- Nik Langrind - Sole author
License
This project is licensed under the MIT License - see the LICENSE file for details
Acknowledgments
- I used the PurpleBooth README template
- The pymavlink
tools/mavsummarize.py
program performs a similar function to Mavometer.
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
File details
Details for the file mavometer-0.1.0.tar.gz
.
File metadata
- Download URL: mavometer-0.1.0.tar.gz
- Upload date:
- Size: 6.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ce168df7fb50cc62da2199e939516fcf003680d7f308a58ef35909c7fec24af |
|
MD5 | ba6e7c9d2157a6daf50f49be68d9997c |
|
BLAKE2b-256 | b6b8d0f89e3a42e514ac582b929aacbc4192d2903cb265821500dce2c7f0014a |
File details
Details for the file mavometer-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: mavometer-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 016fab9166648c49123cf8e1765a369c7d6a49df21a92c1d3520629c72dd8eec |
|
MD5 | ba6d0bb351aa7196ea1c17c3fb209d29 |
|
BLAKE2b-256 | f5254c00ee973e8b2bd42b9f53a410610cb6dc481cd99d53eb9d8f93f8eec40a |