Commit Graph

20516 Commits

Author SHA1 Message Date
Peter Barker
bca411b2c4 AP_Arming: reduce length of internal errors errorstring prefix
MissionPlanner's HUD requires a short string for this to be useful
2019-07-12 18:39:06 +10:00
Andrew Tridgell
2f0a4ff1ab HAL_ChibiOS: fixed build on boards with less than max uarts 2019-07-12 17:01:21 +10:00
Andrew Tridgell
1919268801 HAL_ChibiOS: added OTG2 on all F7 and H7 boards with CAN
allows for SLCAN on 2nd port
2019-07-12 17:01:21 +10:00
Andrew Tridgell
02014776e8 HAL_ChibiOS: auto-set HAL_HAVE_DUAL_USB_CDC 2019-07-12 17:01:21 +10:00
Andrew Tridgell
4ff008b803 AP_SerialManager: added uartH support 2019-07-12 17:01:21 +10:00
Andrew Tridgell
ac7a67fda0 HAL_SITL: added uartH 2019-07-12 17:01:21 +10:00
Andrew Tridgell
019f441b2f HAL_Linux: added uartH 2019-07-12 17:01:21 +10:00
Andrew Tridgell
4e560a4ae5 HAL_Empty: added uartH 2019-07-12 17:01:21 +10:00
Andrew Tridgell
0075b96f3a HAL_ChibiOS: added uartH 2019-07-12 17:01:21 +10:00
Andrew Tridgell
bee487e9da AP_HAL: added uartH 2019-07-12 17:01:21 +10:00
Siddharth Purohit
c50912ed6a AP_HAL: define HAL_HAVE_DUAL_USB_CDC if not defined 2019-07-12 17:01:21 +10:00
Siddharth Purohit
7f297a43dc SerialManager: add support for SLCAN protocol as parameter 2019-07-12 17:01:21 +10:00
Siddharth Purohit
fe44384c95 BoardConfig_CAN: return serial port with switch between parameter and passthrough 2019-07-12 17:01:21 +10:00
Siddharth Purohit
dcf17e5bc2 HAL_ChibiOS: hwdef: add support for dual cdc on CubeYellow and CubeOrange 2019-07-12 17:01:21 +10:00
Siddharth Purohit
2f0d1336e6 HAL_ChibiOS: add support for dual usd cdc 2019-07-12 17:01:21 +10:00
murata
89484a8f64 AP_Beacon: Common modbus crc method 2019-07-12 15:33:21 +10:00
murata
d7b2271197 AP_RangeFinder: Common modbus crc method 2019-07-12 15:33:21 +10:00
murata
c5a471e778 AP_Math: Common modbus crc method 2019-07-12 15:33:21 +10:00
Randy Mackay
27e802eaa6 AP_Scripting: add AP_AHRS method get_roll, pitch, yaw 2019-07-12 13:57:28 +09:00
Randy Mackay
32e25d8b57 AP_AHRS: add accessor for roll, pitch and yaw 2019-07-12 13:57:28 +09:00
anbello
b65f5bf632 ChibiOS: hwdef revo-mini correct IMU rotation 2019-07-12 14:01:06 +10:00
Andrew Tridgell
d2fe47d2e0 HAL_ChibiOS: dither heater pins to prevent magnetic impact 2019-07-12 12:46:27 +10:00
Andrew Tridgell
76a8d494c3 AP_IOMCU: dither heater pin to prevent 1Hz impact on mags
with the simpler duty cycle code we see a 1Hz 25 mGauss cycle in the
internal mags
2019-07-12 12:46:27 +10:00
Leonard Hall
77f8ec9f43 AP_Motors: formatting fixes 2019-07-12 09:29:40 +09:00
Peter Barker
ef8baf28ad AP_Airspeed: clarify mavlink packet assembly is re-ordered field order
This makes it clear that the fields must be arranged according to the
order in the header file rather than that in the message definition
2019-07-11 11:53:35 +10:00
Andrew Tridgell
b12cc57c64 HAL_ChibiOS: switched on fast sampling on IMU3 by default on hex cubes
as some people are flying with EK2_IMU_MASK=7 this reduces the risk of
aliasing on IMU3
2019-07-11 10:24:45 +10:00
Andrew Tridgell
634db441f8 AP_NavEKF3: origin handling fixes from Francisco 2019-07-11 06:40:55 +10:00
Andrew Tridgell
2427440e13 AP_NavEKF2: origin handling fixes from Francisco 2019-07-11 06:40:55 +10:00
Peter Barker
6cb8fcc466 GCS_MAVLink: move use of AP_AHRS_NAVEKF_AVAILABLE into cpp file
This is defined in AP_AHRS which we only get transitively in the header
2019-07-09 22:32:57 +10:00
Peter Barker
9f33fb6085 AP_Terrain: add missing AP_AHRS include 2019-07-09 22:32:57 +10:00
Peter Barker
00cfea03bc AP_Airspeed: add missing includes for AHRS 2019-07-09 22:32:57 +10:00
Peter Barker
ec0a93ff9c AC_Avoidance: add missing includes for AP_AHRS 2019-07-09 22:32:57 +10:00
Peter Barker
1ebbe45fe1 GCS_MAVLink: split sending of RC_CHANNELS and RC_CHANNELS_RAW
Before this patch is applied we may never send the second message
because there's not room for it in the buffer and we can't return
failure-to-send (always interpreted as "retry") as we're in a void function.

