Hi all,

I just bought an FrSky Taranis for my quad copter and needed to get the Mavlink data up on the Taranis LCD telemetry display. So here is my solution using a Teensy3.1 as a converter between MavLink and the S.Port on FrSky X8R.

See attached file below...

Views: 311258


Reply to This

Replies to This Discussion

Yes! Got mine working. I did some small change on the source code to compute/detect the number of cell from 2S to 6S. I tested it on 3S and 4S. My voltage is a little off with my meter but it is fault of the APM. Just need to calibrate it on the APM settings. 

Thanks again for sharing this.


I noticed you and Rolf have a single connection from what looks like #3 on the x8r receiver to an input in the apm.  I have never found any info on making that work.  I am using individual wires for each input to apm.  Did I see that right, how are you doing it?

Thank you


Yes direct connection won't work as APM does not understand SBUS protocol. You need to use SBUS to CPPM convertion.

Actually I have one on the pictures. It just on the other side.

You can buy it from here: http://www.alofthobbies.com/frsky-sbus-converter.html, just around $13.

Here's the picture of the other side which shows the connection. It is connected to PIN 1 of APM and also APM PIN 2 and 3 need to be jump.

Rolf might be just using single cable to power the receiver for testing.


I see,  Thanks

Think I'll stick with my 4 sets of wires for now.

Wouldn't it be nice if Frsky would incorporate what you did to a new receiver model.

Yes, thats right... I was just using a sigle cable to power the reciver when testing. 

Francis, nice to see that it was working for you also. Its' very simple to implement

the FrSky S.Port with the Teenesy because of its hardware capabilities for serial communication 

and TX/TX invert & single wire mode.

Yes it's possible

From the  MavLink heartbeat message getting the custom mode flags like this:

ap_modeflags = mavlink_msg_heartbeat_get_custom_mode(&msg);

then ap_modeflag will bee one of these values that you can send to FrSky:

STABILIZE = 0,  ACRO = 1,  ALT_HOLD = 2,  AUTO = 3,  GUIDED = 4,  LOITER = 5,

RTL = 6, CIRCLE = 7,  POSITION = 8,  LAND = 9,  OF_LOITER = 10, DRIFT = 11, SPORT = 12


You can then at the Taranis setup voice files that tells you the flight mode you have selected :-)



As the APM only reports the total LiPo voltage ( not for each cell ) the program is just dividing the total voltage with number of cells to get the cell voltage. This means that to use batterys with different number of cells you must hardcode this into the program because FrSky use only the cell voltage. A way to solve this could bee to let the program guess the number of cells, 3 cells = voltage between 7,8V - 12,6V. 4 cells = voltage between 12,6V - 16,8V ......

@ Ralph, sorry I've just realized that you were talking precisely about smart port on the x8r and I have only D4R-II is the telemetry port on D4R-II the same as s.port + Tx pin? 

I think it's only the X-series (X8R and X6R) who has the new S.Port telemetry.... and the  program is only working with them...

@Francis, hey, I noticed that you are using kyosho gel as antivibe mount for APM, I did use it too and it was working beautifully @2.9 however on 3.1 it is simply not necessary,  Robert Lefebvre recommended me to try out just a simple double sided foam tape. miracle, my IMU log shows vibrations of 1-2 on the out the box unbalanced gemfans.  with kyosho same props 3-5. and since than the copter feels more responsive to the controls. 

Thanks for the tip. Really appreciate the information. I haven't finish my build yet. Will defintely try to remove it and test. I had a rough crash so I'm rebuilding my frame. 

Here's my build log:


Reply to Discussion


© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service