Vous êtes sur la page 1sur 58

OpenTX2.

0UserGuide

UserGuideby
Authors
,for
OpenTX2.0
lastupdated2015.01.21withreferencetoOpenTX2.0.15.
Commercialuseforbiddenwithoutexplicitauthorizationbythe
Authors
andtranslators.

This page is intended to describetheOpenTX 2.0 firmware thatcanbe installedon a


numberof radio
transmitters
,andoffersomeexplanationsaboutthephilosophyofthefirmwareandhowtosetup
models. OpenTXis open source softwareandonecancheckthereleasehistoryof OpenTXfirmware
on
thispage
.
This guide is mostly focusedon the FrSky Taranisas itis the most recentsupported platform, andthe
one where OpenTX offers the largest feature panel. Most of the contentstill appliesto other platforms,
even if screens might look different and not all features may be availabledependingon the platforms
capabilities.

We'llstart with anoverviewofmenucontents,andthengointomoredetailsabouthowtosetupmodels.


The Taranisversionof OpenTXhasallofthefeaturesfromthe9x version,includestheadditionsofthe
sky9x version (splash screen,audio/speech,SDcardfor model/audiofiles/logs storage, USB accessto
card andsettings/modelmemory),sees the UI adapted to the larger screen and different button layout,
andfinallyaddssupportfortheTaranis'extrahardwarecapabilities.

OpenTX2.0UserGuide
OpenTXversioncycle
Importantchangesin2.0frompreviousversions
TheFrSkyTaranisradio
Whatyou'llfindinyourpackage
AnoverviewoftheFrSkyTaranisfeatures
TheTaranishardware
TheTurnigy9XRProRadio
Whatyou'llfindinyourpackage
AnoverviewofTurnigy9XRProfeatures
TheTurnigy9XRProhardware
OpenTX2.0Softwareoverview
Buttonnavigation
FrSkyTaranis
Otherplatforms
Mainviews
Telemetryview
Radiogeneralsettings
SDbrowser
TRAINER
VERSION
Diagnostics
HARDWARE
CALIBRATION
Modelmenus
MODELSETUP
HELISETUP
FLIGHTMODES
INPUTS
1

MIXER
MixerFunctions
SERVOS
TrimstoOffsets"function
CURVES
GLOBALVARIABLES
LOGICALSWITCHES
CUSTOMFUNCTIONS
Telemetry
LUAScripts
ModelPersistentLuaScripts
OnetimerunLuaScripts
LuaScriptsFolderStructure
LuaScriptsDocumentation
HowtouseLuafields
Templates(removeorreferencecompanionwizard/luawizard)
Firststeps
Settingupamodel
OpenTXbasics
Everythingaboutthemixerscreen
Servosscreen
Inputsscreen
Modelsetupguidelines
Advancedfeatures
Flightmodes
Telemetryvalues
Audio
Globalvariables
Afewinteractionexamples
IntroductiontoOpenTXcompanion
Basicconcepts
SettingupOpenTXcompanionfortheTaranis
Simulatingtheradio
UpdatingthefirmwareofyourTransmitter
TXOffmethod
Installingthedriver(forWindowsonly)
Installingtheflashingutility(forMacOSandLinux)
Downloadingandflashingthefirmware
BootloaderMethodUpdateFirmwareandBootloaderviaSDCard
TipsusingOpenTX
Usercan'tconnecttotheTransmitterviaUSBusingOpenTXCompanion
DifferencesifupdatingwiththeBootloaderorusingdfuuti
UseoftheEDGEcommandwhichreplacesHshortandHlong
WhatisInputsandthedifferencebetween"[I]Source"andSource"inmixes
Howtochangethesplashscreen
UseSubtrimstofixmechanicallinkageissues
Trims>Subtrims
InstantTrim
TheMixlinesisessentiallyamathpad
OpenTXSound
Settingup
2

RatesandExponential
4channelfixedwingaircraft
Flaperons
KnifeEdge(Aileron/Elevator)Mix
SequenceforRetraction/Extension
MultiEngines
ThrottlecutforElectricPoweredAircraft
ThrottlecutforInternalCombustionengines
BuddyBox/trainer
HardwareModifications
TaranisChangefromMode1toMode2(andviceversa)
TaranisSHSFswitchswapPatssolderlessmethod(goodforRevAandRevB)
TaranisUpdatinginternalXJTmodulefirmware
TaranisRemoveclicksonvolumechanges
TaranisUpdatingSpeaker&EnhanceSoundperformance
TaranisAddHapticMotor
Resources
Authors
Translators
Acknowledgementofcontribution
References

OpenTXversioncycle
One of OpenTX strengths compared to common radio firmwares is that it is highly dynamic and in
constant evolution. While brand name radio manufacturers will typically offer a very limitednumberof
improvementsand new functionstoagivenmodelthroughitslifecyclebeforerequiring the purchaseofa
new device to get further capabilities, a radio running OpenTX may be eligible for much more
comprehensive updates that can pretty much make itappear likeawholenewradio. The downside to
this is that unlike the former example where the user will always see the same device until he
purchasesanother,herethings maychange drastically from amajor versionto another. Itistherefore
very importantnottojustblindlyupgradefirmwarewhenoneisavailable,buttocheckprecisely whathas
been changed and how it can influence your setups. Upgrading to thenext major versiondoes mean
thoroughlycheckingsetups,unlearningoldwaysofdoingthings,andlearningnewones.

Versioningschemesarethefollowing:

Old scheme, pre2.0: Applies to OpenTX firmware that was developed using Google Code
managementtools,andwhere versionnumbers wererevision numbers.The last releaseunder
this schemeis 2940.companion9xwas a separateprojectwith relatively loose ties, anditslast
version is 1.52. Thismeansthat ifyouareusingpre2.0firmware, you must use companion9x
1.52asaPCsidecompanion.Themanualforpre2.0versionsisavailable
here
.

New scheme starting from 2.0: Both projects have been merged together on the github
managementplatform, andthussharethesameversionnumbers e.g.2.x.y,which mustbeused
together. xcorresponds to amajorversion,whichintroducesfeaturechangessignificantenough
to require a break in compatibility of models and in usage/documentation. y corresponds to
minorversionsi.e.smallbugfixesandfeaturechangeswithinthesamemajorversion.

Under the new scheme, amajor version ofOpenTX thuscomes completewithitsfirmware, companion,
and documentation. Upgrades between major versions is not automatic, but requires a separate

download of the corresponding OpenTX companion so as not to force the feature break on users (a
versionofcompaniononlyoffersupgradeswithinitsmajorversion).
Amajor version is considered stable for generaluseonce it has gone through enoughminorversions
for all important bugs to beironedout,and for features to have been refined basedon user feedback.
Until then, users willing to test or benefit from new features have to realise they are acting as beta
testers,they may notfinddocumentationfor everything theyseeinthefirmwareand/ormay haveto rely
on community feedback, and more importantly features may be added or removed, behavior or
functionality of any given feature may change between minor versions, sometimes without any other
noticethanachangelogentry.
As anexample, at the timeofthiswriting (2014.09.27) OpenTX2.0.12isthelatestminorrevision ofthe
2.0 version. Itis not stableyetasthisdocumentation isnt finished,and acoupleofsmallfeatureswill
still make theirwayintoit. Once theyare added, a reasonableamount oftime has passed withoutany
reports of important bugs and the documentation is closed, then 2.0 will be declared stable and
recommended. At that point people who want the new features should beable to upgradesafely, and
finddocumentation for all features. Others whodont want change arewelcome to stayontheprevious
stableversionofthefirmware(2940).

In parallel, the OpenTX team will be starting work on version 2.1. It willinitiallyonly bedistributedas
nightly builds intended only for developers andvery daring betatesters(i.e. ifyoudont find them, you
probablyshouldntusethem).Onceitsnottoobroken anymore,linkswillbepostedtothegeneral public
for broader alpha feedback (bench testing only). After positive feedback,when it isdeemedsafefor
flying major version 2.1.0 will be released generally as a separate product (no automatic upgrades
offered), and the cycle starts over. This will be beta again,i.e. nodocs,things might change, etcas
explainedearlier. Aftermaybeafewmonthsandadozenminorversions2.1should reachstablestatus
with documentation etc, and thingswillstart over with 2.2. Users of2940or 2.0will chooseatthis point
whethertoswitchto2.1ornot,etc.
The OpenTX team will continue maintaining at least thelateststable version with regard toanymajor
bug that may be found, so anybody not wanting the latest and greatest with the associated break in
functionalityshouldnotbeforcedtoupgradeifaminorissuethataffectsthem.

Please note that manufacturersupplied releases (e.g. what you will have on your radio when you
purchase a Taranis orTaranisPlus,v1.1.02 respopentxx9dp2.0.9)areexcludedfromthiscycle. The
Taranis as supplied by FrSky is intended to beusedasastandalone product,withoutcompanionbeing
an advertised orsupportedfeature.Basically,evenif the baseis the same the software assupplied by
FrSky should be considered completely independent, and mayor maynot work like releases from the
OpenTX team. Switching firmware to anything that is not suppliedbyFrSkyis tobe done onyourown
responsibility, and may come with surprises. So please think it through before proceeding, and check
everythingafterwards.

Importantchangesin2.0frompreviousversions
Now that the basics are laid out, if you are upgrading from pre2.0 versions of OpenTX, please take
notes of the important warnings and general usage differences that can be foundin
thisdocument
.If
yourestartingoffwithoutpriorexperience,thenthebelowinformationalreadyappliesto2.0.

TheFrSkyTaranisradio
The FrSky Taranis is a groundbreaking radio because it's the first time a renowned playerinthe R/C
industry and the creators of an opensource radiocontrolfirmware collaborate closelytoimproveboth
4

the hardware and software sides of a product, and come up with an opensource radio targeting the
mainstream market. This means that while the Taranis is a low cost radio, it is free of the usual
"marketingdriven" limitations that most manufacturers place on their offerings, and as such offers
featuresthatmatchandevenexceedthoseofthehighestendradiosintheindustry.
It isalso futureproof, as both teamsare always theretorespondto questions andsuggestions.Things
can evolve quickly to follow the needs of the various users! And should you havesome programming
experience theentire source codeof thefirmware isavailable for you to playwith andchangetoyour
liking.

Whatyou'llfindinyourpackage

Analuminiumcase(optionalonnewersets)
Aradio!
A6cellNiMHbatterypack
Apowersupplythatconnectstotheradio'schargeport
Aniceneckstrap
Dependingonthechosencombo,anX8Rreceiver

AnoverviewoftheFrSkyTaranisfeatures

Large212*64backlitLCDscreen
Quadballbearinggimbalswithhighqualitypotentiometers
Numerousinputcontrols(4sticks,4trims,2sliders,2pots,8switches),allfreelyassignable
60modelmemories
32logicalchannels
Internal telemetryenabled RFmodule capableoftransmittingup to 16channels, with arefresh
rate of 9msforup to 8 channels and 18msformore.Supportsthe existing D8protocol(useable
withallDtypeandVxRIIreceivers)aswellasthenewD16andLR12modes.
JRcompatible external RF module slot (no 6V supply) supporting transmission of up to 16
channels (depending on module) in various common protocols (PXX for FrSky modules and
PPM for 3rdparty modules). Supportfor serial DSM2forDIYSpektrummodulesisalsopresent
(seethe
9xmodguide
fordetails).
Mappingofthetransmitted channels is free, so once anexternalmoduleisaddedyouhavethe
choice of eithercreating a redundantsystem where thesamechannelsaretransmitted viaboth
internalandexternal RF, transmittingupto32independentchannelssimultaneously,oranything
inbetween.
5

Internal RF (and external RF when an FrSky XJT module is fitted) supports receiver lock (X
receivers only) and allows configuring failsafe convenientlyfromtheradiowith3 modes:Hold,
Stoppulses,Custompositions (only available withXseries receivers,D andVIIseriesuse the
usualreceiverbuttonpress).
Telemetrywith3 customisable screens and fully configurablespeechannouncements,supports
existing receivers and sensors as well as new Smart Port sensors. Configurable metric or
imperial units. Integrated audiovariometer (sensorrequired onthemodel).Dataloggingcanbe
enabledonthesuppliedmicroSDcard.
Selectablestickmode(14),totallyfreeoutputchannelassignment.
2timers,valuescanbestoredwhentheradioispoweredoff
64mixers
9flightmodes
16customcurveswith317pointseach,freelydefinablexcoordinates
32logicalswitches
StandardJRtype 3.5mm trainerjack(PPMsignalontip, groundonsleeve,compatible withboth
mono and stereo plugs, ringunused ifpresent), capableof receiving up to8channelsasinput,
and sending up to 16 channels when configured as output. Master/slave mode and signal
parametersareconvenientlystoredseparatelyforeachmodel.
OpenTX companion Windows/Mac/Linux software to save, edit and share your models and
settingsaswellassimulateyourmodelsetup
USBconnectionforfirmwareupgrades,microSDcardandOpenTXcompanionaccess
Stickscanbecalibratedbytheenduser
Multiple language support: English, French, Italian, German, Swedish, Spanish, Portuguese,
Czech, and maybe yoursifyoucontribute withyourowntranslationfile!(Radiocomes inEnglish
language,reflashingisneededtochangelanguage)
Open source communitydriven firmware, so unlike with major manufacturers if you need a
special function or have good improvement suggestions just raise your voice, and don't be
surprised if it's implementeda couple of dayslater!Visit
http://www.openrcforums.com tomeet
thedevelopers!

TheTaranishardware

Theradiohasarelativelystandarddesignandcontrollayout,namely:

2 sticks and their associated trims, labelled in the software as Thr, Rud, Ele, Ail and TrmT,
TrmR, TrmE, TrmA respectively. Thesticktoname mapping matches the selectedstickmode.
Trims are freely assignable (e.g. for crosstrimming), and can also be used as independent
controls and as general purpose switches (in this case they are referred to as tRl, tRr, tEu,
tEd,...i.e.Ruddertrimleft/right,Elevatortrimup/downetc).
2adjustmentpots,S1andS2
2lateralsliders,LSandRS
63positionswitches(SASE,SG)
12positionswitch(SF)
1momentaryswitch(SH)

Whenselecting a switchpositiontoactivatefunctions,itis referredtoastheswitchnamefollowedbythe


physicalposition(SAup, SC, SFdown). A! before the namemeansNOT,so!SBdownwouldmeanthat
thefunctionisactivewhenSBisNOTdown,i.e.whenSBiseitheruporinthemiddle.
A swiveling antenna is installed for the internal RF module, and a speechcapablespeakeris located
undertheroundgrill.Thelargebacklit,grayscaleLCDand6editkeystakemostofthelowerpart.

The backoftheradioshows the JRcompatiblemodule slot,alongwithaJRstylejacktrainerport,USB