Further, if you are on a mavlink2 connection we will not send out the
RC_CHANNELS_RAW message, depriving the user of any RC_CHANNELS messages.

This patch does have the drawback of doing more work on a mavlink1
connection - it has to fetch the data twice.  On the other hand, it also
allows the GCS to set the message rates independently for both
RC_CHANNELS and RC_CHANNELS_RAW so one or the other can be squelched.
That could be handy for reducing bandwidth if you know you're not using
more than 8 input channels.
2019-07-09 13:08:45 +10:00
Peter Barker
41bddf682f AP_Camera: remove unused includes 2019-07-09 12:47:18 +10:00
Peter Barker
a966c75deb SITL: remove unused forward declaration of AP_Logger 2019-07-09 10:57:20 +10:00
Peter Barker
b7fa43e630 AP_Tuning: tidy includes 2019-07-09 10:57:20 +10:00
Peter Barker
c0f25a96fb AP_TECS: move include of logger to .cpp file 2019-07-09 10:57:20 +10:00
Peter Barker
ce4cdfd497 AP_SpdHgtControl: remove unused includes 2019-07-09 10:57:20 +10:00
Peter Barker
a5ff46950c AP_Soaring: move include of logger to .cpp file 2019-07-09 10:57:20 +10:00
Peter Barker
a037920de4 AP_Mount: tidy use of AP_Logger.h 2019-07-09 10:57:20 +10:00
Peter Barker
cb692c6946 APM_Control: move logger include to .cpp 2019-07-09 10:57:20 +10:00
Peter Barker
e01ea2f5f9 SITL: support a count of baros 2019-07-09 10:01:23 +10:00
Peter Barker
c283bb968b AP_Baro: support 0 detected simulated baros 2019-07-09 10:01:23 +10:00
Peter Barker
848a70acd4 AP_HAL_SITL: fix rebooting while in sensor config error loop 2019-07-09 10:01:23 +10:00
Peter Barker
7c102b90fa AP_Logger: use singletons when logging camera information 2019-07-09 09:32:39 +10:00
Peter Barker
01773d9025 AP_Camera: use singletons for relay and ahrs insead of storing references 2019-07-09 09:32:39 +10:00
Peter Barker
c8353c1c13 GCS_MAVLink: fill target system and target component in MISSION_ITEM responses 2019-07-09 09:25:06 +10:00
Peter Barker
fe8d631964 AP_HAL_SITL: ensure termination of readlink-derived progname 2019-07-08 13:18:22 +10:00
Andrew Tridgell
3b0bd67afb HAL_ChibiOS: enable CAN on Pixhawk6 2019-07-08 12:19:20 +10:00
Siddharth Purohit
76ff347026 AP_UAVCAN: remove singleton interface from slcan_router 2019-07-08 12:18:29 +10:00
Siddharth Purohit
2f153a3577 HAL_ChibiOS: remove singleton interface from slcan_router 2019-07-08 12:18:29 +10:00
Siddharth Purohit
28288a7329 BoardConfig_CAN: remove singleton interface for slcan_router 2019-07-08 12:18:29 +10:00
Siddharth Purohit
3e194903cc AP_UAVCAN: add Flow message to the sniffer test 2019-07-08 12:18:29 +10:00
Siddharth Purohit
67c925865c HAL_ChibiOS: add support for CAN on STM32H7 boards 2019-07-08 12:18:29 +10:00
Siddharth Purohit
1cd8e0e237 BoardConfig: set slcan can port to 0 as default
This is to ensure that can bus filters are actually used
2019-07-08 12:18:29 +10:00
Peter Barker
b123abbe90 AP_Notify: add SITL Notify display 2019-07-08 10:56:54 +10:00
Peter Barker
a61028c55d AP_HAL_ChibiOS: disable scripting if USE_FATFS=no 2019-07-08 09:55:46 +10:00
U-REDMOND\akolobov
6dd906f07f HAL_SITL: Integrating Silent Wings SITL with the sim_vehicle 2019-07-08 09:32:59 +10:00
U-REDMOND\akolobov
3330b62d3c SITL: aded support for SilentWings simulator 2019-07-08 09:32:59 +10:00
Randy Mackay
bd3d352554 AC_Avoidance: remove comment from Dijkstra's 2019-07-07 04:08:34 -07:00
Randy Mackay
655ddd4ab3 AC_Avoidance: Dijkstra's ignores invalid polygon fences 2019-07-07 04:08:34 -07:00
Randy Mackay
614b0f6dc8 AP_Math: Polygon_intersects handles unclosed polygons 2019-07-07 04:08:34 -07: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
92783bccfa AP_NavEKF3: don't allow height datum reset when not on ground 2019-07-07 19:20:32 +10:00
Andrew Tridgell
e8d9a1fae9 AP_NavEKF2: don't allow height datum reset when not on ground 2019-07-07 19:20:32 +10:00
Andrew Tridgell
3f9e48951b AP_NavEKF3: set terrainState to zero on height datum reset 2019-07-07 19:20:32 +10:00
Andrew Tridgell
f5fd38aef2 AP_NavEKF2: set terrainState to zero on height datum reset 2019-07-07 19:20:32 +10:00
Andrew Tridgell
f3fc910abe AP_NavEKF3: continuously update gpsGoodToAlign
use it to determine how to handle a height datum reset
2019-07-07 19:20:32 +10:00
Andrew Tridgell
9372073f63 AP_NavEKF2: continuously update gpsGoodToAlign
use it to determine how to handle a height datum reset
2019-07-07 19:20:32 +10:00
Andrew Tridgell
b9a5794671 AP_NavEKF3: ensure that both AMSL and relative alt are correct after a reset
this forces the EKF origin to the GPS alt on a height datum reset if
we have GPS lock. If we don't do this then the reported AMSL alt will
drift over time away from the GPS alt when we reset while on the
ground
2019-07-07 19:20:32 +10:00
Andrew Tridgell
20ebb2500b AP_NavEKF2: ensure that both AMSL and relative alt are correct after a reset
this forces the EKF origin to the GPS alt on a height datum reset if
we have GPS lock. If we don't do this then the reported AMSL alt will
drift over time away from the GPS alt when we reset while on the
ground
2019-07-07 19:20:32 +10:00
Andrew Tridgell
a38b030c41 RC_Channel: disable kill IMU with HAL_MINIMIZE_FEATURES 2019-07-07 19:03:01 +10:00
Andrew Tridgell
8e5c0fa32b AP_InertialSensor: disable kill IMUs with HAL_MINIMIZE_FEATURES 2019-07-07 19:03:01 +10:00
Andrew Tridgell
2208689893 AP_NavEKF3: don't use disabled gyros in opticalflow takeoff detection 2019-07-07 19:03:01 +10:00
Andrew Tridgell
ddef40fa3d AP_NavEKF2: don't use disabled gyros in opticalflow takeoff detection 2019-07-07 19:03:01 +10:00
Andrew Tridgell
a45e364252 AP_Mount: don't use disabled IMUs in solo gimbal code 2019-07-07 19:03:01 +10:00
Andrew Tridgell
3dd7e7e83a AP_AHRS: only use enabled IMUs in DCM
honor the INS_USE parameters for DCM
2019-07-07 19:03:01 +10:00
Andrew Tridgell
09d3392aee AP_InertialSensor: zero accumulators on time step
this zeros the delta angle and delta velocity accumulators when a
sensor is unavailable for a period of 0.1s. This prevents garbage
values being passed into the EKF when a sensor dies and then becomes
available again some time later
2019-07-07 19:03:01 +10:00
Andrew Tridgell
3444e82ef9 AP_InertialSensor: added RC switch for killing IMUs 2019-07-07 19:03:01 +10:00
Andrew Tridgell
30d27147a8 RC_Channel: added RC switch for killing IMUs 2019-07-07 19:03:01 +10:00
Andrew Tridgell
898150e460 HAL_ChibiOS: cope with calling delay_microseconds_boost() multiple times
needed for updated IMU wait code
2019-07-07 19:03:01 +10:00
Andrew Tridgell
053f0cb689 AP_InertialSensor: try much harder to get all IMU samples
this we ensures we get new data for all active IMUs on each loop,
rather than sometimes returning with some IMUs not having data.

