Plane V3.6.0 reads Spektrum SRXL input incorrectly

I have been using a genuine 3DR Pixhawk and a Spektrum AR7700 receiver with no problems in my existing aircraft. The receiver is connected to the Pixhawk via its SRXL output.

I have been using Plane V3.5.2 with no problems.

I am now trying to replicate this setup for a second aircraft. In Mission Planner 1.3.38 Under Install Firmware the latest version of Plane is 3.6.0 Tried to find 3.5.2 under the Previous Versions but it was not visible. Next most recent version was 3.5.0

I Installed 3.6.0 but the throttle channel and Flight Mode Channel (5) kept bouncing around in terms of the measured values. I recalibrated Radio twice but pointless when the values keep bouncing around. I plugged a servo in to the Gear Channel (5) and there were no jumps in the output. I don’t think there is a problem with the receiver.

I then tried an identical new receiver and had exactly the same problem. The servo plugged in directly was also fine,.

I then installed Plane version 3.5.0 and it works perfectly, no jumping on Throttle or Flight Mode.

I can only conclude that something to do with reading the Spektrum receiver port changed in version 3.6.0 even though there is no mention of it in the the revision notes.

I hope somebody can help.

I have since installed MP 1.3.39 and more previous versions are visible, including 3.5.2. I have installed this and it works fine. However, if the bug is not fixed I will never be able to upgrade to a future version !!

I did post this Issue on Github a few weeks ago but nobody seems to have noticed :disappointed: so I thought I would try here for some help.

Thanks,
Jeremy

Hi Jeremy,
I don’t have an AR7700 but I do have a DSM-X satellite which should be talking the same protocol. I have just tested it and it is working fine and I know a lot of other people are flying fine with spektrum receivers.
That makes me think there is something specific about the AR7700 or your configuration. Can you tell me:

  • what binding method you used to bind the receiver
  • how many channels the receiver is presenting to the pixhawk
    If we can’t sort this out then is there a chance you could send me a AR7700 to test with?
    Cheers, Tridge

HI Andrew,

Thanks for your reply. Will get back to you shortly.

Cheers,
Jeremy

Hi Tridge,

Turns out I caught quite the bug and was laid up for over a week. Just
getting back on tops of things now.

I have attached the manual for the AR7700. It may help explain some
things. Note that the AR7700 has the ability to use one Remote Receiver
(or satellite) so that user has the ability to separate the two
receivers and have the antennae orientated in different directions to
maximise the RF link quality. This is why I chose this receiver over a
single Remote Receiver. It also has the ability to have Preset Failsafe
positions on all channels, so with a very low throttle fails safe
condition the autopilot can detect this. I don’t believe a single Remote
Receiver on its own can provide this. This is another reason I chose it.

Note: You can also use a Spektrum AR9020 which has two additional Remote
Receivers for even greater installation options on large vehicles, or
those where many metal and carbon components may interfere with
reception. The AR9020 has SRXL output. It also has Preset Failsafe on
all channels. I have used htis on a Pixhawk previously as well.

The AR7700 has several output types which could be used with Pixhawk.

  1. SRXL - This is the one I chose at is recommended as the highest
    performance. I believe it is also an open standard. It just worked out
    of the box with the Pixhawk. Was I just lucky ?

  2. Remote Receiver Output - also known to most of us as a “Satellite”
    but this really pisses the Spektrum guys off !! :slight_smile: This would replicate
    the output you would get from a single satellite and may be what the
    code on the Pixhawk is actually expecting. I believe it is a proprietary
    Spektrum format though a lot of people have worked (successfully) on
    reverse engineering it. Back in April 2016 they published the
    specification for this interface for the first time.

  3. PPM Output - The original stream of PPM values

So, I used SRXL because it had worked for me before with the AR9020 and
it was recommended as the best option for communication with flight
controllers. Hopefully you can continue to support this interface so
users can continue to use the AR9020 as this is the ONLY output option
it has which is directly compatible with the Pixhawk. For a large
multirotor it is the only receiver I would choose due to it having the
two Remote Receivers.