connector and earphonejack. Thebattery bay houses amicroSD cardslot,aserialport and ofcourse
thebatteryconnection.
The supplied battery is a 6cell NiMH, but the plug will also accept a JSTstylebalance plugfora 2s
LiPo battery. Battery compartment dimensions are 108x31x28mm. Voltage range is 5.513V for the
internal components, but be aware that external modules might require up to 12V, so observe your
module'srequirementswhenusingoneandchoosetheappropriatebattery.
The rightside of the radiosportsthechargerinputplug,withthechargeLED nexttoitonthebackofthe
radio. When you connectthesuppliedpowersupplythe LEDwillturnon,andshut offwhenthebatteryis
charged(23hourschargetimeforanemptybattery)oraftera4hourtimeout.
The Band Plus versionsoftheTaranis have aslightlydifferentcharger,withatimeoutthat hasbeen
extended to 8 hours toaccommodate thelarger2000mAh battery thatis availableeitherasstandard or
optionally depending on the dealer. It is recognisable thanks to the LEDthat will flashfor a whileafter
connectingthepowersupply.

PLEASE NOTE: The radio has an integrated NiMH charge circuitry designed to charge the
supplied6cellbattery.

Do not connect a smart chargertothe charge plug. It shouldonly be supplied with 12V
DC,polarityhoweverdoesn'tmatter.
Do not use the charge plug if you have replaced the battery with a different type
(chemistryorcellcount).

The gimbals have adjustable length and tension, and each of the vertical axes is fitted with a spring
disable featureas wellas aratchetandbrake.Thismeansthat thereis noneedtoswappartstochange
modes,andthatifyouwanttoyoucanhaveeitherbothornoneoftheverticalaxesspringloaded.

Ontheinside,thegimbalshave3differenttypesofscrews:

Yaxisratchetand/or"smoothbraking"actionstrengths(blue)
Yaxisspringdisable,screwitintodisablespring(green)
XandYspringtension(red),screwinformoretension,outerisYofcourse.

It isgood to notethat ifyoulike havingweaksticktension, it is easytogetinconsistentcenteringwhen


the spring tension screwsaretooloose. Just tighten themenough forcenteringtobe goodenough,and
recalibrate.
Also,if you encounter a situationwhere your throttle stick does not stay attheendswhenyourelease
it, it is likely that that the springdisablescrew(green)is simply not tightened all theway. Tightening it
completelyshouldsolveyourproblem.

TheTurnigy9XRProRadio
Whatyou'llfindinyourpackage
TODO

AnoverviewofTurnigy9XRProfeatures
TODO

TheTurnigy9XRProhardware
TODO

OpenTX2.0Softwareoverview
Now might be the time to put the batteryon charge, so thatafterreading this sectionyou can directly
haveagoatputtingwhatyoulearnedinpractice!

Buttonnavigation
FrSkyTaranis
The Taranis has 6 input keys: astandard setof +//ENTER/EXIT,plus2contextual MENU and PAGE
keys.
On the main views,thePAGEkeywillswitchbetweenthe different viewsdescribedinthe nextsection.A
LONGpressof the PAGEkeywillbringup the telemetrydisplay.A SHORT pressoftheMENUkeywill
call the modelmenu, whileaLONGpress willcall the radiosettingsmenu.Inthose2menus, aSHORT
pressofthePAGEkey goes to the nextpage,whileaLONGpressgoesbacktothepreviousone.EXIT
goes back to the main views. In all model menu pages a longpressof the MENUkey will bring up a
channel monitortoallowquicklycheckingtheinfluence ofa changeinsettingson theoutputs.Ifamodel
notesfileispresent,itcanbecalledinthesameway.
The navigationina menu issimple: The +/ keyswillnavigateup/down betweeneditablefields,orlines
offieldsdependingonthescreen.
ENTER will enter the line of fields when applicable, then edit mode. Ineditmode,+/ will change the
value, ENTER or EXIT will validate the input and return to navigation. EXIT always goes backtothe
previousnavigationlevel.
Ineditmode,wehavefour2keyshortcutsavailable:

+/together:Invertvalue
/ENTER:Setvalueto100
EXIT/PAGE:Setvalueto100
MENU/PAGE:Setvalueto0

Another handyfeature istheautoselectionofphysicalinputsintherelevantfields.Insteadofchoosinga


source or switch with the + and keys, just move the pot or flick the switch you want, and it will be
recognised. Forswitches thepositionisalsoautoselected,andthe+/doublekeycombinationwillallow
selectingtheoppositeposition(!Sxy)inapinch.

Otherplatforms
TODO

Mainviews
We have3mainviews showingthesamebasic informationinthetoppartanddifferentinputs/outputson
the lower part. On the mainviewsalongpressoftheENTERkeybringsupamenuwhereyoucanreset
the timers, telemetry data(min/max values, altitude,GPShome...),allof those,bringupastatisticsview
(throttle graph, timers), show the developer credits, and show model notes/checklist if present. As
mentionedabove,ashortpressofthePAGEkeyswitchesviews.
The title bar includes radio battery voltage, receiver signal strength (for FrSky telemetrycapable
receivers), main onboard voltage (canbe receiver battery,flight battery,or anything else dependingon
sensors the "Voltage" parameter in the telemetry settings), status icons (USB connected, trainer port
mode,logginginprogress),audiovolumeandtime.

10

The other "always present" items are model name, flight mode, and trim/pot positions. The logo isof
course customisable, you'll be able to load your model's photo there! See
this thread for a great
collectionofmodelsmadebythecommunity.
The first view liststhephysicalswitchstates inthebottom leftzone,andthe2timers(whenenabled)on
theright.

The second shows thegimbal andswitchespositions,andishandytocheckthatallthephysicalcontrols


respondasintended.

The thirdshows again the physical switches ontheleft,and the states of the32 logicalswitchesonthe
right.A dashmeanstheLSis unused, anempty rectanglemeanstheswitchisused andcurrentlyOFF,
afullrectanglethatitisusedandcurrentlyON.

The last view is a channel monitor showingtheservooutputs for all 32channels (+/change page). If
channel names are defined on the SERVOS page, they will show uphereinsteadof the numbers for
convenience.

11

Telemetryview
A LONG press of the PAGE key from any of the mainviews brings upthe telemetry views.The PAGE
and+/ keyswill thencyclebetweenthepower statusscreen(voltage,current,power orA1/A2 ifnotset,
cell voltages from an FLVS01 sensor if connected), the min/max and GPS coordinatesscreen, and if
definedfromone tothreecustomsscreensthatcanholdupto12itemseach, configuredinthetelemetry
setupmenu.If present, any Luatelemetry scriptsfortheselectedmodelwillbeadded tothepagecycle.
The display order is defined by the importance of configured screens: First any Lua screens, then
builtincustomtelemetryscreens,thenthe2defaultones.

12

Radiogeneralsettings
ALONGpressoftheMENUkeybringsupthemostlyselfexplanatoryradiosetupmenu:

Date/Time: To be set, they serve as info but also togivea correcttimestampto filesand logs
savedbytheradio.
Battery range: range of the graphical radio battery meter on the main views. To be set
accordinglywiththebatterytypeyouuse(2slipohere).
Sound settings: Mode, Master volume, individual volumes ofallmixed sources (Beeps,sound
files,backgroundmusic),beepdurationandpitch.
Variometer settings:PitchatZero defines the toneforthelow thresholdofaclimb,PitchatMax
defines the tone af max speed climb, Repeat at Zero is the repetition rate of the beeps at
minimumclimb.
Hapticsettings: Available onlyon radiosequippedwitha vibrationfeedbackmotor(TaranisPlus
and 9XR Pro out of the box,other platformsif the optionalmodule isinstalledand the haptic
optionisselectedinthefirmwareoptions).Settingsaresimilartobeeps.
Contrast:Screencontrastsetting.
13

Alarms > Sound off: if "SoundMode"is "Quiet", the radio will not even soundwarningslike a
lowbattery.Thisalarmwillremindyouofthatwhenturningtheradioon.
Inactivityalarmwillremindyouifyouhaveforgottentoturntheradiooff.
Backlight>Mode:If set to Keys,Controls orBoth,thebacklightwillturnonwhenastick/switch
ismovedand/orakeyispressed,forthedurationsetbelow.
Backlight>Alarm:Backlightwillflashwhenanalarmsounds.
Backlight>Color: Only present onTaranisPlus,allowssetting thedesiredshadebetweenblue
andwhite.
Splashscreen: OnTaranis the splashwillalways beshown as the memory takessometimeto
load.Thesettingdefineshowmuchlongeryouwantittoshowafterthat.
GPS time zone is there to show you the correct timewhena GPS ispresent,and coordinate
formatletsyouadjustdisplayformattoyourliking.
Country code: Must match your geographical location to keep RF transmission parameters
withinregulatoryrequirements.
Voice language:Allows you tochoosethelanguage of the voiceannouncements.Notethatthe
listcontains allsupportedlanguages,butyoualsoneed toensureavoicepackforthatlanguage
hasbeenloadedontotheSDcard(inasubfolderoftheSOUNDSdirectory).
Units:Allowschoosingbetweenmetricandimperialunitsfortelemetryvalues.
FAI mode (if the "FAI choice"option is selectedin OpenTX companion):Disablesalltelemetry
displays other than RSSI and voltage to comply withcontestregulations. Thisis oneway,i.e.
when you turn iton with thismenu optionit can'tbedisabledanymore,youneedtoconnect the
radiotothePCand use OpenTXcompanion toturnitoffagain (topreventcheating).Thisallows
youtocome to the field,doyourchecks/testflightswithtelemetry,and turntherestricted mode
onbeforethebeginningofthecontestontheradioitself.
Play delay:If oneuses voiceannouncements onthepositions ofa 3position switch, thisdelay
defines how long the switch has to stay on the middle positionbeforeitsassociatedsound is
played.It allows moving the switch from one endto theother withoutthe middlepositionsound
beingplayed.
Defaultchannelorder:Definestheorderofthe4defaultmixersthatareinsertedonchannels14
when creating a new model. Setthis to your preference. Theycanofcoursealways bemoved
later,thisisjustatimesavingoption.
Mode: Thisis your stick mode, e.g. Mode1for throttleand aileron ontherightstick,Mode 2for
throttleandrudderontheleftstick.

SDbrowser
ASHORTpressofthePAGEkeybringsuptheSDcardbrowserpage:

ThisallowsyoutobrowsetheSDcardcontents.
On each file orfolder,pressingENTER will bringup acontextualmenu with some basicfile operations
(copy/delete),aswellasothersdependingonthefiletype.
Foldersareorganisedassuch:

BMPfolder:Thisiswhereyoushouldplacethe64x32,4bitgrayscale.bmpfilesthatyouwantto
use as model logos. Filenames must be 10 chars long or less (not including extension). A
collection of files is available
here
.Placingthecursorover avalid fileinthis folderwillshowiton
the right side of the screen, and in the contextual menu you will find an entry to assign the
selectedimagetothecurrentmodel.
EEPROMS folder: Stores full EEPROM backups made on the Version page, which can
subsequently be restored from within the Bootloader, or opened in OpenTX Companion
(ARMbasedplatformsonly).
FIRMWARES folder: Storeany firmware files you may want to loadontheradiofromwithinthe
bootloadere.g.onthefieldinhere.
14

LOGS folder: Thisis where you willfind telemetry logsif enabled. Fileswillbe created withthe
samename as the model they were savedfrom, withthedateappended. Onelogfileiscreated
perdayforeachmodel.
MODELS folder: Model files saved by the "Archive model" command of the model selection
screen willbe placedhere.Similarly,modelsyouwant toreload using the"Restoremodel"ofthe
samepageneedtobeplacedtherebeforehand.
SCRIPTSfolder:ContainsvarioussubfoldersforthedifferenttypesofLuascripts(Taranisonly).
WIZARD:FortheNewModelWizard,available
here
FUNCTIONS: For any scripts that should be available to execute via the Lua Script
SpecialFunction
MIXES: For scriptsthatoutputvalues intendedtobeusedinthemixer,andareselected
on the Custom Scriptsmodel setuppage. Requires the lua optiontobe selectedin
thefirmware.
<modelname>/telemX.lua: Allows defining up to 8 lua custom telemetry scripts per
model. Please note that any spaces in the model name must be replaced by
underscores(_)inthefoldername.
SOUNDSfolder:This iswhere voice packs need to beplaced. ZIPfileswiththestandardvoice
packs can be downloaded from within OpenTX companion, or
here
. Extractthe ZIP filetothe
root of the SD card, and it will create the necessary subdirectories (e.g. SOUNDS/en for the
Englishpack). Any file you want to have availableforthe"PlayTrack"customfunction needsto
be placedwithin the language's directory as well. Inthis folder, the contextualmenu includesa
previewfunction.

Filetype specificactions:Pressing ENTER onthefollowing file types will show additionaloptionsinthe


popupmenu:

On a valid 2.0 orlater firmware file(.bin) you will get anoption to upgradethebootloader with
theoneinthefile(ARMbasedplatformsonly).
On a text file (.txt), you will get a View Text entry to view the contents. Useful to display
remindersonthefield.
Lua onetime scripts (.lua) can be run. Note that the browser does not make a difference
between script types, so it is possible to execute a telemetry script, but doing so might give
errorsorunexpectedresults.

The microSD card can be formatted by selecting the relevant option in the menu that appears when
pressingMENULONG.Aconfirmationwillberequired.
TRAINER
ASHORTpressofthePAGEkeycallsthetrainersettingspage:

This page allows you to configurethetrainerfunction for "master" use (make suretheTrainer mode in
model settings is settoMaster). Foreach ofthe4mainfunctionsyouwill beable tosetthemode(OFF,
+=forAdd,:=forReplace),ratioandinputchannel.
Startbysettingthe modeforeachfunction(the"standard"wayisReplacei.e.whenthetrainerfunctionis
activated the functionis fully transferred tothestudent, Add allows bothmasterandstudenttoactupon
the function together). Then select the source channel accordingly to the brand/model of the student
radio, and set the ratio to 100% for now. Now ensure the student radio is connected and recognised
(moving the sticksofthestudent radio should change the 4 numbers atthebottomof thescreen)make
sure all its trims are neutral, all its sticks arecentered(includingthrottle).SelecttheCALfieldandpress
ENTERtwice.Thenumbersshouldnowbe0.0orveryclose.
15

Now movethestudent radio's sticksand check thenumbers varyfrom100to+100. Shouldthey reach


thosevalues before the stick hits theend of its travel, reduce theratiosothatthethrowsmatch.Should
theyneverreach100to+100evenwithfullstickdeflection,usetheMultiplierfieldtoincreaseit.
Trainer input isnow configured.Note that this setting isglobal, becauseitdependsonthestudentradio
regardlessof the selectedmodel.InordertousetheTrainerfunctionona specificmodelyouwillneedto
assigntheswitchyouwanttothe"Trainer"CustomFunctionforthatmodel.Moreaboutthislater.

VERSION
ThisscreenallowsyoutoseetheversionofyourcurrentlyloadedOpenTXfirmware.

Whenreportingabug,pleasebesuretoincludetherevisionnumberyouseeontheVERSline.
ALONG press of the ENTER key onthispagewillcreatea fullmemorybackupontotheSDcard,which
youwillfindintheEEPROMSfoldernamedwiththedate/timeitwasmade.
Diagnostics
Thenext2pagesaretheswitch andanalogdiagnostics,they will showyouwhatthefirmwarereadsfrom
the radio's keys and potentiometers. This is the first place to go to if you run into issues with badly
responding sticks / pots / switches. If things are wrong here (inconsistent stick centeringor endpoint
readings, flickeringvalue,...)thenyoucanbesure theproblemishardwarerelatedandnotdueto wrong
modelsetup.
TheAnalogpagealsofeaturesthebatterycalibrationsetting. Itshouldbe correctoutofthebox,butifnot
move the cursor to the field, and adjust it so that the displayed value matches the voltage you can
measureonthebatteryterminalswithavoltmeter.

