# Firmware Files

A number of firmware image files are compiled for every new MULTI-Module firmware release.  Use the MULTI-Module Firmware Download site to download the correct file for your module:

{% embed url="<http://downloads.multi-module.org/>" %}

## Standard File Naming

The standard firmware file names follow this pattern:

`mm-[module type]-[sub type]-[channel order]-[firmware version].bin`

The parts of the file name are explained below.

### Module Type

Determines the type of MCU the firmware was built for:

* avr - for older MULTI-Modules with an ATmega328p MCU
* stm - for MULTI-Modules with an STM32 MCU
* orangerx - for OrangeRX modules running MULTI-Module firmware
* t18int - Jumper T18 radios with a 5-in-1 module
* tlite5in1 - Jumper T-Lite radios with a 5-in-1 module

{% hint style="info" %}
If you don't know what module type you have, it is probably **stm**.
{% endhint %}

### Sub Type

For STM modules, the type of module or radio:

* serial - standard firmware for OpenTX, EdgeTX, erSky, or other serial radios
* 5in1 - DIY 5-in-1 modules
* cc2500 - radios/modules which only have the CC2500 RF component
* ppm - radios which use PPM Mode

For AVR modules, the flash method used to update the firmware:

* txflash - update from the radio
* usbasp - update using the Arduino IDE and a USBasp

### Channel Order

The Expected Channel Order for the firmware image.

* aetr - expects to receive channel data in AETR order
* reta - expects to receive channel data in RETA order
* taer - expects to receive channel data in TAER order

{% hint style="info" %}
The default Expected Channel Order is **AETR**.
{% endhint %}

### Firmware Version

The version number of the firmware.

## Firmware File Examples

Some examples to help select the correct firmware file:

| Module Type               | Radio Type          | Channel Order | Firmware File                      |
| ------------------------- | ------------------- | ------------- | ---------------------------------- |
| Jumper JP4IN1-SE          | OpenTX/EdgeTX/erSky | AETR          | `mm-stm-serial-aetr-[version].bin` |
| RaioMaster TX16S Internal | OpenTX/EdgeTX/erSky | TAER          | `mm-stm-serial-taer-[version].bin` |
| Jumper T18                | OpenTX/EdgeTX/erSky | AETR          | `mm-stm-t18int-aetr-[version].bin` |

## Other Firmware Files

A small number of files are compiled for debugging or development purposes.  These files are only produced with AETR channel order.

{% hint style="danger" %}
These firmware files are not for general use and should only be used when testing.
{% endhint %}

### Protocol Dumping

Protocol Dumping firmware enables the radio to capture and decoding RF transmissions from other RC transmitters which use the common XN297 RF module.  This can be used to reverse-engineer unknown protocols so that they can be added to the MULTI-Module.

Captured data is displayed via serial output.

Protocol Dumping firmware is named in this pattern:

`mm-stm-xn297dump-[debugging type]-[firmware version].bin`

{% hint style="info" %}
Protocol Dumping firmware only includes the XN297L dumping protocol and cannot be used with any models or receivers.
{% endhint %}

See the Protocol Dumping page for more information:

{% content-ref url="../../advanced-topics/protocol-dumping" %}
[protocol-dumping](https://www.multi-module.org/advanced-topics/protocol-dumping)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.multi-module.org/using-the-module/firmware-updates/firmware-files.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
