OpenTX Sounds & Announcements

Ways Sounds Are Produced

Contents

OpenTX produces sounds in two ways:

  1. Generating tones/beeps of different frequencies and durations
  2. Playing audio files if present on a SD card

One of the main features of OpenTX is its use of a sound pack placed on a SD card. This sound pack contains audio files used for sounds and announcements.

Sounds & Announcements take place in response to:

  • Model Independent event (events not related to model loaded)
  • Model Dependent events (events related to model loaded)
  • Global & Special Function triggers

SD Card

Audio files are placed on an optional SD Card. Check the transmitter documentation from its manufacturer to determine which SD card to use.

File System Format

FAT12/16/32 – Most new SD Cards of 32GB or smaller come formatted as FAT32.

OpenTX SD Card contents and logs use less than 50MB so card size if not usually important. More important than card size is compatibility. If one card does not work try one from a different brand. Card compatibility depends on the hardware and not OpenTX.

Version Warning

If a SD Card is present when the Tx is turned on OpenTX check its root/top level folder for a file to determine if the correct sound pack version is being used.

  • opentx.sdcard.version

If the incorrect version is being used then it is possible that some announcements such as telemetry units will be incorrect. The two files below list the differences between the sound files for OpenTX 2.1 and OpenTX 2.2V0010.

Sound Packs

Sounds packs are sets of audio files that use a file names, formats and folder arrangement that OpenTX recognizes.

Download

A sound pack is available by downloading the SD Card contents from within Companion.

  • File > Download
  • Click on Download SD contents
  • The zip file available for download depends on the Companion radio profile being used.
  • Click on the zip file link to download the microSD card contents.
  • Extract the ZIP file to the root/top level folder of the microSD Card.

CSV File Mapping Announcement To Files

The sound mapping/definitions csv file is used to generate audio files with phrases such as telemetry lost/recovered and units.

  • SOUNDS/<language>/SYSTEM/language-country-Tx.csv
    E.g. SOUNDS/en/SYSTEM/en-US-taranis.csv

It is a text file with lines of text. One line per sound file. Each line has three parts separated by semicolons.

  • directory/;file_name.wav;Spoken phrase
    E.g. SOUNDS/en/SYSTEM;hello.wav;Welcome to open tea ex!

Audio File Format

  • File Name Length:
    • Special & Global Functions – Up to 6 characters plus .wav  (123456.wav)
      Placed in SOUNDS/<language>/ (SOUNDS/en/)
    • System Files – 8 characters plus .wav (12345678.wav)
      Placed in SOUNDS/<language>/SYSTEM/ (SOUNDS/en/SYSTEM/)
  • Sample Rate: 32 kHz (or 16 Khz, 8Khz)
  • Bits / Sample: 16 (or 8)
  • Tracks / Channels: 1, mono
  • Compression Codec: PCM (or u-law, a-law)

Checking Audio File Format

Use a tool like MediaInfo available for OS X, Windows and Linux. More…

Audio File Locations & Language Setting

The audio files are grouped using language folders as follows:

  • SOUNDS/
    The root, top level. This only contains language folders.
  • SOUNDS/<language>/
    This contains audio files, model and system folders. These files are accessed by Global & Special Functions.

    • Different languages are supported
      E.g. SOUNDS/en/ for English, SOUNDS/de/ for german
    • The language is set on the RADIO SETUP screen
  • SOUNDS/<language>/SYSTEM/
    Files used by the system
  • SOUNDS/en/<model_name_folder>/
    Files used for some model events

Sound Configurations & Triggers

Model Independent

These sounds and announcements are not related to which model is selected and loaded. They are configured in one of the following ways:

  • Adding to or removing a sound file from the system folder
    SOUNDS/<language>/SYSTEM/
  • Configuring options on the Radio SETUP screen
  • Radio GLOBAL FUNCTIONS screen

