Dumpvdl2 Versions Save

VDL Mode 2 message decoder and protocol analyzer

v2.3.0

8 months ago
  • Allow reading raw frames or I/Q data from standard input. To enable this, specify "-" as the argument to --iq-file or --raw-frames-file option, respectively.
  • Added --prettify-json command line option which enables prettification of JSON payloads in libacars >= 2.2.0. This currently applies to OHMA messages only.
  • Fixed incompatibility with libacars 2.2.0 which might cause a crash during reassembly of CLNP packets.

v2.2.0

1 year ago
  • Added support for reassembly of multipart CLNP and COTP packets. This brings the ability to decode ADS-C v2 messages which are too large to fit in a single CLNP / COTP packet, even if fragmented in the X.25 layer.
  • Added proper formatting of Route Clearance CPDLC message elements.
  • Removed the obsolete 8-channel limit. The maximum number of VDL2 channels that can be decoded simultaneously is now limited only by the hardware (thx @rpatel3001).
  • Station ID (specified with --station-id option) is now appended to the StatsD namespace if StatsD metric collection is enabled. For example, if the station ID is set to KLAX, the new namespace would be "dumpvdl2.KLAX" instead of just "dumpvdl2". This allows simultaneous monitoring of several dumpvdl2 instances separately in Grafana (thx @cdschuett).
  • Fixed a crash which occurred when the ground station list file could not be opened.

v2.1.1

2 years ago
  • Fixed wrong ZeroMQ version check, which incorrectly declared ZMQ version 4.0.x as too old (#18)

v2.1.0

3 years ago
  • Added full JSON formatting for all protocols and message types. This is supported on all output types - file, udp and zmq. Together with multiple outputs feature that was introduced in version 2.0.0 this enables arbitrarily flexible arrangements, like logging to a file as text, logging to another file as JSON and sending JSON across the network using UDP and/or ZMQ. When collecting data from multiple receivers, --station-id option may be used to assign unique names to receivers in order to discriminate input from each one.

  • Removed a few duplicate routines that have their counterparts in libacars.

v2.0.1

3 years ago
  • Fixed build failure with gcc version 10.

v2.0.0

3 years ago
  • Major overhaul of the output subsystem. The new architecture is modular, multithreaded and can easily be extended with new output drivers. It also allows using multiple outputs simultaneously.
  • New output configuration scheme. --output-file --daily, --hourly and --output-acars-pp options have been removed. All outputs are now configured using --output option. Adjusting command line parameters is therefore required to run the program. Run dumpvdl2 --output help for instructions or see "Output configuration" section in README.md for details and examples.
  • Support for streaming messages over network using UDP/IP.
  • Support for streaming messages over network using ZeroMQ publisher sockets. Requires libzmq library.
  • Support for storing AVLC frames as raw data (without decoding) in binary files for archiving purposes. File contents can then be decoded anytime later, as if the frames were just received from the air. Requires protobuf-c library.
  • Minor bugfixes.

v1.10.1

3 years ago
  • Added support for SDRPlay API version 3 which is required for new devices (notably RSPdx). API version 2 is still supported, however it will probably be removed in a future release. It is possible to have both versions installed simultaneously and to choose which one to use at runtime. See README.md for details.
  • Added --milliseconds option which enables printing timestamps in message headers up to a millisecond precision. Note that the arrival timestamp is stored per VDL2 burst, not per VDL2 message. Since a VDL2 burst may contains more than one VDL2 message, all messages extracted from a single burst will still have exactly the same timestamp value, regardless of whether millisecond precision has been enabled or not.

v1.9.0

4 years ago
  • Added decoder for ISO 8650 / X.227 Association Control Service (ACSE).
  • Improved decoder for ISO 8327 / X.225 Session Protocol.
  • Restructured code of ATN applications decoder. The previous implementation was a little messy and was unable to handle a few uncommon types of messages (like ACSE Abort PDU with no payload). This should bring the number of undecoded ATN messages down to zero.
  • Enable debugging output from SDRPlay driver only if --debug sdr option is used.
  • Fix formatting of geo coordinates in ADS-C v2 messages.

v1.8.2

4 years ago
  • Fix another crash opportunity due to missing sanity check on unparseable ACARS messages.
  • Fix ACARS output to Planeplotter. Only first three characters of Message Serial Number (MSN) field were sent instead of all four.

v1.8.1

4 years ago
  • Fix a bug where an unparseable ACARS message could cause the program to crash.
  • Add a little bit of optimization when compiling with debugging enabled. Debug builds are now compiled with -Og flag rather than -O0. This makes debugging on a Raspberry Pi feasible - when -O0 was used, CPU usage was often too high and caused loss of samples and reduced decoding success rate.