Combined RC and Telemetry on a single link (TXMod v2, RFD 900x, TX16S, GCS, Matek H743)

Hello all,

I just wanted to post this thread as I had an interesting time getting this to work and if it can help someone else, then the purpose has been served. Thanks to @Allister and @Yasiinm for helping me with the key pieces of info that helped me get through setting my system up.

My goal was to have both RC and telemetry combined into a single long-range radio link that could be used with the Yaapu telemetry script and supply MAVlink information to a GCS as well.

The high-level steps to get everything working are:

  1. Ensure you are using the correct versions for the software and or firmware, especially on the RFD TXMod and RFD900x. If you have to update them, the TXMod gets updated through its Web interface, the modem through an FTDI cable. These are covered and described in the product documentation
  2. Connect your FC and RFD900x per the connection diagram below
  3. Install your TXModV2 module on the back of your Radio (TX16S in my case) and set the External RF Settings as in the screenshot below
  4. Connect your FC to your PC via USB cable, so you can verify RC link is working
  5. Connect mission planner to your FC using the correct COM port
  6. Under Setup -> Radio Calibration, make sure you can see stick and switches input, etc
  7. Disconnect mission planner from the FC, disconnect USB cable
  8. Change your Wifi settings to connect to the TXMod Wifi, the SSID will look something like TXMOD-XX-XX-XX. Select UDP, then specify the port that TXMod is sending mavlink on, which is 14550 by default. Note: If you have trouble connecting from your ground station, you may need to create a firewall rule on windows to allow UDP connections on this port. I had to do this, using windows firewall & network protection, advanced settings, create an inbound rule. I followed this Youtube video: https://www.youtube.com/watch?v=aHxXXaoBj9k
  9. Connect Mission planner again, but this time select UDP as the connection, it will ask you to confirm the port number, again 14550. It should read all parameters
  10. If everything is working right, you should now have a single link for RC control, Mavlink Telemetry to your GCS and Yaapu Script on your Tx screen. Follow the link to the Yaapu telemetry script in Github for more information and how to install and set it up.

Necessary start sequence

Note: Use this start sequence to get everything working reliably; (Thanks @Allister! ) otherwise, you may get Yaapu script errors, mostly incorrect flight modes, incorrect battery voltage, etc.) You can read more at that thread

  1. Power up the airplane
  2. Power up the TX16S(TXModV2)
  3. Connect the laptop to the wifi (if it isn’t auto connected already)
  4. Open up Mission Planner.

The hardware I’m using:

Tx Radio: RadioMaster TX16S
Telemetry Radio: TXMod v2.0 with RFD900x bundle
Flight Controller: Matek H743 Wing
GCS: Windows 10 Pro running Mission Planner

Software/firmware versions:

RadioMaster TX16S: OpenTx version 2.3.10-otx, 2020-10-06
TXMod v2.0: Software Version: 1.4.6 - Build date: Nov 30 2020 10:57:11; Internal modem version: RFD SiK 3.16 on RFD900X
Remote modem version: RFD SiK 3.20 on RFD900X (These versions for RFD modems are critical, was having trouble with 3.15 getting RC control to work properly)
FC: Arduplane 4.1 dev version (Was testing FPort telemetry, but latest stable should work)
GCS: Windows 10 Pro
Mission Planner: Version 1.3.74
Yaapu Telemetry Widget 1.8.1

Ardupilot Configuration:
Serial7 (Maps to UART6)
SERIAL7_PROTOCOL = 4 (Frsky SPort)
SERIAL7_BAUD = 57
SERIAL7_OPTIONS = 0
Serial6 (Maps to UART4)
SERIAL6_PROTOCOL = 2 (MAVLink2)
SERIAL6_BAUD = 57
SERIAL6_OPTIONS = 0

TX16S External RF settings

Hardware Connections

RFD Modem Settings

8 Likes

This is fantastic! Great job @jimenezlee! I wish this was here when I started using these radios.

As a side note, I’m using Arduplane 4.06 on a Cube Orange and everything here still applies.

And don’t forget to check your failsafes…

3 Likes

This clearly belongs in the wiki

3 Likes

Hi Jorge and Alister,call me MRr Stupid,im trying to set this up and getting connection but it never finishes the param upload,im using the cube orange,ive got the serial wire connected to telem 1 and the ppm out connected to the s bus in,the sbus works good,sodo i leave that as is,and I change serial 1 to 4 sport,many thanks for your great work gentlemen

Telem1 should be SERIAL2. Make sure you have the baud rate correct. What ever serial port you use should also be set to Mavlink.

3 Likes

@Allister I am using RFD900X, TX16S, and Orange Cube ADS-B Carrier Board. I had connected RFD900X air side(Pin 1,3,5,7,9,11) to ADS-B carrier board’s TELEM1. I can read telemetry data on Mission Planner, however, I am not able to arm and I cannot see any value of Pitch, Roll, Yaw & Throttle in Setup > Radio Calibration. I try to look around and till now unable to find the solution. Kindly advise, Is there any more wire need to connect between RFD900X and ADS-B carrier board. Thanks

I’m assuming you are using the TXMODV2. If so, you need to set up the rc output stream on pin 15 of the air side (vehicle) radio.

Page 16&17 in the manual.

https://files.rfdesign.com.au/Files/documents/TXMOD%20User%20Manual%20v1.4.pdf#page17

3 Likes

@Allister Thank you very much. After set up according to page 16&17, It is working now :pray:

1 Like

Hi All,

