Commit Graph
50 Commits
Author SHA1 Message Date
a24488328f Move GPS blending from ekf2 to sensors module
- new sensors work item that subscribes to N x sensor_gps and publishes vehicle_gps_position
 - blending is now configurable with SENS_GPS_MASK and SENS_GPS_TAU

Co-authored-by: Jacob Crabill <jacob@volans-i.com>
Co-authored-by: Jacob Dahl <dahl.jakejacob@gmail.com>
2020-09-25 23:28:31 -04:00
Daniel Agar 971b1e4b4d sensors: move mag aggregation to new VehicleMagnetometer WorkItem
- purge all reminaing magnetometer IOCTL usage
 - mag calibration add off diagonal (soft iron) scale factors
2020-08-21 10:12:13 -04:00
Daniel Agar e3e8c55e82 accel & gyro calibration helpers 2020-08-21 10:12:13 -04:00
Daniel Agar 87250ca47f move ecl L1, TECS, and data validator to PX4/Firmware 2020-06-18 19:26:30 -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 e34bdb4be9 move IMU integration out of drivers to sensors hub to handle accel/gyro sync
- IMU integration move from drivers (PX4Accelerometer/PX4Gyroscope) to sensors/vehicle_imu 
 - sensors: voted_sensors_update now consumes vehicle_imu
 - delete sensor_accel_integrated, sensor_gyro_integrated
 - merge sensor_accel_status/sensor_gyro_status into vehicle_imu_status
 - sensors status output minor improvements (ordering, whitespace, show selected sensor device id and instance)
2020-05-30 11:07:54 -04:00
baumanta 22ceeccc26 add library for current- or thrust-based mag compensation 2020-03-26 08:00:30 +01:00
Daniel Agar 0eca583ecf sensors: move baro aggregation to new sensors/vehicle_air_data 2020-03-12 19:06:34 -04:00
Daniel Agar 36c6e36b9d sensors: refactor common corrections and rotation code 2020-02-04 09:44:40 -05:00
Daniel Agar 697dbfb9f8 sensors/vehicle_imu: incremental step towards multi-EKF 2020-01-22 18:04:29 -05:00
Daniel Agar dc05ceaad2 create temperature_compensation module
- this is a new module for temperature compensation that consolidates the functionality previously handled in the sensors module (calculating runtime thermal corrections) and the events module (online thermal calibration)
 - by collecting this functionality into a single module we can optionally disable it on systems where it's not used and save some flash (if disabled at build time) or memory (disabled at run time)
2020-01-20 21:42:42 -05:00
Timothy Scott 993fa5bd37 Refactored to work with new battery_status module 2019-12-05 16:38:04 +01:00
Timothy Scott d7bb5d46bb Created new AnalogBattery class 2019-12-05 16:38:04 +01:00
Timothy Scott bff1df7080 Refactored battery library for multiple instances 2019-12-05 16:38:04 +01:00
Daniel Agar bc182e94e6 sensors split rc_update into new standalone module 2019-11-24 13:25:11 -05:00
Daniel Agar 6a0f5249f8 sensors: split out analog battery handling to new standalone battery_status module 2019-10-21 13:40:23 -04:00
Daniel Agar 26364d44c9 px4_work_queue: command line status output and shutdown empty queues
* adds a work_queue systemcmd that will bring a tree view of all active work queues and work items
 * WorkQueues now track attached WorkItems and will shutdown when the last WorkItem is detached
