Commit Graph

616 Commits

Author SHA1 Message Date
Andrew Tridgell e552fd7e5a AP_Baro: adjust for new baro params in SITL 2020-12-11 15:21:41 +11:00
Andrew Tridgell 9563c1ed33 AP_Baro: rename wind coefficient params to be clearer 2020-12-11 15:21:41 +11:00
Andrew Tridgell 1c1c067dee AP_Baro: rework to separate out wind coefficient params
- disable on low flash boards
 - add an enable parameter per baro for wind coeffients
2020-12-11 15:21:41 +11:00
Paul Riseborough 0be0498801 AP_Baro: Add static pressure positoin error correction 2020-12-11 15:21:41 +11:00
Andrew Tridgell d099af87b2 AP_Baro: renamed parameters and mark pressure and temperature readonly
this is ready for BARO parameter prefix
2020-12-08 13:22:17 +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 b0ec4f8b93 AP_Baro: removed have_ekf_logging() 2020-11-10 16:15:45 +11:00
murata 22b8ed5adf AP_Baro: Delete unnecessary return processing 2020-10-27 10:48:52 +11:00
murata 967aa44fbe AP_Baro: Change message from AP_Baro to Baro for unification accross the file 2020-10-08 10:51:33 +11:00
giacomo892 9c42c0f176 AP_Baro: remove unnecessary debug on DPS280 2020-09-25 08:19:29 +10:00
Kai Schoos 798c3fd0b7 AP_Baro: examples: BARO_generic: instantiate sitl to fix nullptr panic 2020-09-22 14:56:59 +10:00
Andrew Tridgell 7daf8d3cd4 AP_Baro: fixed build warnings for MSP with AP_Periph 2020-09-15 09:40:03 +10:00
yaapu ea53ce2a3f AP_Baro: support for MSP barometer 2020-09-09 06:35:50 +10:00
Harshit Kumar Sankhla d7c569c085 AP_Baro: able to freeze baro using SITL parameter 2020-08-27 20:20:51 +10:00
Andrew Tridgell 326ab0d7b8 AP_Baro: added get_primary() method 2020-08-27 20:20:51 +10:00
Siddharth Purohit dc02322017 AP_Baro: move to using CANManager library 2020-08-19 17:31:09 +10:00
Patrick José Pereira e1b6ef3e14 AP_BARO: Fix zero as nullptr in KellerLD
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-08-09 10:12:16 +10:00
Andrew Tridgell 978a7d2859 AP_Baro: added device IDs for barometers
this allows us to tell what barometers were detected in logs
2020-07-21 08:20:01 +09:00
Harshit Kumar Sankhla 27fc7dcf0a AP_Baro: get SITL to work with multiple baros
baro readings are independent of each other
and can be configured to behave differently
2020-07-08 16:25:31 +10:00
vierfuffzig 6fa7dca68b AP-Baro: fix init without baro 2020-05-26 10:04:22 +10:00
Peter Barker 6b232ee515 AP_Baro: add documentation for ICBM message (ICM20789 diagnostics) 2020-04-26 09:02:39 +10:00
Andrew Tridgell 02aebfcd6f AP_Baro: fixed build warning 2020-04-20 07:10:21 +10:00
Patrick José Pereira 4018a79f83 AP_Baro: Fix scope of HAL_INS_MPU60x0_NAME
`read_calibration_data` is defined but only used inside the
definition scope.

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-04-17 15:58:38 +10:00
murata 10b7988092 AP_Baro: Fix timestamp wrapping 2020-04-14 07:30:58 +10:00
Andrew Tridgell 322bad3fd9 AP_Baro: make all semaphores recursive
the cost is very similar and this prevents an easy coding error which
can occur on less used code paths
2020-01-19 20:19:30 +11:00
Andrew Tridgell 8c563ef1bf AP_Baro: use take_blocking instead of HAL_SEMAPHORE_BLOCK_FOREVER
this makes for cleaner and smaller code as the failure case is not
needed
2020-01-19 20:19:30 +11:00
Andrew Tridgell 4d24aa43db AP_Baro: added dummy driver
useful for board bringup
2020-01-18 17:00:44 +11:00
Andrew Tridgell d8beb55e9f AP_Baro: fixed BMP388 on SPI 2020-01-18 17:00:44 +11:00
Andrew Tridgell 8e4138b503 AP_Baro: fixed baro health for AP_Periph 2020-01-18 15:44:17 +11:00
Patrick José Pereira d36157f314 AP_Baro: Add BME280 ID in BMP280
BME280 has the same memory layout than BMP280,
but with more features.

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-01-16 08:01:54 +11:00
Peter Barker 4e40c39128 AP_Baro: add missing break statement 2020-01-15 13:55:42 +11:00
CUAVcaijie 8daa8f34c9 AP_Baro: added averaging of CAN baro output 2019-12-26 12:21:41 +11:00
Michel Pastor 0857cf49d5 AP_Baro: add driver for the SPL06-001 2019-11-24 16:47:31 -08:00
Michel Pastor ada1239012 AP_Baro: fix PROBE_EXT parameter description 2019-11-18 08:23:33 +08:00
Mark Whitehorn a1868b8b67 AP_Baro: rename sensor_config_error to config_error 2019-11-08 10:14:34 +11:00
murata 233fb94417 AP_Baro: Add I2C Access 2019-10-27 20:02:27 +11:00
Andrew Tridgell 94418ca70e AP_Baro: added register checking and reset to DPS280 driver
this is to fix an issue found on a mRoControlZeroF7
2019-10-15 10:22:15 +11:00
Peter Barker 04ee459e8c AP_Baro: exclude Sub pressure transducers from non-sub builds 2019-09-28 16:41:06 +10:00
liang d890203f73 AP_Baro: LPS22H: correct formatting 2019-09-24 09:50:56 -07:00
Andrew Tridgell f18a18c0ee AP_Baro: use GET_I2C_DEVICE() for i2c probes
for consistency with compass and INS
2019-09-04 16:27:47 +10:00
Andrew Tridgell 2509b50852 AP_Baro: define GET_I2C_DEVICE() 2019-09-04 16:27:47 +10:00
Michael du Breuil 5d888abfec AP_Baro: Directly include needed headers 2019-08-28 13:13:03 +10:00
Andrew Tridgell 6cecf15e6a AP_Baro: remove unused baro probe lines 2019-08-28 06:54:11 +10:00
Andrew Tridgell e8e18959f7 AP_Baro: fixed baro build with AP_Periph
no GCS available
2019-08-27 10:29:56 +10:00
Andrew Tridgell a19e55e83c AP_Baro: added BMP388 driver 2019-08-27 10:29:56 +10:00
Jaaaky fee3136b44 AP_Baro: Fix floating point exception with watchdog reset
Fixes #12132
2019-08-26 12:24:21 +10:00
Peter Barker c16504e33e AP_Baro: examples: var_info is now in GCS_MAVLINK_Parameters 2019-08-14 18:25:43 +10:00
Andrew Tridgell c9567783e6 AP_Baro: use sensor_config_error on baro cal failure
this allows the user to fix parameters
2019-07-31 14:30:49 +10:00
Michael du Breuil 5645709e50 AP_Baro: Rearrange the sensor struct
Saves 12 bytes of RAM, 144 bytes of flash on CubeBlack
2019-07-31 14:30:25 +10:00
Andrew Tridgell 6f58260d99 AP_Baro: check for all 1 ADC read on MS5611 2019-07-31 12:53:57 +10:00
Andrew Tridgell a196c54db6 AP_Baro: consider a baro unhealthy when outside of -200 to 200 C
this helps detects unhealthy baros on SPI where we can't detect comms
failure
2019-07-31 12:53:57 +10:00
Peter Barker c283bb968b AP_Baro: support 0 detected simulated baros 2019-07-09 10:01:23 +10:00
Andrew Tridgell f7b9368b94 AP_Baro: support new sensor config setup 2019-05-30 15:39:57 +10:00
Andrew Tridgell 5023b51679 AP_Baro: added semaphore for safe multi-thread use of APIs 2019-05-30 08:33:12 +10:00
Pierre Kancir 3fa419e132 AP_Baro: fix LPS22H on I2C 2019-05-22 07:37:20 +10:00
Pierre Kancir 2348fa4201 AP_Baro: probe HAL_BARO_LPS22H_I2C 2019-05-22 07:37:20 +10:00
Andrew Tridgell 097519926d AP_Baro: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Phillip Kocmoud 069d054e5c AP_Baro.cpp: support DPS280 on SPI 2019-05-10 15:05:42 +10:00
Phillip Kocmoud a24bbe0b13 AP_Baro: support DPS280 on SPI 2019-05-10 15:05:42 +10:00
Jaaaky 6ed8b2aad9 AP_Baro: Fix not healthy by watchdog reset 2019-05-03 10:42:43 +10:00
murata 716cc26082 AP_Baro: Commonize the CRC4 method 2019-04-24 08:44:11 -07:00
Jonathan Challinger c45ca690dc AP_Baro: make crc4 a static member of AP_Baro_MS56xx 2019-04-24 11:45:14 +10:00
Andrew Tridgell 8d57a6a86a AP_Baro: skip cal on watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell fef42c6219 AP_Baro: fixes for LPS2XH driver
use fractional temperature, and check status register to ensure we
have data available
2019-04-08 12:52:19 +10:00
Peter Barker 10cc05c8ed AC_Baro: add floating point constant designators 2019-04-05 23:04:17 -07:00
Michael du Breuil fd8f70c098 AP_Baro: Include AP_Logger directly 2019-04-05 20:12:53 +11:00
Sagnik Bhattacharya 1830e72a0e AP_Baro: add more comments to example 2019-04-02 19:41:45 +11:00
Tom Pittenger b54da9aab8 AP_Baro: rename dataflash to logger 2019-03-28 16:40:57 +11:00
mirkix 655421c526 AP_Baro: remove unused field 2019-03-25 08:26:49 +11:00
Andrew Tridgell c31ee1f71b AP_Baro: setup for fmuv6 2019-02-26 16:18:26 +11:00
Peter Barker 5e6f02f51e AP_Baro: uavcan: reindent after WITH_SEMAPHORE change (NFC) 2019-02-16 14:33:11 +11:00
Peter Barker 78f05492d7 AP_Baro: uavcan: use WITH_SEMAPHORE in place of give/take _registry 2019-02-16 14:33:11 +11:00
Tom Pittenger 52887e1c45 AP_Baro: unify singleton naming to _singleton and get_singleton() 2019-02-10 19:09:58 -07:00
Andrew Tridgell 14172d69d5 AP_Baro: removed F4Light 2019-01-21 21:57:21 +11:00
Peter Barker 6fc76a32af GLOBAL: use AP::logger() and strip redundant Log_ from methods 2019-01-18 18:08:20 +11:00
Peter Barker b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
DOMINATOR\Eugene c56188d081 AP_Baro: read temperature from AP_Airspeed singleton 2018-11-17 07:52:42 +11:00
Peter Barker ee07789383 AP_Baro: add override keyword 2018-11-08 11:30:12 +11:00
Michael du Breuil c712e926d7 AP_Baro: Avoid returning 0.0f for EAS2TAS 2018-11-06 13:44:18 +11:00
Andrew Tridgell e4e793b295 AP_Baro: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Peter Barker e503df48ff AP_Baro: emit calibrated messages for each connected baro
Thanks to OlliW for pointing this out
2018-10-15 08:13:50 +11:00
Eugene Shamaev 95ea3d8726 AP_Baro: fix temperature 2018-10-12 21:53:08 +01:00
murata 2d4dd1643d AP_Baro: Delete the total temperature process.
AP_Baro: Delete the total temperature process.
2018-10-12 12:05:17 +11:00
Peter Barker d05ab1b983 AP_Baro: notify GCS of all barometer ground pressures 2018-10-11 08:05:05 +11:00
Andrew Tridgell d79386d574 AP_Baro: use GND_EXT_BUS to allow a specific bus to be probed 2018-09-07 08:36:02 +10:00
Andrew Tridgell dda8e7c35a AP_Baro: probe both i2c buses on CubeBlack for barometers 2018-09-07 08:36:02 +10:00
Randy Mackay af6e2d2c8c AP_Baro: add PROBE_EXT param values
this makes it easier for users to select the external baro they want to use on GCSs that do not display the bitmasks
2018-09-07 08:36:02 +10:00
Randy Mackay 758331612f AP_Baro: probe for MS5611 on I2C addr 0x76 2018-09-07 08:36:02 +10:00
Andrew Tridgell 5de199bc01 AP_Baro: allow for external i2c baro on most boards
only disable on those with HAL_MINIMIZE_FEATURES enabled
2018-09-06 07:21:30 +10:00
Siddharth Purohit 5ef5537371 AP_Baro: move Baro UAVCAN subscribers and handlers to AP_Baro_UAVCAN 2018-08-29 22:54:59 +01:00
Andrew Tridgell 3fd25ad548 AP_Baro: added HAL_BARO_ALLOW_INIT_NO_BARO 2018-08-23 13:29:59 +10:00
Andrew Tridgell 1439b1a730 AP_Baro: added option to probe any i2c baro using GND_PROBE_EXT
This adds a hwdef.dat define HAL_PROBE_EXTERNAL_I2C_BAROS. When set,
we get a new parameter GND_PROBE_EXT that is a bitmask of i2c
barometers to look for.