This matters as not having a sample on an IMU for a single loop can
cause an EKF IMU failover, which will degrade the learned bias
variances

The issue is usually only seen under high load, such as requesting a
loop rate beyond what the hardware is capable of
2019-07-07 19:03:01 +10:00
Andrew Tridgell
209bca162c AP_NavEKF3: added inactive bias learning
this allows for biases on inactive IMUs to be learned so that an IMU
switch within an EKF lane does not cause a jump in the IMU data
2019-07-07 19:03:01 +10:00
Andrew Tridgell
1c4c5a6850 AP_NavEKF2: learn gyro biases for inactive gyros
this allows us to learn the gyro biases each lane would need if it had
to switch to another gyro due to a sensor failure. This prevents a
sudden change in gyro bias on IMU failure
2019-07-07 19:03:01 +10:00
Andrew Tridgell
05bd0cb9f4 APM_Control: added decay_I() function
used by VTOL planes to decay integrator on fixed wing components when
at very low airspeed
2019-07-07 18:16:47 +10:00
Randy Mackay
030eab0f86 AR_WPNav: stop vehicle if OA processing fails 2019-07-07 06:46:26 +09:00
Randy Mackay
951ded1f51 AP_OAPathPlanner: report errors to caller 2019-07-07 06:46:26 +09:00
Michael du Breuil
104164d2e4 AP_Scripting: Tighten range checks on library calls 2019-07-06 09:01:13 -07:00
Peter Barker
ce45baa034 AP_NavEKF3: factor out and logging functions, reuse for 2nd core 2019-07-06 19:05:51 +10:00
Peter Barker
6a0a466f42 AP_NavEKF2: factor out and logging functions, reuse for 2nd core 2019-07-06 19:05:51 +10:00
Peter Barker
9732940220 AP_AHRS: navekf: add Log_Write access point 2019-07-06 19:05:51 +10:00
Peter Barker
f3f364de26 AP_NavEKF3: move logging in from AP_Logger 2019-07-06 19:05:51 +10:00
Peter Barker
5175d23cc1 AP_NavEKF2: move logging in from AP_Logger 2019-07-06 19:05:51 +10:00
Peter Barker
e009b7aee5 AP_Logger: move logging of EKF packets out to EKF 2019-07-06 19:05:51 +10:00
Peter Barker
c6533723de GCS_Param: correct sending of parameters of length 16 2019-07-06 18:06:17 +10:00
Andrew Tridgell
5ffb8bb546 AP_HAL: enable GPIO scripting on the Disco 2019-07-06 09:02:54 +10:00
Andrew Tridgell
2bab0efc41 HAL_Linux: implement HAL_GPIO_SCRIPT support
this allows Linux boards to trigger an external script on GPIO
writes. This can be hooked up to relays with either RC options or
mavlink or mission items to trigger actions that can be scripted
2019-07-06 09:02:54 +10:00
Andrew Tridgell
8a49c84d57 AP_Motors: fixed col max and min for dual heli
fixes H_SV_MAN behaviour
2019-07-06 08:57: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
Andrew Tridgell
626c632859 SITL: fixed pitch constraint on fixed wing takeoff
fixes issue with jet takeoff
2019-07-05 20:12:22 +10:00
Andrew Tridgell
5bfb6ced84 AP_GPS: fixed u-blox F9 auto configuration 2019-07-05 13:31:40 +10:00
Peter Barker
502f74f0d9 AP_Logger: switch to using stderr for log structure debug
The console output doesn't seem to appear anywhere now.
2019-07-05 12:05:27 +10:00
Peter Barker
288952b5a2 AP_Logger: reserve W for watts as a unit 2019-07-05 12:05:04 +10:00
Peter Barker
c515d17a4a AP_ServoRelayEvents: use Relay singleton 2019-07-03 23:59:24 -07:00
Peter Barker
8e5ec84317 AP_Relay: add AP::relay() to get relay singleton 2019-07-03 23:59:24 -07:00
Rajat Singhal
82413a1528 SITL: JSBSim: Fix comments 2019-07-03 23:58:22 -07:00
Peter Barker
39b17e42d0 AP_HAL_SITL: add missing include for AP_BoardConfig.h 2019-07-04 13:57:40 +10:00
Peter Barker
ebd8170a15 GCS_MAVLink: add missing include for AP_RTC 2019-07-04 13:57:40 +10:00
Peter Barker
3d91547039 AP_Logger: add missing include for AP_RTC 2019-07-04 13:57:40 +10:00
Peter Barker
cee3d8086b AP_InternalError: move include of BoardConfig to cpp
This breaks an include loop when building for skyviper-v2450
2019-07-04 13:57:40 +10:00
Atxheli
7f3cb09da2 correct comment placement for second led 2019-07-04 08:36:33 +10:00
Hwurzburg
a9783de61c correct include paths, uncomment alarm pin, fix conflict with rssi 2019-07-04 08:36:33 +10:00
Hwurzburg
3e3d7b8e7f Change to "include" style for new board, fix to allow LED to be used as status indicator 2019-07-04 08:36:33 +10:00
Hwurzburg
10838387c5 Split Omnibus F4 pro and non-pro into two boards to allow pro boards to have 8 pwm outputs 2019-07-04 08:36:33 +10:00
Andrew Tridgell
5151416080 AP_NavEKF3: force first EKF lane when disarmed
this ensures we consistently fly with EKF lane1 if it is healthy at
the point we arm. Otherwise the choice of lane will be a lottery.

