Commit Graph

24643 Commits

Author SHA1 Message Date
Peter Barker
bd5c34f626 SITL: improve instructions for using simulated RPLidarA2 sensor 2020-12-08 09:21:06 +11:00
Peter Barker
7d232b24d6 SITL: improve simulated serial proximity sensor
SITL: rename measure_distance_at_angle to include '_bf'
2020-12-08 09:21:06 +11:00
Peter Barker
b21fdb7743 AP_Generator: use enum class For Battery Failsafe 2020-12-07 15:20:14 +11:00
Peter Barker
00a8a8fe8e AP_BattMonitor: use enum class For Battery Failsafe 2020-12-07 15:20:14 +11:00
Peter Barker
0fca126d06 AP_AHRS: mark get_hagl as WARN_IF_UNUSED 2020-12-07 12:10:33 +11:00
chobits
013b39d2a6 AP_NavEKF3: fix ext nav vel timestamp cal 2020-12-07 08:54:42 +09:00
Peter Barker
1c57eed66c AP_RangeFinder: remove unused voltage_mv_orient method
This is really backend-specific data and shouldn't be exposed
2020-12-06 16:49:43 +11:00
Andrew Tridgell
b1e7b508db HAL_ChibiOS: added HitecMosaic 2020-12-06 16:48:08 +11:00
Andrew Tridgell
1a4f094025 AP_GPS: allow hwdef override of default for GPS_COM_PORT 2020-12-06 16:48:08 +11:00
Andrew Tridgell
92bcc7667c AP_GPS: allow for SBF GPS on F3 AP_Periph 2020-12-06 16:48:08 +11:00
Andrew Tridgell
1723cf8efb HAL_ChibiOS: reduce SPI clock on MatekH743 mpu6k to 2MHz
this fixes regular transfer errors
2020-12-06 13:04:52 +11:00
Peter Barker
bacbe21011 AP_LandingGear: move logging of LandingGear event into LandingGear
Less code and Plane will get the event logged too.
2020-12-05 20:45:20 +11:00
Randy Mackay
000a2b17c3 AP_NavEKF_Source: remove unused setVelZSource 2020-12-05 08:30:55 +09:00
Peter Barker
6bc8ff2ee8 SITL: factor out an I2C command/response class from simulated MaxSonar sensor 2020-12-05 09:35:53 +11:00
Peter Barker
6f7fbece49 AP_Baro: add accessor for external bus parameter 2020-12-04 16:37:10 +11:00
Peter Barker
771666ee52 AP_Baro: correct i2c transfer invocation in KellerLD
This allows the device to work on boards which are not Pixhawk1.  For
reasons yet to be determined.
2020-12-04 16:37:10 +11:00
Andrew Tridgell
8b5ff1a6de GCS_MAVLink: enable GCS_SEND_TEXT() to send as CAN LogMessage messages 2020-12-04 15:16:21 +11:00
Tom Pittenger
e235fd311e AP_HAL_ChibiOS: fixed comment in script file 2020-12-03 20:33:51 +11:00
Andrew Tridgell
6765265a3b AP_Periph: switched to 1kHz clock for f303-periph
and use CAN RX buffer size of 64.