HARDWARE
This screen allows you to tell the OpenTX firmware about some aspects of your radios hardware
configuration. On the Taranis, these choices include the type ofcontrol youinstalledon the S1/S2/S3
16

locations (S3 only availableon Taranis Plus),and whattheserial portin thebatterybayshouldbeused


for.

S1/2/3 can be either a standard pot, a pot without detent, or a multipos switch such as the
6position rotary switch sold by FrSky.If it isset as a standardpot, the middlepositionwillbe
ignored during calibration. If it is setas Pot with detent,then the center position matters and is
stored during the neutral calibration phase. If it is set to multipos switch, the calibration
procedure will recognisethesepositionsandequalisetheirspacingover thefullcontrolthrow,as
well as create virtual switches named Sxy that correspond to position yof control x andare
availableanywhereaswitchselectionispossible.

Serial port: Defines the functionoftheserialportinthe batterybay.Currently supportedchoices


are nothing, a copy of all telemetry data received from the internal RF module (Sportmirror),
andDtypeFrSkytelemetryinputfroma3rdpartyexternalmodule(Telemetry).

CALIBRATION
This istheplacewhere youcancalibrate sticksandpots.Follow the onscreeninstructions,andnotethat
whenaskedto centerthesticksthis includesthethrottlestickandthe2sliders,aswellasS1and/orS2if
youhaveselectedthemtobePotswithdetentontheHARDWAREtab.

Modelmenus
A SHORT press of the MENU key from the main views brings up the model selection screen. There
modelscanbe selected, deleted,backed upandrestoredto/formSDcardusingthemenubroughtupby
aLONGpressontheENTERkey.Theycanalsobecopiedormoved(oneSHORTpressonENTERkey
highlights the line, +/ create and place a copy of the model on the desired slot, while two SHORT
pressescreateadottedoutlinewhere+/simplymovetheselectedmodeltoanotherslot.)

17

MODELSETUP
ASHORTpressofthePAGEkeybringsupthebasicmodelsetuppage:

Model name: Selfexplanatory...Changeletterwith+/keys,gotothenextwithENTERSHORT,


orpressENTERLONGtocapitalizethecurrentletterbeforeswitchingtothenext.
Model image: There you can select a 64x32px,16grayscale.bmp filelocatedintheBMPfolder
oftheSDcard asyour modellogo.To be able topreviewtheimagesinthefolder, usethe
SD
Browser
.
Timers:Thereare2fullyprogrammabletimers,thatcancounteitherupordown.
If the value isset to00:00 they will countupfrom0,ifnottheywillcountdownfromthe
presetvalue.
The trigger issetusing the fieldnext tothetimervalue:ABScountsupallthetime,THs
runs wheneverthethrottle stick isn't at idle,THtstarts thetimer thefirst time throttleis
advanced,TH%countsupasapercentageofthefullstickrange.
Persistent allows storing the timer value in memory when the radio is powered offor
model ischanged, andwill be reloaded nexttime the modelis used.ifsetto Flight,the
timer will be reset when a Reset Flight operation is carried out, whileManual Reset
requiresadeliberateResetTimerx.
Minutecallwillbeep/saythetimeeveryfullminute.
Countdowncanbe set to Silent, Beeps orVoice. With Silent selected, thetimer willbe
silent until zero is reached. When zero is reached, a singlebeepwillbe played. With
Beeps selected, beeps are played at 30 seconds, 20 seconds and from 10 seconds
down to zero. Whenthetimerreacheszero,a slightlylongerbeepwillbe played. And
with Voiceselected,30 seconds isplayed at30 seconds, 20seconds at20seconds,
10,9,8,etcdownto1andfinallyabeepatzero.
Extendedlimitsallowsettingservomovementlimitsupto125%insteadof100%.
Extendedtrimsallowstrimstocoverthefullstickrangeinsteadof+/25%.Becarefulwhenusing
this option, as holding the trim tabs for too long might trim so much as to render your model
unflyable.The"Reset"itemwillresetalltrims(forallflightmodes).
18

Trim step sets the precision of trimclicks. Exponential means veryfinestepsclose to the trim
center,butlargeronesthefartheryougetfromcenter.
Throttle reverse: Ensurescorrectoperationof throttlebasedtimersandfunctionsforpeoplewho
likehavingfullthrottlewiththestickdown.
Throttle source defines what triggerstheTHxfunctionsof thetimers.It'scommonto setittothe
throttlechannelinsteadofthestick,sothatthrottlecutorothermodifiersaretakenintoaccount.
Throttle trimidleonly: IC engine mode, where trimonly affectstheidlepart ofthethrowwithout
touchingthefullthrottlepoint.
Preflight checks:A groupof safety features thattake effect when powering up the radio and/or
loadingamodelfromthemodellist.
Display checklist: If a text file with the same name as the model is placed in the
MODELS directory on the SD card, the radio will recognise it as model notes. If this
optionischecked,thefilewillbedisplayedautomatically.
Throttlestate:Willwarnyouifthethrottlestickisnotatidle.
Switch positions: Defines whether the radio requests the switches to be inpredefined
positions. To set them, arrange your switches the way you like, and press ENTER
LONGon the<] field.Thewarningcanbeenabled/disabledforeachswitchindividually
byscrolling to itand pressing ENTER. If nopositionis displayedattherightofaswitch
name,warningisdisabledforthatswitch.
Pot positions: Same for analog controls. When enabled there are 2 modes for this,
Auto and Man. Auto will automatically store the pots positions when the radio is
turned off or anothermodel isloaded, while Man requires you to pressENTERLONG
on the labelofeach pot you want to store a new position for.Againeachindividual pot
canbeeitherincludedornotinthecheck,pressENTERonthelabeltotoggle.
Centerbeep:Makesabeepwhentheselectedcontrol(s)passthecenterpoint.
InternalRF:
Mode:TransmissionmodeoftheinternalRFmodule(OFF,D16,D8,LR12).
Channel range: Choiceof whichoftheradio'sinternalchannelsareactuallytransmitted
overtheair.
Receiver no (D16/ LR12only): defines the behavior of the receiver lock function.This
numberissenttothereceiver,whichwillonlyrespondtothenumberitwas boundto.By
default this is the number of the model's slot when it is created. It can however be
changedmanually, and will not changeif amodel is moved orcopied.Ifmanualsetting
or a copy/move operation results in 2 or more models on the radio having the same
number,awarning popup willshowup.Itisthenuptotheusertodetermineifthisisthe
desiredbehaviorornotandchangeifrequired.
Bind andrangecheckfields get activated by a press ofthe ENTER key.The radio will
beep every few seconds to confirm. Range check will display a popup withtheRSSI
valuetoevaluatehowreceptionqualityisbehaving.
Failsafe mode (D16 / LR12 only): Allows choosing between simply holding the last
received positions, turning off pulses (like old PPM MHz receivers), or moving the
servos to custom predefined positions. For custom positions a SET field will call the
failsafe settings page, where the position canbe definedseparatelyfor each channel.
Select the desired channel, pressENTERtogetineditmode,movethecontroltothe
desired position, and press ENTER to save. In D8 mode this field is hidden, failsafe
needstobesetonthereceiverasdescribedinthereceiver'smanual.

ExternalRF:
Module type: PPM for generic modules, XJT(sameoperationmodes asabove), DSM
for Spektrumhackmodules made using
theseinstructions
.NotethattheOrangeDSM
andSpektrumDM9modulesbothneedPPM.
Channelrange:sameasforinternalmodule.
Receiverno,Bind,Rangecheck(whenmoduletypeisXJT):Sameasabove.
19

PPM Frame(when moduletype isPPM):Allows settingtheframe length,pulselength,


and polarity of the PPM frame. The frame length is automatically adjusted to a safe
value when the number of transmitted channels is changed. Advanced userscanstill
adjustitafterwardsifnecessary.
Failsafemode:WhenmoduletypeisXJT,sameasabove.
Trainer mode: Master or slave, thissetting defines which way the trainer portworks. An iconis
shown in the main view when the cable is inserted showing which mode is in use. In Slave
(output) mode, the channels that should be sent and the PPM frame parameters are
customizablejustlikeforExternalRF>PPM.

HELISETUP
ASHORT pressofthePAGEkey will bring upthehelicopterCCPMheadmixerpage. Thispageallows
settingaswashplatetype,andlimitingthecontrolauthoritythroughtheSwashRingsetting.

The inputs of this mixer are the Ail and Ele Inputs (note: for thistowork you should NOTreorderthe
Inputs that have been automatically created when making a new model), plus the source selected in
"Collectivesource".ThelatterwouldtypicallybeanInputdefinedwithoneormorepitchcurves.
The outputs oftheCCPM mixer areCYC1, CYC2and CYC3,whichneedtobeassignedontheMIXER
pagetothechannelsyouwillconnectyourservosto.
Note that the settings made here have no effect unless you are using those CYC1, CYC2 andCYC3
sources.Amultirotororflybarlesshelicopterwhichusesonboardcomputers/mixerswillNOTusethem.
FLIGHTMODES
Nextupistheflightmodesscreen.

8 flightmodesplus thedefaultone are available foruse. Eachofthem can benamed,hasa selectable


activationswitch (physical orlogical),atrim selectionarray (always intheR,E, T, A order, see topbar
descriptionforareminder),andslowup/downparametersforsmoothtransitionsbetweenmodes.
The priority of the flight modes is such as the first FM of 18that has its switch ON is the active one.
WhennonehasitsswitchON,thedefaultFM0isactive.
Thetrimarrayhasthefollowingfunctionality:

TrimOff():TrimwillnotbeactiveinthisFM.Thetrimtabswilldonothing.

UsetrimofFMx(:x)

If xis the number of another modethenthetrimissharedwiththatmode(andtrimming


ofcourseadjustsFMxstrims).

If xis the number of the modewereon,then trims arecompletelyindependentforthat


mode.
20

Add own trim to trim of FMx (+x): Trim keys will only affect the current mode,butthecurrent
mode is also affected when FMxs trims are changed. For example you can have a thermal
mode FM1 that you can base onthedefaultFM0(+0),youtrim themodelinFM0,youswitchto
FM1, have to trim to compensate for that modes configuration. By doing so you wont affect
FM0.But ifforyour nextflightyouveputthebattery abit differentlyand caused achangein CG
thatneedscompensation,youonlyneedtoadjustthetriminFM0.As FM1strim isaddedon top
ofit,itsbeencorrectedtoo.

INPUTS
The nextscreenallows setting one ormore input formattingrulestoeachstickaxis.Thisisthefirststep
ofthecontrolchainwhereyoudefinetheamountofcontrolauthorityyouwantoneachstick.

As manylinesas required can be assigned to eachstick(LONGpress ENTERbringsupapopupmenu


to insert/delete lines), and again the first one that has its conditions (both switch and flightmode) on
(startingfromthetop)willbetheactiveone.Thisiscommonlyusedtocreatedual,triple,...rates.Aname
canbe defined for each entry,aswell astherate andexponential ratio.Acurve(builtinorcustom)can
alsobeusedinsteadofthe"simple"exponentialfunction.

The Modes lineallowstochoose inwhichflight mode(s) (highlightednumbers)thatlinecanbeactive.If


thecurrentmodeisnotselected,turningontheswitchwillnotactivatethatformattingline.

21

Using the +and buttons we scroll further down the screen.TheSideparameter limitstheeffectofthat
formattingline toonlyone side of the stick.A summaryoftheselectedmodesforeachlineisshownon
themainscreen.
Trimparameter ON works similarly to mixinglines andallowstrimsettingsfromthecurrentflightmode
specific to the assigned input channel to be applied. However if theuser disablestrim in the INPUTS
screenthentheparticularchannelwillnothavetrimappliedinthemixlines.
MIXER
The nextpageiswheretheactionsonthecontrolswillbe mappedtoservos.OpenTXdoesnothaveany
predefined mixing functions thatrelate only toa particularmodel type or situation, itrathergives youa
blank canvas you can build upon. The key to configuring a model on OpenTX is not to think about
"activating the deltamix"like on certainradios,butratherto thinkabout whatyouwant yourcontrolon
the model to doinresponse to aninputon the radio's controls. Themixer iswhere all that "logic" gets
entered.

The various channels are outputs, for exampleCH1being the servo plug#1 onyour receiver (withthe
default protocol settings). Achannel without amixerlinewilljustcenteraservothatwouldbeconnected
toit.
22

Eachmixerlineconnectsoneinputtothechannelit'son.Inputscanbe:

The4stickaxes
The4potsandsliders
Thehelimixeroutputs(CYC13)
Afixedvalue(MAX)
The8physicalswitches
The32custom(logical)switches
Thetrainerportinputchannels(PPM18)
Each of the radio's 32 channels, which allows using channels as a virtualfunctionsforclarity
(mix several inputs into one reuseable function, that can then be assigned to one or more
channels).NotethatthesettingsoftheSERVOSpageareNOTtakenintoaccountthere.

All inputs work on a 100%to+100% basis. Sticks,pots,channels,CYCsources,trainerinputswillvary


proportionally within this range. 3positionswitches willreturn 100%,0% or+100%. 2positionswitches
(andlogicones)willreturn100%or+100%.MAXisalways+100%.
If you wanttheservo connected tothe#2plugofyour receivertobecontrolledbytheelevator stick,you
willsimplycreateamixerentryonCH2withEleassource.Easyenough!
There can be as manylinesas neededon each channel, and the operation betweeneachline can be
selected. To create a newline,youwouldLONGpresstheENTERkey,andselectinsertbefore/after.By
default all the lineson a samechannelareaddedtogether,butalinecanalsomultiply thosebeforeit,or
replacethem.
For clarity, each line that is currently active and contributing to the channel'soutputwillhave itssource
displayedin
bold
.Thiscanbeveryhandywhenmanyarepresentandtocheckswitchfunctions.

Foreachmixerline,severalparametersareavailable:

Anamecanbeenteredforconvenience
The weight (in %) of the input can be set. This sets how much oftheinputcontrolhastobe
mixedin.Anegativevalueinvertstheresponse.
Anoffsetontheinputvaluecanbeadded.
Atrimcanbeused, forsticksthisisby default thetrimassociatedtothestick,butcanbechosen
to be one of the other trims (for crosstrimming for example) ordisabled altogether. Forother
inputsthetrimdefaultstoOFF,butcanofcoursebesettooneifrequired.
Eithera differential value can beset(reduces responsebythespecifiedpercentageononeside
ofthethrow)or acurve (builtinorcustom)canbeassigned.Whenacustomcurveisselected,a
pressoftheMENUkeywillbringyoutothecurveeditor.
Themodesthemixerlineisactiveincanbeselected(seeD/Rs).
23

