Peter Barker
eb1f22fc67
AP_Notify: add singleton
2017-07-09 17:17:29 -04:00
Randy Mackay
d636e85eac
AP_Proximity: SF40c driver treats zero distances as invalid
2017-07-08 14:09:17 +09:00
Randy Mackay
6982e58cf2
Baro: health check that values are changing
2017-07-08 08:40:19 +09:00
Randy Mackay
d64b2fcbf0
AP_NavEKF3: final mag reset at 2.5m
2017-07-08 08:39:43 +09:00
Randy Mackay
7e7f78d4b5
AP_NavEKF2: final mag reset at 2.5m
2017-07-08 08:39:43 +09:00
Peter Barker
c1264cf60a
DataFlash: Use GCS_Dummy GCS singleton
2017-07-07 16:18:37 +01:00
Peter Barker
3e0ed6deae
AP_AHRS: Use GCS_Dummy GCS singleton
2017-07-07 16:18:37 +01:00
Peter Barker
3f43789742
GCS_MAVLINK: provide a GCS singleton for examples and tools to use
2017-07-07 16:18:37 +01:00
Peter Barker
db27346fd7
GCS_MAVLink: move GCS functions up from GCS_Plane
2017-07-07 16:18:37 +01:00
Peter Barker
c163915f6e
AP_HAL: correct storage example
2017-07-07 16:18:37 +01:00
Randy Mackay
51fa8fb0bd
AP_InertialSensor: resolve member init order compiler warning
2017-07-07 17:27:23 +09:00
Eugene Shamaev
43e9c8370f
AP_BoardConfig: increase start delay to 5 seconds
2017-07-03 11:44:32 +01:00
Eugene Shamaev
c6df13c795
AP_UAVCAN: changes to servo bitmasks to support multiple instances, baro, compass, gps changes for several CAN interfaces
2017-07-03 11:44:32 +01:00
Eugene Shamaev
a7921a273b
AP_BoardConfig: move of CAN parameters into separate group and support of several interfaces
2017-07-03 11:44:32 +01:00
Eugene Shamaev
36655310b3
AP_HAL_PX4: support for several CAN interfaces and drivers, filtering support
2017-07-03 11:44:32 +01:00
Eugene Shamaev
ec8aa2e23f
SRV_Channel: move of CAN bitmasks into AP_UAVCAN
2017-07-03 11:44:32 +01:00
Eugene Shamaev
5341e51f45
AP_GPS: support for multiple instances on different interfaces
2017-07-03 11:44:32 +01:00
Eugene Shamaev
aa1f6a7587
AP_Compass: united enumeration on startup, multiple CAN drivers, correct dev_id based on network and node ID
2017-07-03 11:44:32 +01:00
Eugene Shamaev
6e6efa7e1b
AP_Baro: enumeration and multiple interfaces support
2017-07-03 11:44:32 +01:00
Eugene Shamaev
8f2306fd19
AP_HAL: support of several CAN managers (virtual drivers)
2017-07-03 11:44:32 +01:00
Andrew Tridgell
ca8a2a1f34
AP_RSSI: support receiver based RSSI protocols
2017-07-03 11:22:21 +10:00
Andrew Tridgell
a88693c487
HAL_PX4: support RSSI from receiver protocols
2017-07-03 11:22:21 +10:00
Andrew Tridgell
9868ffe13b
HAL_Linux: support receiver based RSSI
2017-07-03 11:22:21 +10:00
Andrew Tridgell
94b5a9c6f0
AP_HAL: added RSSI interface for RCInput
2017-07-03 11:22:21 +10:00
Andrew Tridgell
64f722876f
RC_Channel: use set_and_save_ifchanged
2017-07-03 11:17:42 +10:00
Andrew Tridgell
1d41dc034d
SRV_Channel: deprecate aileron_with_input and elevator_with_input
2017-07-03 11:17:42 +10:00
Andrew Tridgell
b50ab75f4c
RC_Channel: added set_and_save_trim()
2017-07-03 11:17:42 +10:00
Andrew Tridgell
cde4afd28e
SRV_Channel: added set_trim_to_servo_out_for()
...
this will be used for new TRIM_AUTO functionality in plane
2017-07-03 11:17:42 +10:00
Andrew Tridgell
9cb672e85e
SRV_Channel: added doc values for dspoilers
...
and fix missing Motor9 to Motor12 values
2017-07-03 11:17:42 +10:00
Andrew Tridgell
7627246ff8
SRV_Channels: added 4 channel dspoiler support
2017-07-03 11:17:42 +10:00
Andrew Tridgell
907534d55f
SITL: added dspoiler support
2017-07-03 11:17:42 +10:00
Andrew Tridgell
6b3bb29398
SRV_Channel: rename flaperon1 and flaperon2 to flaperon_left and flaperon_right
...
this makes it more consistent with elevons and vtails
2017-07-03 11:17:42 +10:00
Randy Mackay
edc9d4db5b
AP_InertialSensor: increase accel filter to 20hz
2017-07-03 09:38:15 +09:00
Peter Barker
7b3db490be
DataFlash: correct examples
2017-06-29 15:43:39 +01:00
Peter Barker
9c2a2a3d94
AP_Module: correct example
2017-06-29 15:43:39 +01:00
Peter Barker
cbe9627bf5
AP_GPS: correct example
2017-06-29 15:43:38 +01:00
Peter Barker
12b4f2c4b6
AP_AHRS: correct example
2017-06-29 15:43:38 +01:00
Peter Barker
7258cfd20b
AP_GPS: check dataflash to see if we should log backend gps messages
2017-06-29 15:43:38 +01:00
Peter Barker
6ae86a0b8c
AP_InertialSensor: use DataFlash should_log to determine raw logging
2017-06-29 15:26:27 +01:00
Peter Barker
4dfdffde43
DataFlash: move should_log check of log bitmask into DataFlash
2017-06-29 15:26:27 +01:00
Francisco Ferreira
f35f0d59dd
AP_GPS: fix SBP2 driver build warnings by using memcpy
...
Build gave the following warnings:
../../libraries/AP_GPS/AP_GPS_SBP2.cpp: In member function ‘void AP_GPS_SBP2::_sbp_process_message()’:
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:181:78: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_heartbeat = *((struct sbp_heartbeat_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:181:28: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_heartbeat = *((struct sbp_heartbeat_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:186:76: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_gps_time = *((struct sbp_gps_time_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:186:27: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_gps_time = *((struct sbp_gps_time_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:190:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_vel_ned = *((struct sbp_vel_ned_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:190:26: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_vel_ned = *((struct sbp_vel_ned_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:194:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_pos_llh = *((struct sbp_pos_llh_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:194:26: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_pos_llh = *((struct sbp_pos_llh_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:198:68: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_dops = *((struct sbp_dops_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:198:23: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_dops = *((struct sbp_dops_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:202:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_event = *((struct sbp_ext_event_t*)parser_state.msg_buff);
^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:202:24: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
last_event = *((struct sbp_ext_event_t*)parser_state.msg_buff);
^
2017-06-29 15:18:09 +01:00
ebethon
005dbf41a7
AP_GPS: Add SBP EXT_EVENT Message to dataflash log
2017-06-29 15:18:05 +01:00
ebethon
526d5a4c44
DataFlash: Add SBP EXT_EVENT Message
2017-06-29 15:18:05 +01:00
ebethon
4779a8f1f1
AP_GPS: Rename SBR1/SBR2 to SBRH/SBRM and change format
...
Add (sender_id, msg_len) in SBRM message
Add index/pages in SBRH/SBRM messages
Change format to integers to avoid GCS string parsing
Decrease data size in SBRH
2017-06-29 15:14:54 +01:00
ebethon
0b5dad33f2
DataFlash: Rename SBR1/SBR2 to SBRH/SBRM and change format
...
Add (sender_id, msg_len) in SBRM message
Add index/pages in SBRH/SBRM messages
Change format to integers to avoid GCS string parsing
Decrease data size in SBRH
2017-06-29 15:14:54 +01:00
Miguel Arroyo
7cea21afa2
AP_Math: Moves rand_vec3f from SITL_State.
2017-06-29 09:22:08 +10:00
Miguel Arroyo
86b9942d51
AP_HAL_SITL: move SITL Compass to standard sensor backend model
2017-06-29 09:22:08 +10:00
Miguel Arroyo
ee328c9683
AP_Compass: move SITL Compass to standard sensor backend model
2017-06-29 09:22:08 +10:00
Georgii Staroselskii
0203b4c1b1
AP_Notify: RCOutputRGBLed: remove cork()
...
cork()/push() will be called in the vehicle code.
The issue that led to this fix was as follows:
- on a Linux board (Navio 2) usage of this class didn't yield any PWM on
the expected outputs on Rover (Copter and Plane worked as expected)
After dicsussion at #6339 rover code was changed (541538f
) to use make
proper use of SRV_Channels API.
This fix is also the consequence of the discussion. TL;DR: the output is
only done when commanded by the vehicle.
2017-06-27 11:46:41 -07:00
Peter Barker
ad17709390
DataFlash: handle knowledge of in_log_download in DataFlash
2017-06-27 03:10:43 +01:00
Peter Barker
4c1aff03a3
GCS_MAVLink: move send-logs-via-mavlink code into DataFlash
2017-06-27 03:10:43 +01:00
Peter Barker
305531952f
DataFlash: move send-logs-via-mavlink code into DataFlash
2017-06-27 03:10:43 +01:00
Peter Barker
cbbee995b6
GCS_MAVLink: move GCS_Logs into DataFlash directory
2017-06-27 03:10:43 +01:00
Rob Ratcliff
60c6f8ad60
AP_GPS: fix bug when injecting messages bigger than 255 bytes
...
Commit 5261654
changed the used injection method so change this method signature to use uint16 for message length like previous injection method did
2017-06-27 03:06:26 +01:00
priseborough
9d0fa09d39
AP_NavEKF3: Fix calculation of predicted LOS rate in terrain estimator
2017-06-26 14:58:06 +01:00
priseborough
c69c5440a0
AP_NavEKF2: Fix calculation of predicted LOS rate in terrain estimator
2017-06-26 14:58:06 +01:00
Francisco Ferreira
a83457ab07
AP_BattMonitor: complement commit d3314d7684
by adding to second battery monitor too
2017-06-26 13:41:12 +01:00
Miguel Arroyo
4394c5145b
AP_HAL_SITL: Fixes bug with uartF.
...
uartF _timer_tick() was not being called in the scheduler.
2017-06-26 13:05:16 +01:00
fsherratt
d3314d7684
AP_BattMonitor: param desc explicitly list Pixhawk 2 PM1 pins
...
There is confusion over which pins to use with the pixhawk 2, updated documentation to explicitly state the PM1 pins as being the same as the original pixhawk
2017-06-24 11:01:03 +09:00
priseborough
a4d18696a7
AP_NavEKF3: Improve variable names and documentation
...
Also remove unnecessary calculation of innov * gain
2017-06-23 00:43:58 +01:00
priseborough
368983ed5a
AP_NavEKF3: Clean up aiding mode logic using switch statements
2017-06-23 00:43:58 +01:00
priseborough
2a9eceaf10
AP_NavEKF3: Fix bugs causing height drift when using range beacons
2017-06-23 00:43:58 +01:00
Miguel Arroyo
6cf9b870b5
AP_Baro: AP_Baro_SITL more accurately simulates real sensor backend.
2017-06-23 09:36:28 +10:00
Pierre Kancir
ccbf281137
AP_RangeFinder: allow to set rangefinder type for mavlink
2017-06-22 16:17:58 +01:00
Leonard Hall
ed0063d10d
AC_AttControl: save accel max using shorter set_and_save
...
no functional change
2017-06-22 15:20:16 +09:00
Leonard Hall
0544cf1d82
AC_AttControl: add step input for autotune
2017-06-22 15:18:04 +09:00
Michael du Breuil
249849dfa4
AP_GPS: Add an enum for _auto_config
2017-06-21 11:44:45 +01:00
Michael du Breuil
5f8633e322
AP_GPS: Allow backends to report their lag confidences
2017-06-21 11:44:45 +01:00
priseborough
7659e9c31f
AP_NavEKF3: Improve checking of time delay validity when setting buffers
...
This change means that provided the GPS_DELAY_MS parameters are set for each GPS receiver attached, the EKF will not have to wait for the configuration of each receiver to be determined before it can start.
This significantly reduces start-up times when the delay parameters are set.
2017-06-21 11:44:45 +01:00
priseborough
7d63286088
AP_NavEKF3: update to match AP_GPS interface change
2017-06-21 11:44:45 +01:00
priseborough
fa5534502a
AP_AHRS: Update to match AP_GPS interface change
2017-06-21 11:44:45 +01:00
priseborough
5dcfc94371
AP_GPS: Add validity boolean to GPS lag reporting
2017-06-21 11:44:45 +01:00
priseborough
bd0229b7bc
AP_GPS: Fix bug in calculation of blended GPS delay
2017-06-21 11:44:45 +01:00
Francisco Ferreira
da5060964b
AP_Math: uniformize template type parameter keyword
...
Use typename everywhere instead of class
2017-06-21 18:19:31 +09:00
Francisco Ferreira
1ffe12008c
AP_Math: adapt test for new norm method API
2017-06-21 18:19:31 +09:00
Francisco Ferreira
7b98f41947
AP_Math: correct norm to need two arguments
...
Correctly use sqrtf instead of the double version
Stop casting to float since sq already returns one
2017-06-21 18:19:31 +09:00
Andrew Tridgell
f3d995a716
AP_Compass: improved robustness of BMM150 detection code
...
cope with bus errors on startup
2017-06-21 16:25:37 +10:00
Andrew Tridgell
68460144df
AP_Compass: added retries on init in BMM150
2017-06-21 16:25:37 +10:00
Andrew Tridgell
9b093c4a33
AP_Compass: fixed a numerical issue in BMM150 driver
...
we were getting the following:
ret=-32768 z=5 rhall=6267 z1=23743 z2=712 z3=-1035 z4=0 xyz1=6264 dividend=163840 dividend2=-1073577207 divisor=5253
the signed/unsigned casts for rhall and xyz1 did not produce the
desired result
2017-06-21 16:25:37 +10:00
Andrew Tridgell
0623db98d6
AP_Compass: cope with bus errors in BMM150
...
if we have bus errors the BMM150 can get confused, giving rubbish
output. This uses the checked register code to reset, and a full soft
reset after 250ms of no samples.
2017-06-21 16:25:37 +10:00
Andrew Tridgell
fa3d40af8a
AP_Compass: fixed shift typo
...
this doesn't affect LE MCUs like STM32
2017-06-21 16:25:37 +10:00
Andrew Tridgell
b8f628da83
HAL_PX4: fixed bug in last_sent
...
thanks to Francisco
2017-06-21 11:40:12 +10:00
Andrew Tridgell
17893958bf
HAL_PX4: cope with brushed motors in read_last_sent()
...
we need the value before scaling is applied, so slew rates can work
2017-06-21 10:55:24 +10:00
Andrew Tridgell
bc8c13d053
SRV_Channel: cope with large time jumps in slew rate limiter
2017-06-20 20:53:44 +09:00
Randy Mackay
a303c40f1f
AP_Beacon: initialise counter in get_next_boundary_point
...
This is not a bug but at least one compiler has complained about this
2017-06-20 16:34:41 +09:00
priseborough
06d40a7901
AP_NavEKF3: Fix terrain estimator innovation consistency check
2017-06-20 02:08:56 +01:00
priseborough
ce8e935896
AP_NavEKF2: Fix terrain estimator innovation consistency check
2017-06-20 02:08:56 +01:00
priseborough
284fc0f3c5
AP_NavEKF3: Fix bug in flow fusion for terrain estimation
...
Also remove unused class variables
2017-06-20 02:08:56 +01:00
priseborough
b7e6e6f95f
AP_NavEKF2: Fix bug in flow fusion for terrain estimation
...
Also remove unused class variables
2017-06-20 02:08:56 +01:00
Michael du Breuil
0b26908359
Landing: Disarm on land for deepstall
2017-06-19 17:02:23 -07:00
Andrew Tridgell
a1508b58c1
AP_NavEKF3: use AHRS likely flying state
...
this sets inFlight when AHRS has indicated flying for 5s
2017-06-20 09:44:44 +10:00
Andrew Tridgell
cbffc29f0b
AP_NavEKF2: use AHRS likely flying state
...
this sets inFlight when AHRS has indicated flying for 5s
2017-06-20 09:44:44 +10:00
Andrew Tridgell
770f697cfc
AP_AHRS: added set/get for flying state
...
this allows the vehicle code to set the likely flying state, which can
be used by EKF to trigger changes which should only happen when flying
(such as mag alignment)
2017-06-20 09:44:44 +10:00
priseborough
647db728ce
AP_NavEKF2: Improve is flying check for non fly forward vehicles
...
Will enable use of EK3_MAG_TYPE = 0 for coptersAP_NavEKF2:
2017-06-19 06:09:07 +10:00
priseborough
edee8396ba
AP_NavEKF3: Improve in-flight check for non fly forward vehicles
...
This will enable the EK3_MAG_TYPE 0 option to be used for multirotors
2017-06-19 06:09:07 +10:00
Andrew Tridgell
a0e4ec0f3a
AP_Compass: fixed bitmask typo
2017-06-18 18:15:47 +10:00
Touch
5da2e0b3fb
Update code format
2017-06-18 17:25:20 +10:00
ljwang
8fff1ec4d4
add QMC5883L driver for GPS compass module
2017-06-18 17:25:20 +10:00
ljwang
e648f2e61e
add QMC5883L driver for GPS compass module
2017-06-18 17:25:20 +10:00
Peter Barker
5c19f09cd7
DataFlash: handle mavlink messages, not just remote-log-block-statuses
2017-06-17 15:07:48 +01:00
Peter Barker
cf918d233f
GCS_MAVLink: move MAVLINK_MSG_ID_REMOTE_LOG_BLOCK_STATUS handling up
2017-06-17 15:07:48 +01:00
Andrew Tridgell
abd0831239
AP_Motors: changed BRUSHED16kHz to BRUSHED
2017-06-17 17:37:45 +10:00
Andrew Tridgell
11396919c8
HAL_PX4: changed BRUSHED16kHz to BRUSHED
2017-06-17 17:37:45 +10:00
Andrew Tridgell
1c741e78e6
AP_HAL: changed BRUSHED16kHz to BRUSHED
2017-06-17 17:37:45 +10:00
Andrew Tridgell
96627bc4e5
HAL_PX4: allow any pulse freq in brushed mode
2017-06-17 17:37:45 +10:00
Andrew Tridgell
97e88501c6
AP_OpticalFlow: support pixart 3901
2017-06-16 17:14:10 +01:00
Peter Barker
6a03af8f3e
DataFlash: make EnableWrites a frontend thing
2017-06-16 17:07:48 +01:00
Peter Barker
07e37281ef
DataFlash: add a should_log method
2017-06-16 17:07:48 +01:00
Peter Barker
001d3a7118
DataFlash: correct consts on CardInserted
2017-06-16 17:07:48 +01:00
Peter Barker
244365767d
DataFlash: remove DataFlash_Block and DataFlash_SITL
2017-06-16 13:52:45 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
6a01c65197
AP_NavEKF3: Fix long description of EK3_OGN_HGT_MASK parameter (NFC)
2017-06-16 12:05:20 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
7426bdb9b7
AP_NavEKF2: Fix long description of EK2_OGN_HGT_MASK parameter
2017-06-16 12:05:20 +01:00
Randy Mackay
a199604348
AP_Beacon: fix get_boundary_points num_points
...
Thanks @OXINARF for finding this!
2017-06-15 09:36:27 +09:00
priseborough
b42fb31d7d
AP_NavEKF2: Change default value of EK2_OGN_HGT_MASK
...
Turn off by default.
Update parameter description
2017-06-14 12:44:41 +01:00
priseborough
49ec2b4032
AP_NavEKF3: Change default value of EK3_OGN_HGT_MASK
...
Turn off by default.
Update parameter description.
2017-06-14 12:44:41 +01:00
priseborough
fd25450632
AP_NavEKF2: Ensure reported local height = global height - origin height
2017-06-14 12:44:41 +01:00
priseborough
6d14cf0ab8
AP_NavEKF3: Ensure reported local height = global height - origin height
2017-06-14 12:44:41 +01:00
priseborough
798d5f85a2
DataFlash: Log EKF origin height
2017-06-14 12:44:41 +01:00
priseborough
a3483d0d34
AP_AHRS: Update for compatibility with EKF interface change
2017-06-14 12:44:41 +01:00
priseborough
3ae7998f51
AP_NavEKF3: Allow reporting of origin height for specified instance
2017-06-14 12:44:41 +01:00
priseborough
77d21f72d4
AP_NavEKF2: Allow reporting of origin height for specified instance
2017-06-14 12:44:41 +01:00
priseborough
e58ba8044d
AP_NavEKF3: Improve protection for badly conditioned dVel bias covariances
...
If variance falls below desired minimum, set state noise to a larger value.
If variance drops below safe value, set to desired minimum and reset off-diagonals to zero.
2017-06-14 12:44:41 +01:00
priseborough
bf963f8b65
AP_NavEKF3: Raise lower limit on del vel bias state variances
...
This is required to prevent co-variance matrix errors due to long periods without movement causing height divergence.
2017-06-14 12:44:41 +01:00
priseborough
628d140319
AP_NavEKF3: Make target covariance time step larger
...
The target covariance time step has been increased from 10 to 12 msec to improve conditioning of the covariance prediction calculation.
2017-06-14 12:44:41 +01:00
priseborough
4c08622a7c
DataFlash: Add logging for EKF3 state variances
2017-06-14 12:44:41 +01:00
priseborough
2b97d0f5c9
AP_NavEKF3: Add public accessor for state variances
2017-06-14 12:44:41 +01:00
priseborough
9f97cbfc3b
AP_NavEKF3: Revert auto-code to original form and remove micro optimisations
...
To eliminate the possibility of editing errors, revert the covariance prediction auto-code to the original auto-code without the replacement fo the /2 and /4 operations. The compiler optimisations are able to correctly handle the /2 and /4 operations.
Also use local variables for intermediate covariance calculations. The use of class variables for these small arrays was unnecessary.
2017-06-14 12:44:41 +01:00
priseborough
f38fccd57c
AP_NavEKF3: Prevent possible race condition re-zeroing state variances
2017-06-14 12:44:41 +01:00
priseborough
7adaea6019
AP_NavEKF3: Improve partitioning and efficiency of the covariance prediction
...
This patch ensures that covariance matrix entries for inactive states are always set to zero.
It also halves the number of copy operations from the updated to stored matrix.
2017-06-14 12:44:41 +01:00
priseborough
a1c117360c
AP_NavEKF3: Ensure Kalman gain calculatons respect deactivated states
...
All Kalman gain calculations now explicity set gains for deactivated states to zero.
Previous use of loops to set gains to zero have been replaced with more efficient memset operations.
2017-06-14 12:44:41 +01:00
priseborough
5058405f8c
AP_NavEKF3: add gyro bias state inhibit and rework index limit calculation
...
Inhibiting gyro bias estimation during the initial tilt alignment speeds alignment.
The calculation of the maxmum state index required has been modified so that it can handle all combinations of inhibited states.
Limiting the maximum state index accessed by all EKF operations result in significant processing reductions when higher index states are not being used.
2017-06-14 12:44:41 +01:00
priseborough
0cba133a1e
AP_NavEKF3: Fix initialisation of state inhibit flags
2017-06-14 12:44:41 +01:00
priseborough
36e7dfb5f6
AP_NavEKF2: Improve GPS reference height estimator
...
Fix rounding error bug preventing state from updating after initial convergence.
Decouple GPS reference height from published EKf origin height.
Add bitmask parameter to control update and publishing of GPS reference height.
2017-06-14 12:44:41 +01:00
priseborough
9da3caca47
AP_NavEKF3: Improve GPS reference height estimator
...
Fix rounding error bug preventing state from updating after initial convergence.
Decouple GPS reference height from published EKf origin height.
Add bitmask parameter to control update and publishing of GPS reference height.
2017-06-14 12:44:41 +01:00
Pierre Kancir
e7a5dd6a69
AP_Marvelmind: fix warning in example
2017-06-14 12:40:47 +01:00
Pierre Kancir
914bc53100
Dataflash: fix shadowing of logstructure in SITL
2017-06-14 12:40:47 +01:00
Peter Barker
af6eb4e41d
DataFlash: remove unused NeedPrep function
2017-06-14 12:20:29 +01:00
Peter Barker
9fb4ac2143
DataFlash: update examples for init simplification
2017-06-14 12:20:29 +01:00
Peter Barker
91b62abfe5
DataFlash: simplify dataflash initialisation
2017-06-14 12:20:29 +01:00
Randy Mackay
3bcc410048
AP_Beacon: fix pozyx west-east processing
2017-06-14 16:07:32 +09:00
Randy Mackay
af7f4fef0a
DataFlash: protect against large testRatio from EKF
...
This should be resolved in the EKF but for now this stops the floating point exception
2017-06-14 16:07:32 +09:00
Shingo Matsuura
7b0f6edf31
AC_Avoidance: add adjust velocity by beacon fence
2017-06-14 16:07:32 +09:00
Randy Mackay
cded78022c
AP_Beacon: update_boundary_points calculates outer perimeter around beacons
2017-06-14 16:07:32 +09:00
Shingo Matsuura
c9475c2747
AP_Beacon: add get_boundary_points
2017-06-14 16:07:32 +09:00
Paulo Neves
3158cafefd
AP_Beacon: Added Marvelmind beacon example.
...
This commit includes an example program to
run the code of AP_Marvelmind class.
It also includes a dump from the marvelmind
serial as well as a script that injects
this dump into the example for demonstration.
2017-06-14 09:33:23 +09:00
Randy Mackay
3e130273a9
AP_AHRS: do not fallback to DCM if EKF can provide relative position
2017-06-14 09:12:20 +09:00
Michael du Breuil
3534d0a0eb
AP_Landing: Fix missing doc for LAND_TYPE
2017-06-13 20:06:41 +09:00
Randy Mackay
c9cc0de83d
AP_LandingGear: set pwm only when set_position called
...
Also simplify interface and internal state
2017-06-13 13:56:07 +09:00
Michael du Breuil
6c3db3939e
AP_GPS: Update comment on get_rate_ms()
...
AP_GPS::get_rate_ms() is only meant to help the GPS backends
2017-06-12 01:06:38 +01:00
Peter Barker
b5029aad4f
DataFlash: correct dataflash examples
2017-06-11 20:34:12 +01:00
Peter Barker
cdd0397bbf
DataFlash: check all backends for sensor health
2017-06-11 20:34:12 +01:00
Peter Barker
7221b0def2
DataFlash: StartUnstartedLogging replaces logging_started/start_logging
2017-06-11 20:34:12 +01:00
Peter Barker
bd747006aa
DataFlash: eliminate calls to manipulate _writes_enabled
2017-06-11 20:34:12 +01:00
Peter Barker
0be2e7962f
DataFlash: create a WritesOK method for WritePrioritisedBlock
2017-06-11 20:34:12 +01:00
Randy Mackay
e84b5c63be
LandingGear: remove unused enabled method
...
Also minor formatting fix
2017-06-10 10:34:33 +09:00
Randy Mackay
45147af455
AP_Beacon: fit SITL beacon location
2017-06-09 15:24:36 +09:00
Randy Mackay
db45442de2
AP_Math: remove unused angle method
2017-06-09 15:21:58 +09:00
Andrew Tridgell
bcd305c821
AP_Compass: fixes for merge with master
2017-06-09 14:56:33 +10:00
Andrew Tridgell
04430457d5
AP_Compass: attempts to diagnose the twitches in MMC3416
2017-06-09 14:56:33 +10:00
Andrew Tridgell
36932a2959
AP_Compass: implement full state machine for MMC3416
...
this uses 100Hz readings most of the time, but does slow offset
readings every 50 samples
2017-06-09 14:56:33 +10:00
Andrew Tridgell
167988b5c4
AP_Compass: implement MMC3416 temperature compensation
...
this is much slower, but removes temperature offset
2017-06-09 14:56:33 +10:00
Andrew Tridgell
736fb715ec
AP_Compass: MMC3416 magnetometer driver
2017-06-09 14:56:33 +10:00
Francisco Ferreira
a960c6526c
AP_Rangefinder: set type for VL53L0X
2017-06-08 01:32:11 +01:00
Pierre Kancir
d5cc1e64ed
GCS_Common: rename send_rangefinder to send_rangefinder_downward
2017-06-08 01:32:04 +01:00
Pierre Kancir
e9685ba13e
GCS_MAVLink: add rangefinder msg
2017-06-08 01:22:07 +01:00
Pierre Kancir
0848d96354
GCS_MAVLink: add send_distance_sensor_downward function
2017-06-08 01:22:07 +01:00
Pierre Kancir
f0369bc507
GCS_MAVLink: add distance sensor msg
2017-06-08 01:22:07 +01:00
Pierre Kancir
38540b4dcc
AP_Proximity: add PROXIMITY_MAX_DIRECTION and PROXIMITY_SENSOR_ID_START
2017-06-08 01:22:07 +01:00
Pierre Kancir
8b38bd2e33
AP_RangeFinder: add sensor type to backend
2017-06-08 01:22:07 +01:00
Andrew Tridgell
b29db0aa5b
AP_RangeFinder: implement VL53L0X rangefinder
2017-06-07 23:05:01 +01:00
Peter Barker
5c15c1e4d2
AP_BoardConfig: add public method returning true if on sensor error
2017-06-07 12:56:46 +01:00
Randy Mackay
1ce2a7fcee
AP_Compass: resolve AK09916 driver compiler warning
2017-06-07 20:38:12 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
ca72f4d283
AC_Stats: NFC Statistics are read-only variables
2017-06-07 19:53:09 +09:00
Pierre Kancir
1c8d169814
AP_HAL_SITL: sitl_airspeed simplify include
2017-06-07 20:29:02 +10:00
Pierre Kancir
775ca9303a
AP_HAL_SITL: sitl_airspeed correct style
2017-06-07 20:29:02 +10:00
Pierre Kancir
0afc907b0a
AP_HAL_SITL: rename sitl_ins & _update_ins to sitl_airspeed & _update_airspeed
2017-06-07 20:29:02 +10:00
Pierre Kancir
b176ba53d7
SIM_Aircraft: move advance in time from update_position to time_advance
2017-06-07 20:29:02 +10:00
Pierre Kancir
579f655e76
SIM_Aircraft: change define in favor of static constexpr
2017-06-07 20:29:02 +10:00
Pierre Kancir
22dd81e298
AP_HAL_SITL: rangefinder const correctness
2017-06-07 20:28:25 +10:00
Pierre Kancir
3f045a4905
AP_HAL_SITL: airspeed_simulated use is_zero
2017-06-07 20:28:25 +10:00
Pierre Kancir
148e84320b
SITL: Sim_aircraft correct style
2017-06-07 20:28:25 +10:00
Pierre Kancir
4acf4538c7
AP_HAL_SITL: rangefinder don't adjust value from FDM on external data
2017-06-07 20:28:25 +10:00
Pierre Kancir
599e3d7b83
SITL: make range finder a standalone sitl plugin
2017-06-07 20:28:25 +10:00
Andrew Tridgell
0e27d4bd6f
AP_Soaring: fixed Log_Write call
2017-06-07 20:10:20 +10:00
samuelctabor
f6b3c00b19
AP_Soaring: Fix initialisers in SoaringController. In-line method to get altitude in Variometer.
2017-06-07 20:10:11 +10:00
samuelctabor
4cbff71689
AP_Soaring: Separate the vario functionality into a seperate class from the soaring/thermalling functionality.
2017-06-07 20:10:03 +10:00
Andrew Tridgell
c9e140a946
AP_Terrain: removed unused variable
2017-06-07 19:59:14 +10:00
Michael du Breuil
3e2b5269a6
AP_Terrain: fix Coverity issue 91367
...
Also converts to using the get_relative_position_D_home() functions rather then attempting to derive home itself
2017-06-07 19:58:45 +10:00
Andrew Tridgell
6a01494d4a
AP_HAL: fixed setting of HAL_MINIMIZE_FEATURES for FMUv3
2017-06-07 17:39:45 +10:00
Andrew Tridgell
d946d5da6f
AP_Compass: enable AK09916 inside a ICM20948
...
the ICM20948 has an AK09916 which can be accessed via I2C bypass
2017-06-07 17:39:45 +10:00
Lucas De Marchi
eb70dbc6f5
AP_HAL: add HAL_OS_POSIX_IO for aerofc-v1
...
What aerofc-v1 doesn't have is an sdcard, but it has posix-like API as
it's running on top of NuttX.
2017-06-06 18:42:17 -07:00
murata
ac8234cdf0
AP_Notify: Change to the value of boolean.
2017-06-07 08:06:44 +09:00
Randy Mackay
33ef3bd51d
AP_Proximity: MAV driver gets distance validity check
2017-06-06 20:41:54 +09:00
Randy Mackay
1409f0ca7e
DataFlash: rename CURR/CUR2 to BAT/BAT2
2017-06-06 14:57:04 +09:00
Randy Mackay
26845cc66a
DataFlash: add resting voltage and resistance to current logging
...
also log cell voltages in separate message
2017-06-06 14:57:04 +09:00
Leonard Hall
9e86732edc
AP_Motors: accept external battery resistance estimate
2017-06-06 14:57:04 +09:00
Randy Mackay
7a2d8fd5fd
AP_BattMonitor: add has_cell_voltages method
2017-06-06 14:57:04 +09:00
Randy Mackay
6d8dc0fccf
AP_BattMonitor: replace int with uint8_t
...
non-functional change
2017-06-06 14:57:04 +09:00
Leonard Hall
d5e898156f
AP_BattMonitor: allow using resting voltage for failsafe
2017-06-06 14:57:04 +09:00
Leonard Hall
8709fe58ec
AP_BattMonitor: resistance learning
2017-06-06 14:57:04 +09:00
Randy Mackay
f64777849f
AP_BattMonitor: rename VOLT_TIMER to LOW_TIMER
2017-06-06 14:57:04 +09:00
Randy Mackay
989677ddfd
AP_BattMonitor: move has_current to backend
2017-06-06 14:57:04 +09:00
Matt
f02bfab7fe
AP_Notify: OreoLED rework
...
Reworked the process flow. Created the aviation vs rover themes.
Created visual operator feedback for prearm checks, GPS, EKF, gyro init,
radio failsafe, and low battery. This also includes work by Hugh Eaves
to open up the full extended properties of the Oreo LEDs. Not only are
far more functions available, but you can override and do custom things
via mavlink.
2017-06-06 12:59:03 +09:00
Matt
34d305083d
AP_Notify: Complete rework of notify device selection
...
Jaime did the hard work on this one. He reworked notify device
selection to take place on init rather than on compile like before. The
notify decivces are mostly set on compile using preprocessor directives
based on board type. I created NTF_OREO_THEME. This will allow the
user to enable/disable the OreoLED driver. And it also allows you to
select between aircraft and rover lighting themes. This allows the Solo
to use the OreoLEDs, and doesn't waste the memory on vehicles not
equipped with Oreo LEDs. The OreoLED driver is restricted to Pixhawk 2
FCs by proprocessor directive due to memory constraints. So it will
never work by accident on another board.
There is also a new notify flag for GPS Fusion. This flag is true when
the EKF is happy with the GPS, actively using it for position
information.
2017-06-06 12:58:28 +09:00
Matt
6354ca7096
AP_AHRS: Set the new gps_fusion notify flag
...
Uses EKF filter state to set the new gps_fusion notify flag. This allows
the GCS and notify devices to specifically be notified if the GPS is or
is not usable.
2017-06-06 10:38:42 +09:00
Matt
545e417348
AP_Notify: Remove solo specific tones, align with px4 tones
...
Evaluated solo specific tones file vs standard px4 tones files. The
only thing the Solo had that standard ArduPilot does not have is the GPS
unplugged tone and the power off tone.
* Some tones have a different tune, which is fine. We want the Solo to
sound like ArduPilot if it is running ArduPilot.
* GPS unplugged tone abandoned. Determined to be unnecessary.
* Power off tone merged into standard px4 tones file. Smart battery
signalling a power off will make use of this tone. Has application for
any smart battery equipped vehicle, not just Solo.
* Removed all references and dependencies to `ToneAlarm_PX4_Solo.cpp`
and `ToneAlarm_PX4_Solo.h`
* Deleted `ToneAlarm_PX4_Solo.cpp` and `ToneAlarm_PX4_Solo.h` since
they're no longer needed.
2017-06-06 10:38:40 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
65cca6ae87
SRV_Channel: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
ed07d5b5c9
RC_Channel: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
2c867ec362
AP_RSSI: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
89a0d2aa3b
AP_Parachute: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
1b062d9d29
AP_Motors: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
eebf26ed9f
AP_LandingGear: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
d1f9633ed2
AP_Landing: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
1ad5e58eb7
AP_Gripper: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
67620e87f0
AP_Camera: Improve the PWM parameters descriptions
2017-06-06 11:06:26 +10:00
Jonathan Challinger
2e07f8824e
AP_Motors: reserve parameter index 38
2017-06-06 08:45:37 +09:00
Peter Barker
d56eca036d
AC_AttitudeControl: correct parameter markup
2017-06-05 21:02:30 +10:00
priseborough
1985dcd366
AP_NavEKF2: Fix bug in declination fusion
2017-06-03 15:16:25 +01:00
Lucas De Marchi
2e096d76c6
sparse-endian: avoid clash with linux/types.h
...
On recent kernels (>= 4.10) __bitwise is defined on the header. Avoid
warning about redefining it.
2017-06-02 11:26:02 -07:00
Michael du Breuil
6830a8b86c
AccelCal: Continously report success/failure to the GCS that requested the calibration
2017-06-01 20:20:05 +01:00
Michael du Breuil
c62e79b5c0
GCS_MAVLink: Update the accelcal signature to accept uint32_t
2017-06-01 20:20:05 +01:00
mirkix
478fb60a5b
AP_HAL: BeagleBone Blue fix HMC5843 I2C bus number
2017-06-01 17:11:34 +01:00
mirkix
d9d3d97e54
AP_Compass: BeagleBone Blue add external compass HMC5843
2017-06-01 17:11:34 +01:00
Leonard Hall
447b20efa5
AP_InertialSensor: reduce accel filter to 10hz
2017-06-01 14:53:48 +09:00
Leonard Hall
ad74769fb7
AC_AttControl: adjust default rate IMAX and Yaw Filt
...
Increase Roll, Pitch and Yaw IMAX from 0.444 or 0.222 to 0.5
Decrease Yaw Filter from 5hz to 2.5hz based on the results of autotunes on many vehicles which always seems to produce values between 2 and 3hz
2017-06-01 10:08:41 +09:00
Michael du Breuil
ffe701bda3
AP_GPS: Use a static assert to check that the init blob is small enough
2017-05-31 14:39:53 +01:00
Randy Mackay
0b7ec0dc64
AP_Proximity: validate range finder distances
2017-05-31 16:26:42 +09:00
Michael du Breuil
1877d09f7c
AP_GPS: Don't track detection time to broadcast baud rate
2017-05-30 23:37:59 +01:00
Michael du Breuil
84598544fb
AP_GPS: Don't autodetect NMEA instances
2017-05-30 23:37:59 +01:00
Michael du Breuil
f026438f22
AP_BattMonitor: Fetch remaining capacity
2017-05-30 20:28:12 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
f7a683d38e
AP_BoardConfig: remove redundant BRD_ prefix, it also made this parameter 17 characters long
2017-05-30 12:09:02 +09:00
Michael du Breuil
2cd6ff6dd5
AP_Math: Accept float epsilon in is_positive is_negative as a valid result
2017-05-27 10:46:59 -07:00
murata
c21b586ccc
SITL: add dodeca-hexa support
2017-05-27 14:21:13 +09:00
murata
66fc49889b
AP_Motors: add dodeca-hexa
2017-05-27 14:21:13 +09:00
Randy Mackay
d00725b2ed
AP_Motors: rc_write handles motors 9 to 12
2017-05-27 14:21:13 +09:00
Randy Mackay
544d6aa8a0
SRV_Channel: define aux functions for motors 9 to 12
2017-05-27 14:21:13 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
bf4a505494
AP_SerialMananger: Add missing @RebootRequired: True
2017-05-27 01:55:55 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
3f6059397c
AP_NavEKF2: Add missing @RebootRequired: True
2017-05-27 01:55:55 +01:00
Michael du Breuil
a1479c4138
AP_GPS: SBF report driver lag
2017-05-26 17:42:15 +01:00
Michael du Breuil
3da3ad05bf
AP_GPS: SBF report velocity accuracy
2017-05-26 17:42:15 +01:00
murata
75f744591e
AP_Avoidance: Change the determination place of the index value.
2017-05-25 23:23:16 +01:00
Michael du Breuil
c7a89d5aa0
AP_GPS: Set unknown DOP's to UINT16_MAX, rather then 9999
...
This fixes the MAVLink reporting for unknown dops, and avoids the situation where a GPS driver could report a worse DOP then we could handle.
Also corrects an apparent error in the HIL_GPS MAVLink message, where we would always select the unknown dop value rather then provided DOP.
2017-05-25 11:03:33 -07:00
Michael du Breuil
26ff1acf55
Landing: Deepstall print travel distances
...
The distances are used for doing log analysis on the prediction numbers.
2017-05-24 15:22:27 -07:00
Michael du Breuil
16bd7a091e
GCS_MAVLink: Add landing reporting
2017-05-24 15:22:27 -07:00
Michael du Breuil
1e735324d4
AP_Landing: Add MAVLink reporting interface
2017-05-24 15:22:27 -07:00
Michael du Breuil
5a15413513
AP_Math: Add is_negative and is_positive helpers
2017-05-24 15:22:27 -07:00
Michael du Breuil
397ae00526
AP_GPS: SBF report VDOP
2017-05-24 20:03:29 +01:00
Michael du Breuil
7e5aa5bc4c
AP_Mission: Prohibit resuming mission waypoints that are no longer in the mission
2017-05-24 10:19:56 -07:00
Andrew Tridgell
a3cb6a42c9
AP_BoardConfig: drop target temperature for cube to 45
...
getting to 60 was taking far too long (15 minutes or so). 45 is more
achievable.
This is a result of the fix to the invensense temperature detection
code
2017-05-24 08:41:16 +10:00
Andrew Tridgell
9e74bfbc20
AP_BoardConfig: cope with bad config of pixhawk2
...
don't allow FMUv2 firmware on cube, and force temperature if incorrect
2017-05-24 08:41:16 +10:00