Commit Graph

9015 Commits

Author SHA1 Message Date
Paul Riseborough f500474a86 AP_NavEKF2: initial import of new maths EKF 2015-09-23 09:51:14 +10:00
Tom Pittenger 583c1fc229 GCS_MAVLink: Add "Abort Alt" description to NAV_LAND mission item p1.
This abort Alt value is the altitude used to climb to if a land is aborted.
2015-09-23 09:25:46 +10:00
Julien BERAUD 3b5d73b1fe AP_Baro_MS5611: Fix state machine in case of error
If there is a read error, reading from the adc will return 0 but moreover,
we need to re-initiate a read or else we are stuck forever.

From MS5611-01BA03 datasheet, p. 10, CONVERSION SEQUENCE:
"After the conversion, using ADC read command the result is clocked out with the MSB first.
If the conversion is not executed before the ADC read command, or the ADC read command is
repeated, it will give 0 as the output result."
2015-09-23 09:19:22 +10:00
Lucas De Marchi 0ed7f94bfc AP_HAL_SITL: use method for downcast
Instead of just doing a static cast to the desired class, use a method
named "from". Pros:

  - When we have data shared on the parent class, the code is cleaner in
    child class when it needs to access this data. Almost all the data
    we use in AP_HAL benefits from this

  - There's a minimal type checking because now we are using a method
    that can only receive the type of the parent class
2015-09-23 09:01:29 +10:00
Lucas De Marchi 6c19f741df AP_BattMonitor: use method for downcast
Instead of just doing a static cast to the desired class, use a method
named "from". Pros:

  - When we have data shared on the parent class, the code is cleaner in
    child class when it needs to access this data. Almost all the data
    we use in AP_HAL benefits from this

  - There's a minimal type checking because now we are using a method
    that can only receive the type of the parent class
2015-09-23 09:01:29 +10:00
Lucas De Marchi 294298ea34 AP_InertialSensor: use method for downcast
Instead of just doing a static cast to the desired class, use a method
named "from". Pros:

  - When we have data shared on the parent class, the code is cleaner in
    child class when it needs to access this data. Almost all the data
    we use in AP_HAL benefits from this

  - There's a minimal type checking because now we are using a method
    that can only receive the type of the parent class
2015-09-23 09:01:29 +10:00
Lucas De Marchi 54c2c5f682 AP_HAL_Linux: use method for downcast
Instead of just doing a static cast to the desired class, use a method
named "from". Pros:

  - When we have data shared on the parent class, the code is cleaner in
    child class when it needs to access this data. Almost all the data
    we use in AP_HAL benefits from this

  - There's a minimal type checking because now we are using a method
    that can only receive the type of the parent class