Aswitch(physicalorvirtual)canbeusedtoactivatethemixerline.
Asoundwarning(1,2or3beeps)canbesettoplaywheneverthelineisactive.
The Multpx setting defines how the current mixer line interacts with the others on the same
channel. "Add" will simply add its output to them, "Multipl" will multiply the result of the lines
above it, and "Replace" will replace anything that was done before it with its output. The
combinationoftheseoperationsallowscreatingcomplexmathematicaloperations.
Response of the output can be delayed and/or slowed down with regardto the inputchange.
Slow could for example be used to slow retracts that are actuated by a normal proportional
servo.Thetimeishowmanysecondstheoutputwilltaketocoverthe100to+100%range.

As a little example, ifyouwantedtoaddsomecompensationontheelevatorchannelwhenyouincrease


throttle,youwouldgothroughasimplepath:

What'sthecontrolsurfaceIwantthistoacton?
Elevator,whichisconnectedtoCH2.
Whendo I wantittomove?
WhenImovethethrottlestick
,inadditiontowhateverwouldalready
bepresent(usuallytheelevatorstick).

So you would simply go on CH2, andinsertanewlinewith Thras source.Typewouldbe Add as the


compensation needs to be added to the "normal" elevator response. As the requiredcompensationis
likelysmall,youwilldial in a smallweight,maybe5%. Ontheground with motordisconnected,youwill
checktheelevatorcompensatesinthecorrectdirection.Ifnot,you'llinverttheweightto5%.
You couldthen assignaswitch,inorder tobeabletoactivate/deactivateitin flighttoseeiftheamountof
compensationis actuallyappropriate.Ifthecorrectionis morecomplicated,youmightwanttoassignand
createacurvethatmatcheswhat'srequired.

MixerFunctions
TODO
(X>0)onlyoperatesontheplussideofthesickand(x<0)worksontheveside.
Youcouldusetheseforsettingdifferentialorcomplicatedailerons.
([x])movingthestickfromcentreeitherwayresultsinanof0/+100
Ihaveusedthisoutputforsomeone'ssetup,butcan'trememberwhy.
(F>0) results in full travel to the plus side as soon as the stick is moved totheplusside and has no
outputontheveside.
(F<0)it'stheoppositeof(f>0).
([f])assoonasastickismovedtheoutputgoesfulltraveltothesidethestickismovedtowards.

Manyoftheseare"legacy"functionsfromer9Xorevenearlier.
Theycanbeusedtogeneratethingslikedifferential,whichwasaddedlater.
Theywouldstillbeusedtogeneratethingslikeknifeedgemixeswhereyouwantthecorrectiontobethe
sameforbothstickdirections

simpleexample
CH02(+100%)[i]Ele
(+10%)[i]RudnoTrimCurve(|x|)

SERVOS
The SERVOS page is the interface between the setup"logic"and the real world with servos, linkages
and control surfaces. Up tonow, wehave set upwhat we want our different controlstodo,now isthe
timetoadaptthattothemechanicalcharacteristicsofthemodel.

24

Foreachchannel,wecandefine:

A name, that will beshown on the mixerscreenwhenthe cursor is on a line belongingtothat


channel,onthechannelmonitorandonthefailsafesettingspage.
Anoffsetorsubtrim.
Lowand highlimits.Theseare"hard" limits,i.e.theywillneverbeoverridden,soaslongasthey
areset sothat yourservonever forces,itreallyneverwill.Theyalsoserveasgainor"endpoint
settings",soreducinglimitwillreducethrowratherthaninduceclipping.
Servoreverse.
Subtrim behavior: When set to default, adjusting subtrim will onlyshift the centerof the servo
throw. Given a 100% to +100%order from the mixer,theservo will still move exactly between
the lower and upper limits, without clipping or dead band. This introduces a different stick to
servomovement relation for both sidesofthestick. Depending onthesituation itcanbe either
convenient or problematic, so the = setting (SYM option in companion) has been added to
changesubtrim effect torathershifttheservo throw "symmetrically".A full throworderfromthe
mixercannow be clipped bythe limit thatisonthesame sideasthesubtrim,whileon the other
sidetheservowillnotreach the limit anymore.Thatwayon bothsidesofthestickagivenstick
movementalways resultsinthesameservo movement.Typicallyusingthe default modeallows
for faster setup of servos that are driven by a single control input, while= isrequired to keep
correctresponse of control surfaces usingdifferentialand/ormixingseveral inputstogether. The
= mode typically requires reducing D/R so thata marginis leftbetweenfull "control"throw and
thedefinedlimits.
PPM Center adjustment. This is similar to symmetrical subtrim, with the difference that an
adjustment done here will shift the entire servo throw (
including hard limits
), and won't be
visibleonthechannelmonitor.

The following diagram illustrates the respective behavior of both subtrim modes and how Center
adjustmentcomparestothem:

25

TrimstoOffsets"function
The last line after CH32 is the "Trims to Offsets" function. It is used to takethetrimsofthecurrently
selected flightmode, transfer their content tothesubtrims,reset them, andadjustallotherflight modes'
trims.Ifyou'reclose to running outof trim,insteadofhavingtoadjusteveryvalueoneaftertheother,all
it takes istoLONGpress ENTER onthis line and everythingisdonemagically.Bewarethatyoushould
still check if it would notbe wiser to correct the problem mechanically,especially with large values, as
depending on the subtrimbehaviorsetting it might leadtoeither insufficientand asymmetricthrows,or
clipping/deadband.
CURVES
Customcurves can beusedeitherininput formattingormixers.Thereare 16ofthemavailable,andthey
can be of several types (3, 5, 9, 17pt, both with fixedor userdefinablex coordinates). 3pt would bea
3pointcurvewithfixedx,9pt'isa9pointcurvewithuserdefinedxcoordinates.
Thesecurvesareavailableinadditiontothe"builtin"curves:

x>0,x<0:Ifinputispositiveresp.negativereturninput,otherwise0.
|x|:Returntheabsolutevalueoftheinput.
f>0,f<0:Ifinputispositiveresp.negative,return100%,otherwise0.
|f|:Ifinputisnegativereturn100%.Ifinputispositive,return+100%.

26

The curve editor allows you to define a name for the selected curve, the type, and of courseset the
coordinates.Whenthecursorisonone oftheeditablecoordinates,aLONGpressofthe ENTERkeywill
bringup a menu where you can choose a standard preset curve,mirrorthecurve vertically,orresetall
points.
GLOBALVARIABLES
Global variables are values that can be substituted to the usual number on every Weight, Offset,
Differential orExpo setting. Theirmain useis to groupthe adjustmentofseveralparametersthatshould
have the same value. For example, aileron differential on a glider with 4 surfaces responding to the
aileron function. When trying to find the sweet spot for the differential value, instead of having to
repeatedlyeditthedifferentialvaluein4 mixers, all 4canbesettouseaglobalvariable(e.g.GV1resp.
GV1,selected by a LONG pressoftheENTERkeyontheDifferentialfield).ThenadjustingGV1onthis
pageisallittakesforalldifferentialstobeupdated.

27

Global variables are also flight mode specific, so insteadofhavingtocreateseparate mixer lines with
differentvalues depending ontheflight modeone can simply use a global variablewithdifferentvalues
for each flightmode.This can significantlyhelp simplifyingthemixerscreenby avoidingmanyduplicate
entries.
Global variables can also be adjusted in flight thanks to the Adjust GVx Custom Functionthat willbe
described later, and help adjusting those parameters that are easier to tweak in flight likeD/R ratios,
exposoragaindifferential.
The Globalvariables screen allows setting aname foreach ofthe5availablevariablesforconveniency,
andseeing/settingthevalueeachofthemwillhaveineachofthe9flightmodes.

LOGICALSWITCHES
Thesearelogicswitchesthatareusedtocomparevaluesandcombinevariousconditions.
The first "operation" column lists a few arithmetical, logical and differential operations. In arithmetical
ones a and b represent variables,x representsa constant.Variablescanbe every source,i.e.allthose
availableinmixers,plusthe5globalvariablesandalltelemetryvalues. Inlogicaloperationstheavailable
sources are all physical and other custom switches. Differential functions compare the variation of a
variablesincelastmatchtoanothervalue.

28

