I’m trying to set up telemetry on our quad and I’ve run into a problem that I cannot find any references to, so I thought I’d shoot it past the collected wisdom of the forum.
The hardware in question: Pixhawk 4, R-XSR receiver, Taranis X9D Plus 2019 (OpenTX, latest).
In order to get the receiver bound to the TX, had to I flash both with the latest firmware. Now Channels 1-4 are responding normally (ACCST D16 mode).
So far I have wired the S.Port of the R-XSR to the TX of the TELEM1 port on the Pixhawk. I have tried setting the parameter SERIAL1_PROTOCOL to both 4 (FrSky Sbus) and 10 (FrSky SPort Passthrough), and neither is working so far.
Thanks for the suggestion, Shawn, The FC is a Pixhawk 4, which (from what I have read) contains an FMUv5 processor which automatically detects inputs to UARTs.
However, I did notice that I had only flashed the RF firmware on the Taranis, and not OpenTX. (That was to get the ACCST D16 mode on both the R-XSR and the Taranis, which now seems to be working.) So I just flashed the latest OpenTX to the Taranis, and now instead of [—] under telemetry, I see (default). Which seems like an improvement, but unfortunately I’m still not discovering any sensors or seeing any RSSI info.
Should I try enabling ACCESS mode? Offhand I can’t recall exactly why I thought I needed to switch to ACCST mode, but I think it had something to do with not seeing D16 mode under the radio setup for this model.
Yeah I saw it was a Pixhawk 4 after I wrote that question
You might need to experiment with these options, available for all serial ports but serial 4 linked here as an example. It’s a bitmask value, so combine the bits you need set and convert to a decimal value and plug that in.
SERIAL4_OPTIONS https://ardupilot.org/copter/docs/parameters.html#serial4-options-serial4-options
For a CUAV V5 Nano I had to use a (real/physical) pull down resistor (2k ohms) between TX and 0v and these settings:
SERIAL4_PROTOCOL,10
SERIAL4_OPTIONS,7
I didn’t have the pull up and pull down options available on this FC. Some of the OPTIONS settings are only available depending on the capabilities of your FC.
Yikes…I wasn’t expecting any uart hardware hacking to be necessary, but…
I’m a little confused…you said you used a 2K pulldown between TX and gnd. However bit 7 is a pullup. But not having pullup/down options on your FC seems like you wired it for bit 6 (TX_pulldown) being set without actually setting the parameter that way, and it worked! Before I go pulling on the TX port one way or another, could you please clarify?
So if I do go with a pullup on the TX of, say TELEM1 (SERIAL1) I would set SERIAL1_OPTIONS to 64…correct?
Ahhh, I just checked and the Pixhawk 4 (PX4) does NOT have SERIALN_OPTIONS. So I guess I’ll just try a pulldown and see if that helps. My FC has the same processor as the Nano (although the IO processor might be different- I couldn’t find that data for the Nano).
SERIALx_OPTION,7 would be:
bit0 InvertRX (value 1)
bit1 InvertTX (value 2)
bit2 HalfDuplex (value 4)
= 1+2+4
and the bit0 setting might be not needed since we only use the TX line anyway. So in theory SERIALx_OPTION,6 could work just as well for me. I’ll test this to be sure.
The pull-down resistor I’m using is in the wiring between the FC and the receiver, so not much hacking involved at all.
If you dont have any of the SERAILx_OPTIONS then you’ll definitely need one of the external RS232/TTL converters.