You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Silvano Seva 03062fbb25 Given execution permissions to nightly build script 4 months ago
.github Remove bin2sgl from CI 5 months ago
assets Move assets folder and add splash screen gif 10 months ago
lib Add support for encoder knob on MD-UV380 6 months ago
openrtx Add DSP code with DC removal and FIR PWM filter compensation 5 months ago
platform Updated code attributions and informations about licensing of part of the codebase 5 months ago
scripts Given execution permissions to nightly build script 4 months ago
tests Fixed microphone parrot test, audio volume is still too low 5 months ago
.gitignore Update .gitignore 9 months ago
.gitmodules Added miosix kernel as submodule 6 months ago
99-openrtx.rules Correct error in udev rules 9 months ago
LICENSE Initial commit 1 year ago Updated README with a warning about flashing on VHF versions of MD-380/390 5 months ago
cross_arm.txt Moving to miosix kernel: adapted parameters for cross-compilation and modified boot files for STM32-based targets 6 months ago Add DSP code with DC removal and FIR PWM filter compensation 5 months ago
meson_options.txt Add undefined behaviour sanitizer option 7 months ago
requirements.txt Add meson build system 11 months ago


Modular Open Source Radio Firmware

OpenRTX is a free and open source firmware for digital ham radios, top-down designed with modularity, flexibility and performance in mind.

Currently OpenRTX is being actively developed for the following radios:

  • TYT MD-380/390 UHF versions only
  • TYT MD-UV380/390
  • TYT MD-9600
  • Radioddity GD77

This firmware is highly experimental and is not in a usable state right now, however contributions and testing are welcome and accepted.

For information on currently supported radios and features, see the Supported Platforms page on our website.

For hardware and software documentation visit

WARNING: DO NOT flash the OpenRTX firmware on an MD-380V(G) or MD-390V(G)! The codebase has not been fully tested on these devices.

Flash on MD-3x0 and MD-UV3x0

On TYT MD-3x0 and MD-UV3x0 you can flash our firmware using tarxvf's web based flashing tool.

  • Download the latest OpenRTX release for your radio from the releases page.
  • Connect your radio to the PC, put it in DFU mode (turn off, turn on pressing PTT and the button just above).
  • On linux, macOS and Android, open Chrome/Chromium and navigate to,
  • Click on "Upgrade", then "Connect Radio(s)", under "Select firmware file" choose "Upload from my computer",
  • Click on "Choose File", select the latest OpenRTX release you downloaded before, and click on "Upgrade Radio".
  • Reboot your radio

Compile and flash

For instructions on how to compile and flash OpenRTX to your radio, or just run OpenRTX on Linux see the Compilation instructions page on our website.



To reach out, come to our M17 Reflector or into our Discord Server.


To support the development of OpenRTX you can make us a donation using Liberapay.
If you want to donate some hardware to facilitate OpenRTX porting and development, contact us.


This software is released under the GNU GPL v3.

minmea is released under the DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE v2.

Code for STM32F405 USB driver is released under the MCD-ST Liberty SW License Agreement V2.


This project was created for research and amateur radio use only, we are not responsible for improper uses of this code which might lead to unauthorized transmission, reception or patent infringments.


OpenRTX was created by:

All this was made possible by the huge reverse engineering effort of Travis Goodspeed and all the contributors of md380tools.

A huge thank goes to Roger Clark, and his OpenGD77 which not only inspired this project, but as a precursor, provided a working code example for the GD77 radio family.

Finally, a warm thank you goes to SP5WWP and the M17 community for bringing their libre protocol into our obscure undocumented hardware.