As far as my use of the AR7700 goes I could possibly just change the
connection type to Remote Receiver. However if it were possible to keep
the SRXL compatibility that would be great.

In terms of your questions, as the AR7700 is a “normal” receiver I just
put the bind plug in and bind as normal, as described in the manuals. I
select the Preset Failsafe option so that my throttle failsafe position
is low enough (925us I think) to trigger a loss of RC link failsafe
condition on the Pixhawk.

I am not actually sure how many channels it is presenting as I don’t
know where to check this in Mission Planner, but if I had to guess I
would say 18 as according to its manual it can support up to 18 in the
SRXL and Remote Receiver formats, being only limited by the number of
channels transmitted to it by the transmitter. I am using a DX19
transmitter with 18 channels.

Yes, I have an AR7700 I could send you if necessary.

Finally, note that although I have been powering the AR7700 directly
from the Spektrum Input port (which should not have worked as it is only
3.3V and the AR7700 has a specified minimum of 3.5V !!) I will be
correcting this by taking the approx 5V from the RC Servo In port. I
checked this with Phil Rowse this morning as being appropriate.

Please don’t hesitate to contact me with any further questions when you
get around to looking at this.

Thanks,
Jeremy

Senior Research Engineer
Australian Centre for Field Robotics
University of Sydney
Australia
Mob: 0418 390 446
Ph: 61-2-9351-7468
Fax: 61-2-9036 7474

AR7700 Manual.pdf (234 KB)

Hi Jeremy,
Thanks for all the details, unfortunately it doesn’t offer me a clear way to diagnose the issue you are having.

I think that would be the best option if you don’t mind. Then I can look at it with a logic analyser and get it fixed up as quickly as possible. I presume I will be able to bind it with my OrangeRX DSMX transmitter module for testing.
I could send the receiver back to you after testing if you would like me to.
My address is:
26 Carstensz st
Griffith ACT
2603
phone: 02 6260 6012

Happy to send it to you tomorrow. Yes, I would probably like it back as it is ear marked for an aircraft :slight_smile: Will include pre paid post for the return.

Yes, I presume you will be able to bind it to the Orange Tx but I guess we shall see. The number of channels will be less.

Note that I don’t think there is anything wrong with the output from the receiver. I made NO changes to the Tx or Rx to return things to a working state. Quite simply with v3.6.0 I had the problem and with V3.5.2 I did not. Reloading the different version of software was the only change I made.

Cheers

Hi Tridge,

I now believe Spektrum SRXL protocol is base don the Multiplex one. I also found this archived topic which may be of some help.

http://discuss.ardupilot.org/t/added-jr-xbus-support-for-pixhawk/5548

I am having the same issue, even on the latest versions of plane or copter.
My configuration is:
Controller: pixhawk
TX: DX8 G2
RX: AR8010T

Observed behavior:
If I am at a newer version of the software the elevator jumps from 900 to 1500 randomly. Other channels jump as well but this is one example. This does not occur on the 3.3.3 version of copter or the 3.5.2 version of plane.

1 Like

Massild

An associate of mine had a very similar issue - his equipment was a Pixhawk 2.1 running Plane 3.8.4. He experienced the same kind of random input interpretation.
I was not there to check his wiring, but he mentioned using the RCin port (incorrect) - are you (correctly?) using the SPK (Spektrum “satellite”) port?

I’ll do some testing of my own soon, as I’ve interest in using SRXL as another way to reduce wiring and component count.

I am using the SPK port wired data line to SRXL port on receiver and GND to
receiver ground. I am getting the 5V from the servo bus. Again, this
works perfectly on older firmware. Same exact hardware.

Thank you for looking into this. I know there are not a lot of spektrum
SRXL users yet.

I believe the problem is becuase Spektrum have again made some tweaks to the SRXL protocol they are using in the AR9020T and the AR8010T. I have contacted Tridge and he has asked me to collect some data from the receiver and send it to him, but I don’t have the skills to collect it. Maybe somebody else can help ?