This makes for more efficient CPU usage on f3, and fixes an issue with
lost CAN parameter replies causing timeouts in the CAN parameter
download protocol
2020-12-03 20:00:55 +11:00
Peter Barker
287e9350a5 AP_NavEKF3: move log message IDs in from AP_Logger LogStructure 2020-12-03 19:22:26 +11:00
Peter Barker
ea36a84b53 AP_Logger: move EK3 log message IDs into AP_NavEKF3 log structure 2020-12-03 19:22:26 +11:00
Peter Barker
79109458c2 AP_NavEKF3: move EKF3 logging structures into EKF3 LogStructure.h 2020-12-03 19:22:26 +11:00
Peter Barker
f2b2998f29 AP_Logger: move EKF3 logging structures into EKF3 LogStructure.h 2020-12-03 19:22:26 +11:00
Peter Barker
64f4b078a6 AP_Logger: remove unused log_EKF* structures 2020-12-03 19:22:26 +11:00
Andrew Tridgell
b289701d20 HAL_ChibiOS: removed SPI devices on f103-periph
these are unused and saves us a couple of k of flash
2020-12-03 15:50:50 +11:00
Andrew Tridgell
084b589f3a AP_Param: added template class AP_Enum for enum AP_Int8 values 2020-12-02 18:33:07 +11:00
Andy Piper
32edb6d0cd AP_Filesystem: add support for @SYS/dma.txt for DMA contention 2020-12-02 18:17:23 +11:00
Andy Piper
cf2602f91d AP_HAL_ChibiOS: add support for @SYS/dma.txt for DMA contention 2020-12-02 18:17:23 +11:00
Andy Piper
d2e01005ee AP_HAL: add support for @SYS/dma.txt for DMA contention 2020-12-02 18:17:23 +11:00
Peter Barker
c5c810b724 AP_NavEKF2: use structures for logging GSF data
This makes it look like EKF2 and is marginally more efficient.
2020-12-02 10:30:48 +11:00
Peter Barker
f94f51d9d3 AP_NavEKF2: move log message metadata to be above the structure
This is the pattern we are adopting elsewhere to try to keep things
related as much as possible.
2020-12-02 10:30:48 +11:00
vierfuffzig
c4a644100d AP_OSD: refactor current panel and add 2nd instance 2020-12-02 06:27:59 +11:00
Peter Barker
54bae68e02 AP_DAL: correct rangefinder get_backend range check 2020-12-02 06:21:54 +11:00
Andrew Tridgell
1bef41b42e AP_OSD: fixed param metadata for several OSD settings
only found now we build OSD for SITL
2020-12-01 18:34:37 +11:00
Andrew Tridgell
42b1d2135a AP_OSD: fixed enable of OSD on boards with no built-in OSD
this fixes MSP enable
2020-12-01 18:34:37 +11:00
Randy Mackay
7f15b7b126 AP_NavEKF_Source: prearm check of wheelencoders 2020-12-01 14:01:17 +09:00
Randy Mackay
7d319f8059 AP_DAL: add wheelencoder_enabled 2020-12-01 14:01:17 +09:00
Randy Mackay
3984cdd823 AP_WheelEncoder: add singleton 2020-12-01 14:01:17 +09:00
Phillip Kocmoud
38dd3b9209 hwdef: add mRo Control Zero Classic 2020-12-01 15:19:50 +11:00
yaapu
c530df7e31 AP_RCProtocol: added fport2 24ch test 2020-12-01 15:05:02 +11:00
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.
2020-12-01 15:05:02 +11:00
Phillip Kocmoud
bef522387a hwdef: add mRo Control Zero H7 2020-12-01 14:46:55 +11:00
Peter Barker
d600b87454 AP_NavEKF2: make logging a core concern 2020-12-01 13:06:04 +11:00
Randy Mackay
02ba500d67 AP_Scripting: add ahrs-source-gps-wheelencoders.lua
supports automatically switching between GPS and wheel encoders based on GPS speed accuracy and vertical velocity innovation
2020-12-01 09:26:02 +09:00
Michel Pastor
eb88e6a37c AP_OSD: Fix vertical speed varying length 2020-12-01 11:20:16 +11:00
Andrew Tridgell
88b5523d47 AP_UAVCAN: added logging of UAVCAN LogMessage messages
this allows us to log internal errors from nodes into main flight
controller log
2020-12-01 11:14:50 +11:00
Andrew Tridgell
b2885e3e32 AP_CANManager: exposed can log level 2020-12-01 11:14:50 +11:00
Andrew Tridgell
cf22caa7ef HAL_ChibiOS: raise stack limits in f303 peripherals 2020-12-01 11:14:50 +11:00
Andrew Tridgell
3ba46d5bd9 HAL_ChibiOS: enable reporting of watchdog reset on AP_Periph 2020-12-01 11:14:50 +11:00
Andrew Tridgell
ba69cd72c9 HAL_ChibiOS: improved stack checking and stack display
display both ISR stack and thread stacks. Show total stack sizes as
well as amount of stack remaining
2020-12-01 11:14:50 +11:00
Andrew Tridgell
84eac7642b HAL_ChibiOS: improved stack checking 2020-12-01 11:14:50 +11:00
Andrew Tridgell
2d459dccc3 HAL_ChibiOS: reduced stack usage in CAN RX handler 2020-12-01 11:14:50 +11:00
Andrew Tridgell
c778d14fd3 HAL_ChibiOS: enable stack checking on f303 boards 2020-12-01 11:14:50 +11:00
Andrew Tridgell
573cd6db6d HAL_ChibiOS: adjust MAIN_STACK for more ISR stack
we need more stack to deal with interrupt nesting between CAN, system
timer and serial interrupts
2020-12-01 11:14:50 +11:00
Andrew Tridgell
52a90e7a33 HAL_ChibiOS: fixed monitor thread with no logging 2020-12-01 11:14:50 +11:00
Andrew Tridgell
2a29b0fcf5 HAL_ChibiOS: fixed AP_Periph build with --enable-asserts 2020-12-01 11:14:50 +11:00
Andrew Tridgell
5e81fadf13 AP_DAL: ensure RRNH is written before RRNI
this is required now we are dynamically allocating the backends in
replay
2020-12-01 10:53:08 +11:00
Andrew Tridgell
172854c894 AP_DAL: fixed build on navio
avoid shadowed variables
2020-12-01 10:53:08 +11:00
Andrew Tridgell
bdba430e55 AP_NavEKF3: save memory on beacon debug structure
only allocate when beacons are enabled. This relies on a guarantee in
the DAL that the beacon count cannot change
2020-12-01 10:53:08 +11:00
Andrew Tridgell
7b08053ef2 AP_DAL: guarantee that the beacon count cannot change after startup 2020-12-01 10:53:08 +11:00
Andrew Tridgell
bb32f1a397 AP_NavEKF3: avoid initialising unused ring buffers
this assumes the nav sources are treated as reboot required
2020-12-01 10:53:08 +11:00
Andrew Tridgell
4fdbbd8984 AP_NavEKF: added functions to see if a nav source is enabled
this allows us to avoid initialising ring buffers when not needed
2020-12-01 10:53:08 +11:00
Andrew Tridgell
ab917ed92e AP_NavEKF: add more protections on ring buffer code
declare an internal error if we try to access an element when not
initialised
2020-12-01 10:53:08 +11:00
Andrew Tridgell
0c05e9a2e7 AP_RangeFinder: fixed handling of instance numbers
if a backend allocation failed then we could end up with the backend
being assigned to the wrong instance number. Switch to using
_add_backend() everywhere, and pass the instance number to
_add_backend() to ensure that it always uses the correct slot.

