ardupilot icon indicating copy to clipboard operation
ardupilot copied to clipboard

Add and use AP_RCPROTOCOL_ENABLED

Open peterbarker opened this issue 2 years ago • 4 comments

More specific define for this functionality.

This should allow us to trim out RC protocol parsing (by default) on Pixhawk1-1M in the future - since it has an IOMCU we can use whatever it is decoding. It isn't an insignificant amount of flash (~11kB). It may also let us parse different protocols on the IOMCU.

peterbarker avatar Jun 30 '22 05:06 peterbarker

More specific define for this functionality.

This should allow us to trim out RC protocol parsing (by default) on Pixhawk1-1M in the future - since it has an IOMCU we can use whatever it is decoding. It isn't an insignificant amount of flash (~11kB). It may also let us parse different protocols on the IOMCU.

peterbarker avatar Jul 14 '22 03:07 peterbarker

I've tested this on a Pixhawk1-1M - freshly compiled IO firmware with just SBUS enabled worked. I also compiled RC Protocol out on the Pixhawk itself, so it was just taking from the IO firmware.

I also flashed this onto my Plane running A Spektrum-ish receiver running S.BUS to the flight controller, pulses input - I only compiled in S.BUS-non-inverted on that and it worked just fine.

I haven't tested this on a bytes-input receiver, but the code paths look pretty much the same as pulses input vis-a-vis disabled backends.

peterbarker avatar Jul 17 '22 10:07 peterbarker

please check:

  • linux boards are not affected, add a linux board such as Disco to test_sizes
  • check IOMCU build is not affected

tridge avatar Jul 18 '22 23:07 tridge

@andyp1per can you test this and confirm the VTX changes are ok?

tridge avatar Jul 18 '22 23:07 tridge

Board               AP_Periph  blimp  bootloader  copter  heli  iofirmware  plane  rover  sub
Durandal                       *      *           *       *                 *      *      *
HerePro             -21268                                                                
Hitec-Airspeed      *                                                                     
KakuteH7-bdshot                *      *           *       *                 *      *      *
MatekF405                      *      *           *       *                 *      *      *
Pixhawk1-1M-bdshot             *                  *       *                 *      *      *
f103-QiotekPeriph   *                                                                     
f303-Universal      *                                                                     
iomcu                                                           *                         
revo-mini                      *      *           *       *                 *      *      *
skyviper-v2450                                    -4808                                   

peterbarker avatar May 05 '23 02:05 peterbarker

I've run this through the test-build-options scripts and it all seems to work.

peterbarker avatar May 05 '23 02:05 peterbarker

I've done the size-check thing on all boards.

The only boards which change are SkyViper and the heavy peripherals. The heavy peripherals lose all of the RCTelemetry code and videotx code. I don't think will be missed.

peterbarker avatar May 11 '23 04:05 peterbarker