2015-09-23 09:01:29 +10:00
Andrew Tridgell 0d26252bdb AP_Terrain: don't allocate cache array when terrain not enabled
this makes it easy to save 22k of ram when running other experiments
2015-09-23 08:31:17 +10:00
Tom Pittenger e2fde36ec6 AP_NavEKF: index out of range due to incorrect assignment 2015-09-22 11:41:51 +09:00
Jonathan Challinger d2b103b323 AP_SmallEKF: replace incorrect quaternion rotations with library call 2015-09-22 11:15:05 +10:00
Andrew Tridgell eabdee2b3c DataFlash: only log two rangefinders
this prevents a array index build error on PX4
2015-09-22 09:24:55 +10:00
Andrew Tridgell 5800f0c884 AP_RangeFinder: default to two rangefinders
and fixed documentation strings for rangefinder 3 and 4 if enabled
2015-09-22 09:04:47 +10:00
Paul Riseborough 5c32bb8858 AP_NavEKF: Add pre-flight check for gyro quality 2015-09-21 17:06:31 +09:00
Randy Mackay 73e7e64bb8 AP_Arming: remove unused set_skip_gyro_cal 2015-09-21 17:06:29 +09:00
Randy Mackay 87cada1d54 Scheduler: remove INS start style from example sketch 2015-09-21 17:06:25 +09:00
Randy Mackay b5e1ad89b3 AHRS: remove INS start style from example sketch 2015-09-21 17:06:23 +09:00
Randy Mackay ada26082ca InertialSensor: remove INS start style from example sketch 2015-09-21 17:06:20 +09:00
Randy Mackay ec82aa68c4 InertialSensor: add GYR_CAL to control when gyro calibration occurs 2015-09-21 17:06:16 +09:00
mirkix 038ad31f81 AP_HAL_FLYMAPLE: Add support for using SPI devices of the same type. 2015-09-18 09:15:09 +10:00
mirkix 07d50b5fbb AP_HAL_Empty: Add support for using SPI devices of the same type. 2015-09-18 09:15:09 +10:00
mirkix f48bdc281f AP_HAL: Add support for using SPI devices of the same type. 2015-09-18 09:15:09 +10:00
mirkix 93941c3349 AP_HAL_Linux: Add support for using SPI devices of the same type. 2015-09-18 09:15:09 +10:00
Peter Barker 8f1471c137 DataFlash: leave room in buffer for non-startup messages 2015-09-18 09:13:45 +10:00
Peter Barker 63a45000b4 DataFlash: take log messages after putting FMTs out 2015-09-18 09:13:45 +10:00
raspilot 1b5e6849d9 AP_Compass: fix milligauss code in LSM303D driver 2015-09-16 16:52:17 +09:00
Randy Mackay ce6fe0e746 AP_RSSI: add enabled method 2015-09-16 16:41:41 +09:00
Randy Mackay f633733b3b AP_RSSI: make parameters private 2015-09-16 16:41:38 +09:00
Randy Mackay 9a648117a7 AP_RSSI: use is_zero and add break for avoid compile warning 2015-09-16 16:41:36 +09:00
Randy Mackay 1369179046 AP_RSSI: formatting fixes 2015-09-16 16:41:33 +09:00
Stewart Loving-Gibbard 4dcf6b8dc3 DataFlash: Adding Logging of RSSI data. 2015-09-16 16:41:31 +09:00
Paul Riseborough 8cfde42e15 AP_NavEKF: Ensure bad mag data cannot cause the heading to reset too often 2015-09-16 15:13:37 +09:00
Paul Riseborough 930f730612 AP_NavEKF: Reset mag and heading states to try and pass pre-flight checks 2015-09-16 15:13:36 +09:00
Randy Mackay fff5ec09eb AP_Compass: fix consistent check for less than three compasses
Also use vector functions where available
Use get_field_milligause instead of just get_field
2015-09-16 15:11:01 +09:00
Jonathan Challinger 87bbf1a487 AP_Compass: add consistent() function 2015-09-16 15:10:27 +09:00
Randy Mackay 39340e70f8 Math: add Vector2 is_zero method 2015-09-16 15:10:25 +09:00
Andrew Tridgell 094b9cb35e AP_TECS: reformat using astyle 2015-09-16 14:24:45 +10:00
Andrew Tridgell 36432e6515 AP_TECS: use climb rate filter consistently between DCM and EKF
we should use baro height not hgt_afe for the climb rate filter. This
makes the climb rate consistent with the one from the EKF. The lidar
correction comes in with the demanded height, not the observed height
2015-09-16 14:24:44 +10:00
Randy Mackay bc06d67645 AP_Camera: fix configure command id sent to components
Also removed unnecessary setting of target system, component and
confirmation and minor formatting fix
2015-09-16 13:06:46 +09:00
squilter 8391764c60 AP_Camera: add support for do_digicam_x via command_long 2015-09-16 13:06:44 +09:00
Grant Morphett b2751d876c AP_AHRS: Fixed spelling error in parameter desc. 2015-09-16 09:33:30 +09:00
Grant Morphett 417188d7eb APM_Control: Fixed spelling error in parameter desc. 2015-09-16 09:33:27 +09:00
Julien BERAUD 5602e4055b AP_Compass_AK8963: Fix Rotation on the Bebop 2015-09-15 14:45:17 +09:00
Andrew Tridgell fa9ff5b604 AP_Compass: added parameter for compass calibration fitness threshold 2015-09-14 17:01:14 +10:00
Andrew Tridgell eea54c9e09 DataFlash: fixed flymaple build 2015-09-14 16:44:45 +10:00
Andrew Tridgell 5aa54be718 GCS_MAVLink: send SCALED_PRESSURE3 for 3 baros 2015-09-14 14:27:42 +10:00
Andrew Tridgell afe1fce94e GCS_MAVLink: regenerate headers 2015-09-14 14:27:42 +10:00
Andrew Tridgell 91623322f9 GCS_MAVLink: added SCALED_PRESSURE3 2015-09-14 14:27:41 +10:00
Andrew Tridgell a5462fec0b AP_Baro: allow selection of primary barometer and add 3rd baro
this is useful for external I2C barometers on a PH2
2015-09-14 14:27:41 +10:00
Andrew Tridgell 61441ab35d HAL_Linux: fixed apm2 build 2015-09-14 14:22:16 +10:00
Andrew Tridgell bf001f19ff HAL_Linux: don't panic on runtime failures 2015-09-14 14:22:16 +10:00
Andrew Tridgell 582318448f AP_HAL: make new GPIO functions optional
not available on all boards
2015-09-14 14:22:16 +10:00
Andrew Tridgell e0db1ad93e AP_Notify: added support for raspilot LED 2015-09-14 14:22:16 +10:00
raspilot 9f91eb020e AP_HAL_Linux: new files for raspilot 2015-09-14 14:22:16 +10:00
raspilot 30a2fe0857 AP_HAL_Linux: added scheduler hooks for raspilot 2015-09-14 14:22:16 +10:00
raspilot 25cddbcbaa AP_HAL_Linux: added SPI support for raspilot 2015-09-14 14:22:16 +10:00
raspilot 7d329205ec AP_HAL_Linux: added tonealarm support for raspilot 2015-09-14 14:22:16 +10:00
raspilot a6736d8e61 AP_HAL_Linux: fixed ublox debug message 2015-09-14 14:22:16 +10:00
raspilot 444081d38d AP_HAL_Linux: added support for raspilot objects 2015-09-14 14:22:16 +10:00
raspilot f057fe3d02 AP_HAL_Linux: added support for raspilot GPIO 2015-09-14 14:22:15 +10:00
raspilot 9a73df1bea AP_HAL_Linux: added support for raspilot RCInput 2015-09-14 14:22:15 +10:00
raspilot 1421cf600a AP_InertialSensor: added support for raspilot 2015-09-14 14:22:15 +10:00
Lucas De Marchi 309e75f9ac AP_Compass: LSM303D: use c++11 initializer to avoid Wreorder 2015-09-14 14:22:15 +10:00
Lucas De Marchi 3a017c8702 AP_Compass: LSM303D: rename members to follow convention
Make the members have similar names as HMC5843 driver and prepend
underscore on private fields.
2015-09-14 14:22:15 +10:00
raspilot 19b4f5559a AP_Compass: added LSM303D driver 2015-09-14 14:22:15 +10:00
raspilot 6df83f46c5 AP_HAL: new GPIO APIs 2015-09-14 14:22:15 +10:00
raspilot dcc7cf2739 AP_HAL: raspilot board type 2015-09-14 14:22:15 +10:00
Andrew Tridgell 76aa1a9704 SITL: ensure zero rotor speed with ignition off in gas heli 2015-09-14 12:46:04 +10:00
Andrew Tridgell 6fbe88ba3a AP_GPS: improved fake ublox to give enough for EKF health 2015-09-14 11:36:15 +10:00
Andrew Tridgell e87139eb32 AP_GPS: fixed a build warning 2015-09-14 11:36:10 +10:00
Andrew Tridgell 43ac3f86c5 DataFlash: added RNFD logging and 3 baros 2015-09-13 11:29:59 +10:00
Andrew Tridgell 8538aa9840 AP_Rangefinder: allow for up to 4 rangefinders 2015-09-13 11:29:56 +10:00
Daniel Nugent 58b7bf1588 AC_PrecLand: add companion computer implementation 2015-09-11 20:56:08 +09:00
Daniel Nugent 2f92876865 AC_PrecLand: remove const from get_angle_to_target 2015-09-11 20:56:07 +09:00
Daniel Nugent 21ac12f1c3 AC_Precland: bug fix to update ef angles only with new readings 2015-09-11 20:56:05 +09:00
Daniel Nugent db8f28f2aa GCS_MAVLink: version update after generating LANDING_TARGET 2015-09-11 20:56:04 +09:00
Daniel Nugent 3aa0063f31 GCS_MAVLink: generate after updating LANDING_TARGET msg 2015-09-11 20:56:03 +09:00
Daniel Nugent eba8dcffde GCS_MAVLink: update LANDING_TARGET from upstream mavlink 2015-09-11 20:56:02 +09:00
Andrew Tridgell d07d2f3a46 AP_GPS: removed UBX3 message
replaced by GPA and GPA2 messages
2015-09-09 15:01:45 +10:00
Andrew Tridgell c5cd310818 DataFlash: added GPA and GPA2 messages for GPS accuracy
this reverts the GPS format to the old format, thus fixing log
analysers
2015-09-09 14:53:11 +10:00
Andrew Tridgell c59bdc12df AP_Compass: fix the milligauss handling
the previous approach assumed a 1:1 mapping between compass backends
and compass instances, which isn't true on PX4.

