Peter Barker
6fb3e27b8d
AP_RCProtocol: remove superfluous linefeed from panic strings
...
panic adds this within the HAL layer.
2024-12-14 10:06:13 +11:00
Eric Katzfey
3501bb7fc3
AP_RCProtocol: Remove extraneous zero initializers to clean up Qurt compiler warnings
2024-12-12 16:41:24 +00:00
Eric Katzfey
e4ba4cc885
AP_RCProtocol: Fixed an explicit initializer to get rid of Qurt compiler warning
2024-11-19 14:14:23 +11:00
Eric Katzfey
7a6a62846d
AP_RCProtocol: Remove unused array. This array was causing a Qurt compiler warning.
2024-11-19 09:01:43 +11:00
Thomas Watson
2f1a8d1ef4
AP_RCProtocol: optimize DroneCAN subscription process
...
* remove unnecessary nullptr check, these are always called from an
initialized AP_DroneCAN so if it's nullptr something has gone
horrifically wrong
* pass in driver index instead of repeatedly calling function to get it
* simplify error handling; knowing exactly which allocation failed is not
super helpful and one failing likely means subsequent ones will too,
as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Eric Katzfey
b4df082618
AP_RCProtocol: get rid of compiler warning from clang about unknown warning group -Wswitch-unreachable
2024-10-26 21:05:33 +11:00
Peter Barker
87fa7a208d
AP_RCProtocol: re-order initialiser lines so -Werror=reorder will work
2024-09-24 22:50:28 +10:00
Andy Piper
ef1be6fe01
AP_RCProtocol: only update rc value for GHST on rc frames
2024-09-13 18:52:05 +10:00
Peter Barker
c55a5abcd9
AP_RCProtocol: remove redundant check for crsf telem on iomcu
...
the hwdef for the iomcu already removes crsf
2024-06-26 18:13:01 +10:00
Andrew Tridgell
51d5f85b83
AP_RCProtocol: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andy Piper
9112b14414
AP_RCProtocol: add frame ids for CRSF baro/vario
2024-05-22 17:15:04 +10:00
Peter Barker
f9c5c02f91
AP_RCProtocol: move handling of AP_Radio RC input down into AP_RCProtocol
2024-05-01 17:51:49 +10:00
Andrew Tridgell
4933ef3f2d
AP_RCProtocol: fixed underflow wrap in GHST
2024-04-07 15:23:47 +10:00
Andrew Tridgell
5a2f711d85
AP_RCProtocol: added random data test
...
this triggers the CRSF crash bug that was just fixed
2024-04-07 15:23:47 +10:00
Andrew Tridgell
427384eb11
AP_RCProtocol: fixed crc memory range error in CRSF
...
this fixes a crash bug that caused a watchdog for Henry on a
F765-Wing. The bug happens with corrupt serial data causing an
underflow in the length argument to the crc call
2024-04-07 15:23:47 +10:00
rmaia
ea91d6e171
AP_RCProtocol: add extended RC link stats OSD fields
...
Adds RSSI dBm, SNR, LQ, Tx power and active antenna OSD fields
2024-04-02 10:30:24 +11:00
Peter Barker
964c30e053
AP_RCProtocol: add support for RC input from SITL FDM data
2024-03-25 22:35:04 +11:00
Peter Barker
1357b4ac33
AP_RCProtocol: add and use AP_RCProtocol_UDP
2024-03-25 22:35:04 +11:00
Andy Piper
2f246b7638
AP_RCProtocol: add CRSF binding API
2024-03-12 10:16:08 +11:00
Peter Barker
8ed1b02301
AP_RCProtocol: move support for SFML joysticks down into AP_RCProtocol
2024-03-12 08:48:35 +11:00
olliw42
fba1e68ef4
AP_RCProtocol: add support for MAVLink receiver, handle RADIO_RC_CHANNELS message
2024-03-09 10:47:39 +11:00
Peter Barker
dc7626887f
AP_RCProtocol: do not detect async protocols if not enabled
...
Co-authored-by: olliw42 <waldmanns@gmx.de>
2024-03-07 13:58:31 +11:00
Peter Barker
26d4e0d285
AP_RCProtocol: correct assignment of new_input in rcprotocol detecion
...
caused RCP protocol detection to break for everything other than DroneCAN
2024-02-23 11:23:13 +11:00
Peter Barker
b19f8ed57f
AP_RCProtocol: CRSF: use subtraction with times, not time+timedelta
2024-02-22 20:46:40 +11:00
Andy Piper
b071d76565
AP_RCProtocol: decode high duty-cycle CRSF frames using frame markers rather than timeouts
...
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-02-22 20:46:40 +11:00
Andy Piper
aa9ea03c7c
AP_RCProtocol: add tests for CRSF and fix protocol test
...
fixed RCProtocolTest on SITL and make it pass/fail with an exit code
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-02-22 20:46:40 +11:00
Andy Piper
a5b28cf3e3
AP_RCProtocol: squash compile warning
2024-02-22 14:40:55 +11:00
Peter Barker
3ab5f8139c
AP_RCProtocol: remove unused enumeration
2024-02-21 18:35:30 +11:00
Peter Barker
d37d70e787
AP_RCProtocol: factor out a poll_protocol method
2024-02-21 18:19:23 +11:00
Andy Piper
d7ae8b8bb3
AP_RCProtocol: correctly process bytes from standalone UART
2024-02-19 22:46:58 +11:00
Peter Barker
3b9c9497aa
AP_RCProtocol: correct CSRF->CRSF
...
Co-authored-by: Andy Piper <github@andypiper.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2024-02-19 21:38:39 +11:00
Peter Barker
aaad98e898
AP_RCProtocol: correct compilation when crossfire not compiled in
2024-02-13 09:36:05 +11:00
Peter Barker
ae19d032ce
AP_RCProtocol: use constructor from parent class in ibus
2024-02-07 19:07:58 +11:00
Peter Barker
8cc662163b
AP_RCProtocol: add separate define for AP_RCPROTOCOL_DSM_ENABLED
2024-02-06 11:09:12 +11:00
Andy Piper
d5ba0b6302
AP_RCProtocol: discriminate GHST and CRSF based on first byte
...
do not change to GHST baudrate unless it has been specifically configured
2024-02-06 09:55:56 +11:00
Andy Piper
407b8a6003
AP_RCProtocol: add is_detected() so that telemetry implementations can defer actions
2024-01-17 18:31:15 +11:00
Peter Barker
61c4e4750a
AP_RCProtocol: tidy disabling of GHST on iomcu
2024-01-16 09:46:57 +11:00
Andy Piper
0df36a8d81
AP_RCProtocol: bootstrap Ghost to correct baudrate
2024-01-10 18:32:53 +11:00
Andy Piper
19c6b0b8ae
AP_RCProtocol: IRC Ghost protocol
2024-01-10 18:32:53 +11:00
Andrew Tridgell
f96810bb22
AP_RCProtocol: fixed example build
2024-01-03 12:14:47 +11:00
Andrew Tridgell
b3fbc7edb0
AP_RCProtocol: use SocketAPM_native
2024-01-03 12:14:47 +11:00
Peter Barker
4ede307be2
AP_RCProtocol: rename crc_sum8 to crc_sum8_with_carry
...
the name "sum8" is usually used for "sum all bytes into a uint8_t discarding carry"
2023-11-29 18:50:26 +11:00
Andrew Tridgell
c858b7201d
AP_RCProtocol: prevent decoding past end of output array
...
this fixes test_sbus on clang
2023-10-13 09:42:25 +11:00
Andrew Tridgell
a2717a84bf
AP_RCProtocol: added a test suite for SBUS encode/decode
...
cover all values and check special handling of 875
2023-10-13 09:42:25 +11:00
Andrew Tridgell
ca4f26db17
AP_RCProtocol: make sbus_decode public to allow for a test suite
2023-10-13 09:42:25 +11:00
Andrew Tridgell
120a8c1b1d
AP_RCProtocol: protect against invalid data in SBUS
2023-10-13 09:42:25 +11:00
Peter Barker
c1110d4b43
AP_RCProtocol: disable raw logging if no RC_Channel
...
We're asking the singleton here for information on whether we should do raw logging. We may not actually be compiling the RC_Channel library in.
2023-10-03 11:46:43 +11:00
Andrew Tridgell
24139d661a
AP_RCProtocol: allow for fport without FRSky telem
2023-08-19 20:27:24 +10:00
Peter Barker
b8a80817e4
AP_RCProtocol: add support for DroneCAN RCInput packets
2023-08-19 20:27:24 +10:00
Andy Piper
15047ddfc7
AP_RCProtocol: rescan at CRSFv3 baud rates to avoid RX loss on soft reboot
2023-07-19 16:32:36 +09:00