Andrew Tridgell
fdff355a8a
AP_IOMCU: fixed handling of RC ignore failsafe option
...
this allows for ignoring SBUS failsafe on boards using an IOMCU
5 years ago
Andrew Tridgell
017f005737
AP_IOMCU: pass supported RC protocols to IOMCU
5 years ago
Peter Barker
f1182637a6
AP_IOMCU: use new UARTDriver discard_input method
5 years ago
Andrew Tridgell
fd32dff45a
AP_IOMCU: force safety off on IOMCU reset
...
if safety was forced off previously and we get an IOMCU reset then
force it off when the reset happens so vehicle can keep flying
5 years ago
Peter Barker
f0b38fa11c
AP_IOMCU: create and use INTERNAL_ERROR macro so we get line numbers
5 years ago
Peter Barker
e5b634cdd0
AP_IOMCU: add IOMC log message documentation
5 years ago
Andrew Tridgell
ba779c65ad
AP_IOMCU: added a health check based on status read errors
...
if we have more than 1 in 128 read status requests failing then mark
IOMCU unhealthy
5 years ago
Andrew Tridgell
2d02062bfc
AP_IOMCU: reduce uart buffer sizes
5 years ago
Stephen Dade
52f2ec34fa
AP_IOMCU: Ensure IOMCU does not log if there is no logger
5 years ago
Mark Whitehorn
5276cb7f2b
AP_IOMCU: rename sensor_config_error to config_error
5 years ago
Andrew Tridgell
a11f2b5cfb
AP_IOCMU: added singleton in AP namespace
5 years ago
Andrew Tridgell
34f5b40919
AP_IOMCU: use crc32_small() in AP_IOMCU
...
the slower speed is not noticible and this saves 1k ram
5 years ago
Andrew Tridgell
ef1aaa6db0
AP_IOMCU: fixes for modified AP_ROMFS API
...
need to use AP_ROMFS::free()
5 years ago
Mirko Denecke
12c9e50aef
AP_IOMCU: remove unnecessary tabs and whitespaces
5 years ago
Mark Whitehorn
0a6ae60c89
AP_IOMCU: fix IO fast channel mask
5 years ago
Andrew Tridgell
8ef2046f7b
AP_IOMCU: use blocking writes to uart
...
this avoids the issue of arming failing due to a non-zero protocol count
6 years ago
Andrew Tridgell
454717cf6f
AP_IOMCU: cleanup IO protocol and add logging
...
this cleans up the IOMCU protocol structures now we don't need to be
compatible with the old nuttx based protocol and adds logging of IOMCU
errors
6 years ago
Andrew Tridgell
984542fa53
AP_IOMCU: fixed error handling for short packets
...
this prevents short packets from the IOMCU being processed. A short
enough read could be processed as a valid status packet, which would
lead to invalid values for safety flag and servo voltage
fixes issue #12030
6 years ago
Andrew Tridgell
ef5f83d0b5
AP_IOMCU: remove 2s delay on boot and skip crc check on watchdog
...
thanks to @Jaaaky for the suggestion in #11232
6 years ago
Andrew Tridgell
6c50feaead
AP_IOMCU: improved handling of IOMCU reset
...
use IOMCU timestamp to detect reset
6 years ago
Andrew Tridgell
af54e8620e
AP_IOMCU: prevent startup sync causing an internal error
6 years ago
Andrew Tridgell
c7be7d7343
AP_IOMCU: cope with IOMCU reset
6 years ago
Andrew Tridgell
a6e989e263
AP_IOMCU: fixed shadowed variable warning
6 years ago
Tom Pittenger
28323147ab
AP_IOMCU: unify singleton naming to _singleton and get_singleton()
6 years ago
Andrew Tridgell
41264568ba
AP_IOMCU: added brushed motor feature bit in protocol
6 years ago
Andrew Tridgell
5771e0a90e
AP_IOMCU: added access to RC protocol name
6 years ago
Andrew Tridgell
fab181345c
AP_IOMCU: fixed override on RC loss
...
use mid-stick positions
6 years ago
Andrew Tridgell
a8d91a24b6
AP_IOMCU: fixed compat with nuttx firmwares
...
this allows older firmwares to change the IO firmware back to a nuttx
based firmware
6 years ago
Andrew Tridgell
184c05bc70
AP_IOMCU: fixed DSM bind
6 years ago
Eugene Shamaev
4d64b86f87
AP_IOMCU: Add binding procedure for DSMx
6 years ago
Andrew Tridgell
beff16abe6
AP_IOMCU: implement manual_rc_mask
6 years ago
Andrew Tridgell
46fcfe0582
AP_IOMCU: removed rc_channel range check
...
feedback from @WickedShell
6 years ago
Andrew Tridgell
e70a98fa9a
AP_IOMCU: support elevon and vtail mixing in failsafe
6 years ago
Andrew Tridgell
285508d568
AP_IOMCU: added initial mixing support
...
supports aileron, elevator, throttle and rudder
6 years ago
Andrew Tridgell
ec73a7072b
AP_IOMCU: use more bandwidth efficient IO read
6 years ago
Andrew Tridgell
191f72d2e6
AP_IOMCU: added mixing structure to protocol
6 years ago
Andrew Tridgell
cab5199da8
AP_IOMCU: fixed a race in event trigger on startup
...
this fixes the issue with initial safety option state, and with
initial safety mask
6 years ago
Andrew Tridgell
ed48c24600
AP_IOMCU: added shutdown method
...
this cleans up the reboot process
6 years ago
Andrew Tridgell
ba87856deb
AP_IOMCU: fixed build warning
6 years ago
Andrew Tridgell
2c7e27374f
AP_IOMCU: use ioevents for oneshot in iofirmware
6 years ago
Andrew Tridgell
037a455784
AP_IOMCU: moved protocol structures to a common header
6 years ago
Siddharth Purohit
19c002baaf
AP_IOMCU: add support for iofirmware update
6 years ago
Andrew Tridgell
f22d5f0d40
AP_IOMCU: implement failsafe PWM
6 years ago
Andrew Tridgell
135e37e1f4
AP_IOMCU: cope with IOMCU reset in flight
...
this copes with IOMCU reset when we have safety forced off
7 years ago
Lucas De Marchi
668c941717
Global: use new version of ARRAY_SIZE
7 years ago
Siddharth Purohit
9f5dbb74e7
AP_IOMCU: move to using updated time conv API
7 years ago
Andrew Tridgell
8c9f2bc79e
AP_IOMCU: fixed setting of rate masks
...
this affects layouts which set a subset of channels on a timer
7 years ago
Jonathan Challinger
65b20bfd83
AP_IOMCU: fix radio failsafe handling
7 years ago
Andrew Tridgell
ba0fb3d9d2
AP_IOMCU: fixed repeated upload of IO fw
7 years ago
Andrew Tridgell
e200de1f57
AP_IOMCU: use compressed interface for IO fw upload
7 years ago