119 Commits

Author SHA1 Message Date
Daniel Agar
45912066d2 fix copyright header year range 2023-01-14 09:16:16 -05:00
Julian Oes
5c77bbcb4c ms5611: ignore reading 0
This prevents publishing a negative pressure which leads to a NAN
altitude estimate further down the line.
2022-10-04 09:37:53 -04:00
CUAVmengxiao
21daa0f398 drivers: add support for ICP101XX and ICP201XX 2022-09-22 11:36:16 -04:00
alexklimaj
82b28bc72f Add BMP390 to BMP388 driver 2022-09-13 09:33:24 -04:00
Ryan Meagher
f16ea921c2
drivers/barometer/invensense: fix icp10111 and icp10100
* fix icp so it compiles
* add icp10111 and icp10100 DEVTPYE
2022-06-29 21:22:10 -04:00
Daniel Agar
0c31f63896 sensors: add baro calibration and cleanup
- sensor_baro.msg use SI (pressure in Pascals)
 - update all barometer drivers to publish directly and remove PX4Barometer helper
 - introduce baro cal (offset) mainly as a mechanism to adjust
relative priority
 - commander: add simple baro cal that sets baro offsets to align with
GPS altitude (if available)
 - create new sensors_status.msg to generalize sensor reporting
2022-03-26 16:08:41 -04:00
Daniel Agar
233c7fd293
goertek/spl06: parameters.c add copyright header and fix formatting 2022-03-15 10:14:46 -04:00
Ncerzzk
cb23179c50
Add Goertek SPL06 barometer driver (#19229)
Signed-off-by: ncer <huangzzk@bupt.edu.cn>
2022-03-15 10:13:03 -04:00
Daniel Agar
8b9a856cf7
drivers/barometer: new ms5837 driver (#18213)
Co-authored-by: xn365 <xn_365@163.com>
2022-02-12 14:41:31 -05:00
CUAVmengxiao
258a563dd5 barometer: Add ICP10100 and ICP1011 2022-01-18 19:14:40 -05:00
Daniel Agar
41378fcef9 ms5611: lower SPI clock 20 MHz -> 16 MHz
- this was necessary to get the secondary ms5611 working reliably on a
particular CubeOrange
 - the sensor is transferring very little data, so lowering the speed by
default everywhere is harmless
2021-12-06 12:51:52 -05:00
Daniel Agar
7b7b7acd36 i2c_spi_buses: respect CONFIG_I2C and CONFIG_SPI
- bmp280, dps310, and ms5611 barometers support boards without I2C
2021-11-15 15:57:33 -05:00
mcsauder
21163d859e Whitespace cleanup. 2021-10-19 13:29:26 -04:00
Peter van der Perk
1eb9a77a9b [Kconfig] Added missing sensor drivers 2021-10-07 10:09:01 -04:00
Peter van der Perk
815617e670 Added common options for sensor drivers
uavcan_board_identity check for existance
Added kconfig for compiler definitions
2021-10-07 10:09:01 -04:00
Peter van der Perk
d5e3e9a7bc [Kconfig] Decompose Kconfig, now each module has its own Kconfig
Which is better for versioning and decomposability
2021-10-07 10:09:01 -04:00
Peter van der Perk
4044fbd4a0 Initial Kconfig implementation in CMake
Used fmuk66-v3 as test case
2021-10-07 10:09:01 -04:00
Daniel Agar
cb610caf1e drivers: minimize additional I2C retries 2021-08-17 09:54:50 -04:00
Daniel Agar
5d06ef8256 drivers/barometer/mpc2520: MaierTek MPC2520 barometer support
- used in the Advanced Technolgy Labs (ATL) Mantis EDU
2021-08-04 17:15:24 -04:00
Beat Küng
e644036325 drivers: use updated I2C SPI driver interface 2021-07-08 12:59:35 -04:00
David Sidrane
05007944f1 drivers:barometer Use inttypes 2021-06-16 17:07:47 +02:00
David Sidrane
84dd8839a2 i2c_spi_buses:Track NuttX change to getopts avoid name collision
NuttX #defined optarg and getopt to move to TLS. This fixes the
  name collision.
2021-06-16 17:07:47 +02:00
斯东Stone
e5b689e33c
Add TCBP001TA Barometer Driver (#14774) 2021-02-25 07:11:58 -08:00
Beat Küng
12ebbd995d bmp388: wait a bit longer to schedule first cycle after reset 2021-01-15 10:57:20 -05:00
Beat Küng
529c3112ac bmp388: quiet if startup fails (no sensor on bus) 2021-01-15 10:57:20 -05:00
Daniel Agar
a57b9f9381 delete drv_baro.h, drv_mag.h, drv_range_finder.h, drv_device.h and purge UAVCAN CDev usage 2021-01-12 22:04:52 -05:00
Jacob Dahl
2b5b6b9430 fixed dps310 calibration coeffecient for c11 2020-10-12 09:35:27 +02:00
Daniel Agar
0a607bdc67
boards: CUAV CAN_GPS v1.2 cannode (stm32f412) with UAVCAN bootloader 2020-09-23 14:30:54 -04:00
Beat Küng
5fdff6a0e4 i2c drivers: add '-k' flag for keep_running directly to BusCLIArguments 2020-09-18 09:45:06 -04:00
Beat Küng
1bf030e8ba lps33hw: refactor and add -k flag to keep running even if no sensor found 2020-09-18 09:45:06 -04:00
Beat Küng
795b9e938e drivers: add ST LPS33HW baro driver
Note: only tested on I2C
2020-07-06 10:13:11 -04:00
Daniel Agar
f55ed0992c
accel and gyro calibration refactor and cleanup
- remove all remaining IOCTLs for accel and gyro and handle all calibration entirely in sensors module with parameters
 - sensor_accel and sensor_gyro are now always raw sensor data
 - calibration procedures no longer need to first clear existing values before starting
 - temperature calibration (TC) remove all scale (SCL) parameters
    - gyro and baro scale are completely unused
    - regular accel calibration scale can be used (CAL_ACC*_xSCALE) instead of TC scale
2020-06-17 22:50:09 -04:00
Daniel Agar
b36845330e
ms5611: prevent starting as ms5607 type on ms5611 hardware
- an ms5611 using the ms5607 calculations will return impossibly high barometric pressure (~2000 mbar)
2020-06-01 11:31:55 -04:00
Beat Küng
43279f18ba bmp388: fix variable shadowing warning 2020-05-29 09:54:18 -04:00
Beat Küng
07b39ec7c0 bmp388: some cleanup
- avoid unnecessary sensor readout cycle during init
- check status register for data ready
2020-05-28 08:34:38 -04:00
rfu
90c3819df5 fxos8701cq + fxas21002c: add support for I2C 2020-05-04 09:49:23 +02:00
Daniel Agar
f51715c7ab lps22hb: move to PX4Barometer and cleanup 2020-04-15 23:33:41 -04:00
mcsauder
6548fde024 Whitespace cleanup to quiet new blank line at EOF git hook. 2020-04-15 23:00:39 -04:00
Daniel Agar
02f4ad61ec
I2C/SPI require device type in constructor 2020-04-01 12:24:22 -04:00
Beat Küng
d6bb5b3b9e i2c spi buses: enforce drivers to set default SPI/I2C bus frequency
Not a lot of drivers use the global default, which is somewhat arbitrary.
2020-03-17 23:31:17 -04:00
Beat Küng
081ab729aa refactor lps25h: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng
dc5ffb43a3 refactor mpl3115a2: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng
d81fedfcfa refactor lps22hb: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng
83a3deb9da refactor dps310: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng
985bb2adc9 refactor bmp388: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng
aeadf54a74 refactor bmp280: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng
dbb53044ce refactor ms5611: use driver base class
Also: remove device type auto-detection as it will not work with
together with the new SPI board config (which specifies a specific
device type)
2020-03-17 23:31:17 -04:00
Beat Küng
b54e5a1c23 param: automatically update calibration ID params on import
This avoids the need for recalibration, and also cleans up other driver
ID's (merge separate accel/gyro).

The SPI address was previously set to a board-specific (arbitrary) value,
and is now set to 0. This will allow extending for multiple sensors of the
same type on the same bus.
2020-03-10 10:11:43 -04:00
Beat Küng
0c6d558c50 bmp388: fix double free in case the driver probing fails
'interface' is freed in BMP388's destructor.
2020-02-22 10:51:42 -05:00
Beat Küng
c5a0d9077b bmp388: remove dead code 2020-02-22 10:51:42 -05:00