Frsky bidirectional telemetry implementation

Hi Rudi

I’m seem to recall we have QSOed before, maybe on HF?

Thanks for the feedback on the R9. Those distances are remarkable. You likely have built some nice antennas from your vhf experience. I would love to get a good long distance plane together, but flying beyond VFR around my area would be crazy with all the restricted airspace.

Alex is the LUA wizard, but shout if I can help with anything.

73
de zs6buj

1 Like

Rudi, we added way points into the frsky extended pass-through telemetry (type 10) spec, so they should go all the way back to the FC via the R9. Alex handled the Horus side, so maybe he can comment.

Hi @Rudix and @Eric_Stockenstrom, well there might be hope for some of the features Rudi is asking.
The one feature we miss right now is an easy way to load missions from the FC sdcard provided a file name or something similar, I do know there’s work on this from the scripting side nothing ready yet though.
Provided the above and “standard” wiring where no extra hardware is involved (the FC is connected to a frsky RX) my scripts could use mavlite and send new “custom” COMMAND_LONG commands to the FC requesting SD card mission files, selecting and loading them, depending on the files name length and number of files this could be quite a long process.
The other pretty common wiring thanks to Eric uses a converter in between the FC and the Radio, either on the ground or in the air, provided it is bidir (something Eric and I are still working on) we could send command_long commands to the FC, but we would be limited to using mavlink which to my knowledge lacks SD mission file handling.

hope this clears things a bit

Thanks for this Alex. So, Rudi would have to pre-load alternative mission files on the FC, and load and trigger a selected mission while flying? I imagined reading them off the FC SD reader and pumping them through passthru message type 0x5009 on the fly.

Rudi. since you are using an R9/RM9, you should need no extra hardware, just APM 4.x on the FC.

yeah more or less, the radio would use mavlite for getting a mission files list like ftp, trigger a specific mission file load and eventually get mission feedback from 0x5009

just o[quote=“Rudix, post:210, topic:46513”]
Because it is less easy to implement in Ardupilot I was hoping to do the file reading on the radio via a script, that capability is already there as file handling on the SD is catered for in OpenTX. The code that would need to be written is to then break that file into packets and send it via Mavlink to the FC, like GS software (MP and QGC plus others) is already doing. This would need no change in Ardupilot as it can already accept missions sent via Mavlink.
[/quote]

that is not the case unfortunately, OpenTX has no access to mavlink, the process is rather involved, if you read this thread from the begionning you’ll get abetter picture of what would be required to send mission items from the radio to the FC…

…I just wanted to make clear that lua does not have access to mavlink as well so no way to send anything to the FC, no matter what you do there simply is no way of doing it.
One option would be to extend OpenTX to include native mavlink support like it has bee attempted here, but my approach (the one discussed in this thread) is to tunnel some kind of simple (mavlink like) messages on top of sport telemetry requiring support from both ardupilot and lua

Hi @yaapu and @Eric_Stockenstrom, thank you for your great work.
I’m trying to implement the FrSky bidirectional telemetry forwarding from Taranis to a ground station via UDP.
I successfully receive s.port data (Ardupilot telemetry) from Taranis s.port pin, forward it to ESP32, wrap it to mavlink2 messages there. So I’m able to see telemetry in GS. And now, the next step is to change some Ardupilot parameters and send commands.
The problem is, that even running the ardupilot_luagcs script on Taranis, I can’t see/capture any frame type but 0x10. Why can’t I see the frame types 0x32, 0x30 as described here?

Hi @Constantine

Nice work with the Frsky to Mavlink. Are you perhaps heading towards getting parameters down through Frsky?

To check the telemetry from the Taranis, you could try my Mav2PT with this macro:

#define Debug_Mavlite_SPort

Oh, I recall there is a little catch. I found the Taranis needs to run the regular LUA GUI script briefly before you switch to the gcs script because it needs, I think, frame type.

Yes. By the way my code is heavily based on your Mav2PT. So after implementing the feature a PR may follow :wink:

Got it, thank you!

I’m having an issue getting the yaapu gcs working. I’m using frsky xlite w/2.3.9 with r9m pro lite to a slim+ota, Fport works on my plane with the yaapu telemetry. The external module and rx have the most recent fw, the plane has fw 4.0.9 When I get the gcs working the screen just says loading and the version is something like 15000 or some high number and it get stuck loading.

From what I have read in the wiki I didn’t see a slim+ on rx that have Been tested and confirmEd working

Hi, you need to flash master for bidir to work, stable does not include it, let us know so I can add your receiver to compat list

Okay thank you, I thought I was losing it there for a second. so I’m kinda new to ardupilot, where do I find the master? Is it latest? Or is there one on github?

“master” means the master branch on github.com/ArduPilot/ardupilot
It gets automaticaly compiled by continuous integration scripts (CI) and placed on firmware.ardupilot.org as latest

So yes, master is latest

1 Like

Thank you for the quick responses, I got my plane updated to latest, everything seems to be working correctly. i didn’t have time for a complete shake down. The yaapu gcs load with parameters but no matter what I tried I could not change the parameter or move the cursor or change pages. The abbreviations and the parameters would populate on the right side of the screen, I could only select the first parameter but could not change parameters. it was like the up and down on the joystick wasn’t working. Because I was unable to scroll to any other parameters and I cannot change Pages either.

How do you run the LuaGCS script?
It should work but your setup it untested as far as I know

I have tried running it directly from the tools page and then also I’ve tried running it through the scripts. Has anybody use the xlite with the gcs? It seems like it’s working when I go into the Lua the parameters populate and the one that is highlighted, when I press enter it will upload the parameter it’s just that I can’t scroll around. I have tried using just the joystick and I’ve tried using the joystick with the shift button press down and nothing, i have even tried the d pad.

When i get home, im going to take all the luas off my sd card and start fresh and see if that helps.

I think I know why it’s not working, xlite keyboard events differ from Taranis ones, give me some time to roll out a fix

Hi, I fixed xlite support, please redownload version 1.0.2 (latest)

1 Like