Rc transmitter and receiver setup

From PaparazziUAV
Jump to: navigation, search


Once you have your receiver connected, the next task of making the Transmitter(TX) and receiver(RX) work in harmony is the next challenge.


Seting up the transmitter icw the receiver go hand in hand with configuring a "radio.xml" configuration document. The Radio_Control page describes how to set up the "radio.xml" configuration document. Following the instruction to the letter is essential to have it all working as it should. The setting in this file a direcly related to the settings in your physical RC transmitter.

Recommended transmitters

As long as it works well and reliable, consider the transmitter you have as recommened. On this page are just a few to get you started.

Spektrum DX-7

  • 7 Channels
  • 20-Model memory
  • Airplane and Heli software
  • Switch assignment
  • P-mixes
  • 3-axis dual rate & expo
  • 3-position flap (Airplane)
  • 5-point throttle curve (Heli)
  • 3 flight modes plus hold (Heli)
  • Gyro programming (Heli)

Transmitter setup


Regular transmitter have two joystics.

Flight MODE switch

A important requirement is a three way flight mode switch to choose between the flight modes MANUAL, AUTO1 and AUTO2.

Cheap entry level radios often don't have this. As a workaround two two-position switches can be used.

The switch designated to RADIO_MODE will switch between MANUAL and AUTO And a second switch designated to RADIO_AUTO_MODE one will select between the different AUTO MODES if the first switch is set to AUTO.

File: conf/airframes/myplane.xml
  <firmware name="fixedwing or rotorcraft">
     <define name="RADIO_MODE" value="RADIO_AUX2"/>
     <define name="RADIO_AUTO_MODE" value="RADIO_AUX1"/>

Note that more modes are possible if self define in configuration. feel free to enhance this Wikipage to describe that kind of extended configuration.

KILL switch

With the event of the electrical engine driven fast spinning props of a quadrotor and the like the need arose to be able quickly switch them of in case of mishap. In other words to "kill" the engine throttle signal. Here the word "Kill switch" was introduced.

Spektrum and compatibles

Spektrum 2.4Ghz Satellite Receiver - Lisa/L implementation

Connection View
Remote Receiver [SPM9545]
  • Specifications
  • Lisa/L Radio_Control_Spektrum_Primary_Port = Uart 3
  • Lisa/L Radio_Control_Spektrum_Secondary_Port = Uart 5
  • arch files:~/paparazzi/sw/airborne/arch/stm32/subsystems/radio_control/spektrum-arch.h and .c
  • Additional hardware -

Molex CONN HOUSING 5POS 1.25MM - 51021-0500,

Molex CONN HOUSING 8POS 1.25MM - 51021-0800,

Molex Socket to free end crimped lead,300mm L,



  • Transmitter options - Spektrum DX6, DX7(see above), DX8, bind compatible JR units up to 12 channels and those bearing the Specktrum DM9 module - note these transmitters must be channel order compatible with Spektrum's protocol (in fact all transmitters that use Spektrum protocol have the same channel ordering regardless which stays consistent across different modes (ie throttle on left / right etc))) - here is an example


  1. Cut off original receiver connector and crimp molex connector terminals to the three wires.
  2. Insert terminals into appropriate positions-CON_USART3-of the 5 way connector - black to pos1 = GND, orange to pos3 = +3v3, grey to pos5 = STM_USART3_RX.

Bind plug

  1. Take the 8 way molex connecter and create a loop between pos1 = GND and pos4 = XXX_STM_SPARE_2. This plug is placed in the-CON_SPARE-receptacle housing before power-up to enable the receiver binding state.


  • Set the spektrum radio parameters for Lisa/M or Lisa/L ap in ~/paparazzi/conf/airframes.xml file. Check 'esden' directory as a possible rotorcraft example. Refer to ~/paparazzi/sw/airborne/arch/stm32/subsystems/radio_control/spektrum-arch.h and .c for other options. Be sure to set actuators, rotor configuration/mixes and channel reversal parameters that are appropriate for the rotorcraft/aircraft (note "lisa_l_1.0" can also be "lisa_m_1.5" or "lisa_m_2.0"):

