There are some differences between CRSF and ELRS.
ArduPilot 4.1 supports official CRSF and as long as ELRS behaves the same as CRSF it will work.
Current ELRS stable version is 1.x.
With ELRS 1.x RC works fine with SERIAL_PROTOCOL 23 just beware of the way ELRS handles RC channels since it uses compression to save bandwidth.
Telemetry is another story, right now ELRS 1.x only supports a small subset of all CRSF telemetry frames:
GPS
BATTERY
ATTITUDE
FLIGHT_MODE
OpenTX will be able to discover them and use them as standard sensors.
For this project (passthrough over CRSF) I added custom telemetry frames to the CRSF protocol and shared the specs with TBS who agreed to include it in their firmware. ELRS 1.x does not support this custom extension and my scripts will not work with it!
Now the good news.
Iām collaborating with the ELRS devs to add official ArduPilot support to ELRS 2.x. We agreed on adding dedicated queues for our custom frames which paired with some tuning in the ArduPilot code allowed to have passthrough over ELRS 2.x even on a 50:2 link which is not bad at all considering that the bandwidth is only 125B/s. Itās not perfect, we drop a status text every once in a while and thereās some latency on the artificial horizon but IMO is plain good for a long range setup.
Right now this requires a custom ELRS branch, a custom ArduPilot branch and a custom version of my scripts.
ELRS 2.x will also support device ping frames (not yet in the ELRS 2.x custom branch) allowing ELRS auto detection and auto configuration of the ArduPilot custom ELRS code.
Not sure what I am missing. Running RadiomasterTX16S w/ OpenTX (v2.3.9) with Full TBS Crossfire connected to Nano Rx. Flight Controller is Matek F765 Wing w/ Arduplane v4.1.2.
I know the telemetry is working between the transmitter and receiver, as I can browse the Telemetry screen (on the radio) and I see all the sensors and their data.
However, I donāt see any of the output on the Yapuu screen. Oddly, after about 10 minutes the GPS coordinates show up - but nothing else.
Any ideas?
ELRS support means being able to detect ELRS vs CRSF and tune telemetry for high and low data rates. Just as an example a 100Hz air rate with 1:64 telemetry ratio was wrongly detected as fast telemetry whereas the patched code would detect it as a slow rate.
With ELRS āsupportā 50:2 (50Hz air rate and 1:2 telemetry ratio) is quite ok delivering both status text messages and telemetry.
@yaapu, Iāve just tried setting up the 1.9.6dev version of the script you posted here for EdgeTX 2.5. It doesnāt seem to be working with CRSF Micro TXv2. Iāve only got the one quad on CRSF and it was working before on OpenTX. The radio is getting sensor data as you can see in the photo.
If you think this is a bug or error, let me know what data I can get for you.