a~x: active when variable a is approximately equal to constant x (hysteresis added, as


comparingastick'svalueforexamplewouldprettymuchnevertriggeranexactmatch)
a<x,a>x:Activewhenvariableaissmallerresp.greaterthanconstantx
|a|<x, |a|>x: Active when the absolute value of variable a is smaller than, or greater than
constantx
a<b,a>b,a=b:Seeabove,butwith2variables
AND,OR,XOR:Logicaland,or,exclusiveorbetween2binaryinputs
d>x, |d|>x: Active when the selected variable, respectively its absolute value has changed by
morethanx sincelasttime.Forexample,d>xAlt10wouldtriggeronceeverytimeAltitudegoes
upby10m.|d|>xAlt.10wouldtriggeronceeverytimeAltitudegoesupORdownby10m.
TIM:Atimer,TIM0.52.0wouldbeactivefor0.5s,inactivefor2s,andrepeat.

Custom switches offer 3 more parameters: An extra AND condition (if selected, must be on for the
customswitch tobecomeactive),aDurationparameter(theminimumtimea customswitch willbeactive
for even ifitsconditions becomefalse instantly),and adelayparameter(thataffectsboth activation and
deactivation).Seethetitlebarheadertoseethefunctionofthefieldthecursorison.
Along press oftheENTER key onacustomswitch'slabelwillbringupapopupmenuthatallows youto
copy/paste/deleteanentryformoreconveniententryofsimilarsettings.
CUSTOMFUNCTIONS
This is the place where switches can be used to trigger special functions such as trainer mode,
soundtrackplayback,speechoutputofvariablesetc.

The first column selectsthetrigger, which can beanyswitch(physical orcustom) orON(alwayson). A


LONGpressof the ENTER keywillswitch to"toggle"mode(endingwith t),i.e.theselectedinputwillbe
turnedon when the selectedswitch is activated, andwillremain onuntilitisdeactivatedandreactivated
again.
29

Scrollingthroughthelistyouwillfindtheseavailablefunctions:

SafetyCHx:Whenactive, the output of CHx isforcedtotheselectedvalue.Acheckboxisthere


toenablethefunction, which you would typically doafterensuringthevalueissetcorrectlyand
theswitchisoffifyourmodelispowered.
EDGE. thisfunction replaces the Long/Short pressofthemomentaryswitch.Formore info
read
here
Trainer, TrainerXXX: Enables trainer mode globally, and for individual functions. Unless a
custom function is set for an individual function, turning the one set for Trainer automatically
activatesall4sticks.
Instant trim: When activating the selectedswitchthecurrentstickpositionswillbeaddedtotheir
respective trims. This istypicallyassignedtoamomentaryswitch,andusedonamaidenflightif
you expect trims to be way off. Instead of frantically clickingthetrimtabs,youwouldhold the
sticks sothatthemodelflies straight,anddepresstheswitchonce.Itisbesttoremovethatentry
after the maiden flight, to avoid hitting it by mistake and bringing the model badly out oftrim
again.
PlaySound:Playasimpletonefromtheavailablelist.
Reset:Resetstheselecteditem(Timer1,Timer2,telemetryvalues,orallofthose)
Vario:Turnsonvariometersounds(see
Telemetrysetup
)
Playtrack:PlaysasoundfilefromtheSDcard,withrepeatsatthespecifiedinterval
Play value: Speaks the current value of the selected parameter, with repeats at the specified
interval
SDLogs:LogsthetelemetryvaluestoSDcardatthespecifiedinterval
Volume:Adjustssoundvolumeusingtheselectedsource
Backlight:Turnsbacklighton
BgMusic, BgMusic || (pause): Plays a selected soundtrack from the SD card. The BgMusic
Pauseitem pauses the track whenactivatedandresumesitonceinactiveagain,whileswitching
BgMusicoffstopsthetrackcompletely.
Adjust GVx: Whenactive, sets the relevantglobal variabletothevalueofthespecified source.
The adjustment source can be one of 4 groups cycled through using a LONG press of the
ENTERkey:
Afixedvalue
Aproportionalcontrol,or achannelwithfor examplespecifiedcurve/weight/offsettolimit
theadjustmentrange
AnotherGVAR
+1/1,toincrement/decrementtheGVARwitheachactivation.

Along press oftheENTER key onacustomfunction's labelwillbringupapopupmenuthatallowsyou


tocopy/paste/deleteanentryformoreconveniententryofsimilarsettings.
Telemetry
Thispagegroupsallthebasictelemetryrelatedsettings.

30

A1 and A2 are the 2 analog ports available on D8R receivers. X8R receivers only have A1,
which measures the receiver's power supply. Range setsthemaximummeasurablevoltage,i.e.
3.3V/ (dividerratio). Forexamplewiththe receivers' internalsensor(1:4), this wouldbe13.2V.
For the FBVS01 sensor with the default ratioof1:6, this would be 19.8V.The number nextto
"Axchannel"willshow the currently measured value,and can beused toconfirm orcorrectthe
Range setting by comparing the reading with an external voltmeter. Offsetandcustomunits(A,
m/s, m, , %...) can be used in addition to help scaling the input to accommodate 3rdparty
analogsensors.
"Low" and"Critical"alarmsforA1, A2 andRSSI will trigger audiowarningswhenthemeasured
value goes below the definedlevels.WhenamicroSDcard with a Taranisvoicepackloadedis
present in the slot, those alarms will beannounced in clear voice(e.g."A1 Low", "A2Critical",
"RF signal Low"). If no card is present each will trigger a different beep pattern. We do
recommend the use of the voice capability as 6 different beeps can be difficult to remember
understress.
Blades:NumberofbladesfortheRPMsensor.
Voltage/current: Allows choosing the input for the power calculation and mAh count features.
Theseshouldmatchtheinputyou'veconnectedthecorrespondingsensorsto.
Variometer source: sensor typethat isinstalled inyourmodel."Vario" isforthenewFrSkyvario
sensors as well as the
openxvario (vertical speed is calculatedbythesensorand transmitted
digitally), A1/A2areforanalogsensorsthattransmitverticalspeedasavoltageconnected tothe
respective input. Limit sets respectively the maximum expected sink rate, low and high dead
band (no sound), and maximum climb rate for the sounds generated by the Vario custom
function.ThelowdeadbandcanbesettoOFF,whichdisablessinktonesaltogether.

Followingthosebasic parametersare theselectionlists for the3customtelemetry screensthat canbe


seen by LONG pressing the PAGE key on the main views. Each screen can either show numerical
31

parameters (9 in the main screen area and 3 in the bottom bar), or 4 bargraphs with configurable
upper/lowerlimits.

Each field can beone of the various availableparameters, ofcoursethe corresponding sensorsand/or
hubmustbeinstalledinthemodel:

Tmr1,2:Bothtimers
SWR:Transmitterantennaquality.Should always be below 51, or a popup warningwillappear
and an audio alarm will sound to warn youtochecktheradio'santenna. Thevalueitself isof
littlemeaning.
RSSI:Lowest ofthe RSSIvaluesfromtheradioandreceiverinD8mode.In D16mode, RSSIof
thereceiver.
A1,2:AnalogportsonDreceivers(onlyA1availableonX8Rreceivers,withreceivervoltage)
Alt:Barometricaltitudesensor
Rpm:Enginespeed,numberofbladesisadjustedinthesettingsabove
Fuel:Fuellevel
T1,T2:Temperaturesensors1and2
Spd,Dist,GAlt:GPSspeed,distancefromstartingpointandGPSaltitude
Cell:LowestcellonFLVS01
Cels:SumofallcellsonFLVS01
Vfas:FAS40/100voltagemeasurement
Curr:Current,sourceconfiguredinthesettingsabove(FASoranalog)
Cnsp:mAhusedtotalizer(needscurrentsourceconfiguredcorrectly)
Powr:Power,voltageandcurrentsourcesconfiguredabove
AccX,Y,Z:AccelerationvaluesfromTAS01
Hdg:GPSheading
Vspd: Vertical speed (eithercalculated by the radioorreportedbythesensor, dependingonthe
sensortypechosenabove)
xxx+/xxx:Minandmaxvaluesoftheavailableparameters

LUAScripts
OpenTX2.0addedsupportforLua(currentversion5.2.2)userscripts.
Lua is a lightweight multiparadigm programming language designed as a scriptinglanguage. Moreat
Wikipedia
TherearetwotypesofLuascriptsusedinOpenTX:

ModelPersistentLuaScripts

OnetimerunLuaScripts

32

ModelPersistentLuaScripts
Persistent scripts are loaded by the radio and
are run periodically andcontinuously,similar to mixers.
Several scriptsmay beactiveat the same time.Thereisalimitation(duetoRAMusage)onthenumber
of persistent scripts. 7 isthe maximum (shared by all categories). If a scriptuses too muchmemoryor
processortimeitwillbeforcefullyterminated.
Therearethree types of
ModelpersistentLuaScripts
usedinOpenTX.Modelscripts,Functionscripts
andTelemetryscripts.Theyallusethesamescriptlanguage,butareusedinslightlydifferentroles.

Modelscripts
A model script runs on a continuous basis once loaded into amodel.Aslong as the modelis
selected, the script is running. You shouldnever use amodel script for calculatinganysort of
inputthatisvitaltoyourmodel.Rememberthatscriptsmaybeterminatedatanytime.

Functionscripts(addedin2.0.3)
Scripts that can be called fromtheSpecial Functionsscreen. Much liketheavailable firmware
functions.

Telemetryscripts(addedin2.0.4)
Used for building customized telemetry screens. Theoretically it is possible to have up to 7
customtelemetry screens, all writteninLua. Itispossible tousedifferentscriptsona permodel
basis.

Onetimerun
LuaScripts
These scripts are executed when they are called upon by a specific radio function or when the user
selects them from a contextual menu. Once the subroutine is completed the task is terminated and
unloaded. Pleasenote thatallpersistentscriptsare haltedduringtheexecutionofonetimescripts.They
are automatically restartedonce the onetime script isfinished. Thisis done to provideenough system
resourcestoexecutetheonetimescript.

Themodelwizardscript.
This scripttype adds a wizard functionto theradio thatprovidesguidanceinsetting upmodels.
Onceinstalleditiscalledautomaticallywhenanewmodeliscreated.

Templatescripts
(plannedfeature).
Thefunctionalityofthisscriptstypeisnotyetdescribed.

LuaScriptsF
olderStructure
LuascriptsmustbeplacedontheSDcardinfolder
/SCRIPTS
andhaveanextension
.lua
.
The script folders werereorganized in OpenTX2.0.3.ThefolderstructureinOpenTX2.0.3orlaterlooks
likethis:

/SCRIPTS/WIZARD/FortheWizardscript

/SCRIPTS/MIXES/Formodelscripts

/SCRIPTS/FUNCTIONS/Forfunctionscripts

/SCRIPTS/modelname/telemXX.luaFortelemetryscripts

/SCRIPTS/TEMPLATES/Fortemplatescripts

33

LuaScripts
Documentation
LuaScripts
Documentationisdividedintosubpages:

LuaModelScripts
describescontinuouslyrunningmodelscripts

LuaOnetimeScripts
describesonetimerunninggeneralscripts

LuaScriptReference
detailedreferenceofOpenTXLuaimplementationandinterface

LuaGeneralFunctions
generalpurposefunctions

LuaModelFunctions
modelmanipulationfunctions

LuaDisplayFunctions
LCDdisplayfunctions

LuaScriptExamples
someexamplescriptswithcomments

HowtouseLuafields

A Lua Field is a Lua Parameter available in OpenTX to be used in Lua scripts. The Lua
Fieldmightbeameasuredvaluefromtelemetry,stickinput,GVARvalueetc.

The list of available Lua fields for the latest OpenTx releasetogetherwiththeirdescription
canbefoundinOpenTXsource:
http://jenkins.opentx.org/downloads...lua_fields.txt

ThesectionbelowexplainshowtoobtainthevalueofaLuaFieldinscripts:
TherearetwowaystogetavaluefromgetValue()function:
1. usefieldnameasparameterslowway
2. usefiledid(number)asparameterfastway

Deciding on which way touse depends on the numberofgetValue()callsforcertainvalue


inlifetimeofthescript.

If certain value is needed only small number of times, then the easiestway is touse the
filedname.Example:
Code:

localfoo=getValue("cellmin")
If certain value is used a lot in the lifetime of the script, then usage of getValue() with
numeric field id is advisable, because it is faster. The downside is that it involves a little
morecode.Theprincipleis:
1. scriptinitphase:getfieldidofrequiredfieldandstoreitforlater
2. scriptrunphase:usestoredfiledidtoretrieveitscurrentvalue

Example Lua standalone script, output of print statements is seen in console on Linux
systems:
Code:

localcell_min_id

localfunctioninit()
34

localinfo=getFieldInfo("cellmin")
cell_min_id=info.idsaveidforlater
print('cellminhasid'..cell_min_id)
otheritemsininfo
info.name=fieldname
info.desc=fielddescription
print("info:id="..info.id.."name="..info.name.."desc="..info.desc)
end

localfunctionrun(event)
nowusestoredidhereforfastgetVAlue
localfoo=getValue(cell_min_id)thisisequaltogetValue("cellmin"),butfaster
localbar=getValue("cellmin")
print("foo and bar should be the same (except ifcellminchangedbetweenthetwo
calls)")
print("foo="..foo)
print("bar="..bar)
return1
end

return{run=run,init=init}
Outputofabovescript:
Code:

f_open(./field_id.lua)
cellminhasid214
info:id=214name=cellmindesc=LiPosensorlowestcurrentcellvoltage[volts]
fooandbarshouldbethesame(exceptifcellminchangedbetweenthetwocalls)
foo=2.5
bar=2.5
Scriptfinishedwithstatus1
NOTE:
The usage of old constants forgetValue()isdepreciated. Theseconstantswillberemoved
from Lua Fields in thefuture releases of OpenTX.ThereforeallearlierOpenTxLuascripts
should convert to the new system (described above).
In detail these constants below
willberemovedfromfuturereleases:
Code:

"MIXSRC_FIRST_INPUT"
"MIXSRC_Rud"
"MIXSRC_Ele"
"MIXSRC_Thr"
"MIXSRC_Ail"
"MIXSRC_SA"
35

"MIXSRC_SB"
"MIXSRC_SC"
"MIXSRC_SD"
"MIXSRC_SE"
"MIXSRC_SF"
"MIXSRC_SG"
"MIXSRC_SH"
"MIXSRC_CH1"
"SWSRC_LAST"
Templates(removeorreferencecompanionwizard/luawizard)
The templates are currently "startingpoints"for model setups. When selectedwithENTERLONGthey
will either add to or replace the currentmodel's mixers and settingswith the usual ones fortheusage
scenario theycorrespondto (best usedon a newly createdmodel). These can beusedtobuilduponor
tweaktoachievethedesiredresult,orsimplytogetanideaofwhat'srequiredforthatmodeltype.

Firststeps
Now that you've seen the basics and that your battery has some charge, what about a little bit of
practice?The radio comes from the factory with thesticksalreadycalibrated,sothe firstthingto dowith
your radio would be to configurethe general settings.Getto therelevantpagewithMENU LONG,set
time, date, sound volumes to your preference (the lower end of the volume slider is typicallyneeded
when using headphones, whilethe upper endis good for using withtheinternal speaker), play with the
backlight setting, set theRFcountry codetoyourlocation, thedefaultchannelordertoyourpreference,
and the stick mode to match yourflying style. Batterygaugeand alarm arefactoryset for the supplied
battery.
The radio will have createdanemptymodelforyou,soafterhavinggonebacktothemainviewyou'llbe
able to gotothemodel setup screen bypressingMENU SHORTand PAGE SHORT. There you'llwant
tomakesureyou'vesetthe RFmodethatmatchesthereceiveryouwanttouse.Whenusingtheinternal
module, to bindyourreceiver select the"Bind"fieldandpresstheENTERkey.Theradiowillbeepevery
few seconds. Now follow your receiver's instructions for binding (press and hold the F/S button then
apply power for D andX receivers,connect jumper toS pins of channels 1 and 2 and apply power for
V8xIIreceivers).The receiver LED will flashfasttoconfirmbinding.Pressexitontheradio, Removethe
jumper on the receiver if applicable, and cycle receiver power. You should now have servocontrol of
channels14withthesticks.

36

Settingupamodel
OpenTXbasics
Now thateverythingworks, it'stime to stopamomentfor sometheoryabout the basicoperation ofthe
OpenTX
firmware.
As briefly described above, OpenTXdiffers from the majorityof mainstream radiosby its programming
philosophy.Owners of Multiplexradios will however feel at homeveryquickly, astheprinciplesarevery
similar. As opposed to common radios that offer a choice between a limited set of predefined usage
scenarios(airplane,glider, helicopter), anumberoffunctionsthat are commonlyusedwithsuchmodels
(delta, flaperon,camber,butterfly...),and have fixed assignations (sticks
always
controltheirrespective
channels), OpenTX offers a blank canvas on which you will build your setup: the mixer screen. This
approach ensuresmaximumflexibilitybecausewhateveryoudoyouwillneverhavetoworkaroundwhat
the radio expects youto do,whichis a blessing for anybody havingtowork with "new" modeltypesor
configurations which still "don't exist" for mainstream radio manufacturers, and as such for which the
builtin functions are usually useless. So you can see it that way: For some model types, usual
predefined functions canallowsettingupamodelin seconds(just enable afunction),butfor othersyou'll
spend hours trying to get around their limitations. On OpenTX everybody ismore or less at the same
level it might takea little longeratthebeginningto setupa seeminglysimplemodel,butacomplicated
one won't take much more. As there is no existing function you can just turn on, it will require basic
understanding of how your modelis supposed to work, and what you want each control surfacetodo.
Thismeansthatyoumightevenlearnsomethingaboutyourmodelintheprocessofsettingitup!
The control order path starts from the hardware controls, goes through the STICKS screen (anything
affecting control response like dual rates and exponential), continues to the mixer,and ends up being
adaptedtothemechanicalcharacteristicsofthemodelintheSERVOSscreen.

Everythingaboutthemixerscreen
We'llstart with this as itis thecenteroftheradio.Themixerscreenliststhe32outputchannelstowhich
you canlink one ormore inputsfroma longlistof physical controls (sticks, pots,trims, switches), logic
sources, otherchannelsand trainer inputs.Each assignation is done witha
mixerline
.Anewmodelwill
have 4 predefined mixer lines on channels 1,2,3 and 4 that link the 4 sticksto them accordingtothe
channel order preference you have set. These are therepurely for convenience,and can of course be
editedordeleted.
Let's delete them all by highlighting them, pressing ENTER LONG and choosing "Delete". Your mixer
screen is now empty, which means the radio doesnothingatall.Wellit does,itsends outthenumberof
channels thatare definedonthemodelsetuppagetothereceiver(channels18bydefault),butasthose
channels areempty in the mixer screen noservo will respond, they'llallbecentered. Youwon'tgovery
far with that, so you'll wanttoadd control inputs to thosechannels. You'llcreateamixerlineonCH1by
highlighting it and pressing ENTER LONG, and will end up in the INSERT MIX page. Scroll to the
"Source" field,pressENTER, and selectthe control you want to acton CH1.Youcandoitby browsing
the listwith the +and keys, ortake the easyroute and just move the desiredcontrol(ifit's aphysical
one, of course). Movetheaileronstick, andthefieldwillchangetoAil(itmighthavealreadybeen thereif
your channelorder preference setinthegeneral settings hadA for thefirst channel,asthat'stakeninto
account).Youcanleavetheotherparametersattheirdefaultsettings,whichmean:

The mix ratio of thisinput is 100%, so the scalingof the mixer line's outputwillbe equal toits
input.Avalueof50%wouldmeantheoutputwouldbehalfoftheinput,andinverted.
Thereis nooffset, sowith an inputof 0theoutputofthemixerlinewillalsobe0.Avaluehere
wouldshifttheresponsebythatmuchpercentageof(inputxweight).
37

Trim is ON, it could instead be excluded from the calculation(OFF), orone of the other trims
could be used (for crosstrimming for example). D/R and expo (the entries on the STICKS
screen for thatchannel)are used. Untickingtheboxwouldmean the mix receivestherawstick
inputevenifaD/Risactive.
Differential is 0, so the mixer output will be symmetrical on bothsides.A value of 20% would
mean the line's output would be 20% less on the negative side than onthepositiveone. The
"Diff" field is editable, and by using the +/ keys on it you'll be able to selecta curveinstead
(predefinedorcustom).
The mixer line is active for all flight modes. By "unticking" some of the numbers, you would
disablethatlinewheneverthecorrespondingflightmodeisselected.
No switch is assigned to the line, so it's always active (as long as the modes setting above
allows it). Selecting a switch (physicalor logical) would allow activatingor deactivatingtheline
whenneeded.
Warning isoff.If set to 1,2 or3 the radio would emit1,2or 3shortbeepsevery fewsecondsto
letyouknowthatlineisactive.
Multiplex is Add, so this line is just added to the previous oneson the samechannel. If setto
multiply it would multiply the
calculatedresultofthe linesaboveit,and ifsettoreplaceitwould
replaceanythingthat'saboveitwheneverit'sactive.
Delays are 0, so if that line had a switch assigned it would be activated/deactivatedinstantly
whentheswitchistoggled.Timeisinseconds.
Thereis noslowing down,so theline'soutput reacts instantly toinputchanges.Timessethere
areexpressedinsecondstocovertheentire range(100to+100).If2secondsareselected,the
line's output will take0.5 secondtogradually sweep from 0 to +50%if the input wasmovedby
thatmuchorthemixerlinewasactivated/deactivatedbyaswitch.
You can also name the mixer line. This name is shown on the mainmixerscreen, so setting
names is a good idea to help maintain complex setups where you might havemany lines on
eachchannel.

Note thatatanytime intheMixerscreenandtheEDIT/INSERTMIXdialogsyoucanpressMENULONG


