41321 Commits

Author SHA1 Message Date
Daniel Agar
9073f3ccdf px4flow allow delayed background startup 2022-04-22 21:11:02 -04:00
mcsauder
fef47513f5 Add gyro and accel range register values to the icm42688p driver. 2022-04-22 21:03:01 -04:00
Hamish Willee
e1d3728208 13004_quad+_tailsitter - outputs mixed up 2022-04-22 07:34:05 +02:00
Daniel Agar
435a474dff
Update submodule GPSDrivers to latest Thu Apr 21 12:38:20 UTC 2022
- GPSDrivers in PX4/Firmware (e9c07fac6f0d9f2c16c9145ffc5b3c58880e0270): ddb1825fe3
    - GPSDrivers current upstream: 6534b050ee
    - Changes: ddb1825fe3...6534b050ee

    6534b05 2022-04-19 Jonas Perolini - ubx: disable gps heading for in RTK float fix type (#104)

Co-authored-by: PX4 BuildBot <bot@px4.io>
2022-04-21 11:41:24 -04:00
bresch
e9c07fac6f EKF: move python tuning tools to EKF module 2022-04-21 13:39:26 +02:00
bresch
49bc5082e7 Tools: add baro pressure coefficient tuning script 2022-04-21 13:39:26 +02:00
bresch
ea7009546b mc wind: rename MC wind estimor tuning script 2022-04-21 13:39:26 +02:00
Julian Oes
37fa4bccb6 mavsdk_tests: update MAVSDK dependency
This should fix the CI issue where the test just hangs trying to
connect.
2022-04-20 11:48:53 -04:00
bresch
3c6b72c33b commander: improve set_in_air_position
- set local home using global pos and global home
- set local home using GNSS pos and global home
- set global home using global ref of local frame and local home
2022-04-19 15:29:25 +02:00
bresch
e9a2b3f260 geofence: remove unused function parameters 2022-04-19 15:29:25 +02:00
bresch
3f3a4ac5c1 navigator: home_positionvalid -> global_home_position_valid
This is to make clear that the relevant part of the home position
message for navigator is the global one. Local home position isn't
required as everything is done in global coordinates.
The specific home_alt_valid is used when lat/lon are not used
2022-04-19 15:29:25 +02:00
bresch
d2f2ba59a4 commander: refactor home position setter
- always try to set local or global home position when possible
- set global home with GNSS position if global pos from EKF isn't
  available
- reset home when significantly moved from home before takeoff (checking
  lpos or gpos or GNSS)
- reset home on takeoff transition
- reset home on mavlink arm command
- remove "home required accuracy" parameters, rely on validity flags
2022-04-19 15:29:25 +02:00
RomanBapst
a7683eea07 mission_block: fix vehicle not exiting loiter after reaching exit heading
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2022-04-19 13:32:18 +02:00
Thomas Stastny
d5a6174e7f
mission block: fix incorrectly calculated ccw loiter exit (#19487)
* mission block: fix incorrectly calculated ccw loiter exit

* mission block: update comment on orbit exit location
2022-04-19 13:30:11 +02:00
Daniel Agar
5e05d98fe2 output modules simplify locking for mixer reset and load
- fixes the deadlock in px4io ioctl mixer reset
   - px4io Run() locks (CDev semaphore)
   - mixer load goes through px4io ioctl MIXERIOCRESET which calls MixingOutput::resetMixerThreadSafe()
   - MixingOutput::resetMixerThreadSafe() stores a Command::Type::resetMixer command in an atomic variable, schedules a work queue cycle, then sleep spins until the command is cleared
   - the execution of the cycle eventually calls back into PX4IO::updateOutputs(), which tries to lock (and waits forever)
2022-04-19 08:52:17 +02:00
bazooka joe
5d95cc001f small cleanup for FlightTask::_evaluateDistanceToGround if-else 2022-04-18 20:47:41 -04:00
Daniel Agar
2e290345d3
boards: px4_fmu-v5_stackcheck disable unused systemcmds to save flash 2022-04-18 10:01:29 -04:00
Daniel Agar
90e2cab3fa
boards: px4_fmu-v5/v5x run default & rtps boards through kconfiglib to cleanup 2022-04-18 09:58:36 -04:00
Daniel Agar
3cdeeb8d64
px4iofirmware: convert most files to c++ 2022-04-17 20:44:30 -04:00
Daniel Agar
3211d0ff19
boards: px4_fmu-v2_multicopter disable lightware_laser_serial to save flash 2022-04-17 18:59:56 -04:00
Daniel Agar
d06032d7f3
boards: px4_fmu-v5_uacanv0periph disable systecmds/sd_bench to save flash 2022-04-17 16:04:01 -04:00
stmoon
e7562df13a boards: px4_fmu_v5x_rtps disable several modules to save flash 2022-04-17 13:36:24 -04:00
Daniel Agar
cbc37f9fcd
boards: px4_fmu-v6x_default disable systemcmds/sd_bench to save flash 2022-04-14 20:07:28 -04:00
alexklimaj
6e0ac66c3c drivers/optical_flow: new PixArt PAA3905 optical flow driver 2022-04-14 16:47:53 -04:00
Beat Küng
9a9aad98a1 mavlink: add COMPONENT_METADATA message
And still support the previous message COMPONENT_INFORMATION for now.
2022-04-14 09:55:06 -04:00
Igor Misic
cdfa65d792 commander/safety: set early safety_button_available 2022-04-14 08:03:37 +02:00
Thomas Debrunner
f6bdc42977 param-reset: Add option to reset all configurable params, but not the ones that store vehicle information 2022-04-14 07:57:48 +02:00
Daniel Agar
3f13c70cae
px4io cleanup LED and heater handling
- most px4_io-v2 boards have a blue LED that breathes for status
 - the pixhawk 2.1 (hex) re-used this blue LED for as an IMU heater (active low), but kept the same board id (so we have to detect at runtime)
 - the new cubepilot boards (yellow, orange) inverted the polarity of this heater pin
 - untangle the mess slightly so that things we know statically (eg cubepilot cubeorange LEDs and heater polarity) are handled at build time.
2022-04-13 18:43:59 -04:00
Alessandro Simovic
510ad00024 dronecan beeper: remove unneded var 2022-04-13 18:06:58 -04:00
chris1seto
912962f109
lib/rc: Fix DSM2/DSMX guessing routine and DSM range checking (#18270)
* Add Orangerx test case

Co-authored-by: Chris Seto <chris.seto@bossanova.com>
2022-04-13 17:29:08 -04:00
PX4 BuildBot
93268a285d Update submodule mavlink to latest Wed Apr 13 12:39:05 UTC 2022
- mavlink in PX4/Firmware (16fd85d9b9133f21a79a5c1bccbf4756f4b3c781): 56a5110d38
    - mavlink current upstream: 3b52eac09c
    - Changes: 56a5110d38...3b52eac09c

    3b52eac0 2022-04-13 Beat Küng - add COMPONENT_METADATA, deprecate COMPONENT_INFORMATION (#1823)
2022-04-13 14:09:03 -04:00
Daniel Agar
9c381a60b5 Tools/ecl_ekf: fix vibe_metrics usage (moved to vehicle_imu_status instances) 2022-04-13 10:36:45 -04:00
Daniel Agar
b4158c1b48 sensors/vehicle_imu: Integrator use 1 microsecond for minimum DT
- this is a more realistic minimum for the system
2022-04-13 10:36:45 -04:00
Daniel Agar
d2f1349d1a sensors/vehicle_imu: replace coning metric with actual integrator coning correction (averaged)
- this saves a relatively expensive higih rate cross product and gives
better visibility into what's actually happening internally
2022-04-13 10:36:45 -04:00
bresch
37cafe7dcd ekf rng kin: reduce minimum rng variance 2022-04-13 11:41:48 +02:00
bresch
4994649500 ekf rng kin: increase default gate size
The user needs to tune the range finder noise parameters properly and we
shouldn't need such a small gate
2022-04-13 11:41:48 +02:00
bresch
1fbe04986f ekf rng finder consistency: simplify class member names 2022-04-13 11:41:48 +02:00
bresch
4c03f0bc50 ekf: make range finder kin consistency gate tunable by parameter 2022-04-13 11:41:48 +02:00
bresch
079a5e92ba ekf: run rng consistency check only when not horizontally moving
The check assumes a non-moving terrain height
2022-04-13 11:41:48 +02:00
bresch
d903613c9c ekf: add logging for rng kinematic consistency check 2022-04-13 11:41:48 +02:00
bresch
8693ad15a7 ekf: add logging of range finder consistency check 2022-04-13 11:41:48 +02:00
bresch
baf9cc9597 ekf: use uint64_t for time variables 2022-04-13 11:41:48 +02:00
bresch
9fc331b7ea ekf: requires kinematically consistent range finder data to continue terrain aiding 2022-04-13 11:41:48 +02:00
bresch
78211f9dbb ekf: improve rng consistency check
To pass from invalid to valid:
- time hysteresis
- some vertical velocity
- test ratio < 1
- low-passed signed test ratio < 1

To pass from valid to invalid:
- low-passed signed test ratio >= 1
2022-04-13 11:41:48 +02:00
bresch
b1ea2e4e15 ekf: use same gate for innov and innov sequence monitoring 2022-04-13 11:41:48 +02:00
bresch
f96287b80a ekf: access member variable without getter 2022-04-13 11:41:48 +02:00
bresch
904bf8ef9f ekf: add range finder kinematic consistency check
At each new valid range measurement, the time derivative of the distance
to the ground is computed and compared with the estimated velocity.
The average of a normalized innovation squared statistic check is used
to detect a bias in the derivative of distance measurement,
indicating that the distance measurements are kinematically inconsistent
with the filter.
2022-04-13 11:41:48 +02:00
bresch
064518f57a ekf: extract range finder noise computation 2022-04-13 11:41:48 +02:00
Matthias Grob
97b2947416 FlightTaskAuto: refactor _commanded_speed_ts -> _time_last_cruise_speed_override 2022-04-13 12:23:27 +03:00
Matthias Grob
68cf686892 FlightTask: rename and move setCruisingSpeed() -> overrideCruiseSpeed() 2022-04-13 12:23:27 +03:00