This allows boards that have no builtin baro to work without
rebuilding
2018-08-23 13:29:59 +10:00
Andrew Tridgell f937589810 AP_Baro: fixed BMP085 probe 2018-08-23 13:29:59 +10:00
Andrew Tridgell b2cc992e0c AP_Baro: convert to use WITH_SEMAPHORE() 2018-08-23 08:21:48 +10:00
Francisco Ferreira 9489ec9e7c
AP_Baro: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:02 +01:00
Andrew Tridgell 769c99d4d7 AP_Baro: added register checking on BMP280
this follows a log which seems to show an in-flight register
corruption on a MatekF405
2018-08-04 16:44:08 +10:00
heitiane 2c24bac79e BARO_generic: add Dummy GCS to meet the requirement of AP_Baro::calibrate(). 2018-07-14 10:32:51 +10:00
Patrick José Pereira 4ae6bd2c7e AP_Baro: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Eugene Shamaev 13954f97cf AP_Baro: helper func 2018-06-09 22:46:48 -07:00
Eugene Shamaev f8da16d11a AP_Baro: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Andrew Tridgell ae1a58ecb8 AP_Baro: added FMUv5 support 2018-06-06 07:15:41 +10:00
Patrick José Pereira b014b6c857 AP_Baro: Use SSL variables
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-05-23 02:36:43 +01:00
Eugene Shamaev 31628ea52f AP_Baro: functions declaration
Co-authored-by: Francisco Ferreira <OXINARF@users.noreply.github.com>
2018-05-22 08:35:01 +09:00
Francisco Ferreira de73ab6472 AP_Baro: remove Qualcomm board support 2018-05-17 09:57:20 +10:00
night-ghost 0b3514c519 AP_Baro: add support for BMP280 on alternate address 2018-05-16 18:55:29 +10:00
Patrick José Pereira f22f053c83 AP_Baro: Use C_TO_KELVIN
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-05-11 10:46:19 +10:00
Patrick José Pereira cc590ee587 AP_Baro: Add BARO_TYPE_WATER model to SITL when running for ArduSub
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-05-10 16:05:58 -04:00
Patrick José Pereira c7f832e81f AP_Baro: Add SimpleUnderWaterAtmosphere function
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-05-10 16:05:58 -04:00
Andrew Tridgell 86e85a7089 AP_Baro: fixed build warning 2018-05-07 11:43:23 +10:00
night-ghost eb0343649b Baro: fix HAL_F4light compilation errors 2018-04-30 08:32:58 +10:00
night-ghost 740e322438 AP_Baro: fix BMP280 scale 2018-04-13 20:45:48 +10:00
Peter Barker a5dc87e2af AP_Baro: do dataflash logging as part of update 2018-04-12 19:12:12 +01:00
night-ghost 33bdc9196c AP_Baro: added autodetection of popular baro types on external bus 2018-04-11 15:00:36 +10:00
night-ghost cb8a34f784 AP_Baro: added range filter to backend, use it in most sensors (thanks khancyr for style correction) 2018-04-11 14:46:42 +10:00
Peter Barker 1de68b78dc AP_Barometer: tidy handling of barometer calibrations 2018-04-02 23:25:05 +01:00
Peter Barker 0675f41d1e AP_Baro: create AP::baro() function 2018-03-08 21:20:05 -08:00
Andrew Tridgell 667093023c AP_Baro: added DPS280 barometer driver 2018-03-05 10:27:09 +00:00
Andrew Tridgell 5b7fe26f33 AP_Baro: added FBM320 driver 2018-03-05 10:27:09 +00:00
Andrew Tridgell 75a262ebf9 AP_Baro: support LPS25H on MPU9250 AUX 2018-03-02 12:52:50 +11:00
Andrew Tridgell 9e272b7a95 AP_Baro: support SP01 board 2018-02-14 18:27:00 +11:00
Andrew Tridgell f85c82ee5d AP_Baro: fixed baro scaling for LPS2XH 2018-02-14 18:27:00 +11:00
ljwang 88effef51a AP_Baro: support mini-pix using LPS25H SPI barometer
allow LPS22H and LPS25H to share a driver
2018-02-14 18:27:00 +11:00
Andrew Tridgell 00d3c158db AP_Baro: use generic defines for 20789 2018-02-08 17:36:33 +11:00
Andrew Tridgell 5a6831b606 AP_Baro: allow ICM-20789 on SPI or I2C 2018-02-08 17:36:33 +11:00
Andrew Tridgell a3dabf3c55 AP_Baro: enable 20789 baro on F412 2018-02-08 17:36:33 +11:00
Andrew Tridgell 472eed3847 AP_Baro: enable use of pressure correction
this allows for temperature correction of baro pressure
2018-02-08 17:36:33 +11:00
Andrew Tridgell b2172a0475 AP_Baro: support PCNC1 2018-02-08 17:36:33 +11:00
Peter Barker 12a3cc1179 AP_Baro: use Invensense defines when configuring ICM20789 IMU part 2018-02-08 17:36:33 +11:00
Peter Barker 3a0c5bed85 AP_Baro: ICM20789: example fixes 2018-02-08 17:36:33 +11:00
Peter Barker bf95be96f3 AP_Baro: ICM20789: stop dev_icm being an instance variable 2018-02-08 17:36:33 +11:00
Peter Barker c56486a39e AP_Baro: remove pointless destructor overrides 2018-02-08 17:36:33 +11:00
Peter Barker 05fb28c7f9 AP_Baro: use HAL_SEMAPHORE_BLOCK_FOREVER 2018-02-08 17:36:33 +11:00
Peter Barker ea83a487d4 AP_Baro: create BARO_ICM20789_DEBUG and use it 2018-02-08 17:36:33 +11:00
Peter Barker 31d8b6ba64 AP_Baro: do not take semaphore if HAL_INS_MPU60x0_NAME not set 2018-02-08 17:36:33 +11:00
Andrew Tridgell bf67153791 AP_Baro: implement ICM20789 barometer 2018-02-08 17:36:33 +11:00
Siddharth Purohit 175d806b5f AP_Baro: skip using posix headers for non-posix systems 2018-02-07 20:33:45 +11:00
Andrew Tridgell 83d1e71cb2 AP_Baro: ran BMP085 driver through code formatter 2018-02-05 12:12:03 +11:00
night-ghost 2c043b822b AP_Baro: fixed BMP085 driver for current API 2018-02-05 12:12:03 +11:00
LukeMike d48f9397d0 VRBRAIN / AP_Baro: added barometer sensor init for VR Brain boards 2018-02-05 08:26:49 +11:00
Andrew Tridgell 5846558b0e AP_Baro: moved constants to AP_Math/definitions.h 2018-01-16 07:14:20 +11:00
rde-mato 787420931e AP_Baro: make AP_Baro a singleton
for AP_Airspeed
2018-01-16 07:14:20 +11:00
Andrew Tridgell 51f9f087ab AP_Baro: support MindPX-v2 2018-01-15 11:46:02 +11:00
Andrew Tridgell 0b6659b36a AP_Baro: support ChibiOS FMUv4 2018-01-15 11:46:02 +11:00
Andrew Tridgell c8c563f90d AP_Baro: support ChibiOS 2018-01-15 11:46:02 +11:00
Pierre Kancir 14b5c8a6c4 AP_Baro: don't include vehicle specific baro by default 2017-12-27 15:13:30 +00:00
Andrew Tridgell 68f8817e97 AP_Baro: removed create() method for objects
See discussion here:

  https://github.com/ArduPilot/ardupilot/issues/7331

we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach

Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Lucas De Marchi 69b6d95cb2 global: use static method to construct AP_Board_Config{,_CAN} 2017-09-26 03:01:21 +01:00
Lucas De Marchi 91feec0e14 global: use static method to construct AP_Baro 2017-09-26 03:01:21 +01:00
Lucas De Marchi c5c1d5abfe AP_Baro: add static create method 2017-09-26 03:01:21 +01:00