tobringup the channelmonitor.Thismakesiteasy totrythedifferentparametersandseetheir effecton
the channel's output. In addition to this, you will see that on the mixer screen each active linehasits
name and source displayed in bold, so it'salways clear at any given time asto whichlines areactively
contributingtothechanneloutput.
The description islong,butin practice if wenow doit again to control CH2 with the elevator stick itwill
onlytake acoupleofsecondstoselectCH2,pressENTERLONG,scrolltoSource,pressENTER,move
the Elevator stick, and press EXITtwice.Setting upthemixerfora vastnumber ofbasic models is as
simple as that. In addition to the 4 basic channels, ifyou haveamodel with flapsthathavetheir own
servoand that you want to control with switchSB you'll just findafreechannel toconnectyourservoto
(let's say CH6), you'll scrolltoCH6on the mixerscreen, insert a mixer line, fliptheSB switch when in
editmode onthe source field,andEXITtwice.If youwanttoadjustthe up/mid/fullpositions,agoodidea
wouldbe to set up a 3pointcustomcurve.IntheCurvesetting,selectc1,exiteditmode,andstillonthe
curvefieldpress MENU. You will bebrought tothecurveeditor.Select "3pt"astype,selecttheYvalue
ofthefirstpoint,andadjustitsposition.Dothesamefortheother2points,andexit.
Now something more "complicated", if your model hasretracts thatyouwant to control with switch SA
(which has 3positions) but wantonly2 possibleoutputvalues(inand out)thiswon'twork (choosingSA
wouldgive100%, 0%, +100%). You'll thenusetheveryconvenientMAX source,thatrepresentsafixed
value. Create a mixer line on achannel (e.g. CH5) withMAXas source and +100% weight, you could
name it "Gear Up". Now create a2nd mixer line underthefirstone by pressing ENTER LONG ononit
andselecting"InsertAfter".ChooseMAXagain assource,thenset weightto100%,forwhichit'stimeto
remember the handy shortcut enter edit mode, and press the + and keystogether. There,100%.
Scroll to the "Multpx"setting,and select "Replace".Nowgo totheswitch setting,entereditmode,flipSA
in the UP position (flickit out of itfirstif it'salready there),and pressthe+andkeystogether.This will
turn the "SAup" entry into "!SAup".Thismeanstheline isactivewheneverSA isNOTin the UPposition.
Namethelineas"Gear Down" andyou'redone. Whathappens is: CH5 will be at100% bydefault(the
firstmixerlineis in effect), BUT when SAis either inthemiddle or inthedownpositionthe2ndlinewill
activate and replace the first one, turning the output to 100%. Ifyougo back to the mixer screen and
play with SA you'll see that when it's not in the UP position the 2nd line will turn boldasit becomes
38

active, while the first one fades back to normal as it's been deactivated by the Replace type of the
secondline.Againthatseemslong,buttakesasmuchasabout30secondswhenyou'reusedtoit.
Of course if you've followed you'll certainly understood that we could have setthesecondlinetouse
switch "SAup", and that subsequently the role of the 2 lines would be swapped (second active when
switch is up, first intheother 2 positions).But thenI wouldn't havehad the opportunitytoexplainthe!,
andalso asapersonalpreference IlikemyswitchdefaultpositionstobeUP,andthefirstmixerlineon a
channeltobethedefaultvalue.
A little simple one next: You have 2ailerons with separate servos.Using a Ycable to linkthemis too
oldschool nowadays, so let'suseanotherchannel.We alreadyhavethefirstailerononCH1,CH5and6
aretaken by gear and flaps, solet's use CH7.Wehaveanaileronthatmustmovewiththeaileronstick,
which is actually just like the first one. So let's just copy the first mixerby highlighting itand pressing
ENTER LONG, and selecting copy. Move ittoCH7and press ENTER.This would workjustfine,butI'll
throwina personal preference again, and changeitsweight to 100%because"logically" thataileronis
supposedtomoveintheoppositedirection.We'llseelaterwhythismakessense.
Next up: a little mix. I'm going to be lazy and just tell you to go back upand check the
mixer screen
description a bit further upfor the throttle>elevator compensation. I'm sureit will seem muchclearer
now!
Let'sdoadeltamix.Again,whatkindofcontrolsurfacesdowehave,andwhatdowewantthemtodo?
We have 2 elevons. They must move in the same direction when the elevatorstickis moved,butthey
mustmoveinoppositedirectionswhentheaileronstickismoved.
So, let's pick 2 channelsto connectourservos to. CH3 and 7, because... why not.Tryingtomake you
forgetaboutoldschoolfixedchannelassignmentshere)
CH3 must movewiththeelevatorstick,sowecreateamixer linewithEleassourceonit.CH3mustalso
movewiththeaileronstick,sowecreatea2ndmixerlinewithAil assource.Weleave multiplexingset to
"Add",asthat'sexactlywhatwewanttodothe2inputsmustbeaddedtogether.
Now let'sdiscuss the weights a little. They arenowset to100%.This meansthatafulldeflection ofthe
aileron stick will create a full deflection of CH3, same for the elevator stick. But now as weadd the 2
together, ifwe put the stick intheupperrightcorner(assumingmode2)wehave100%+100%=200%
output on CH3. Now,thelimits defined ontheSERVOSscreenareset to100%whichmeansthatthe
output will beclipped. When the mixer's output for achannel goes beyond 100%,theservowon'tmove
anyfurther. Thisis not different from otherradios predefineddelta mixes willusually giveyouratiosto
enter for elevator andaileronauthority, which isjust the same. Ifyouenter too high ratiossome of the
stickthrowwillbeineffective.
Now the discussionas to whattosetthe ratiostois probablyendlesssomearehappywith100%and
clipping,some will like50%sothatthereisneveranyclipping,andsomelikemyselfwilllikesomethinga
bitinthemiddleIuse70%.
So, let's say we nowhave 2 mixer lineson CH3,70%Ail and 70% Ele. Aswesaid,CH7mustrespond
the samewaytotheelevator input,sowe adda 70% Ele mixertoo. Itmustrespondtotheaileronstick
bythesameamount,butintheoppositedirection,sowe'llset...70%.
This isthe reasonforwhichIset100%inthepreviousdualaileronexample.Forcingyourselftoenforce
that logic thinking even when not really necessary will help you to get it right when it's needed. For
example in the dualaileronscenario wecouldhaveset both ailerons to100%,thenusedservoreverse
to invert one aileron to achieve the same result on the model. BUT in the delta scenariothiswouldn't
work.

Servosscreen
Now that the mixer isconfiguredand the controls' behaviorsare defined,thenext step is to set up the
way theseorderswillbe carried through tothe servos.At this pointyou'llwant to actually connectyour
servos to your receiver, remove the control horns from the servos, the props from themotors (safety
first),andconnectareceiverbattery.Bindthereceiverifnotdoneyet.

39

Center all controls (you can look at the channel monitor and aim for 0), and for each servo start by
mounting the horns sothat they're asclose to perpendiculartothecontrollinkagethey're goingtodrive
aspossible. Murphy's lawensures thatit's always right between 2of the steps, so usethe PPMcenter
adjustment to make them perfectly perpendicular. Using this setting instead of subtrim avoids losing
throw, and makes suretheoutputs seen inthechannel monitorare real "control" inputs.Connect your
linkagesso that the control surfaces are atneutral(or middleoftheir expectedthrow forthingssuchas
flaps).
Now move theradio'scontrols carefullyto exercisethe servos but being aware of possible mechanical
binding. Set servo reverse where needed. Adjustthelinkages in ordertohavea little morethrowthan
what you'll ever need in both directions. Ifthere isa little binding on one side toreach the appropriate
sideontheotherand/orthethrowsarenotsymmetricalit'snotaproblem.
Thenadjusttheminandmaxlimits.Theseshouldbesetsothat:

Youhavealittlebitmorethrowthanwhatyou'lleverneed
Thereisnomechanicalbinding
Throwsarethesameonbothsideswithfullcontrolinputdeflection

We'redoneforthisscreen.You'vealreadynamedyourchannelsofcourse)

Inputsscreen
You'veprobablynoticedthere'sonethingwehaven'tdoneyetadjustthrows.That'swhatwe'lldonow.
For eachstick, create arate line.Settheweighttoachievethedesiredthrows.Addexpoifdesired.This
isyourdefaultrate,sodon'tchooseaswitch.
If you wantmultiple rates,create a new line
before the default one, enter the new rate/expo,choosea
switch. Repeat as many times as desired. What's important to know is that the
first line that hasits
switch on (starting from the top)willbe the active one.Soifyoucreateratesbelowonewithnoswitch it
will never be active. Think aboutthepriority if you choose switch combinations thatcanlead to 2 rates
having their switchon the topone will override the other.Ideally you should choose yourswitches so
thatneverhappens.
There,wecangoandfly!

Modelsetupguidelines
Timefor a little summary. Aswe'veseen,there'sliterallyaninfinitenumberofwaystodothesamething
in the firmware,so let's mention a fewgoodpracticeswhensetting up models. If yousticktothemthey
will helpyou setup yourmodel quicker, keepyour setupclean, and understand whatyoudid6months
later.Withasimple4channelmodelwhere eachservo iscontrolledbyonlyonecontrolinput,ifyouwant
toreduce aileronthrow you could doit eitherwith the aileron D/R, in the weightofthemixer linelinking
the Aileron stick to the aileron channel,and with the Limits forthat channel. Forsuch asimple modelit
won'tmattermuch whereyoudo it, but assoon asyou'llget tomorecomplicatedmodelswithflaperons,
butterfly mixes etc, doingit in thelimits forexample would simplymakeitimpossibletosetupthemodel
properly.

Start with themixer setup.As wedidabove, think aboutwhat controlsyouhaveon yourmodel


andwhat theyshould do, andchoosewhichreceiver channelyouwanttouseforeachofthem.
On each of those channels,createonemixerlineforeachofthetransmittercontrolsthat should
act on it. Figure out the relative amount of movement each of those must lead to, based on
100%. Forget aboutthrows for now,if one control must have half the authority of the otherset
oneto 100%and one to 50%.KeepthemixerdedicatedONLYtothe "logical"partofthesetup.
If for example forcomplex gliders you have morethanonecontrolsurfacethatneedstoreceive
the samegroup ofmixers,isolatethoseasa"Function"onafree"virtual"channelyouknowyou
won't use it for a servo, e.g. CH10. Then reference it in the required output channels with a
100% CH10 mixer line. This will save mixerlinesand add toclarity. Name your channels and
mixesthataren'tselfexplanatory.
Set the servo parameters.Takegood careofthemechanical setup,thebetteritistheeasier the
radio setup and the more preciseyour controlswillbe.If you need tousesubtrim to artificially
shiftacontrol(for exampleincaseofflaperonsthatneedafargreaterthrowonthelowsidethan
onthehighside),remembertousethe"="outputmodetokeepsymmetry.
40

AlwaysdefinecontrolthrowsusingtheSticksscreen.

Now the throws are adjusted,themixerissetforgood logicandtheoutputsare setforgoodmechanical


fit.Aseverypart ofthesetupisclearlyseparated,shouldyouneedtochangesomethinganyadjustment
will onlyrequireintervention ononeof thescreens.Ifyoucrashorchangesomethingmechanically,itwill
be the SERVOS screen. If yourthrows aretoo big,Sticksscreen. If acompensationamount or mixing
ratioiswrong,mixerscreen.
Remember that there are custom switches that can be set to combine various functions, for example
allowactivationofsomemixersonlyifanotheroneisactive,etc.
It isalso good practicetomake use of the"SafetyCHx"customfunctiontodefineasafetyswitchforthe
throttle channel of electric models. Select your throttle lock switch, select thecorrect function for your
throttle channel, set the value to 100, then tick the box. While you should alwaysset upyourmodel
without itbeing powered,or at leastwithout a prop mounted, the safety boxis theretoavoidforcingthe
channeltothedefaultvalueof0(midthrottle)whilebrowsingthefunctionlistifyourswitchisactive.
The "Instant Trim"custom function can be usedif you expect yourmodel could bebadlyoutoftrim on
thefirstflight,seethe
CustomFunctions
sectionforafulldescription.
Once the flight isover,the"Trims>Offsets"functionatthebottomoftheSERVOSpagecanbeused to
transfer the trimcontentsintothesubtrim settings. Beaware thatunless theservomodeissetto "="an
excessivesubtrimamountcanleadtodissymmetricthrowsandinfluencessettingslikedifferential.

Advancedfeatures
Flightmodes
FlightmodesinOpenTX are relatively simplecomparedtomostradios.Thesettingsaresimple:Aname
(displayed on the main views), a switch to activate them,a trimsetting and2 fade in/out settings. Yet
they are verypowerful,becausethemain settingsareactuallyjustlocatedsomewhereelse: intheD/Rs
and mixers. Each of these has a flight mode selection list,that will determine in whichone(s) they are
active. So (nearly) everything isdonethroughdedicatedmixers.The mixersthat arecontrolledbyaflight
mode will see their activation fade in/out according to the mode's settings. As the trims can bemade
flightmode specific (they are by default), using flight modes to activate thingslike gear or flaps allows
usingtheseparatesetoftrimstocountertheextradragthatoftencausesaneffectonpitch.

Telemetryvalues
The followingwill assume yourradioisloadedwitha microSDcardanda validvoicepack,whichshould
be the caseasitis suppliedwiththeradio.ProbablythemostimportanttelemetryvalueisRSSI,which is
an indication of how muchsignalthereceiver in the modelisseeingfromthe radio,andwillwarnyouin
advance if you are at risk of losing control beit duetoexternal interference, excessive distance, badly
orientedor damagedantennasetc.The
telemetrysettingspagegivesyou2alarmlevelsyoucansetthat
will be announced in clear voice ("RF signal low" and "RF signal critical"). They are set by defaultto
levels thathave been consideredsuitable and safefornormal lineofsight flight (45 and 42), but if you
wanttoadjustthemyourselfthefollowingexplanationswillbeuseful:
RSSI onFrSkyequipment isrepresentedusinga logarithmicscale(dB),notin%.Thismeansthat when
RSSI ishigh,asmalldifference indistancebetweenthetransmitterandreceiverwillleadtoabigchange
oftheRSSI value.It is perfectlynormaltoseeavalue ofabout100 whennexttothemodel,andalready
down in the 70'sby the time you've walkedto theotherendofthefield.Whenyouhaveareadingof50,
it will howevertake a lot of extradistance to reachthealarmlevelof45.Thebasicapproximationruleis
thatadoubling ofdistance between pilot and model will resultinadropof6dB ofthe RSSIvalue, which
should make the previous explanationclear: Ifyouare 5mawayfromthemodelitonlytakesanother5m
to reduce RSSI by 6dB, but if you are 600m away from the model it will then take another 600m to
reducethevaluebythe"same"6dB.

41

Loss of control will happenwhenRSSIreachesavalueof about38,sosettinganalarmat10isuseless.