This is important as many systems have quite different filtering and
vibration characteristics on their different IMUs. We by default
enable fast sampling only on the first IMU for example, which means
the 2nd and 3rd IMUs are more vulnerable to high freq causing
aliasing.
2019-07-04 06:48:23 +10:00
Andrew Tridgell
567c902e75 AP_NavEKF2: force first EKF lane when disarmed
this ensures we consistently fly with EKF lane1 if it is healthy at
the point we arm. Otherwise the choice of lane will be a lottery.

This is important as many systems have quite different filtering and
vibration characteristics on their different IMUs. We by default
enable fast sampling only on the first IMU for example, which means
the 2nd and 3rd IMUs are more vulnerable to high freq causing
aliasing.
2019-07-04 06:48:23 +10:00
Tom Pittenger
bf11746da5 AP_AHRS: allow EKF_TYPE==10 to send a good status report
Some GUIs, including DroneKit, will consider GPS locations invalid if the EKF status is not good
2019-07-03 21:22:09 +10:00
Peter Barker
e58eae3c48 AP_Mount: remove unneeded typedefs
Also note that one of these was incorrectly sized.
2019-07-03 16:12:40 +09:00
Peter Barker
08b2676a8f AP_Notify: add comments explaining tonealarm tone format 2019-07-03 17:05:06 +10:00
Andrew Tridgell
2eb09b2910 SITL: simple implementation of a fast jet
just increase the weight and the rest can be done with params
2019-07-03 08:05:09 +10:00
Peter Barker
84eff51539 AP_Arming: remove stray comment on removed parameter
Almost certainly a rebase issue
2019-07-02 10:03:41 +10:00
Peter Barker
f31b7b5772 GCS_MAVLink: remove stray undef of undefined macro 2019-07-02 10:02:55 +10:00
Alexey Kozin
e5988f7153 AP_HAL_ChibiOS: fix voltage sensor connected to fmu adc 2019-07-02 06:42:11 +10:00
Peter Barker
7b52c41287 AP_Compass: fix example by instantiating serial_manager 2019-07-01 19:11:03 +10:00
Peter Barker
ef2589738d AP_NavEKF3: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker
82df167ad4 AP_NavEKF2: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker
d9c30f489f AP_Logger: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker
2bcaaf5aaf AP_AHRS: remove handling of beacon 2019-07-01 07:20:58 +09:00
Peter Barker
04ebb9de0b AP_Airspeed: use send_to_active_channels for airspeed_autocal 2019-06-29 16:04:26 +10:00
bugobliterator
7d4a758059 hwdef: fix default battery monitor pins for CubeOrange 2019-06-28 14:18:11 +10:00
bugobliterator
71ee4d573f AP_BattMonitor: add battery pin config for CubeOrange 2019-06-28 14:18:11 +10:00
Michael du Breuil
cfa54d4ca4 AP_Module: update example baro include 2019-06-27 14:56:21 +10:00
Michael du Breuil
ca65b214af AP_TECS: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
99ff84168c AP_Terrain: Remove unneeded includes 2019-06-27 14:56:21 +10:00
Michael du Breuil
e43605cc9b AP_Airspeed: Remove a number of unneeded top level includes 2019-06-27 14:56:21 +10:00
Michael du Breuil
a6623bfad3 AP_HAL_SITL: Fix missing include for logger.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
b7bca441e5 SITL: Fix a number of includes that were coming in via AP_Airspeed 2019-06-27 14:56:21 +10:00
Michael du Breuil
1226eb825a AP_AHRS: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
1a7502b413 AP_VisualOdom: Remove uneeded include 2019-06-27 14:56:21 +10:00
Michael du Breuil
7a03b8faac AP_InertialNav: Remove undeeded includes 2019-06-27 14:56:21 +10:00
Michael du Breuil
9b162563d6 AP_Advanced_Failsafe: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
b624f6f008 AP_NavEKF3: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
f04e47fc17 AP_NavEKF2: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
6385e3ceac AP_TempCalibration: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
9ed3242c06 AP_Tuning: Reduce header scope 2019-06-27 14:56:21 +10:00
Michael du Breuil
18e979fd4f GCS_MAVLink: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
631b4380e1 AP_OSD: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
6480786ab2 AP_Mount: Cleanup SoloGimalEKF headers further 2019-06-27 14:56:21 +10:00
Michael du Breuil
eeca59d1ef AP_Arming: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil
2dcbe5a49b AP_ADSB: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00