I’m in trouble setting-up my system… I have a Radiomaster TX16s + TXMOD v2 on the GS and a Pixhawk4-mini on an AR Wing PRO plane.

I have updated all the software and firmware to the latest version… that is TXMOD v1.4.6, RFD Sik 3.38 on both RFD868X/RFD868UX, openTX v2.3.14 on tx16s, MissionPlanner 1.3.75, OpenTX Companion 2.3.14 and RFD900 Tools v2.57.

So far, I can successfully use the TX16s to arm/disarm the AR-Wing, control the servos and change fly-modes. Mission Planner is also working and showing the correct ARM/DISARM status, battery status, GPS position etc etc…

What I do not understand is how S.PORT is supposed to work on TXMOD… as far I can see, even if S.PORT is reported as “Enabled” in TXMOD System Status, the TX16s is configured for using PPM (in my case from CH1 to CH8) in TX16s setting “External RF section”… and I do not see where S.PORT is used…

In the Telemetry page of TX16s I have “FrSky S.PORT selected”… but when I start discovering new sensors I see only 2 sensors… RSSI and GPS… nothing else… and if I’m not wrong, they should be more for Yaapu telemetry to work…

Do I have to change RFD868 settings and in particular S18 and S19 ? do I need a special cable to connect the RFD868UX and the PixHawk4-mini ?

Am I missing something else ?

thanks for any hints…

      Giampaolo




I configured SBUS on both transmitter to RFD868x communication and on RFD868x to ArduCopter communication

But of course I still need to connect a telem port from ArduCopter to the RFD868X on the vehicle.

Works great. No jitter.

In Companion, S.PORT is on the telemetry tab of your model, but I’ve not had to change it myself.
I didnt have to discover sensors either - just load the yaapu telemetry scripts as per instructions and Job Done ™
On the aircraft the RFD radio needs to be connected to a serial port with SERIALx_PROTOCOL,2 for Mavlink2 (and of course the RC or SBUS input)

Hi Lucas and Shawn… thanks for the support.

Yesterday I finally found something regarding S.BUS on the following RFD documentation:

As far I understand, I have to set S18 and S19… I hope I will not have to review the official wiring cable that comes with RFD… I’ll test this in the late evening…

 Giampaolo

Hi all,

it’s working now… not 100% sure about what I have done though…

Below is how I’ve set my RFD868 radios:

LOCAL RADIO REMOTE RADIO
S16=1 GPI1.1 RC-IN S16=0 GPI1.1 RC-IN
S17=0 GPI1.1 RC-OUT S17=0 GPI1.1 RC-OUT
S18=0 GPI1.1 S.BUS-IN S18=1 GPI1.1 S.BUS-IN
S19=1 GPI1.1 S.BUS-OUT S19=1 GPI1.1 S.BUS-OUT

Local radio on TXMOD is getting PPM from the TX16s and sending over the air to the remote radio, which is converting this into an S.BUS output for the Pixhawk4

On the opposite, Pixhawk telemetry is getting into the plane radio via S.BUS (S18=1) and passed to the TX16s/yaapu script via S19=1

My doubt are regarding PPM on TX16s… is this necessary ? can’t we just rely on S.BUS ?

    Best Regards,

          Giampaolo

On the TX16S you can set SBUS for the output to the TXMOD
And you only need SBUS-OUT (or RC-OUT) on the air radio, and SBUS-IN (or RC-IN) on the TX-MOD side. Dont set all of them at once.
They use the same wire from the RFD radio to the RC-input of the flight controller, so there’s no physical changes.

If you want to be sure of what’s being used you can set
RC_PROTOCOLS,8 for SBUS only, or
RC_PROTOCOLS,2 for PPM only, or
RC_PROTOCOLS,1 to accept everything (the default)

Hi Shawn,

so… if I understand it correctly, if I change the TX16s external protocol from PPM to S.BUS I should change the RFD registers this way…

LOCAL RADIO REMOTE RADIO
S16=0 GPI1.1 RC-IN S16=0 GPI1.1 RC-IN
S17=0 GPI1.1 RC-OUT S17=0 GPI1.1 RC-OUT
S18=1 GPI1.1 S.BUS-IN S18=1 GPI1.1 S.BUS-IN
S19=1 GPI1.1 S.BUS-OUT S19=1 GPI1.1 S.BUS-OUT

Regarding SBUS and PPM using the same wire… is this still true for TXMOD v2 ?
If I’m not wrong starting from v3.09 S.BUS is now using GPIO 1.3 and not GPIO 1.1 (used for PPM).

It’s all new to me so please be patient :grinning: :grinning: :grinning:

thanks again for your support,

     Giampaolo

Why do you insist on making this complicated? it is as simple as:

LOCAL RADIO REMOTE RADIO
S16=0 GPI1.1 RC-IN S16=0 GPI1.1 RC-IN
S17=0 GPI1.1 RC-OUT S17=0 GPI1.1 RC-OUT
S18=1 GPI1.1 S.BUS-IN S18=0 GPI1.1 S.BUS-IN
S19=0 GPI1.1 S.BUS-OUT S19=1 GPI1.1 S.BUS-OUT

Hi Lucas,

thanks… I’ll try it…

The confusion for me comes from the fact that I tought that an S.BUS-IN was mandatory on the remote radio for the telemetry to work…

I’ll check it tomorrow…

      Best Regards

              Giampaolo

Interested to know how you get on. I have a TX16S and couldn’t get SBUS in working correctly on the local radio. Had to stick to PPM in the end.

You do need to select SBUS inside the OpenTx menus as well.

I did set it to SBUS in opentx model setup.