Events that may generate sounds and announcements are:

  • Transmitter turned on and off
  • SOUNDS/en/SYSTEM/hello.wav
  • SOUNDS/en/SYSTEM/bye.wav
    Note: bye.wav is not provided but will be played if present
  • Trim up, down, center, ends/limits
  • Tx battery level low
  • Inactivity period reached (no sticks, switches, buttons or knobs were used)
  • Throttle stick not all the way down when model is loaded
  • Bad eeprom
  • Tx antenna defective
  • Trainer signal lost, recovered
  • Servo, Receiver power overload (when using the FrSKY Redundancy Bus)
  • Tx button presses and scroll wheel/knob turn

Global Functions

The same as special functions with model specific functions missing. More…

Model Dependent

These sounds and announcements are related to which model is loaded. They are configured in one of the following ways:

  • Adding to or removing a sound file from the folder
    SOUNDS/<language>/<model_name>
  • Configuring options on the Radio SETUP screen
  • Radio SPECIAL FUNCTIONS screen

Events that may generate sounds and announcements are:

  • Timer seconds, count down reaches zero
  • Switch, Slider or Pot not in a particular position when model loaded
  • Centre position beep for sticks, sliders and potentiometers
  • Switch position changes
  • Flight mode changes
  • Sensor signal lost
  • RF signal level low or critical
  • Telemetry lost, recovered
  • Binding
  • Range check

Model Folder Sound Files

To play sounds specific to a model without configuring them as a Special Function place sound files in the following folder:

  • /SOUNDS/<language>/<model_name>/
    Replace model name spaces with an underscore “_”
    E.g. /SOUNDS/en/simple_cub/

Sample Files

Sounds_Demo.zip
Rename /SOUNDS/en to /SOUNDS/en.bak
Place Sounds_Demo.zip in /SOUNDS/en
Unzip SOUNDS_Demo.zip
Place Sounds_Demo.txt in /MODELS/
Companion > Open File sounds-x9dp.otx
Companion > Document Window > Simulate Radio
Use S1, SA, SB and THR up and down to control the volume and hear the sounds.

Model Name

When the model is loaded this file gets played.

  • name.wav
    Note: The file name is “name.wav” regardless of what the model name is.

Switches

  • Switches
    <switchID>–<position>.wav
    SA-up.wav
    SA-mid.wav (if position present)
    SA-down.wav

Note: There is no equivalent for a switch not in a particular position (!SA↑,!SA–,!SA↓).

  • Switches & Logical Switches
    <switchID>–<condition>.wav
    L1-on.wav (true)
    L1-off.wav (false)

Note: There is no equivalent for a switch not in a particular position (!L1↑,!L1↓).

Knobs / Potentiometers

  • Multiple Position Knobs / Stepped Potentiometers
    P<ID><Position>.wav
    P11.wav
    P16.wav
    P24.wav

Note: For this to work the knob must be correctly configured on the radio menu hardware screen. More…

Flight Modes

  • <modeName>–<condition>.wav
    Replace spaces in the flight mode name with an underscore.
    ABC–off.wav
    ABC–on.wav
    R_I_P-off.wav
    R_I_P-on.wav

Special Functions

Configuration details for these functions are covered under Special Functions. More…

Play Actions

  • Play Track
    Pick a file from the list.
    Uses files placed in SOUNDS/<language>/
  • Play Value
    Say the value of the selected parameter when the switch is active.

Music Actions

  • BgMusic
    Starts playback of a background sound track picked from a list
    Uses files placed in SOUNDS/<language>/
    The switch must stay on to continue playback
    If the switch is turned off and then on again playback starts from the beginning
  • BgMusic II
    Pauses the active BgMusic
    When the switch is turned off playback continues from where it was paused
    The BgMusic switch must remain on

Other Actions

  • Vario
    Generates the tone/sound of a glider variometer
    Uses altitude or vertical speed telemetry data
  • Volume
    Adjusts the audio volume for the entire radio
    Use any input from the list
    E.g. S1

Volume

The audio volume may be configured and controlled from three screens:

  1. Radio menu setup screen. More…
  2. Radio menu global functions screen. More…
  3. Model menu special functions screen. More…

Credits

This write up was first contributed to the OpenTX 2.2 documentation (2017 May). Subsequent edits may not be reflected either here or there.

Comments, Questions & Help