Andy Piper
9b8ea8475d
AP_RCProtocol: reset UART on RX failure for CRSF
...
update CRSF timestamps to use microseconds
implement RX liveness protocol and implement for CRSF
3 years ago
Andy Piper
fe29324828
AP_RCProtocol: check for bad frames in CRSF decoding.
3 years ago
Andy Piper
89ea5dc12c
AP_RCProtocol: flush CRSF telemety writes
3 years ago
Andrew Tridgell
5df38d0298
AP_RCProtocol: added using_uart() method
3 years ago
Andrew Tridgell
522173328c
AP_RCProtocol: added failsafe_active() API
3 years ago
Andrew Tridgell
7716754c61
Revert "AP_RCProtocol: change default SBUS frame gap to 4ms"
...
This reverts commit af9e96c619
.
revert as this causes a problem on some receivers such as the Frsky R9
fixes #19899
3 years ago
Andrew Tridgell
af9e96c619
AP_RCProtocol: change default SBUS frame gap to 4ms
...
this is to cope with some newer receivers such as the skydroid H16
which produces SBUS frames with gaps over 2ms
without this change we get can RC failsafes constantly
3 years ago
yaapu
55bfa41d13
AP_RC_Protocol: added ExpressLRS support
3 years ago
yaapu
76bd10bf02
AP_RCProtocol: added custom telemetry frame types and subtypes to debug trace
3 years ago
Andrew Tridgell
47590a55ff
AP_RCProtocol: allow changes of serial settings between protocols
...
if we are searching for new protocols then allow for baudrate table
changes
3 years ago
Jaaaky
91e3441c6d
AP_RCProtocol: Fix multi #include's
3 years ago
Hwurzburg
eaa557106a
AP_RCProtocol: add RC option to report CRSF LQ as RSSI
...
Co-author: Jules Gilson <julesgilson@yahoo.co.uk>
3 years ago
Andy Piper
5224468ec6
AP_RCProtocol: process CRSF crc per-byte
3 years ago
Peter Barker
409147a291
AP_RCProtocol: add support for DJI Fast SBUS
...
It's just SBUS... but with increased opportunities for corruption
3 years ago
Peter Barker
411ed0f50e
AP_RCProtocol: use data structure for serial configurations
3 years ago
Peter Barker
c1cdfb448c
AP_RCProtocol: move uart flow control set out of CRSF code
...
11:32 AM] AndrewTridgell: @Peter Barker we should disable flow control when we first add the uart - none of the RC protocols use flow control
[11:32 AM] AndrewTridgell: the blocking writes call isn't needed
[11:32 AM] Peter Barker: Thanks, I'll make a patch.
3 years ago
Peter Barker
5e18f98b8e
AP_RCProtocol: number all of the RC Protocols supported
...
Needed this as soon as we got the RC_PROTOCOL bitmask
3 years ago
Peter Barker
7c774d02bb
AP_RCProtocol: remove pointless 100kbaud speed change
...
added.opened is set to false. Next time we check_added_uart, the baud
rate is unconditionally set in each of the phases. Thus this line has
no effect except to confuse the reader
3 years ago
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
3 years ago
Andrew Tridgell
67fd862a8c
AP_RCProtocol: check for RC protocol switching enable
...
by default don't allow protocol switching after initial protocol is
found
3 years ago
Andrew Tridgell
d8c0d82857
AP_RCProtocol: allow DSM bind using uart RX pin directly
3 years ago
Andy Piper
8035b92e6e
AP_RCProtocol: increase CRSF frame timeout to account for scheduling delays
3 years ago
Andrew Tridgell
0bdbdcec21
AP_RCProtocol: mark logger Write() calls as streaming where appropriate
4 years ago
Andrew Tridgell
36dcc0d16d
AP_RCProtocol: make SBUS frame gap configurable
4 years ago
Andy Piper
293bb7704e
AP_RCProtocol: implementation of CRSF v3
...
add CRSF command frame types
allow CRSF baud rate changes
record CRSF version being processed
4 years ago
Hwurzburg
c5f53fc0b6
AP_RCProtocol: add Link Quality reporting to RC protocols
4 years ago
Andy Piper
dd310fd12f
AP_RCProtocol: move AP_VideoTX to AP_VideoTX
4 years ago
Patrick José Pereira
8f96580e9d
AP_RCProtocol: Add missing const in member functions
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
4 years ago
Andy Piper
881fd4f37c
AP_HAL_ChibiOS: use buffered writes for CRSF telemetry
4 years ago
Andy Piper
f6a2d20579
AP_RCProtocol: add tracer 250Hz mode
4 years ago
yaapu
5ef20aec27
AP_RCProtocol: added support for passthrough telemetry over crossfire
4 years ago
Andy Piper
27d7c73c8e
AP_RCProtocol: rc_protocols_mask must be set before bootstrap occurs
4 years ago
Andrew Tridgell
9fcf36bad9
AP_RCProtocol: save memory in IO firmware
...
disable FPort2 to save memory.
Disable SBUS_NI as it is not needed on IOMCU as it has a dedicated
inverter
4 years ago
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
4 years ago
yaapu
c530df7e31
AP_RCProtocol: added fport2 24ch test
4 years ago
yaapu
7e9458b53a
AP_RCProtocol: fport2 fixes
...
Fixed 16ch fport2 telemetry and enabled bidir support.
Fixed 24ch fport2, had to disable telemetry on 24ch for timing is too tight and telemetry would be unreliable.
4 years ago
Andy Piper
7f3f135dc5
AP_RCProtocol: add debug for further CRSF messages
...
add better frame debug info to CRSF
4 years ago
Andrew Tridgell
2dd58c8ed1
AP_RCProtocol: send null pkts for FPort2
...
when we have no data to send, we should send an empty packet to ensure
the receiver schedules us for data as often as possible
4 years ago
Andrew Tridgell
20c4f1950b
AP_RCProtocol: added FPort protocol test
4 years ago
Andrew Tridgell
df5105e20b
AP_RCProtocol: added FPort2 protocol test
4 years ago
Andrew Tridgell
a8770a5a82
AP_RCProtocol: added FPort2 protocol support
4 years ago
yaapu
4dec72a230
AP_RCProtocol: added support for frsky fport bidirectional telemetry
4 years ago
yaapu
f33d197b16
AP_RCProtocol: fix fport rssi
4 years ago
Andy Piper
1f3c24d436
AP_RCProtocol: put back DSM VTX control and logging, add tests
4 years ago
Andrew Tridgell
2bac4b1d97
AP_RCProtocol: fixed up DSM decoder test suite
...
reverted values from new decoder and added another example
5 years ago
Andrew Tridgell
78c4e27259
AP_RCProtocol: reverted DSM protocol decoder
...
the new decoder done by Andy is much nicer looking code, but fails to
correctly parse several valid DSM setups, and parses both SBUS and
FPort as DSM, breaking setups that were previously working
5 years ago
Andrew Tridgell
6e1aeb905f
AP_RCProtocol: added another DSM satellite protocol
5 years ago
Andrew Tridgell
1560c33418
AP_RCProtocol: fixed support for spektrum satellite receivers
...
this was broken by the recent DSM protocol decoder change
5 years ago
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
5 years ago
Andrew Tridgell
380e9d3075
AP_RCProtocol: greatly increase robustness of DSM decoding
...
this prevents other protocols being decoded as DSM
5 years ago