Originally written in English
PTVSOAR Message
In general, the protocol uses an NMEA-like message structure with $PTVSOAR as the protocol identifier, followed by a comma (,).
The payload consists of a series of subsequent data fields. The order of the fields can be arbitrary. Each field consists of a unique tag (usually 3 letters) followed by a value. Each tag and each value is followed by a comma (,) except the last one.
The values can be plain ASCII, signed integer numbers, or signed floating point numbers, with a period (.) as the decimal separator. The values must not contain any of the special characters ($ * ,).
As usual, a message can (and should) be terminated with an asterisk (*) followed by the hexadecimal NMEA checksum. If the checksum is not present, the verification is skipped and the data is accepted without verification.Messages must be separated by line breaks (\n).
Following tags are defined. Others are reserved for future extensions (button/event identifer etc).
MMO Device Model, ASCII, except [$*,]
MSN Device serial number, ASCII, except [$*,]
OAT Outside air temperature in deg C
OAH Outside air humidity in percent RH
PRS Static pressure in hPa
PIT Pitot differential pressure in Pa
VOL Battery voltage in V
CHG Battery charging flag (1=charging)
VAR Vario in m/s
TEV TE Vario in m/s
More fields can be defined in the future. MNA, MMO, MSN, and VOL are so far (Beta-29) ignored.
If VAR or TEV is sent, the internal calculation of the vario value from PRS is disabled and the vario value is taken as it is. If TEV is sent (VAR is ignored), the internal TEV calculation is skipped and the total energy vario value is taken as it is.
If PRS is provided and VAR / TEV are not present, TotalVario activates the internal option to tune the Kalman filter for vario calculation.
For processing real-time data such as PRS, PIT, VAR, TEV, it is strongly recommended to send records at a constant rate of 10/sec or more. It makes little sense to use a rate higher than 20/sec, although this also works.
PTV Short Message
If the Bluetooth/BLE connection is too slow for whatever reason, the alternative short form $PTV can be used to send the essential data with less overhead.
As
usual, a message can (and should) be terminated with an asterisk (*)
followed by the hexadecimal NMEA checksum. If the checksum is not
present, the verification is skipped and the data is accepted without
verification.
Messages must be separated by line breaks (\n).
The format is defined as
$PTV,<pitot>,<baro>,<temp>,<humid>,<batt>,<chg>*<cksum>
<pitot> : differential pressure in Pa
<baro> : static pressure hPa
<temp> : air temperature in C
<humid> : relative air humidity in %
<batt> : battery capacity in %
<chg> : 1=charging, 2=not charging
<cksum> : NMEA checksum (2 hex digits)
Copyright (c) 2023, Bernd Wing*. All rights reserved.