From the aboveexplanation you can see thatbetween the default criticalalarm(42) andusualpractical
loss ofcontrolwe havea marginof about4dB,orrangefactorofaround 1.5.The alarms arethusrather
conservative, and in normal conditions even if you heard the critical alarm you would stillbe far from
losingcontrol(you should be ataround >1000mdistance,withanother500mtospare).Intermittentloss
duetolocalfadesandantennaorientationmismatchescouldhowevergetmoreandmorefrequent.
As mentionedthedefaultalarmsaredeemedsafe for usual lineofsightflight,butforexample withFPV
setups especially when coupled withautomaticreturntohomesystemsandproperlyconfiguredfailsafes
the safetymargin can bereducedand you shouldbeabletoextractmoreorlessdoubleofthestandard
range out of thesystem.Itisuptoyouto(safely!)experimentasoncethemargingets reduced influence
ofexternal interferencesources will start to becomemore noticeable, suchas itis impossibleto predict
thebehaviorofagiveninstallationinaparticularmodel.
The Taranisalso has an alarm that will warn you of the telemetrydownlinkbeinglostorrecovered.The
telemetry link behaves similarly to the control link and is transmitted with the same power level,so it
should have essentially similarrange, and the conservative alarms for the controllink described above
should ensure the telemetry link is always available. However, it is possible that for any reason
(manufacturingtolerancesresultinginslightlydifferentrangeoftheupanddownlinks,localinterference
sources incloseproximitytotheradio,...) thetelemetry linkis lost prematurely,inwhichcasea warning
is essential as you need to be aware that any telemetrybased alarms will NOT sound anymore.
Obviously,if the radiocan'tpickuptheRSSIinfofromthereceiveritwon'tbeabletowarnyouaboutlow
RSSI.Similarly,if you arefor example relying oninformation from anonboardvoltageorcurrentsensor
to know when to land, the alarms you set for this won't sound if telemetry datais unavailable. So be
aware of the "Telemetrylost" audio alertand actaccordingly,whetherbyfallingbacktoothersourcesof
infoorbyturningbacktolandandinvestigatethereasonforthelossoftelemetryfeed.
Note that when the radio andreceiver arevery closetoeachother (usually <1m)youmaygetspurious
"telemetry lost" and "telemetry recovered" alarms. This is not a malfunction and will stop when the 2
devicesareseparated.
The rest ofthetelemetry subjectinitself has mostly beencovered already. Thetelemetrysettingspage
allows you to configure the different parameters thathave beenexplainedinthemenu overviews.The
telemetry viewswill show the dataas configured.If youhave amicroSDcard inyourradio,youcanuse
the "SDLogs" custom functiontorecordthetelemetry data while in flight. It can thenbeplayed backin
OpenTXcompanionoropenedinspreadsheetprograms.

Audio
One of the major features of the radio is the speech output function. Provided a microSD card
(FAT12/16/32format)loadedwiththesoundpackavailablefordownloadfromwithinOpenTX companion
is insertedintheslot in the batterycompartment, the radio will beable toplayaudiofilesinresponseto
various events like reaching trim center/ends andactivationofaswitch(physical orcustom),to play a
background music file, and last but not leastto announce every availablevalue(telemetry, parameter,
stickposition) in clear voice. Custom sounds can be placedinthe SOUNDS/(selected_language)folder
of the card and will be available for use (name must be 8 characters at most, not counting the .wav
extension, and with no special characters). Language is set in the radio general settings and can be
changedontheflyaslongasthepackforthatlanguageisloadedonthecard.
ZIP files with the standard voice packs can be downloaded from within OpenTX companion, or
here
.
Extract the ZIP file to the root of the SD card, and it will create the necessary subdirectories (e.g.
SOUNDS/enfortheEnglishpack).Ifyouwishtocreateyourownfiles,therequiredformatis:

WAV,8or16bit,Mono
8,16or32kHzsamplerate
PCM,ulaworalawcompression

Thestocksoundsaboveusethebestavailablequality,i.e.16bit,32kHzandPCM.
Audiooperationisrelativelysimpleasitonlyconsistsof5"andahalf"CustomFunctions:
42

Play Track: Just play an audio file from the SD card when the associated switch is active.A
repeatoption isavailable, whensetthesound will repeatatthesetinterval aslongastheswitch
is active. This can beused toannounce flight modes, gear position,flap position etcwhenthe
associatedswitchisactivatedoronrequest.
Play Value: Say the value of the selected parameter when the switch is active. The repeat
parameterisavailabletoo.
BgMusic: Starts playbackof abackgroundmusictrack(thatcanofcoursealso beatimedflight
programannouncement).Theswitchmuststayoninordertocontinueplayback.
BgMusic ||: This pauses the background track while active, and resumes playback when
deactivated. The BgMusic switch muststay active the whole time or thetrackwillstartfromthe
beginningagain.
Vario:Reproduces thesound ofaglidervariometerusingthealtitudeorVerticalspeedtelemetry
data.
Volume:Adjuststheaudiovolumefortheentireradiotothevalueofaninput,e.g.apot.

ThefollowingexampleshowsafewCustomFunctions settoannouncewhatswitchesactivatewhenthey
are, as well as SHdown triggering playbackofthevalueofTimer2 followedby theconsumption (mAh
countobtainedfromanFrSkyFAS100currentsensoronboard).

In addition to the sounds played by custom functions, there are a few predefined sounds that willbe
playedautomaticallywhenaneventhappensifanappropriatelynamedfileisplacedintherightfolder.
Currentlythefollowingeventsaresupported:

FlightModeChange:
Whenflightmodeisactivated,file
/SOUNDS/(selected_language)/modelname/flightmodenameON.wavisplayedif
present
Whenflightmodeisdeactivated,file
/SOUNDS/(selected_language)/modelname/flightmodenameOFF.wavisplayedif
present.

The "modelname" and"flightmodename"foldershouldbeidentical(including case)toyour model'sname


and flight mode name respectively, with spaces replacedby underscores. Of course only the files you
wantandplaceonthecardwillbeplayed,ifsomethingdoesn'tinterestyouthenjustdon'tputafileforit.

Globalvariables
We have already mentioned how global variables could be used to group multiple adjustments in one
place,and to makethatadjustmentflightmodespecific.Itwas alsonotedthatthesecould beadjustedin
flight this is done using the Adjust GVxcustomfunctions. Anytimethecustomfunction'sswitchisON,
the value ofthe globalvariable will follow theselected input.Asareminder,thereare 4groups ofinputs
that can be switchedbetweenby pressingENTERLONG on the input field,and don't forget to tickthe
safety box once you're done configuring and you've made sure the switch is off again to avoid
overwritingyourGVARbymistakewhilescrollingthesourcelist.
This is the way to adjust values in flight. Thecustomfunction's switch servesas a"lock"tofreezethe
value orallow adjustment. When avariable is being updated,a popup with the variable name and new
valuewillshowuponthemainviews.
One of the available sources for adjusting global varsis the list ofchannels.This is probably the main
way you'll use to adjustGVARs for a simple reason: Let's sayyouwanttoadjustaD/RratiowiththeS1
pot. If you select GV1 as the weight parameter of that rate line and just use the Adjust GV1custom
function withS1 assource,youwillnowbeadjustingyour ratebetween100%and+100%.Beingableto
disableandevenreverseyourratedoesn'tsoundterriblyfun,soyou'llwanttolimittheadjustmentrange.
The easiest way is to use a free channel for that. Create a mixer line on say CH12, and use the
43

weight/offset/curve parameters tomakethatchannel'soutputcoverarangeofsay+50 to+80%overthe


pot'sthrow.Then,settheAdjustGV1sourcetoCH12.

Afewinteractionexamples
Thepowerofthesystemnowcomesfromthecombinationofthedifferentfeatures.Customswitchescan
be usedto createconditions thatwilltriggeraudio playback,forexampleusingcustomswitch"CS1|d|>x
Alt 10" as trigger for "Play Value Alt" would result in the altitude being announced every time it has
changedby 10m/ft. "CS2 a<x Spd35"triggering"PlayTrack lowspd" would play the lowspd.wav fileon
the SD card, thatcouldberecorded tosay"LowSpeed"whenGPSspeedgotunder 35km/h.Ifyouhave
several parameters you want to have announced sequentially on request, you could set several Play
Value Custom Functions all triggeredbythe SHdownmomentaryswitchas shownabove.Apress ofthis
switchwillthentriggerplaybackofalltheparametersoneaftertheother.
But as weknow thatcustomswitchescan beusedanywhereaswitchisdefinable,nothingpreventsyou
fromreusingthat same CS2 to trigger automaticflapsdeploymentoncespeedgotbelow35km/h.That's
right,anythingcanbeusedtoaffectanything.

IntroductiontoOpenTXcompanion
Aswehavebrieflymentioned,OpenTXcomeswithacomputerbasedcounterpartthatrunsonWindows,
MacOSandLinux,
OpenTXcompanion
.
This software will allow you to backup,editand shareyour radio's settings. Itcanalso simulateboth a
model's setup andtheradio'sowninterface onthecomputer,soit'sagreattooltotrythingsevenwithout
a radio.Whenyouhaveone, itcanspeed up new modelsetups significantly thanks tothePC interface
that'snotlimitedtoasmallscreenandafewbuttons.

Basicconcepts
OpenTXcompanionhandles2maintasks:

Managingradiosettingsandmodels
Downloadingnewradiofirmwares,andtransferringthemtotheradio.

Animportantthingtounderstandis howthingsarestoredonthe radio.We willregularlytalkof 2different


typesofmemories,FlashandEEPROM.

Flash is the memory where the radio's firmware or "operating system" resides. "Flashing the
radio" means replacing the firmware,which you wouldusually doeither to upgradetoa newer
versionor to changelanguage.Modelsandsettingsarenotaffected whenflashingthe firmware.
On the Taranis, flashing is done with the radio
OFF
. So turn the radio off, thenplug ittothe
computer'sUSBport.
EEPROM is the separate settings/model memory. Reading itallowsbackingup andediting in
OpenTX companion,writing itsendstheresultoftheeditsbacktotheradio. OntheTaranis,this
is done with the radio
ON
. Turn iton,dismiss any warnings in order to get to the mainviews,
thenplugtheUSBcable.You will see twoUSBdrivesappear,oneistheSDcard,andoneisthe
EEPROMvirtualdrive.

OpenTX companion will thus handle 2 different types of files. Firmware files, that can be downloaded
from the Preferences dialog, which are noneditable andcanjustbe transferred to/fromtheradio, and
EEPROM files for which OpenTX companion provides an editor that allows tochange anything in the
samewaythatwouldbedoneontheradioitself.
Whencreating (File>New)or opening (either by draggingitonto themainwindoworviatheFile>Open
menu command) an EEPROM file, a document window will appear.Severalofthose windows can be
openatthesametime,allowingyouto copymodelsorsettingsbetweenfiles.Tryingtoopenafirmware
file the same way will throw an error saying the file is invalid this doesn'tmean that the firmware is
invalid,butsimplythatitisnotasettingsfile.

44

The documentwindowconsistsina"GeneralSettings" entry onwhichyoucandoubleclickto accessthe


radiosettings, and a number of model slots (60fortheTaranis).Themodelslotthatisdisplayedin
bold
is the one thatiscurrentlyselectedontheradio. ItcanbechoseninOpenTXcompanionbyrightclicking
on the modelslot,and choosing "Use asdefault".Doubleclickingonamodelslotwillopentheeditorfor
thatmodel,creatingoneifitwasempty.
Memoryoperationsto/fromtheradioarehandledbythedifferententriesofthe"Burn"menu:

ReadEEPROMfromTXwillreadtheEEPROM contentsfromtheradio,andopentheminanew
document in OpenTXcompanion.The document isopened for editing, but isnotsaved to disk
automatically.
WriteEEPROMto TXsendsacurrentlyopenand selecteddocument(ifyouhavemorethanone
open,makesuretoclickontheoneyouwanttotransferfirsttoselectit)totheradio.
45

Read EEPROM memorytoFilewillreadtheEEPROMcontentsfromtheradiodirectlyintoafile.


This is the preferred way to backup your radio's settings as it will be saved "as is" without
OpenTXcompanionprocessingit.Clicktheentry,choosealocationandfilename,andsave.
Write EEPROM memory from File willallow you to select a file, and will transfer itas istothe
radio.Thisisthepreferredwaytorestoreabackupasagainnoprocessingisgoingon.
Write Flash memory will flash the radio's firmware from the selected file. Once the file is
selected, youhave the optionto replace thedefaultsplashscreenwithanimageofyourchoice,
orthedefaultimageselectedinthepreferences.
ReadFlashmemorywillbackupthefirmwarethatiscurrentlyontheradiotoafile.

SettingupOpenTXcompanionfortheTaranis
The first thing isofcoursetodownloadandinstalltheappropriateversionofOpenTXcompanionforyour
system from the
OpenTX home page
. Once the program is launched, you will see the main window.
OpenthePreferencesDialogwithFile>Preferences.

Therearequiteafewsettingsthere:

Softwarelanguage
AutomaticupdatecheckatlaunchforbothOpenTXcompanionitselfandtheselectedfirmware
AchoiceofwhethertodisplaythewelcomescreenwhenlaunchingOpenTXcompanion
Simulator options: Whether to remember switch positions between 2 sessions (useful when
closing the simulator to edit something andcomingback), backlight color, andscreenshotsave
location
Splash screen replacement settings: The splash screen is the image that is displayed on the
radio's screen when powering it up. Downloaded firmwares come with the standard OpenTX
logo, but many userslike to customiseit.Soyoucanselect afolder whereyoustoreyourown
splash screens,and select a defaultone eitherfroma fileor from OpenTXcompanion's library
(notethelibrary doesn'thaveTaranissizedonesyet).Splashscreens needtobe212x64pixels
for Taranis, up to 16grayscales.Youwillbe abletoapplyyour splashscreenchoicewhenyou
flashthefirmware.
EEPROMbackupfolder:NotusedforTaranis.
Firmware type, language and options: this is where you will choose which firmware andradio
type you will be using with OpenTXcompanion.It is importantthat these setting always match
the firmware type and options currently on the radio. For Taranis the choice has been
46

intentionally limited so that most of the functionality is available toeveryone by default.A few
"personalchoice"optionsremain:
noheli:RemovestheHeliCCPMmixermenupage.
notemplates:RemovestheTemplatesmenupage.
nogvars:Disablesglobalvariablesupportandtheassociatedmenupage.
ppmus:Displayschannelvaluesinmicrosecondsinsteadof%.
sqt5font:Analternativedisplayfont.
faimode:DisablesalltelemetryexceptforRSSIandvoltage,forcompliancewithcontest
regulations.
faichoice: Adds amenu entry in the radio generalsettings to enable FAI mode.Allows
youtotrainon contestdaywith telemetry,thenturnFAI modeon inthemenubeforethe
contest to disable telemetry. FAI mode can then not be turned off on the radio again
withoutconnectingtoacomputertoavoidcheating.
SD structurepath: For the Taranis and sky9x board, this letsyouchoose afolder onyourhard
drive where you havemade a copyofwhat ison the SD card oftheradio.This allowsOpenTX
companion to populate the modelimage selectorwiththeimagesthat are onthecard,and do
thesameforaudiofiles.
Automatically addversionnumbertofirmwarefiles: Whendownloadinga firmwarefile,itsname
includestheselected options.Ifthisboxis checked, therevisionnumberwill beappendedtothe
filenametomakeitmoreconvenienttomaintainfilesofdifferentversions.
Default Stick mode and channel order: These will be applied when creating a new EEPROM
documentinOpenTXcompanion.
Profiles:Allows storing different settingsetsand easily switchingbetweenthem.Forexample,if
youhave 2 different radioswithdifferentfirmwaresorboardtypesit isnotconvenienttohaveto
redo all settings(firmwareselection,tickingoptions,...) every timeyouwanttodo operationson
the otherradio. So you can configure all settings,chooseanemptyprofilewiththenumberbox,
type a name to identify the particularradio, and click save. Do the samefor the second radio.
You will now be able toselectthecorrectprofile for the radio you areabout toworkonwiththe
profile selector button and menu entry on OpenTX companion's main window. Note that the
profilescanalsostoreand retrieveeachradio'sstickcalibrationandhardwaresettings(voltage
alarms, audio modes,...) from the General Settings page of an open document. This allows
copying a document from oneradioto theother without needingrecalibration or reenteringthe
hardwaresettings.