2019-10-02 12:23:17 -04:00
Daniel Agar 78ef8aab2d STACK_MAIN increase default 1024 -> 2048 2019-08-30 19:11:51 -07:00
Daniel Agar a917f22b65 sensors: create vehicle_acceleration module (#12597) 2019-08-07 05:05:48 -04:00
Daniel Agar 2ad12d7977 sensors: create vehicle_angular_velocity module (#12596)
* split out filtered sensor_gyro aggregation from mc_att_control and move to wq:rate_ctrl
2019-08-06 12:55:25 -04:00
Daniel Agar 1a0472dfab sensors increase MAIN stack 2018-09-02 15:31:54 -04:00
Daniel Agar 9ce83f2208 fix all sign-compare warnings 2018-07-01 09:36:55 +00:00
Daniel Agar 3ba97297d5 tests simple timing microbenchmark 2018-07-01 09:25:22 +00:00
Daniel Agar 20aabd3566 move systemlib/airspeed to standalone lib 2018-06-12 09:06:30 +02:00
Philipp Oettershagen 302cb0a285 Subsystem_info status flags & checks: Moved the set_health_flags helper functions out of the /lib/ folder and into the module/commander folder because they are actually only needed there 2018-06-06 18:54:24 +02:00
Philipp Oettershagen e4d863b95f Subsystem_info status flags & checks: Separate the functionality to a) set the health flags inside commander and b) to publish them from external modules 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 075009be2f Subsystem_info status flags & checks: 1) Set health flags in commander directly instead of publishing via uORB 2) move publish_subsystem_info into lib/ folder" 2018-06-06 18:54:24 +02:00
Daniel Agar fc74e06341 sensors add conversion library dependency 2018-05-21 01:32:16 -04:00
Daniel Agar 2e92484325 ecl update to latest master with separate libraries (#9406) 2018-05-03 23:48:09 -04:00
Daniel Agar ea3acb7121 cmake remove circular linking and reorganize
- px4_add_module now requires MAIN
 - px4_add_library doesn't automatically link
2018-04-29 21:48:54 -04:00
Daniel Agar 9b5fe8c476 ignore -Wsign-compare per module 2017-09-07 10:27:36 +02:00
davidaroyer 99799d83b1 ocpoc support: update copyright dates 2017-06-04 04:24:50 +08:00
Beat Küng 9597e708df sensors: remove sensors_init
The initialization code is redundant and incomplete (only the first sensor
is done). I verified that all drivers already set this on startup.
For the mags, they all set their maximum supported update rate.
For the baro, the call can silently fail, as for example the MS5611 which
does not support 150Hz update. But it also sets the maximum in
initialization.

Tested on Pixhawk & pixracer.
2017-03-10 11:28:41 +01:00
Paul Riseborough 63f032832f Add prototype IMU temperature compensation
Enabled using TC_A_ENABLE and TC_G_ENABLE parameters
Disabled by default.
IMU offsets and scale factors for selected sensor published to sensor_correction topic
TODO Parameter storage method is cumbersome
2017-01-19 19:24:52 +01:00
Beat Küng d4da626e78 sensors: move sensors with voting into a separate class 2016-12-14 19:57:54 +01:00
Beat Küng f9b3b5a799 sensors: break off parameters initialization into separate source file 2016-12-14 19:57:54 +01:00
Beat Küng c5e485bdd7 sensors: break off RC handling into its own class 2016-12-14 19:57:54 +01:00
Julian Oes 8ff237c69f Remove size optimization for individual modules
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
2016-09-30 08:11:51 +02:00
Lorenz Meier 0354ada5d3 Sensors: be more efficient 2016-05-29 16:27:39 +02:00
Lorenz Meier 24622131c9 Sensors: Reinstate boot stack 2016-05-27 23:11:51 +02:00
Lorenz Meier 761d02d433 Sensors: return stack handler to default stack size 2016-05-19 22:01:12 +02:00
Daniel Agar 1ecdb0f6fb adjust stack sizes 2016-05-19 21:49:34 +02:00
Daniel Agar 2487dbfc92 remove Wpacked and cleanup unused warning flags 2016-05-19 21:49:34 +02:00
Julian Oes 08f88d006f sensors: use the empty sensor init for RPi as well
The RPi build is based on the same DriverFramework base like the QURT
build, therefore it should use the same empty sensor init function.
2016-04-29 10:02:53 +02:00
James Goppert 967e4dd127 Modified cmake to use STACK_MAX and STACK_MAIN 2016-04-14 13:36:36 -04:00
Julian Oes c99402b04c sensors: get it to compile on NuttX and POSIX 2016-02-19 16:59:49 +01:00
jwilson ebfcf32323 Added build specific sensor initialization. 2016-02-19 16:59:49 +01:00
Lorenz Meier 5434d1a9ff sensors app: Finish preflight update 2015-10-14 19:35:12 +02:00
Lorenz Meier 8a0277d654 Sensors app: Fix optimization level 2015-09-20 13:13:19 +02:00
James Goppert 1d6b31d196 Switch to cmake build system. 2015-09-07 20:37:45 -04:00