Skip to content
Eric Stockenstrom edited this page Oct 29, 2020 · 40 revisions

Welcome to the MavToPass wiki


What is the MavToPass protocol translator, and why do I need it?

  • MavToPass is firmware to translate Mavlink telemetry to FrSky Passthru telemetry.

  • Passthru is the name given to the FrSky compatible telemetry protocol characterised as "DIY", or non-proprietary.

  • Passthru protocol telemetry is the only telemetry that works with yaapu (Alex Apostoli)'s excellent LUA display scripts for the Taranis and Horus transmitters. See yaapus_GitHub

  • Passthru protocol telemetry is required for Craft & Theory's FlightDeck

  • Passthru protocol telemetry is optional (type=10) on Ardupilot, but not supported by the PX4 flight stack (as at July 2019).

  • The older APM 5.2 flight controllers does not support Passthru (as at July 2019)

  • Many medium and long range telemetry / command radio systems support Mavlink, but not Passthru (as at July 2019)

  • MavToPass firmware running in a micro-controller converts Mavlink (1 & 2) telemetry to Passthru telemetry

  • MavToPass can be configured to run in one of three modes:

Ground Mode

In ground mode, the Mav2Passthru protocol translator is usually co-located with a long-range XJT radio long-range module in the back bay of the Taranis/Horus. It accepts Mavlink telemetry from the XJT module, translates it into Passthru protocol telemetry, and feeds that into the S.Port of the Taranis/Horus. Since there is no FrSky receiver to provide sensor polling, a routine in the firmware emulates FrSky receiver sensor polling.

Air Mode

In air mode, the Mav2Passthru protocol translator is located on the aircraft between the Flight Controller and a FrSky receiver. It converts Mavlink out of a Pixhawk or APM flight controller and feeds Passthru telemetry to the FrSky receiver, which in turn sends it to a Taranis/Horus on the ground. In this situation it responds to the FrSky receiver's sensor polling. This mode is necessary for older Arducopter and PX4 flight controllers which cannot natively send Passthru telemetry.

Relay Mode

This hybrid mode is useful where an air-side LRS tranceiver (trx) (like the DragonLink or Orange) communicates with a matching ground-side trx located in a "relay" box near using Mavlink telemetry. The UHF trx in the relay box feeds Mavlink telemetry into the Mav2Passthru protocol translator, and the translator in turn feeds FrSky Passthru telemetry into a FrSky receiver (like an XSR), also located in the relay box. The XSR receiver (actually a transceiver - trx) then communicates on the RC band with a Taranis/Horus nearby. In these circumstances the converter need not emulate sensor polling, as the FrSky receiver will provide it. However, the translator must determine the true RSSI of the air link and forward it, as the RSSI forwarded by the FrSky receiver in the relay box will incorrectly be that of the short terrestrial link from the relay box to the Taranis.

Suitable uController Boards

The Mav2Passthru firmware is presently configurable to run on two broad platforms:

  1. ESP32 Dev board and other variants. This is the most powerful platform, with snappy performance and rich features including an OLED display, WiFi and Bluetooth I/O and SD card support. It is slightly more costly, and physically larger. Includes S.PORT inversion, but still requires an external converter to single-wire for S.Port compatibility. Web configuration and OTA firmware update is supported.
  2. ESP8266 variants, including NodeMCU ESP 12F and ESP-F (RFD900/TXMOD) These boards support WiFi, but not Bluetooth, and only have one usable UART. (At a push, second UART is available with TX out only for debugging). Nevertheless, they perform more than adequately using SoftwareSerial. (A single wire inverted S.Port feature (for AIR & RELAY modes) is experimental and may work in the future). This firmware has been successfully flashed onto the RFD900x/TXMOD. Web configuration and OTA firmware update is supported.
  3. Teensy 3.1 or 3.2. Fairly snappy performance in a very compact board. Less affordable that the STMF103C boards. Includes S.PORT inversion and single-wire S.Port conversion.
  4. STM32F103C variants like Blue Pill and Maple Mini are deprecated and no longer supported

NOTE: 16 bit AVR boards like the Mini Pro, and even the ATmega boards are not recommended for this application.


This application is free software. You may redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation. See here http://www.gnu.org/licenses

The application was written in the hope that it will be useful, but it comes without any warranty or implied warranty of merchantability or fitness for a particular purpose


Inspired by original S.Port firmware by Rolf Blomgren

Author: Eric Stockenstrom / zs6buj

Acknowledgements and thanks to Craft and Theory (http://www.craftandtheoryllc.com/) for
the Mavlink / Frsky Passthru protocol

Special thanks to yaapu for advice, code and testing, and his excellent LUA script

Sincere thanks to athertop for all the time, advice and support

Thank you florent for your kind advice on working with FlightDeck

Many thanks to all the others for your feedback, advice and encouragement.