priseborough
60ebe97e10
AP_InertialSensor: remove unused EKF1 include
2016-12-19 08:07:11 +11:00
priseborough
509709ce9d
AP_Motors: remove unused EKF1 include
2016-12-19 08:07:11 +11:00
priseborough
453ced4a38
AP_GPS: remove unused EKF1 include
2016-12-19 08:07:11 +11:00
priseborough
bb29c74e52
AP_NavEKF: remove EKF1
2016-12-19 08:07:11 +11:00
priseborough
809bfc1154
GCS_MAVLink: replace call to EKF1
...
Return hagl from primary EKF
2016-12-19 08:07:11 +11:00
priseborough
f70cc3cf34
AP_InertialNav: remove EKF1
2016-12-19 08:07:10 +11:00
priseborough
6d086e0c31
AP_Mount: remove EKF1
2016-12-19 08:07:10 +11:00
priseborough
78f89e0663
AP_Beacon: Update parameters for EKF3 testing
2016-12-19 08:07:10 +11:00
priseborough
33a7c682a3
AP_AHRS: Add EKF3 and remove EKF1
2016-12-19 08:07:10 +11:00
Andrew Tridgell
b00ec26957
DataFlash: Add EKF3 and remove EKF1
2016-12-19 08:07:09 +11:00
Andrew Tridgell
75688c8342
AP_OpticalFlow: Add EKF3 and remove EKF1
2016-12-19 08:07:09 +11:00
priseborough
7202acc1b5
AP_NavEKF3: Default EKF3 to off
...
Will revert this and set EKF2 to off by default after testing is completed on all platform types
2016-12-19 08:07:09 +11:00
priseborough
39969e7d8e
AP_NavEKF3: added EKF3 for EKF experimentation
...
AP_NavEKF3: Implement same maths as PX4/ecl EKF
Replace attitude vector states with quaternions
Remove gyro scale factor states
Add XY accel delta velocity bias estimation
Initial tuning
Add GPS body frame offset compensation
AP_NavEKF3: Fix bugs and consolidate aiding switch logic
Switching in and out of aiding modes was being performed in more than one place and was using two variables.
The reversion out of GPS mode due to prolonged loss of GPS was not working.
This consolidates the logic and ensures that PV_AidingMode is only changed by the setAidingMode function.
AP_NavEKF3: prevent multiple fusion mode changes per filter update
AP_NavEKF3: Update tuning defaults
AP_NavEKF3: Fix bug causing switching in and out of aiding
If the GPS receiver was disconnected and no data received, then then the gpsGoodToAlign check did not get a chance to run and becasue it was previously true the EKF would switch back into aiding.
This prevents this by ensuring that gpsGoodToAlign defaults to false when the check is not being performed.
An additional check has also been dded to ensure that there is GPS data to fuse before we declare ready to use GPS.
AP_NavEKF3: Fix bug preventing planes recovering from bad magnetometers
This bug created a race condition whereby if the EKF had to reset the yaw to the GPS ground course to recover from a bad magnetometer, the new heading could be over-written by the bad magnetic heading when the plane reached the height for the scheduled reset.
AP_NavEKF3: Improve switch-over to backup magnetometer
When switching over to a back up magnetometer, ensure that the earth field estimate are reset. Otherwise mag earth field estimates due to the previous failed mag could cause data from the new mag to be rejected.
AP_NavEKF3: enable automatic use of range finder height
AP_NavEKF3: Fix bug in handling of invalid range data
AP_NavEKF3: Fix height drift on ground using range finder without GPSAP_NavEKF3:
AP_NavEKF3: Handle yaw jumps due to core switches
AP_NavEKF3: Enable simultaneous GPS and optical flow use
AP_NavEKF3: fix console status reporting
AP_NavEKF3: send messages to mavlink instead of console
This allows the GCS to better handle the display of messages to the user.
AP_NavEKF3: replace deprecated function call
AP_NavEKF3: Compensate for sensor body frame offsets
AP_NavEKF3: Fix bug in median filter code
AP_NavEKF3: save some memory in the position offsets in EKF3
We don't need to copy that vector3f for every sample. A uint8_t does the job
AP_NavEKF3: Add fusion of range beacon data
AP_NavEKF3: Bring up to date with EKF2
AP_NavEKF3: Misc range beacon updates
AP_NavEKF3: Add mising accessors
AP_NavEKF3: remove duplicate include
AP_NavEKF3: Prevent NaN's when accessing range beacon debug data
AP_NavEKF3: Update range beacon naming
AP_NavEKF3: updates
AP_NavEKF3: miscellaneous changes
AP_NavEKF3: misc updates
AP_NavEKF3: misc range beacons updates
AP_NavEKF3: add missing rover default param
2016-12-19 08:06:47 +11:00
Andrew Tridgell
ab05472e0e
AP_AHRS: added EKF3 for EKF experimentation
...
Conflicts:
libraries/AP_AHRS/AP_AHRS_NavEKF.cpp
2016-12-18 10:28:04 +11:00
priseborough
fd8916ef38
DataFlash: fix Baro 3 labels
2016-12-18 10:28:04 +11:00
priseborough
cd669738a5
AP_Beacon: fix SITL param error
2016-12-18 10:28:04 +11:00
priseborough
fe69d9a0ea
AP_NavEKF2: remove duplicate include
2016-12-18 10:28:04 +11:00
priseborough
a8f3a374e2
AP_NavEKF2: replace sqrt function calls with sqrtf
...
Prevents compiler errors and un-wanted use of double precision types
2016-12-18 10:28:04 +11:00
Lucas De Marchi
b0ddf81687
Remove stdbool.h include for C++ sources
...
This header is not needed in our C++ sources.
2016-12-16 11:38:52 -08:00
Andrew Tridgell
790d186c6c
AP_Compass: switched to unified Invensese driver for AK8963
2016-12-16 12:31:34 +11:00
Andrew Tridgell
65b9b86099
AP_InertialSensor: unify MPU6000 and MPU9250 drivers
...
make a single AP_InertialSensor_Invensense driver. This avoids a lot
of duplication and will save time as new varients are added
2016-12-16 12:31:34 +11:00
murata
0f486aeecb
AC_Fence: shorten calculation of return value
2016-12-15 10:42:48 +09:00
Tom Pittenger
3e2098192b
AP_Landing: add is_complete() accessor
2016-12-14 04:32:30 -08:00
Tom Pittenger
f09007cbe9
AP_Landing: use a common reset for uniform landing wipe
2016-12-14 04:32:30 -08:00
Tom Pittenger
7daf1a87be
AP_Landing: non-functional change - re-organizing header declarations
2016-12-14 04:32:30 -08:00
Tom Pittenger
e061e1734c
AP_Landing: abstract land abort request method
2016-12-14 04:32:30 -08:00
Randy Mackay
d41467424b
DataFlash: fix to suppressing comment for case fall through
...
no functional change
eclipse stops complaining if no-break is used in place of fall-through
2016-12-14 13:25:15 +09:00
Randy Mackay
0dd7e78c2b
RangeFinder: fix to suppressing comment for case fall through
...
no functional change
eclipse stops complaining if no-break is used in place of fall-through
2016-12-14 13:22:31 +09:00
Randy Mackay
2da7ea746b
MotorsHeli: minor formatting updates
2016-12-14 13:21:59 +09:00
Leonard Hall
a09d4db4fd
AP_MotorsMulticopter: fix battery resistance calculation
2016-12-14 11:07:29 +09:00
priseborough
76106889d5
AP_NavEKF2: Prevent unwanted core switch on startup
...
Require primary core to be healthy for 10 seconds before starting selection logic
2016-12-13 01:18:28 +00:00
Andrew Tridgell
8a1275356d
AP_Baro: moved MS5611 reset before prom read
...
thanks to Jacob and Lucas for pointing this out
2016-12-13 11:10:35 +11:00
murata
b48ea53f60
Revert "AC_Fence: Activate the create flag."
...
This reverts commit c63a6a2738
.
2016-12-09 23:55:29 +00:00
Andrew Tridgell
be9ac273ce
AP_Param: apply notify check to AP_ParamV too
...
thanks to Francisco
2016-12-09 14:36:01 -08:00
Andrew Tridgell
a440ac4c9d
AP_Compass: use a set_and_notify for external and IDs
...
ensure that GCS that connects quickly gets the right value
fixes issue #5364
2016-12-09 14:36:01 -08:00
Andrew Tridgell
eaa68f32e3
AP_Param: avoid a notify if value is already correct
2016-12-09 14:36:01 -08:00
priseborough
69f3c83c20
AP_NavEKF2: Don't use speed switch criteria when speed estimate is invalid
...
Prevent unwanted switches from range finder to Baro height aiding due to triggering of the speed threshold
2016-12-09 21:17:28 +00:00
priseborough
14a0155f5e
AP_NavEKF2: Allow threshold speed for range finder use to be adjusted
2016-12-09 21:17:28 +00:00
Lucas De Marchi
899fce53ff
AP_Compass: IST8310: minor fixes and refactors
...
- Inline code that needs to take and release the lock in init()
function, just like other drivers
- Minor changes to coding style and renames to be similar to other
drivers
2016-12-09 10:08:37 -08:00
Georgii Staroselskii
f061572e13
AP_Compass: add IST8310 support
...
One needs to specify I2C address and a bus number in AP_Compass.cpp to use it.
2016-12-09 10:08:37 -08:00
murata
c63a6a2738
AC_Fence: Activate the create flag.
2016-12-09 17:25:27 +00:00
Randy Mackay
b296bc1d00
GPS: MAV driver fix for sanity checks of cog, sat count
2016-12-08 15:52:26 +09:00
Randy Mackay
8118222946
GPS: MAV driver fix for GPS_INPUT altitude
2016-12-08 15:52:26 +09:00
Randy Mackay
9e62f12dd7
GPS: MAV driver gets support for HIL_GPS message
2016-12-08 15:52:26 +09:00
Randy Mackay
9fc0bc19e7
AP_Beacon: fix potential out-of-bounds write to beacon_state
...
uncovered by covarity and wickedshell
2016-12-08 15:39:37 +09:00
Ivan Smirnov
d4d35bdcbd
AP_HAL_Linux: Scheduler: added _timer_tick for uartD
2016-12-07 10:25:00 -08:00
murata
25e47cce6b
AP_NavEKF2: Changed sqrt method to sqrtf method.
...
AP_NavEKF2: Changed sqrt method to sqrtf method.
2016-12-07 15:41:41 +00:00
Andrew Tridgell
05d9455f87
Revert "HAL_PX4: Add input parameter check."
...
This reverts commit 5f41b09fde
.
This change is completely incorrect. It is quite common to do SPI
transfers with zero send bytes, and is required for many sensors and
other devices
2016-12-07 12:47:10 +11:00
Jonathan Challinger
6e47bed97d
AP_RangeFinder: fix hard fault with LightWareI2C
2016-12-07 07:52:38 +11:00
Pierre Kancir
556993d7f0
AP_Math: Vector2 add == operator for int
2016-12-06 09:31:21 -08:00
Pierre Kancir
6bf1322633
AP_Math: polygon.cpp correct float comparison
2016-12-06 09:31:21 -08:00
Pierre Kancir
385e5badd8
Ap_Compass: LIS3MDL fix order
2016-12-06 09:31:21 -08:00
Pierre Kancir
c49c851a57
Ap_Compass: AK09916 fix order
2016-12-06 09:31:21 -08:00
Pierre Kancir
8ef5067e12
AP_Motors: MotorsHeli_Single utilize an explicit type cast to avoid the loss of a fractional part.
2016-12-06 06:25:15 -08:00
Tom Pittenger
03b5523b43
AP_Landing: abstract out init_start_nav_cnd work to landing lib
...
This reverts commit 3e89580383
and fixes it
2016-12-06 03:45:17 -08:00
Andrew Tridgell
3e89580383
Revert "AP_Landing: abstract out init_start_nav_cnd work to landing lib"
...
This reverts commit 8d8775125a
.
doesn't build
2016-12-06 17:32:10 +11:00
Tom Pittenger
8d8775125a
AP_Landing: abstract out init_start_nav_cnd work to landing lib
2016-12-05 18:43:47 -08:00
Tom Pittenger
2d8c9c5129
AP_Landing: added missing break
2016-12-05 18:43:15 -08:00
Michael du Breuil
f9acca67d3
AP_Mission: Align with spec better
...
Location is out of spec for NAV_RETURN_TO_LAUNCH
NAV_LOITER_UNLIM couldn't roundtrip the provided loiter radius
2016-12-05 17:31:36 -08:00
Tom Pittenger
84bdf15203
AP_Airspeed: updated comment to match PR
2016-12-05 17:19:57 -08:00
jinchengde@gmail.com
efd0f0b832
modify NavEKF2 for AHRS Test
2016-12-05 17:10:23 -08:00
murata
d619d33374
AP_HAL_PX4: UARTDriver: Delete the condition that does not hold.
2016-12-05 16:53:36 -08:00
Andrew Tridgell
eea7758a63
AP_Baro: added GND_EXT_BUS option
...
this is needed to enable probing for a MS5611 on external I2C bus. The
MS5611 looks the same as a MS5525 airspeed sensor, so we can't just
auto-probe. Users will need to enable external barometers
2016-12-05 16:51:49 -08:00
Andrew Tridgell
43bac678cd
AP_Airspeed: Added MS5525 airspeed driver
...
also improved averaging in MS4525 driver
2016-12-05 16:51:49 -08:00
Andrew Tridgell
04731dccd6
AP_Airspeed: rename MS4525 driver
...
ready for new driver types
2016-12-05 16:51:49 -08:00
Andrew Tridgell
e2192d5b4d
HAL_PX4: report user bus number not system bus number
2016-12-05 16:51:49 -08:00
Andrew Tridgell
c657ad449b
AP_HAL: added get_bus_address()
...
used to report sensor probing results in drivers
2016-12-05 16:51:49 -08:00
Andrew Tridgell
60c29417f1
AP_HAL: added uint16 access functions
2016-12-05 16:51:49 -08:00
Andrew Tridgell
bc33c19f21
AP_IRLock: fixed build
2016-12-05 16:51:49 -08:00
Andrew Tridgell
8b8837ab72
GCS_MAVLink: fixed build
2016-12-05 16:51:49 -08:00
Andrew Tridgell
bdc41446ae
AP_OpticalFlow: fixed build
2016-12-05 16:51:49 -08:00
Andrew Tridgell
14a1f559c7
AP_Airspeed: added ARSPD_TYPE and use standard driver backend methods
...
this will allow for new sensor types
2016-12-05 16:51:49 -08:00
Tom Pittenger
b614b41d6d
AP_TECS: fixed compiler warning
...
- AP_Landing _landing was declared out-of-order
2016-12-05 16:46:55 -08:00
Tom Pittenger
725a9c40a6
AP_Landing: fixed compiler warnings
...
- init variable out of order, callbacks were declared first
2016-12-05 16:15:20 -08:00
Pierre Kancir
79a9e8dfad
AP_Math: Matrix_alg fix implicite cast from bool to float
2016-12-05 12:39:31 -08:00
Pierre Kancir
f54cf6e097
AP_NavEKF: storeIndex remove second initialisation
2016-12-05 12:39:31 -08:00
Pierre Kancir
de05e6ba29
InertialSensor : MPU9250 utilize an explicit type cast to avoid the loss of a fractional part
2016-12-05 12:39:30 -08:00
Pierre Kancir
13c16e187f
InertialSensor: MPU6000 utilize an explicit type cast to avoid the loss of a fractional part
2016-12-05 10:59:45 -08:00
Pierre Kancir
a5161edc97
SITL: remove duplicate
2016-12-05 10:59:45 -08:00
Pierre Kancir
421524951f
AC_PosControl: remove unnecessary parentheses
2016-12-05 10:59:45 -08:00
Pierre Kancir
fb7a00799f
AP_Math: quaternion fix missing return
2016-12-05 10:33:41 -08:00
Florent Martel
abc2cdb61b
AP_FrSky_Telem: fixed sign of vertical velocity (+ve up)
2016-12-04 15:05:16 -08:00
Pierre Kancir
f9c8827809
SITL: Scheduler correct misplaced parenthese && switch to do while loop
2016-12-04 18:28:14 +00:00
murata
86e495f415
AP_Arming: Do not set check results each time.
2016-12-03 20:39:33 +00:00
Francisco Ferreira
202c33491e
RangeFinder: remove useless returns and update comment
2016-12-03 17:44:06 +00:00
murata
a99bde9dad
RangeFinder: Change type determination from if state to switch state.
2016-12-03 17:33:01 +00:00
mirkix
7e33ba04a9
AP_HAL: Add BBBmini PX4FLOW I2C bus number
2016-12-03 21:07:07 +11:00
Tom Pittenger
608da33d80
AP_Landing: merged GCS text for aborted landing
2016-12-02 17:40:01 -08:00
murata
5f41b09fde
HAL_PX4: Add input parameter check.
2016-12-02 17:09:47 -08:00
Tom Pittenger
3a9ad24907
AP_Landing: compute wind_alignment and half of head-wind
...
Determine how aligned heading_deg is with the wind. Return result
is 1.0 when perfectly aligned heading into wind, -1 when perfectly
aligned with-wind, and zero when perfect cross-wind. There is no
distinction between a left or right cross-wind. Wind speed is ignored
2016-12-02 15:35:28 -08:00
Peter Barker
0e2b3781ae
AP_Gripper: a valid() method
2016-12-02 12:52:53 +11:00
Peter Barker
4a1439ca0b
AP_Gripper: add grabbed and released method
2016-12-02 12:52:53 +11:00
Peter Barker
20b83861e9
AP_Mission: support for NAV_CMD_PLACE
...
AP_Mission: check return values of mission fetches
2016-12-02 12:52:50 +11:00
Peter Barker
20b86605fa
SITL: gripper closes faster, vary load carried by gripper
...
If gripper is closed on ground it is considered to be carrying
something
2016-12-02 12:04:05 +11:00
Peter Barker
b751f836bb
SITL: attach a string with a mass on the end to servo gripper
2016-12-02 12:04:05 +11:00
Peter Barker
f8918d15b1
SITL: add a hagl method to aircraft
2016-12-02 12:04:05 +11:00
Peter Barker
f1c23dc9be
SITL: remove argument to on_ground
...
This was always the current position
2016-12-02 12:04:05 +11:00
Peter Barker
e24f3f9419
SITL: correct on-ground correction
...
Using the cached ground_height_difference may mean
you end up at the wrong height if you were near
the edge of an SRTM square and had high horizontal
velocity
2016-12-02 12:04:05 +11:00
Peter Barker
319cfa766b
RC_Channel: add method to get current radio out for a function
2016-12-02 12:04:05 +11:00
Andrew Tridgell
23480a92ad
HAL_PX4: only include parts needed for build
...
allow for external USE_FLASH_STORAGE define in build
2016-12-02 09:58:36 +11:00