Commit Graph

57 Commits

Author SHA1 Message Date
Peter Barker b8a80817e4 AP_RCProtocol: add support for DroneCAN RCInput packets 2023-08-19 20:27:24 +10:00
Peter Barker d4dbf82c33 AP_RCProtocol: let compiler elide unused method
... rather than removing it based on target.

I need this symbol for other targets
2023-05-26 14:26:27 +10:00
Peter Barker d59c9cc633 AP_RCProtocol: add separate define for AP_RCPROTOCOL_SUMD_ENABLED 2023-05-17 18:27:19 +10:00
Peter Barker c9b39c6d32 AP_RCProtocol: add separate define for AP_RCPROTOCOL_IBUS_ENABLED 2023-05-17 18:27:19 +10:00
Peter Barker 1b040fa0c3 AP_RCProtocol: add separate define for AP_RCPROTOCOL_PPMSUM_ENABLED 2023-05-17 18:27:19 +10:00
Peter Barker 1225d4c88f AP_RCProtocol: add separate define for AP_RCPROTOCOL_ST24_ENABLED 2023-05-17 18:27:19 +10:00
Peter Barker 2c00813aab AP_RCProtocol: add and use AP_RCPROTOCOL_ENABLED 2023-05-16 09:16:37 +10:00
Peter Barker 18e55b9d6e AP_RCProtocol: add and use AP_RCPROTOCOL_SBUS_ENABLED 2023-05-02 10:19:50 +10:00
Peter Barker 6535bfa546 AP_RCProtocol: add and use AP_RCPROTOCOL_CRSF_ENABLED 2023-04-27 18:31:30 +10:00
Peter Barker b3b46f7be6 AP_RCProtocol: add add use AP_RCPROTOCOL_SRXL2_ENABLED 2023-04-26 22:54:33 +10:00
Peter Barker 8db14c2bbf AP_RCProtocol: tidy enablement RC FastSBUS support
use the the hwdef to turn it off on IOMCU
2023-03-21 12:08:06 +11:00
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