VDL2 RX - portapack-mayhem/mayhem-firmware GitHub Wiki

Receives VDL Mode 2 (VHF Data Link mode 2), the digital data link most airliners use next to and instead of classic ACARS, and lists the aircraft and ground stations heard. ACARS messages carried over VDL2 are decoded into text, per aircraft. Registration, type and operator come from the ADS-B aircraft database on the SD card.

This is an external app (.ppma file on the SD card), in the Receivers menu.

Settings

  • Channel: the VDL2 channel to listen on. 136.975 MHz is the common signalling channel used everywhere; the others (136.650, 136.700, 136.725, 136.775, 136.800, 136.825, 136.875, 136.900 MHz) are used by the service providers in some regions and around busy airports. The channel list is the only tuning: VDL2 always sits on these 25 kHz channels.
  • RF Amp (0 or 1): Enables/disables the internal RF amplifier.
  • LNA gain (0–40): Low-noise amplifier gain. See Receive Quality Issues.
  • VGA gain (0–62): Variable-gain amplifier gain. See Receive Quality Issues.
  • RSSI: Signal strength indicator.
  • Config: Opens the configuration screen, see Config screen.

List view

List view

One row per station heard, the most recent at the top:

Column Meaning
ICAO The 24-bit ICAO address of the aircraft, in hex. Ground stations show as GROUND.
Reg The registration, from the ACARS messages or from the ADS-B database (/ADSB/icao24.db).
Flight The flight number, from the ACARS messages.
# Number of frames received from this station.

The list keeps the last 16 stations. Select a row to open its detail view.

Detail view

Detail view1 Detail view2

  • ICAO / Reg: address and registration.
  • Flight / Type: flight number and aircraft type.
  • Oper: the operator, from the database.
  • Out / Off / On / In: the OOOI times (gate out, wheels off, wheels on, gate in), taken from the ACARS messages that report them. The time shown is when the message was received.
  • Frames / ACARS: all frames from this station, and how many carried ACARS.
  • Link / Data: frames for the link itself (connection set-up, keep-alive, ATN), and data frames.
  • Last: when the station was last heard, and the label of its last ACARS message.
  • The most recent message texts are shown below the fields.

Messages opens a scrollable view of all ACARS texts of this aircraft, in full. Scroll with the encoder or Up/Down; Left or Back returns. Messages from the aircraft start with >, uplink messages to it with <. The app keeps the last 32 messages (up to 4 KB of text) of all stations together; the oldest go first.

Config screen

  • Enable Log: writes every ACARS message to LOGS/VDL2.TXT: source and destination address, registration, flight, label, message number, text and the carrier offset in Hz.
  • Use Small Font: shows the list and the detail view in the compact font, so more fits on the screen.

Tips

  • Most traffic is heard near airports and below busy airways. A plane on the ground or climbing out within line of sight is heard best.
  • Many frames carry no ACARS text: they keep the link going or carry ATN/CPDLC data. Those count under Link and Data.
  • For the registration, type and operator, copy the ADS-B database icao24.db into /ADSB/ on the SD card (the same file the ADS-B app uses).
  • Classic ACARS on 131.825 MHz and nearby channels is received by the ACARS app.

Signal Processing

VDL2 is D8PSK at 10.5 ksymbols/s (31.5 kbit/s) in a 25 kHz channel. The baseband decimates 3.072 MHz to 48 kHz, filters the channel, finds the burst preamble and takes the carrier offset from it, demodulates the 8 phases, descrambles, decodes the header and corrects each block with Reed-Solomon (255,249), then checks the HDLC frame check sequence. Frames that pass go to the app, which decodes the AVLC addresses and the ACARS inside.

Settings Persistence

The channel, gains and the Config choices are saved to rx_vdl2.ini when App Settings is enabled in the global Settings menu.

Legal notice

Receiving aeronautical data links may be restricted in your country, and publishing what you receive (for example personal data in free-text messages) usually is. Check local regulations before use.