Joystick:Thisletsyouconfigureajoysticktosimulatethesticksintheradiosimulator.

For a Taranis radio, the first thing you would do is select "OpenTX forFrSkyTaranis"inthefirmware
dropdown.Selectyourfirmwarelanguage,andthevoicelanguage.ThetopDownload buttonwillcompile
anddownload the latest availablefirmwareversion withtheselected languageand options.Thebottom
Downloadbuttonwill openyourwebbrowseronapageshowingyou aselectionofvoicepacksavailable
fortheselectedlanguage.
Set yourflight modeand preferred channelorder in the dropdownsbelow, and dismissthe Preferences
dialogwithOKfornow.

Simulatingtheradio
You can nowcreate a new document.A windowwillappear, with the first line being theradio'sgeneral
settings, and the next being themodel slots. You can havealookinthegeneral settings andcreatea
modelbydoubleclickinginanemptyslot.
Thereare2waystosimulateeitheramodelorthewholeradio.

47

In the model editor, the bottom Simulate buttonwill openthe model simulator with the current
settings. Notethat if a changeis madeinthe model while the simulatoris open,it needsto be
closedandreopened.
At the bottom of the "document" window is a "Simulate Tx" button that will open a similar
simulator, however this time with anextratabshowing the radio's LCD screen and UI buttons.
The virtual radio will have the same data as the document when the simulator is started.Note
thatchangesontheradiointerfacearenotcarriedoverbacktothedocument.

UpdatingthefirmwareofyourTransmitter
As mentionedbefore, the programofyourradiocanbe replaced,either tochangethedisplaylanguage
ortotakeadvantageofnewfunctionsorcorrections.
Youhavetwooptionstoupdatethefirmware

TXOffmethod
Thefirstthingtodoistopoweryourradiooffandconnectittoyourcomputer'sUSBport.
Installingthedriver(forWindowsonly)
This isonlyrequired the first timeyouflashyourradioonagivencomputer.Ifalreadydoneyoucanskip
thissection.

DownloadtheZadigutilityforyouroperatingsystemfromitshomepage:
http://zadig.akeo.ie/
RunitasAdministrator(Rightclickandselecttherelevantentry).
In the big dropdown, you should find an entry named "STM32BOOTLOADER". Select it, and
clickthe"InstallDriver"button.

48

If you donothavethat entry,chooseOptions>ListAllDevices,anditshouldnowappearinthe


list.Selectthatentry,andclickthe"ReplaceDriver"button.

Zadig will install the driver, and should report success. When done you can dismissthemessage and
closeit.

49

Should none of these optionswork,youcandownload thedriver


hereandinstallitmanually(instructions
areonthedownloadpage).
Whenthedriverisproperlyinstalled,youshouldseethisinthedevicemanager:

Installingtheflashingutility(forMacOSandLinux)
Downloadand installthe
dfuutilpackagefor MacOS X,or the
32bit/
64bitpackageforUbuntu12.04
andlater.

50

Downloadingandflashingthefirmware

In OpenTX companion's preferences window, make sure the proper firmware is selected
(OpenTX for FrSky Taranis), and thelanguage / optionsmatch yourpreference, thenclickthe
top Downloadbutton andselectalocationforthefile.Thiswillautomaticallybuildanddownload
thelatestavailableversionofOpenTXforTaranis.
Close the Preferences window, and select the Burn > Write Flash memory command. Make
sureyourradioispoweredoffandconnected.
Browse for the file you just downloaded. It will berecognised automatically and the versionwill
bedisplayed.
If you wish to replacetheradio'ssplash screen,youcaneither loadone from afile orselectit
fromtheavailablelibrary,andclickthe"Substituteimageinfirmware"box.
Click"BurntoTX".
Once the progress bar is done and the success prompt is shown you can dismiss it and
disconnectyourradio:)
If you get anerror aboutthedfuutilexecutablenotbeing found,open theflashingtoolsettings
withtheBurn>Configuremenuitem.Browseforthedfuutilexecutable,whichshouldbe:
On Windows: In the OpenTX companion installation folder (by default C:\Program
Files\companion9x\dfuutil.exe on 32bit systems, and C:\Program Files
(x86)\companion9x\dfuutil.exeon64bitsystems).
OnMacOS:/opt/local/bin/dfuutil.

BootloaderMethodUpdateFirmwareandBootloaderviaSDCard

1.

UsingCompanion,downloadthelatestCompanionversionandOpenTxfirmware.

2.

On your Taranis, hold both the horizontal trims (rudder and aileron) tocenterandturn on the
transmitter.Itshouldstartupinbootloadermode.

3.

Attach your USB cable between your Taranis and your computer. You should now see two
drives,RemovableDiskandTaranis.

4.

Copy the firmware you downloaded to theFIRMWARESfolderonthe"RemovableDisk"drive.


IftheFIRMWARESfolderdoesnotexist,createit.

51

5.

IntheFIRMWARES folder, do notuseafilenameforthefirmwaremorethan8characterslong


asthethefile will notbe accessibleon theTaranisinbootloadermode.If thefilenameisis long
renameittosuit.

6.

Safely disconnect the transmitter from your computer, then remove the USB cable from your
computer.YourTaranisshouldstillbeontheBootloaderscreen.

7.

On the Bootloader screen, select"WriteFirmware". Select the binfile from the FIRMWARES
folder andpresstheENTbutton.Thenewfirmwarewillbeinstalled.Whenitis complete,youwill
bereturnedtotheBootloaderscreen.

8.

On the Bootloader screen, select EXIT and press the ENT button. Your Taranis should now
startupnormally.

9.

Thento update the bootloader, from the normal main screen ontheTaranis,Longpress menu,
then press page togettoSDbrowser.Go totheFIRMWARES folder andpressENT,thengo
to your firmware file and press ENT again.. On the menu which pops up, choose "Flash
Bootloader"andpresstheENTbutton.

10. Press the Exitbutton toget tothemain screenofyourTaranisandlongpressthemenubutton.


Press the Pagebuttontogetto theVERSION screen.Itshould now show the sameversionas
thebinfiledownloadedinstep1.
11. Exitouttothemainscreen,andturnoffyourTaranis.
12. Hold either your rudder trim button or the aileron trim button to the center (it doesn't matter
which), BOTH the aileron trim andtherudder trim tothecenter andturnonyourTaranis.Ifyou
get to the bootloader screen, you have successfully updated both your firmware and the
bootloadertothelatestversions.

TipsusingOpenTX
Usercan'tconnecttotheTransmitterviaUSBusingOpenTXCompanion
Somepeoplemightstruggle toconnect to their transmitterwithOpenTX2.0+especiallyifyouupgraded
fromapreviousversionofOpenTX.
The reason you cant connect to OpenTX companion is because the firmware default USB functionis
JoystickwhenyoupluginatransmitterloadedwithOpenTX2.0+.

To connectto companion youneedtoholdthe twohorizontaltrimleverstowardsthepowerswitch whilst


youswitchon.ThentheBootloaderdisplaywillshowandtheuserwillhavefouroptions:
WriteFirmware
RestoreEEPROM
EXIT
OrpluginaUSBcableformassstorage.

Chose thefourthoption and connect yourtransmitter tothePCwithyour USBcableandtwonewdrives


will appear on your PC one ofthemwillbe named Taranis (DO NOTTOUCHTHIS DRIVE) theother
will, depending on what drives youalready haveon your PC, have adriveletter. You can rename this
drive to whateveryouwant,we suggestit to nameit SDCard.Then fire upOpenTX Companionand
youwillbeabletoreadfromandwritetotheTransmitter.
Whenyouunplugthe USB( bestto doa safeeject) theTX screenwillshowtheBootloader again.Use
the ""buttontoscrolldown toExit and press the ENT button.This will turntheTX tonormalswitchon
mode.
52


Another option is to download OpenTX2.0+ with option (nojoystick) seelcted. This option disablesthe
joystickfunctionality in the firmwarethusthedefaultUSBfunctionismassstorageandassuchyoudon't
needtogointothebootloadertouploadeeprometc.

DifferencesifupdatingwiththeBootloaderorusingdfuuti

Whenyouwrite firmware withtheTXswitched onasexplainedin theprevioussection, you areusingthe


V2> Bootloader. The Bootloader can't update itselfdirectly, butcanupdatedby loading to the SD card
andtheupdateitfromthere.

When you updatethefirmware withtheTX switchedoff ituses the olddfuutiSTM32Bootloader. This


modeallowstoupdatethefirmwareandthelatestV2>Bootloader.

UseoftheEDGEcommandwhichreplacesHshortandHlong
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=28563984&postcount=301
http://www.rcgroups.com/forums/showpost.php?p=28578961&postcount=581

WhatisInputsandthedifferencebetween"[I]Source"andSource"inmixes
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=28958120&postcount=3006

Howtochangethesplashscreen
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=28976443&postcount=3110

UseSubtrimstofixmechanicallinkageissues
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=29129266&postcount=3700

Trims>Subtrims
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=29260142&postcount=11816

InstantTrim

TheMixlinesisessentiallyamathpad
TODOusetextfrom
https://code.google.com/p/opentx/issues/detail?id=193&can=1&start=100
Ialsowantedtoaskifyoucanexpandthefirmwareandmakepossibletousemathtosetupa
source.forexampleonevalueforgvarscanbeusedtotosetuptheflaperons.
GVARFM0=90
GVARFM1=80

53

CH02(+100%)AilSwitch(SB)
R(GVAR1)AilSwitch(SB)
R(GVAR1)AilSwitch(SB)
(+100%)CH09Slow(u2:d2)

CH09(100%GVAR1)MAXSwitch(SB)

(100%GVAR1)MAXSwitch(SB)

Iwillcheckmonitorandservoandreportback(possiblytomorrow).What
aboutallowingimplementationofmathfunctionsassourceinadditionto
stick,switch,gvars?I.ech9(100gvar1)

ThemixerISamathpad:)
100%CH9
GV1%CH9

OpenTXSound
OpenTXSpeakerVoicegeneratorforTaranis
OpenTX Speaker can be used to produce a complete set of spoken sentences for use in one of the
radios with audio capabilities. You can also change the existing sentences andaddyourowncustom
sentences.OpenTXSpeakerisintendedforuseonWindowsVistaandlater.

OpenTXRecorderVoicerecorderforTaranis
OpenTX Recordercanbe used torecordcompletesetsofspoken sentencesforuseinoneof theradios
withaudiocapabilities.OpenTXRecorderisintendedforuseonWindowsVistaandlater

Settingup
RatesandExponential
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=29090046&postcount=3505
http://www.rcgroups.com/forums/showpost.php?p=29169826&postcount=3834

4channelfixedwingaircraft

Flaperons
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=29110658&postcount=3613
http://rcsettings.com/index.php/viewdownload/3fixedwing/49lotsofdifferentwaysimplementingflapero
ns

KnifeEdge(Aileron/Elevator)Mix
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=28635689&postcount=9702

54

SequenceforRetraction/Extension
TODOusetextfrom
http://rcsettings.com/index.php/viewdownload/3fixedwing/47landinggearandgeardoorsequencingu
singopentx

MultiEngines
TODOusetextfrom

ThrottlecutforElectricPoweredAircraft
TODOusetextfrom

ThrottlecutforInternalCombustionengines
TODOusetextfrom

Helicopters
TODOusetextfrom

Gliders
TODOusetextfrom
http://rcsettings.com/index.php/viewcategory/11sailplanes

BuddyBox/trainer
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=29067775&postcount=3404
http://www.rcgroups.com/forums/showpost.php?p=29069336&postcount=3421
http://www.rcgroups.com/forums/showpost.php?p=29069673&postcount=3423

HardwareModifications
TaranisChangefromMode1toMode2(andviceversa)

Taranis SH SF switch swap Pats solderless method (good for RevA and
RevB)
TODOusetextfrom
http://www.rcgroups.com/forums/showpost.php?p=26467096&postcount=279
SHSFswitchswapsolderlessmethod

First thing I did to my Taranistodaywasswap the momentary with the 2wayswitchon the other side.
Didn'tfeellikesolderinginanywires,sohereishowitcanbedone.

1)openradio
2)removethenutsholdingthetwoswitchesinplace.
55

3)removetheswitchesandunplugtheconnectorsfromeach.
4)plugtheswitchesintotheoppositeside.
5)reinstallthem.Keeptheconnectorsfacingleftasbeforetogetthecorrectswitchingdirections.

Nowtokeeptheprogrammingthesame:(Momentaryswitchhassomespecialapplicationsinopentx)

6)Carefully unplug connector from P8 on the RF daughter board (topone ontheright side) pullingon
alternateendsseemstobethebestwaytoremoveit.
7)Swapthetwowiresshown,firstfromtheleftwiththirdfromtheright.
(Use the tip of an xacto, small jewellers screwdriver to hold up the plastic tab while pullingon the wire)
Makesuretheyareinallthewayandtherightwayupwhenyoureinstallthem.
8) plug back intheconnector. Support the free end of the PCBwhile rocking itinendto endasyoudid
whenremovingit.Makesureitisfullyseated.

Done.

Ultimately i will replace the momentary with a SPDT ONOFFMomentary switch, that will probably
requiresomesoldering.

While I haditopenIusedabitofhotmelttofastenthewirestotheswitchestokeepthemawayfromthe
gimbals.Mythrottlewashanginguponthemabit.

56

TaranisUpdatinginternalXJTmodulefirmware

TaranisRemoveclicksonvolumechanges
RevA
http://www.rcgroups.com/forums/showpost.php?p=27458997&postcount=1155
RevB
http://www.rcgroups.com/forums/showpost.php?p=27460752&postcount=1161
and

http://www.rcgroups.com/forums/showpost.php?p=27535319&postcount=1215

TaranisUpdatingSpeaker&EnhanceSoundperformance

TaranisAddHapticMotor
WarningifyoudonthavethehapticmotorinstalleddonotloadOpenTXfirmwarewithhapticenabled

57

Resources
Authors
Kilrah(
AndreBernet
)
ckleanth(
GeorgeConstandinides
)

Translators

Acknowledgementofcontribution
Invarioussectionofthisdocumentmaterialhasbeenindirectlycontributedbythesepeople
ScottPage
Pat
Tomfly
PeoplecontributedwritingmaterialforOpenTXUniversity,
http://opentxu.org

References
1.

2.

58

Vous aimerez peut-être aussi