Also added comment explaining how num_sensors() works when we have a
sparse set of rangefinders configured
2020-12-01 10:53:08 +11:00
Andrew Tridgell
73755e2d1f AP_DAL: only allocate rangefinder backends that we need 2020-12-01 10:53:08 +11:00
Andrew Tridgell
893e9ea7fd AP_DAL: don't allocate sensor backends unless needed
this saves memory on boards without those sensors
2020-12-01 10:53:08 +11:00
Peter Barker
e972fb31b1 AP_NavEKF3: remove unused variables 2020-12-01 10:40:09 +11:00
Peter Barker
fc7e7dcee4 AP_NavEKF2: remove unused variables 2020-12-01 10:40:09 +11:00
Peter Barker
0529ddcd67 AP_NavEKF3: move badMagYaw onto stack 2020-12-01 10:40:09 +11:00
Peter Barker
addd57dcab AP_NavEKF2: move badMagYaw onto stack 2020-12-01 10:40:09 +11:00
Peter Barker
2885026bba AP_NavEKF3: move tasHealth to be a stack variable 2020-12-01 10:40:09 +11:00
Peter Barker
0aa10d8281 AP_NavEKF2: move tasHealth to be a stack variable 2020-12-01 10:40:09 +11:00
Peter Barker
b79a26135c AP_NavEKF3: move posvel fusion health booleans to be on the stack 2020-12-01 10:40:09 +11:00
Peter Barker
3a98d51427 AP_NavEKF2: move posvel fusion health booleans to be on the stack 2020-12-01 10:40:09 +11:00
Peter Barker
2d25149e2e AP_NavEKF3: move global state to be on the stack 2020-12-01 10:40:09 +11:00
Peter Barker
400ba7a9df AP_NavEKF2: move global state to be on the stack 2020-12-01 10:40:09 +11:00
Brent McLaughlin
e241433c89 AP_Rangefinder: change lightware lost signal timer to 20
The LightWare lost signal timer is set to 20 by the manufacturer.
2020-12-01 10:34:54 +11:00
Andrew Tridgell
d242339f2e AP_NavEKF3: added have_vz flag to GPS buffer data
this ensures that we record GPS vertical velocity status for every
sample correctly
2020-12-01 10:33:50 +11:00
Andrew Tridgell
80f7906744 AP_NavEKF3: removed inhibitGps and inhibitGpsVertVel options
these were unused
2020-12-01 10:33:50 +11:00
Andrew Tridgell
7313e9eb0f AP_NavEKF2: removed inhibitGps and inhibitGpsVertVel options
these were unused
2020-12-01 10:33:50 +11:00
Andrew Tridgell
281e2cb693 AP_DAL: removed inhibitGps and inhibitGpsVertVel options
these were unused
2020-12-01 10:33:50 +11:00
Andrew Tridgell
0a80fce8b8 AP_AHRS: removed inhibitGps and inhibitGpsVertVel options
these were unused
2020-12-01 10:33:50 +11:00
Andrew Tridgell
603e0c090d AP_NavEKF3: don't reset EKx_GPS_TYPE when GPS has no vertical velocity
setting the parameter to 1 causes the following issues:

 - the GPS may not have vertical velocity at the time the parameter
   set happens, but may get it later when the GPS is fully configured

 - we may switch between GPS modules which do/don't have vertical
   velocity

 - the user may download parameters after the set(1), and end up with
   incorrect parameters they may later load onto the vehicle,
   permanently disabling use of vertical velocity
