4.1beta7 Crossfire support

Telemetry is limited when passthrough is enabled (RC_OPTIONS 256), but should not be when passthrough is disabled.

Well, I probably misunderstood something…I though that RC_OPTIONS=+256 was to enable CRSF custom telemetry. Could you please explain what do you mean by enabling throughput and disabling passthrough ? To be honest I’m a bit lost in this yapuu configuration, despite having read the thread multiple times.

Sorry, brain fart - passthrough in both cases. So yes you are right

Isn’t it the contrary ?

Telemetry is not limited when passthrough is enabled (RC_OPTIONS 256), but should *** be when passthrough is disabled.

The RX has fixed available bandwidth depending on mode, that bandwidth has to be shared between all of the telemetry needing to be sent to the TX. When passthrough is enabled we prioritize the passthrough frame (its a single jumbo frame containing a bunch of data decodable by the yaapu widget) at the expense of regular telemetry (so what the TX would usually see). When passthrough is disabled there are no jumbo frames and so we can send the maximum amount of regular telemetry.

1 Like

Thanks a lot, it’s more clear to me now. Will do more tests to check what is going wrong in my config.

I there Alex. I too have a Matek H743 and I am running ArduPlane V4.1.0dev (acfdf6a3). I am using crossfire on serial_7 with SERIAL_7_PROTOCOL=23 and RC_OPTIONS=256. On my TX16S transmitter, I’m running the “horus_crsf_190b_0.7” Yappu files and ensured that CRSF is turned on in the Yaapu config. I can see my GPS coordinates appear on the lower portion of widget, yet Yappu says “no telemetry data” and “NO GPS”. I can see telemetry values coming into EdgeTX (or OpenTX) such as Ptch and Roll in my telemetry page, yet the widget doesn’t show the pitch and roll. I must be missing a critical step or perhaps this doesn’t work yet. Have you had any luck? I would love to compare notes and appreciate any feedback from anyone. Perhaps I misread something in this blog but is there a tutorial on getting Yaapu working with CRSF? I started my journey from this post now dated back to 2020 https://discuss.ardupilot.org/t/passthrough-telemetry-over-crsf-crossfire/62668!crsf-module-setup (Small)|375x500 telem-sensors (Small) yaapu-config (Small) yaapu-main (Small)

I think you might need to update the widget

Andy thank you so kindly for the reply. Do you know where I can download it? I was under the impression given the web link I provided that I needed to use a specially compiled version of the widget for CRSF support. The newest widget does not have an option in the Yaapu settings to turn CRSF on or off. I thought the official new release was for Frsky receivers only. Any thoughts? Thanks again

@yaapu can confirm but I am pretty sure he has a single widget for all RX types

Hi, I do not use Yapuu Telemetry anymore. Don’t know if it’s due to it but my TX16s bricked few time after installing it (I wasn’t able to start my TX16s anymore despite flashing stock firmware in DFU mode). You can find latest beta Yapuu software for TX16s here (this is the one I used): https://github.com/yaapu/FrskyTelemetryScript/releases Just choose the right release for TX16s: the Horus one
Or you can download official release here: https://github.com/yaapu/FrskyTelemetryScripthttps://github.com/yaapu/FrskyTelemetryScript

Yes, single widget for all RX types!

Would be scary if a lua widget had the power to corrupt a radio flash, never heard of such an issue, I’m sure it would have been reported prompltly!

My best bet is the SDcard was defective and by writing anthing to it (like my widget for instance) you triggered something, anyway I’m sorry :frowning:

Yes, you are very surely right but as it never happened before, I made the connection with the script. It was also even more surprising that I can’t make my TX16s back to life by flashing stock firmware (also tested with different firm). The only way I found to resurrect it was to let it 48h without batteries (+ powering without batteries to be sure every capacitors flush). So now I’m a little bit reticent to relive that :wink:

Thank you so much for the clarification Yaapu! So “single widget” any recent (the most) recent version should work with crossfire correct? That said I shouldn’t be looking for an option to turn CRSF on or off correct? Do you have any ideas why I might be seeing “NO TELEM” in the widget despite telemetry showing on the TX16S telem page? Any idea why roll, pitch, yaw do not move when I physically move the flight controller? Is this a bug or am I doing something wrong? Thank you so so much!

Andy thanks so much for the reply!

Same widget but you need to enable crsf from the config menu. Long press SYS->Tools->Yaapu Config -> CRSF support

Hmm. I’m confused because I have already done this. “enable CRSF” is set to “yes”. I’ve tried only setting the first two outputs of my crossfire diversity receiver to CRSF_TX and CRSF_RX, no other outputs used. I can clearly see telemetry showing up in the telemetry page of OpenTX (or EdgeTX, I tried both). All of this but the Yaapu widget still says “no telemetry data” and the gauge that shows my FC orientation doesnt show Ptch, Roll, and Yaw. Whats wierd is that it does show my GPS coordinates so why then does it say “no telemetry data”? Did I miss a step maybe? Is the Yaapu widget certainly working with other crossfire users via the TS16X? I’m so confused since I get the sense I’m doing something really dumb. Thanks again

Here’s a screenshot of the main Yaapu widget with the NO TELEM error yet GPS coords at the lower right.!

no_telem_error

Hi, if you have regular CRSF telemetry working the only missing option is to enable custom telemetry for crossfire by setting RC_OPTIONS = current value + 256.
You see no GPS because you’re not getting the fix type, fix type is from custom telemetry, coordinates from standard telemetry.

Thank you so much for spending the time to review this. I figured it all out. You have made me realize that this was all user error. I noticed that another user on this blog made the same mistakes. As you said RC_OPTIONS = current value + 256. I thought I did that. Instead what I was doing was heading to the “options” under the serial settings section… I was incorrectly setting SERIAL7_OPTIONS to its current value + 256 not “RC_OPTIONS”. Then there was a second problem, I had my crossfire connected to a UART which certainly works for Crossfire RC control and allows telemetry, however it would not work with the Yaapu widget. That is because the UART port does not have Direct Memory Access. For my flight controller (the Matek H743). I could only get the Yaapu widget to successfully work moving and connecting my CRSF_TX and CRSF_RX wires to SERIAL1 (UART port TX7 & TX7) or connecting them to SERIAL2 (UART port TX1 & TX2). By default, the Matek flight controller documentation suggests using UART 6 (as they label it “RC input receiver”). The only UARTs that should be used for RC control and successful use of the Yaapu widget, for this board is UART 1 or UART 2. By the way, for any users out there who may be wondering… there is no need to set any extra outputs of your Crossfire receiver to use Mavlink.

2 Likes