File: conf/airframes/myplane.xml
  <firmware name="rotorcraft">
     <target name="ap" board="lisa_l_1.0">
  <!--     <define name="BOOZ_START_DELAY" value="1"/> -->
       <subsystem name="radio_control" type="spektrum"/>
       <subsystem name="actuators"     type="mkk"/>
       <subsystem name="telemetry"     type="transparent"/>
       <define name="RADIO_MODE" value="RADIO_AUX1"/>
       <define name="RADIO_KILL_SWITCH" value="RADIO_GEAR"/>
     <target name="stm_passthrough" board="lisa_l_1.0">
       <subsystem name="radio_control" type="spektrum"/>
       <subsystem name="imu" type="b2_v1.2"/>
  • Create a new transmitter 'airplane' model. Do not introduce any mixes or change the endpoints, subtrims etc. Note that a radio.xml file is not required for this implementation, unlike analogue RC directed autopilots.
  • Upload ap software in the usual way.
  • Unplug the aircraft battery. Turn transmitter off. Insert the bind plug (see above) in the 8 way CON_SPARE receptacle. Power up the aircraft - specktrum receiver LED should be flashing in readiness to bind. Press and hold bind button on transmitter while turning on. Receiver LED should stop flashing after a few moments to confirm it is bound. Turn everything off in preparation to start in the normal way. Note that the transmitter should now be turned on first to enable the spektrum receiver to acknowledge it.
  • Should be ready to fly.
  • Adding a second spektrum satellite receiver requires different wiring dependent on the Lisa board version. As the pinouts to uart5 differ between Lisa-L v1.0 and v1.1. Seek advice from the paparazzi mailing list prior to making this addition.

To enable the use of the secondary satellite receiver you have to add two lines to your firmware section in the airframe file:

File: conf/airframes/myplane.xml
 <firmware name="rotorcraft">
   <define name="OVERRIDE_UART5_IRQ_HANDLER"/>

The option of having a secondary receiver is available since Paparazzi v3.9.2. Make sure you have a up to date Paparazzi version

Transmitter hardware modufications

Adding a 3 position switch

Futaba T6EXAP

For this particular transmitter, the Potentiometer on channel 6 can be replaced with a 3 position switch. Channel 5 appears not to be connected to an ADC converter; therefore it will not support a 3 position switch.

  1. Disconnect the potentiometer being careful not to shorten the wires
  2. Solder the switch and resistors onto the wires using the wiring diagram as a reference. (Any two equal value resistors should work). I used 10k resistors.

Suitable 3 position switches:

RS Components: 344-710 Mouser: 633-M202402-RO


What is Binding

Binding is the process of training the transmitter and receiver to communicate with each other. Each radio and receiver have a unique code, called a GUID (Global Unique Identification Code) Code. This is your radio system's thumbprint that prevents it from interfering with other radio systems or being interfered with by other radio systems.

How Often Is Binding Necessary?

Anytime you purchase a new receiver it will need to be bound to your radio. Bind process must be done via the autopilot board. Also if you are transferring a receiver to another aircraft and entering that model into a new model location you will need to re-bind it due to ModelMatch.

What is ModelMatch

ModelMatch is an exclusive Spektrum feature that prevents the radio system from operating if the incorrect model profile is selected from the model select screen. Each model location is given a secondary code on top of the GUID coding that mates that receiver to that specific memory location. If that code is not it not recognize the transmitter, remaining in failsafe mode.

What Is a receiver Failsafe mode?

A failsafe is a safety feature designed into Spektrum receivers that drives the servo or ESC positions to a preset location in the event that signal is lost. Typically you should set the failsafe so that if there is a loss of signal, full brakes are applied. This will help prevent runaways and possible damage or harm to those around you.

Not to confuse with Autopilot failsafe settings in your airframe setting