-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
CRSF handling on the transmitter side #3378
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Upgrade to latest version of webserver/asynctcp # Conflicts: # src/lib/WIFI/devWIFI.cpp # src/targets/common.ini
… as well # Conflicts: # src/src/rx-serial/SerialHoTT_TLM.cpp # Conflicts: # src/src/rx_main.cpp
|
Looks really great!!! Why restrict the device ID to FC (0xc8) and some others. Since ELRS V4 can route extended messages to all possible device IDs, one should also be able to connect to those via CRSF-Tester. |
|
Would it also be possible to use EdgeTx USB-passthru? |
Because I couldn't be bothered with a text/combo box for my initial go at testing. This will likely evolve.
No, because theres only one UART connected from the internal module to the radio. |
# Conflicts: # src/src/rx-serial/SerialHoTT_TLM.cpp
CapnBry
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I missed a couple apparently, and sorry for complaining about the mavlink switch-- turns out that issue was in master as well when using the USB port.
CapnBry
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tested the TcpMspConnector with Betaflight 4.5.2 and the desktop configurator, and Rotorflight 2.2.1 configurator. Seems to work as well as it did before, which is mostly unusable. RF is the most stable but often disconnects and is slow to load tabs. BF will often disconnect but then their whole side is hung-- you can't even connect over USB any more.
Telemetry is still being routed where it needs to go, pings go all over, device_info comes back. So it seems routing is working as well as before. USB doesn't flip into mavlink mode when sending it CRSF data. CRSF-Tester over USB can ping and load the lua parameters, but not change one, nor can I send channels over USB, but that's not what this PR is about.
A lot of work here, thanks for improving all this!
# Conflicts: # src/src/tx_main.cpp
mha1
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Device pings works as expected, detects RF FC (4.5.1/2.21)
TCP connection to RF FC (4.5.1/2.21) works but as usual slow and disconnects sometimes
Telemetry including external telemetry via HoTT works
CRSF Tester connected to TX via USB works (Windows: connected USB after module is powered and RX connected)
TCPSocketimplementation to aCRSFConnector, this also makes the TCP connection much more reliable in my testing.CRSFParser; now completely removing the oldtelemetry.cpp/hfiles.tx_main.cpploop()to theHandleUARTIn()function and introduces aTXUSBConnectorfor mirroring incoming broadcast CRSF messages to the USB. See image below of the CRSF-TesterCRSFRouterto allow the delivery of messages to a connector with a known device attached.This removes the need to know about the specific connectors themselves.
Using the CRSF-Tester, you can connect a USB cable to the TX module, like the Ranger, Nomad etc, while it's connected to a radio. Select "USB Device" and connect.


After that you can see the telemetry information on the tester app from the FC. You can also query the parameters and make changes from both the TX module and the RX.