It also only setup milligauss offsets on a set_and_save call, which is
not the only way offsets change

this adds a milligauss_ratio per instance, which is considerably
simpler
2015-09-09 14:53:11 +10:00
Andrew Tridgell 3699932417 AP_Compass: fixed SITL compass 2015-09-09 14:53:11 +10:00
Randy Mackay f1322252ae GPS: fix GNSS_MODE param descriptions
Thanks to Michael DuBreuil for noticing the problem and providing the correction
2015-09-09 13:40:32 +09:00
Buzz 684dfaf26f DataFlash: fix OSX build 2015-09-09 13:09:01 +09:00
Michael Oborne 88cf710f94 AP_GPS_SBF: add accuracy estimates 2015-09-09 12:28:25 +10:00
Peter Barker 60010e794e DataFlash: ensure 10% free space when initialising logging 2015-09-09 12:22:35 +10:00
Angus Peart 95c66a794e AP_Notify: sync oreoleds before a reboot 2015-09-09 10:39:54 +09:00
Angus Peart a887c1d1f2 AP_Notify: fix oreoled race causing startup flicker 2015-09-09 10:39:53 +09:00
Angus Peart d48f1b0ccf AP_Notify: oreoled - remove dangerous send_bytes 2015-09-09 10:39:52 +09:00
Angus Peart 662a3aa4cb AP_Notify: oreoled - always use full brightness 2015-09-09 10:39:51 +09:00
Jonathan Challinger d205de2d7e AP_Notify: use new macros for white/red pattern 2015-09-09 10:39:51 +09:00
Randy Mackay 872e6769b0 Notify: change firmware_update event to flag 2015-09-09 10:39:50 +09:00
Jace A Mogill 068cdfe6a3 Notify: workaround for OREOLED problems 2015-09-09 10:39:49 +09:00
Michael du Breuil a88e10d3a0 DataFlash: Log vDOP with GPS messages.
Due to the description string getting to long HDop was renamed as EPH with VDop as EPV (Which is the same terimnology  used to describe the MAVLink side). Status was shortened to stat as well.
2015-09-09 11:38:12 +10:00
Michael du Breuil 9f02834f6d AP_GPS: Broadcast vDOP data over mavlink 2015-09-09 11:38:12 +10:00
Michael du Breuil 0e3a188f6f AP_GPS: Read the vdop information from a ublox GPS 2015-09-09 11:38:12 +10:00
Peter Barker f9a1102e96 DataFlash: correct compilation for new DataFlash signature 2015-09-09 10:58:27 +10:00
Peter Barker a2f1bf581a DataFlash: fix test for SITL and linux 2015-09-09 10:58:27 +10:00
unknown b1ce6136c4 DataFlash_test:make it works with pixhawk2 2015-09-09 10:58:26 +10:00
Staroselskii Georgii bd7c313bee AP_Compass: fixed Compass::get_raw_field()
It seems as if it were a copy-paste error. A statis analyzer would
definetely be angry.
2015-09-09 10:38:17 +10:00
Staroselskii Georgii 375724b319 Arming: use milligauss as compass units 2015-09-09 10:38:16 +10:00