Commit Graph

46 Commits

Author SHA1 Message Date
Peter Barker 9d099fbcd5 AP_RCProtocol: add option to not include SRXL in build 2023-03-15 22:45:23 +11:00
Andy Piper 425f2b946e AP_RCProtocol: check for 3 good frames for CRSF
Move get_link_rate() and get_protocol_string() to CRSF protocol
allow ELRS at 420kbaud to be configured
allow CRSF to bootstrap at ELRS desired baudrate
2022-12-22 18:38:31 +00:00
Peter Barker 64193542ed AP_RCProtocol: allow FRSky to be compiled out 2022-11-15 18:44:45 +11:00
Andy Piper c815f04e97 AP_RCProtocol: add has_uart() 2022-10-18 11:20:25 +11:00
Andrew Tridgell 5df38d0298 AP_RCProtocol: added using_uart() method 2022-03-28 17:09:26 +11:00
Andrew Tridgell 522173328c AP_RCProtocol: added failsafe_active() API 2022-03-22 10:30:35 +11:00
Peter Barker 409147a291 AP_RCProtocol: add support for DJI Fast SBUS
It's just SBUS... but with increased opportunities for corruption
2021-11-18 17:19:04 +11:00
Peter Barker 411ed0f50e AP_RCProtocol: use data structure for serial configurations 2021-11-16 22:06:24 +11:00
Peter Barker 5e18f98b8e AP_RCProtocol: number all of the RC Protocols supported
Needed this as soon as we got the RC_PROTOCOL bitmask
2021-11-12 09:00:45 +11:00
Peter Barker 63f87a863c AP_RCProtocol: use switch statement for 3-frame check
Forces new protocol implementer to consider whether a 3-frame check is
required
2021-11-09 09:06:45 +11:00
Andrew Tridgell 67fd862a8c AP_RCProtocol: check for RC protocol switching enable
by default don't allow protocol switching after initial protocol is
found
2021-10-15 19:29:23 -04:00
Hwurzburg c5f53fc0b6 AP_RCProtocol: add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Patrick José Pereira 8f96580e9d AP_RCProtocol: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Andy Piper e6d0e38129 AP_RCProtocol: allow handshake to initiate RC connection. Support listen-only SRXL2 devices.
only bootstrap when SRXL2 is the only configured protocol (RC_PROTOCOLS=256)
remove spurious 0 initializers
2020-12-16 18:06:49 +11:00
Andrew Tridgell a8770a5a82 AP_RCProtocol: added FPort2 protocol support 2020-10-28 09:00:34 +11:00
Andrew Tridgell 2779b26e6e AP_RCProtocol: fixed the "3 good frames" test
require 3 consecutive good frames, not 3 frames total, to declare the
weak protocols as detected
2020-08-24 16:32:35 +10:00
Andrew Tridgell e0ec46f06d AP_RCProtocol: support a mask of enabled RC protocols 2020-08-24 16:32:35 +10:00
Andy Piper 4e88adf86e AP_RCProtocol: TBS CRSF implementation
refactor rc channels decoding into backend
refactor SBUS to use decode_11bit_channels()
only support big-endian
don't include CRSF in iomcu
2020-07-07 18:48:06 +10:00
Andy Piper 68c6a3b03d AP_RCProtocol: SRXL2 support 2020-05-05 09:23:15 +10:00
Andrew Tridgell 8e67c3459a AP_RCProtocol: added multi-channel read() API
and use pulse_input_enable() to disable pulse input when not needed
2020-01-31 11:09:07 +11:00
Andrew Tridgell fd5ff97b59 AP_RCProtocol: support FPort telemetry data
get SPort data from AP_FrSky_Telem
2020-01-02 09:52:57 +11:00
Andrew Tridgell a72eaabc96 AP_RCProtocol: support FPort RSSI 2020-01-02 09:52:57 +11:00
Andrew Tridgell 9332c08c46 AP_RCProtocol: added FPort protocol support 2020-01-02 09:52:57 +11:00
Mirko Denecke fe46dc34d4 AP_RCProtocol: remove duplicated definition from protocol_detected 2019-10-31 08:24:30 +11:00
Andrew Tridgell c8de2ec9c7 AP_RCProtocol: added update() method for use by SITL 2019-09-06 08:51:45 +10:00
Andrew Tridgell 2b856abdd1 AP_RCProtocol: support an additional uart on RC input
this will allow for any UART to be configured as an additional RC
input source
2019-09-06 08:51:45 +10:00
PraiseSatan bad5fb418d AP_RCProtocol: added ibus RX support to recieve channel data from ibus transmitters. 2019-07-07 20:49:18 +10:00
Andrew Tridgell 0f4c54aaa6 AP_RCProtocol: fixed a overflow in SRXL decoder
thanks to coverity 343308 and Peter for noticing
2019-07-06 08:53:44 +10:00
Tom Pittenger a597c2972c AP_RCprotocol: unify singleton naming to _singleton and get_singleton() 2019-02-10 19:09:58 -07:00
Andrew Tridgell a8e6a09903 AP_RCProtocol: expose protocol name mapping 2018-11-07 07:35:45 +11:00
Andrew Tridgell eb78d4fa26 AP_RCProtocol: added destructor
for use by test suite
2018-11-07 07:35:45 +11:00
Andrew Tridgell faf8f73437 AP_RCProtocol: added process_pulse_list()
this provides more efficient processing of RC pulses
2018-11-07 07:35:45 +11:00
Andrew Tridgell e1385573b1 AP_RCProtocol: return protocol name string 2018-11-07 07:35:45 +11:00
Andrew Tridgell d87bef16a2 AP_RCProtocol: require 3 good frames for weak CRC protocols 2018-11-07 07:35:45 +11:00
Andrew Tridgell 68c9f52b3e AP_RCProtocol: allow selection of protocols for pulse input 2018-11-07 07:35:45 +11:00
Andrew Tridgell baf0be6a56 AP_RCProtocol: added check on baudrate in process_byte()
and support process_byte() in SBUS input
2018-11-07 07:35:45 +11:00
Andrew Tridgell c767828f11 AP_RCProtocol: prevent mixing of byte and pulse input 2018-11-07 07:35:45 +11:00
Andrew Tridgell 56d0d6b9be AP_RCProtocol: make singleton
used by iomcu
2018-11-07 07:35:45 +11:00
Andrew Tridgell 1dcac14b1e AP_RCProtocol: cleanup code style
using Tools/CodeStyle/ardupilot-astyle.sh
2018-07-20 15:47:18 +10:00
Siddharth Purohit baff7291ce AP_RCProtocol: add support for srxl and st24 protocol 2018-07-20 15:47:18 +10:00
Siddharth Purohit f99bd32b51 RC_Protocol: add detection of sumd protocol over sigread 2018-07-20 15:47:18 +10:00
Alexander Malishev 47451be875 AP_RCProtocol: add support for non-inverted s-bus 2018-05-25 12:05:50 +10:00
Patrick José Pereira c755d341f4 AP_RCProtocol: Remove unused variable
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-05-11 10:47:11 +10:00
Andrew Tridgell bccea9c8b9 AP_RCProtocol: support DSM bind 2018-04-10 17:22:21 +10:00
Andrew Tridgell f87668c15c AP_RCProtocol: lock onto a single protocol to reduce CPU cost 2018-01-20 17:40:07 +11:00
bugobliterator bad9f2b4c9 AP_RCProtocol: add library to process RC signals 2018-01-20 17:40:07 +11:00