CRSFShot – new Crossfire protocol

TBS recently released their latest update to the CRSF protocol, called CRSFShot. But what’s behind it?

In its essence it’s a fix for a problem that so far only exists with radios that are running OpenTX. The communication between the radio and the Crossfire module is not in sync. With CRSFShot it’s going to improve the variable latency to near zero. I’m going to use a simple analogy to explain the problem:

Imagine that OpenTX is talking to the Crossfire module from time to time… and the CRSF module is listening from time to time…
there could be misunderstandings (variable latency)…
now with CRSFShot the TX Module tells OpenTX when it’s all ears and OpenTX starts to talk shortly after (almost 0 latency) = synced communication 🙂

CRSFShot is basically a nice name for a module sync (that’s how OpenTX devs would call it)
further info / related github pull: https://github.com/opentx/opentx/pull/7050

If you want to try CRSFShot for yourself you’re going to have to update your TX module to Crossfire version 3.25 (as of 02.02.2020) and update your OpenTX radio with a special TBS nightly build of the OpenTX 2.4 beta

Nightly Firmware: https://www.team-blacksheep.com/tbs-opentx-nightly.zip
Nightly SD card contents: https://downloads.open-tx.org/2.3/nightlies/sdcard/

Make sure you have “include beta firmware” checked in your TBS Agent X:

The beta OpenTX will show you a warning message which is nothing to worry about though:

Especially BetaFlight and its “Feed Forward” feature benefits from this fix. The now excellent RC link consistency enables higher feedforward with less downsides (jittery roughness).
BF blackbox log showing the improvement of RC steps after the fix / CRSFShot (c) @bizmar:

OpenTX settings

It’s important to disable ADC filtering in OpenTX to use the full advantage. ADC filters stick information to reduce jitter, it’s disabled by default in radios that ship with hall gimbals. And shouldn’t be disabled if gimbals are too beat up.. so it’s best to look at how fast the values change with it enabled, then disable it to see by how much it changes. (@bizmar)

Link to the Team Blacksheep helpdesk article:
http://team-blacksheep.freshdesk.com/support/solutions/articles/4000153333

Additional info / full story

What originally caused the “development” of this was actually a bug or let’s say a problem that was found in connection with BetaFlight 4.1
(BF devs already resolved it with the release of 4.1.2)

– fixed problem with errorneously dropped frames in CRSF (#9190);

The whole thing was a so to say “team effort” (@ctzsnooze):

“There are improvements in betaflight, the TBS communication code, and the provision of external module support for TBS in OpenTx. Betaflight devs identified the problems and  did a lot of advising and testing. Each change plays a part in the final outcome. Most of the packet data content stability improvement comes from the new OpenTx code, but it requires a corresponding change in the module to be useful. If it wasn’t for TBS supporting and encouraging the early release of that code, it would likely still be a year off.”

Q: I’m running KISS / FETTEC, once we update OpenTX and Crossfire is there anything else to do in the KISS GUI or radio to activate CRSFshot?
A: Nope, it’s only for communication between your TX and the CF module.


TBS Couch live-stream excerpt about CRSFShot

One comment

Leave a Reply

Your email address will not be published. Required fields are marked *