2020-12-01 10:33:50 +11:00
Andrew Tridgell
79148498d3 AP_NavEKF2: don't reset EKx_GPS_TYPE when GPS has no vertical velocity
setting the parameter to 1 causes the following issues:

 - the GPS may not have vertical velocity at the time the parameter
   set happens, but may get it later when the GPS is fully configured

 - we may switch between GPS modules which do/don't have vertical
   velocity

 - the user may download parameters after the set(1), and end up with
   incorrect parameters they may later load onto the vehicle,
   permanently disabling use of vertical velocity
2020-12-01 10:33:50 +11:00
Peter Barker
4d30b52744 RC_Channel: add string for motor eSTOP 2020-12-01 10:06:57 +11:00
Peter Barker
4b6e4e10ed AP_Button: allow RC Channel function to be specified for a button
Function will be executed on transition
2020-12-01 10:06:57 +11:00
Peter Barker
164bd95538 AP_Button: allow PWM to be used for button input 2020-12-01 10:06:57 +11:00
Peter Barker
7ea78791c2 RC_Channel: make string_for_aux public 2020-12-01 10:06:57 +11:00
Peter Barker
0f597e0919 RC_Channel: expose do_aux_function for button to call 2020-12-01 10:06:57 +11:00
Peter Barker
3264fd750b SRV_Channel: add k_min, m_trim and k_max to output min/trim/max values 2020-12-01 10:06:57 +11:00
Andrew Tridgell
862ae59e28 AP_GPS: support $PHD message for AllyStay NMEA GPS
this adds vertical velocity support
2020-12-01 09:04:43 +11:00
Peter Barker
035e798b23 AP_HAL_SITL: use a separate eeprom.bin for SITL build
This resolves a problem in autotest where the eeprom.bin gets wiped out
when we run Replay against a log as part of test.Copter.Replay
2020-11-30 18:50:24 +11:00
Tom Pittenger
d780e66cc4 AP_ADSB: remove deinit() 2020-11-30 16:05:17 +11:00
Tom Pittenger
e94697cb4c AP_ADSB: Allow for multiple backends in the future drivers 2020-11-30 16:05:17 +11:00
Tom Pittenger
20d21fe175 SITL/examples: remove ADSB param that is already default 2020-11-30 16:05:17 +11:00
Peter Barker
88895f9b13 GCS_MAVLink: stop using one backend's signing structure for all backends 2020-11-30 14:11:08 +11:00
Andrew Tridgell
8914bb45f8 AP_DAL: fix for uartI support 2020-11-30 14:09:31 +11:00
Andrew Tridgell
af0ee82ff1 AP_SerialManager: support uartI, allowing a total of 9 uarts
this allows for OTG2 on the MatekH743 board, which makes SLCAN much
easier
2020-11-30 14:09:31 +11:00
Andrew Tridgell
a7a5879c0c AP_HAL_SITL: support uartI, allowing a total of 9 uarts
this allows for OTG2 on the MatekH743 board, which makes SLCAN much
easier
2020-11-30 14:09:31 +11:00
Andrew Tridgell
78711e05b7 AP_HAL_Linux: support uartI, allowing a total of 9 uarts
this allows for OTG2 on the MatekH743 board, which makes SLCAN much
easier
2020-11-30 14:09:31 +11:00