RCIN freezes, Emergency Stop Ignored

I had a very strange issue today, where RCIN froze. After taking off, the copter became completely unresponsive. I had configured an emergency stop and even that would not work. I left the emergency stop switch on and just followed the copter, which was luckily moving slowly in its frozen state. Eventually, after about a minute, the emergency stop was apparently processed (confirmed in logs) and the copter dropped. At no point did my transmitter detect loss of signal (it has a loud audible warning and visual indicator on screen, TX16S). Vibes were below 3 m/s**2

I chalk it up to either a bad receiver (Radiomaster R86C, S.BUS connection) or damaged flight controller (Pixhawk 4 Mini). I am leaning towards bad receiver because this never happened with my prior cheap turnigy receiver, and noticed on 2 or 3 occasions that upon powering my drone my transmitter would not detect the R86C receiver even when standing nearby. I had to reset the power to the drone to get a connection. Once connected, the signal strength was strong according to the transmitter display. Is it even possible for receivers to freeze RCIN? …

I know, no log. I want to fish for ideas/experiences before releasing log due to potential PII. And raise the alarm that even my emergency stop button was ignored…

I dont have one of these, but I’m not very impressed looking at the user manual, since the failsafe action is output fixed channels, and there needs to be a frequency matching process carried out.
So I suspect your receiver thinks it has entered failsafe and continues outputting channel values from when it was bound.
If it was doing SBUS as per the specs there is a bit of data says the receiver is in failsafe mode (no more frames received) regardless of the RC channel values, and Ardupilot picks up on that.

Assuming the receiver does end up being the issue, I would get a receiver that can be set to “no pulses” for failsafe action.

2 Likes

I think you may have just solved the mystery, thank you. RTFM :slightly_smiling_face:

edit: although… I really thought I bound the RX with 0 throttle…

I did the frequency fine tuning (evidently required for D16-type receivers?) and I forgot to mention that my TX16S was set to “no pulses” which contributed to my confusion.

I thought the R86C would be great, since the TX16S is (same company). Shame.

There was no late frame or radio failsafe message in the logs, that I could find.

edit: Given that the RX records failsafe values at bind and no indication of radio failure was recorded in logs, I still find this a bit of a mystery, but both of these things are possible if the receiver has gone haywire (e.g. RX spontaneously re-bound and missing S.BUS info to FC).

edit: I am going to get a cube orange + and herelink radio set to replace these… maybe.

The R161’s were OK. Think Frsky went after them and they were discontinued. Otherwise I use Frsky Rx’s on models not on CRSF. Great Transmitters though.

1 Like

Looking for a replacement receiver:

  1. Go with a FrSky, probably the cheapest and easiest way to get flying again. I don’t want to see another failure like this though.
  2. Get a new FC and RX, for example orange cube + / herelink. Long range, presumably more reliable, but expensive and will take some time to integrate
  3. Ideally I want to use this dual-band RX, as it seems the least likely to fail, but can it work with TX16S? FrSky TD R10 2.4G 900M Dual Band Tandem Receiver w/ Antennas
  4. CRSF? not familiar with it but seems reliable.

Priorities: I don’t need telemetry, just a reliable radio… long range a plus

edit: also are receivers using SBUS known to be associated with such issues?

got the flysky ia6b. short range of 500m, but its all i need. next step up may be frsky x8r (pro) (1.5km range). next step after that, some elrs receiver (would also need to buy external RF for my tx16s).

If I were to start over I would go with ELRS. Now I have a mix of CRSF, Frsky R9 and 1 remaining Frsky 2.4Ghz Rx.
I suppose that TD R10 would work if you had an R9 Tx module and a MPM module internal. I have that configuration.

1 Like

The R161 was an awesome little unit. I wish I had picked up more of them. But I also made the jump to CRSF. If I was buying today I think I’d have a hard time deciding between ELRS and CRSF. I like where ELRS is going as an environment, and I see it making some big gains. But I like with CRSF that it’s solid and when I buy an RX I know exactly what it is and how it’s going to work.

2 Likes

Yes, there is that. And after putting the time into it to make it all work I’m happy to keep taking advantage of it!

1 Like

Alrighty then, I’ll dig into making ELRS work. Do you think it could be more or just as reliable as the dual band? I want the most “reliable”, as these both have ridiculous long range, more than I’ll need.

An ELRS for dummies guide for Tx16s would be appreciated if anyone has one on hand.

I wonder if ardupilot disregards the receiver failsafe info in the sbus if rcin throttle is high.

the consensus seems to be that this was entirely the receiver’s fault, which is practically a black box as far as i can tell, because RCIN was frozen but the copter was operating normally according to RCIN.

But is it likely due to this fact:

Is it possible that the r86c simply did not include a failsafe flag or that ardupilot didnt parse it for some reason?

just a note since it may be confusing to others: crsf and elrs are not mutually exclusive, because crsf specifically refers to a bus protocol used by crossfire and created by the crossfire company (tbs i think). in fact all the elrs receivers i find use crsf as bus protocol (that can be plugged into uart serial port on pixhawk). at least, that is my current understanding. not even chatgpt knows anything about crsf.

bought parts for elrs:

  1. radiomaster micro elrs module (fits on the first version of tx16s which i have, the tx16s mk2 released in mid-2022 can be bought with elrs included)
  2. mateksys elrs receiver (bus protocol crsf, connect to serial / uart ports on pixhawk)

I am able to get started with elrs at just 60$ for these extra parts. i already have tx16s which cost me 300$ but if i didnt have one I could buy a mk2 with elrs installed for 250$ or for the “zorro” version 200$. awesome. my conclusion is that elrs is the most reliable control link out there, as demonstrated by its ridiculous range. as far as i understand, the mechanism by which interference is mitigated is “frequency hopping” (probably among other things). Other manufacturers have similar but they are $$$ and closed-source, e.g. can they really keep up? basically nothing blows elrs out of the water afaik

Installation is manual, and you need to build the firmware for your set to ensure the firmware versions match (as elrs devs move fast) but it should be a breeze. there are youtube videos showing you how to do it over wifi. such modern. wow.

and it seems my mishap with the r86c is due to interference. other guys in the flying club have experienced loss of control over the same spot that i did. there are facilities nearby with equipment that could feasibly produce 2.4 ghz interference. hopefully this wont affect elrs control links thanks to frequency hopping (and perhaps other features?). so the only thing to knock the r86c is its default failsafe behavior (hold).

upgraded tx16s from opentx to edgetx.

got elrs working and was able to arm aircraft.

what was i even doing with traditional radios? elrs is clearly the way to go.

easy peasy (lemon squeezy). documentation is very good. the elrs documentation had solutions for all issues i encountered.

1 Like

just wait until you use airport mode!!! I have had one wired up on the bench the last cpl days and I am impressed. Such a great mavlink telemetry in a tiny package!!

2 Likes