Home

Awesome

MakAir Telemetry

Telemetry All dependency status

ℹ️ Telemetry tools are intended to be used as a library of the Control UI runtime, or as a CLI (eg. to test the telemetry protocol with the firmware).

Versions

VersionLast ChangelogReady?
V1.0.xWorking serial parsing from firmware
V1.1.xExtend telemetry protocol and add control protocol
V1.2.xAlarm code management has been reworked to use ENUMs (interoperability)
V2.0.xNew lib API, protocol V2, with ventilation modes and new alarms
V2.1.xEOL tests, advanced errors
V2.2.xSupport for EEPROM-based user settings storage

Telemetry Library

This crate is a library that handles reading, parsing and serializing the MakAir's telemetry binary protocol, and optionally sending new settings values using the Makair's control binary protocol.

Crate name (for imports and RUST_LOG) is makair_telemetry.

API documentation

Available Cargo features

Telemetry CLI Tool

This crate also contains a CLI tool that leverages the library.

It has the following commands:

CommandDescription
controlSend one specific control message to a serial port, then run debug mode
convertRead telemetry from a recorded file, parse it and convert it to another format (Warp10 GTS, JSON Text Sequences)
disable-rpi-watchdogSend a control message to disable the RPi watchdog (until MCU is restarted)
debugRead telemetry from a serial port, parse it and stream result to stdout
playRead telemetry from a recorded file, parse it and stream result to stdout
recordRead telemetry from a serial port and save bytes to a file
statsRead telemetry from a recorded file, parse it and compute some statistics
stormSend a lot of control messages and/or bytes to a serial port

You can use the scripts provided in the scripts/ directory to run it through Cargo (you need a working Rust development environment).

To see documentation, you can run: