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...
Okay, so I have another question. I have this working and get telemetry on my Taranis fine. I only have GND and Rx connected as I am also running a 3DR telemetry radio and it's fine. However, I found that when I first start up my quad, I get no telemetry at all on my Taranis and get nothing until my 3DR radio connects to my ground station. Once connected, then regardless of the ground station connection, I get telemetry on my Taranis. It would be really nice if the telemetry on the Taranis started up but it looks like that isn't the case. Does anyone know why that would be?
For those using a Pixhawk and Telemetry 2, did you have GND, Tx, and Rx connected or just GND and Rx?
The pixhawk will only start outputing mavlink data once it receives a heartbeat message over mavlink first. In your case, as you don't have the Tx from the teensy connected it is waiting for the heartbeat message from 3DR radio and GCS.
If you connect to Telem2 you will need Tx, Rx and GND for this to work. The teensy will send out data on the Tx to pixhawk to start the mavlink data.
Perfect. That's what I needed to know. I'll give that a try again tonight. It makes sense now why it didn't work the first time.
Thanks again and I'll report back for documentation purposes.
Alright, did it this way and it worked just fine. Thanks!
Placed an order on ebay last wednesday. Any idea on when you're planning to ship, because I have to plan for opening my Hexa to place the Teensy.
Dont worry ,it is on its way! :)
It's only the number of things that I have to take apart on my hexa that worries me :)
Many thanks to Rolf!
For those who may may not know, the "cut trace" operation must be done AFTER programming the Teensy.
May I humbly suggest that this be added to the fifth line of MavLink_FrSkyPort sketch:
"Cut board on the backside to separate Vin from VUSV"…AFTER loading sketch.
Cheers to all!
On which cases?
From what I've read on this thread, that is not a Must do it operation.
It's not, it just prevents powering the board from both USB & Vin at the same time. Mine is cut and to flash the board I just plug an old NiCad directly into the Rx and then plug in USB. I do however unplug the telem connector before powering the board this way because I am unsure as to how I ruined the Mux chip on my APM 2.6 and don't want to risk damaging the PixHawk.
HI Rolf, I am not sure if you still have time to follow this thread and this project, but maybe someone with the necessary programming skills and altruist nature can adjust the existing code to work with openLRS hardware. In the current version openLRSng supports receiving frsky smartport telemetry with a hardware signal inverter (very simple to make) and passing it along to the ground module there with additional hardware inverter (exactly the same as the one in the air) is able to push frsky telemetry to the taranis. now here is what I propose could be done to Rolf's code in order to eliminate the need for the first signal inverter in the air: disable signal inverting on teensy and output regular serial stream. or output a regular serial stream on a different UART port on teensy simultaneously, this will eliminate a need for two different f/w versions.
case MAVLINK_MSG_ID_RC_CHANNELS_RAW: //35
ap_rc_ch3 = mavlink_msg_rc_channels_raw_get_chan3_raw(&msg);
we can query the channels 1 to 8 . This works well.
Do you know how to get the channels 9 to 16?