dominiknatter
d8831c5133
ekf2: Ignore optical flow samples with too large integration time spans. Fixes #14165
...
Within ekf2, optical flow messages (amongst others) are fused to the state estimates. It might occur that optical flow sensors report unreliable and unrealistic spikes. In that case, the state estimator went crazy so far and just ignored optical flow values from that moment on.
The common thread for all these spikes seems to be a too high integration time span. Therefore, this fix adds a simple logic that ignores unrealistically high integration time spans. As a threshold, 1 second was chosen.
Reported-by: Dominik Natter <dominik.natter@gmail.com >
2020-06-29 12:00:29 -04:00
Beat Küng
0c4fd2bfa0
param: also show unused params for 'param show -c'
...
I find this generally useful for debugging.
2020-06-29 09:49:56 -04:00
Beat Küng
d22bbde7c5
logger: fix hardfault for invalid SDLOG_PROFILE setting
...
If some bits are set but no topic was added, _subscriptions was null but
later accessed.
During normal use this only happens when switching between different
firmware versions with different SDLOG_PROFILE definition (with custom
config).
2020-06-29 09:49:56 -04:00
PX4 BuildBot
b463a2f0d5
Update submodule matrix to latest Sun Jun 28 12:38:27 UTC 2020
...
- matrix in PX4/Firmware (2337b7e2f7b4eecddbb9103ab7672fac2c741fc5): https://github.com/PX4/Matrix/commit/674bd99f3b9284e1088d100d765b3a09cf0c192f
- matrix current upstream: https://github.com/PX4/Matrix/commit/f529358e9ac28b0809572c14a964ba7ba691adc4
- Changes: https://github.com/PX4/Matrix/compare/674bd99f3b9284e1088d100d765b3a09cf0c192f...f529358e9ac28b0809572c14a964ba7ba691adc4
f529358 2020-06-27 kamilritz - Add missing const modifier
2020-06-28 19:55:06 -04:00
bresch
1761ef3952
FlightTaskAuto: Update prev and next waypoint depending on validity
...
This fixes the corner case where a NAV_DELAY command changes the
validity of the next WP but not the rest of the triplet. The logic in
FlightTask was ignoring this change because the check was only based on
WP position change.
2020-06-26 09:48:22 -04:00
RomanBapst
120f188ada
rtl: do not use cone logic for vehicle flying as fixed wing
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2020-06-25 09:17:23 -04:00
Daniel Agar
55808ed2f9
simulator: break out standalone battery simulator module
...
- this is a small step towards unifying SITL & HITL
2020-06-24 10:39:21 -04:00
PX4 BuildBot
6dd0932158
Update submodule ecl to latest Wed Jun 24 00:39:40 UTC 2020
...
- ecl in PX4/Firmware (fff83fdee69789ec9da259b564bbfe67585a4b5f): https://github.com/PX4/ecl/commit/a8bb8ea99fc92389a5cdd44cd7108416e0c49fb6
- ecl current upstream: https://github.com/PX4/ecl/commit/e4b44f704bb641fa93bedc81734c5249fcd9ed42
- Changes: https://github.com/PX4/ecl/compare/a8bb8ea99fc92389a5cdd44cd7108416e0c49fb6...e4b44f704bb641fa93bedc81734c5249fcd9ed42
e4b44f7 2020-06-23 PX4 BuildBot - Update geo_lookup WMM to latest Tue Jun 23 14:15:04 UTC 2020
4b746a3 2020-06-23 bresch - GPS Yaw: add consts and remove fusion starting message
2bafe9d 2020-06-22 bresch - GPS Yaw: wait to fuse at yaw at least once before declaring it faulty
51cd63d 2020-06-22 bresch - GPS Yaw: fall back to other yaw aiding source in case of bad data
fe2a9d3 2020-06-22 bresch - GPS Yaw: move isfinite checks in control.cpp
3c6790f 2020-06-22 bresch - GPS Yaw: Always reset Yaw when GPS Yaw fusion is starting
ff8b5ec 2020-06-21 kamilritz - Extract general functions into utils
fda30d8 2020-06-15 Daniel Agar - geo_lookup: expand latitude to +-80 degrees
109eca5 2020-06-15 Daniel Agar - geo_lookup: create simple python script to update tables
41b9e4f 2020-06-15 Daniel Agar - geo_lookup: move tables to separate file
2020-06-24 08:29:20 +02:00
Beat Küng
fe9a971f0e
logger: use subscription interval also in polling mode
...
Now that replay uses lockstep scheduling we don't need that work-around
anymore.
2020-06-23 11:53:55 -04:00
Beat Küng
a3d1c94aa4
logger: reduce poll timeout to 20ms
...
Just to ensure even if the topic is not updated, logger will still update
regularly.
2020-06-23 11:53:55 -04:00
Beat Küng
157ef43e28
replay: use lockstep scheduler
2020-06-23 11:53:55 -04:00
Beat Küng
71dcf8d619
sitl: use lockstep components API
...
- avoids the need for ekf2_timestamp publications by q and lpe
- adds logger to the lockstep cycle and makes it poll on ekf2_timestamps
or vehicle_attitude. This avoids dropped samples (required for replay).
2020-06-23 11:53:55 -04:00
Beat Küng
5378d1468f
lockstep_scheduler: add generic lockstep component API
...
allows components to register and ensure the lockstep cycle waits for
all components to be updated.
2020-06-23 11:53:55 -04:00
Beat Küng
55d06241b3
fix unit tests: do not stub pthread_cond_wait
...
and fix the tests instead.
Some unit tests depend on pthread_cond_wait to work as expected.
2020-06-23 11:53:55 -04:00
Daniel Agar
32887193d6
systemcmds/tests: remove autodeclination test (moving to PX4/ecl)
2020-06-23 10:34:25 -04:00
Beat Küng
bb36b4a63f
{dshot,pwm_out}: allow mode_pwm4 for boards with 5 outputs
...
Required on durandal if camera triggering is enabled.
2020-06-23 09:32:13 -04:00
Matthias Grob
e9eae1bd76
Refactor: Name manual_control_setpoint the same way everywhere
2020-06-22 12:06:27 -04:00
Daniel Agar
c6dd8bfcd6
imu/invensense/icm20649: minor cleanup to keep in sync with icm20948
2020-06-22 10:11:22 -04:00
Daniel Agar
4bcee8e13f
magnetometers/akm: new standalone AKM AK8963 & AK09916 drivers
2020-06-22 10:11:22 -04:00
Daniel Agar
8c34f47b3d
imu/invensense/mpu9250: sync with other recent invensense improvements
...
- clenaup ak8963 with simplifed setup and health check
2020-06-22 10:11:22 -04:00
Daniel Agar
22daa26955
msgs/sensor_mag: remove unused raw, add timestamp_asmple, shrink error count
...
- move mpu9250 sensitivity handling back to driver (this isn't common)
2020-06-22 10:11:22 -04:00
Daniel Agar
d9102ce54c
imu/invensense/icm20948: sync with other recent invensense improvements
...
- clenaup ak09916 with simplifed setup and health check
2020-06-22 10:11:22 -04:00
Daniel Agar
e50f92805b
mavlink: mission minor whitespace fixes and initialization
...
- it's safer to zero any struct being send over mavlink to prevent
extension field surpries later
2020-06-21 11:26:02 -04:00
Daniel Agar
80c1f4e5e6
mavlink: send MISSION_CURRENT respect signed sequence number
...
- current_seq -1 indicates nothing currently active
2020-06-21 11:26:02 -04:00
TSC21
b3bbc351ca
mavlink: DISTANCE_SENSOR: propagate signal_quality metric
2020-06-20 22:25:37 +01:00
Daniel Agar
b1e360e332
simulator: only use temperature if baro updated
2020-06-18 21:34:58 -04:00
Daniel Agar
3f19335f08
drivers/imu/invensense: FIFO_MAX_SAMPLES include sensor_accel_fifo in sample size limit
2020-06-18 20:49:15 -04:00
Daniel Agar
56c86e77bd
replace FIFOSample -> sensor_accel_fifo/sensor_gyro_fifo
2020-06-18 20:49:15 -04:00
Daniel Agar
87250ca47f
move ecl L1, TECS, and data validator to PX4/Firmware
2020-06-18 19:26:30 -04:00
JacobCrabill
78650bdbab
UAVCAN: Fix STM32H7 message RAM for FDCAN2
2020-06-18 18:55:21 -04:00
JacobCrabill
62799d9aca
UAVCAN: Add STM32H7 FDCAN Driver
...
Took the existing uavcan_stm32 driver and replaced all bxCAN code with
the equivalent for FDCAN following ST Reference Manual RM0433.
Note: There is still a bug somewhere in regards to FDCAN2 (probably
incorrect setup of the message RAM? Not sure.) But (FD)CAN1 is fully
functional (Classic CAN only, no CAN-FD).
Also TODO: Configure CAN filters. Right now there are no filters; all
incoming messages are accepted.
2020-06-18 18:55:21 -04:00
Daniel Agar
0a63df25a6
create fake_magnetometer "driver" to publish magnetic field in body frame
...
- this can be helpful for orienting new unknown magnetometers
- requires attitude and GPS position
2020-06-18 16:21:30 -04:00
Daniel Agar
6afa7e4368
mavlink: HIL_SENSOR receiver respect fields_updated
...
- keep in sync with the simulator module
2020-06-18 09:54:00 -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
Matthias Grob
588d551098
mc_pos_control_params: set the ground slow down speed to the default maximum speed
...
This results in no change with defaults but a slow down to 10m/s if the maxiumum speed is set higher than that.
2020-06-17 11:47:41 -04:00
Matthias Grob
bcd771d832
Update ecl and adapt to new AlphaFilter location
2020-06-17 09:29:35 -04:00
hanyang2013212
4209101333
Update uuv_att_control.cpp
...
Modified the thruster value to be accessed from attitude setpoint message instead of parameters
2020-06-16 19:27:54 -04:00
TSC21
6add0fff7f
add iris_dual_gps config and the possibility of testing GPS blending through simulation
2020-06-16 09:57:05 +01:00
JaeyoungLim
39b803a9dc
Remove gps noise multiplier parameter ( #15108 )
...
This removes the gps noise multiplier parameter that can be set on the firmware side
2020-06-15 22:32:32 +02:00
Daniel Agar
6c78c62d9d
BMI088: accel get max rate from PX4Accelerometer
2020-06-15 10:19:14 -04:00
Daniel Agar
e819f99064
new Bosch BMI055 IMU driver using FIFOs and DRDY
...
- accel & gyro FIFOs enabled
- FIFO watermark on data ready interrupt
- sensor side filtering completely disabled
- gyro now respects `IMU_GYRO_RATEMAX` (up to 2 kHz)
- saves a few % cpu (at default rate)
2020-06-15 10:19:14 -04:00
Daniel Agar
daf75e40eb
drivers/imu/invensense: simplify gyro range configuration
2020-06-15 09:36:21 -04:00
Matthias Grob
1efc8c27eb
FlightTaskAuto: check yawspeed saturation before constraining
...
to avoid possible numerical float equality issues.
2020-06-15 10:40:48 +02:00
bresch
12449c23c5
FlightTaskAuto: add missing wrap_pi and do not override yaw_sp_aligned
2020-06-15 10:40:48 +02:00
bresch
7a401e5ca3
FlightTaskAuto: Create artificial yaw speed sp for feedforward
2020-06-15 10:40:48 +02:00
Matthias Grob
c165327c9f
INA226: revise read() and collect() error handling
...
to allow negative currents and simplify unnecessary redundancy.
2020-06-15 10:26:10 +02:00
Matthias Grob
da9feeb699
INA226: refactor spacing and return codes
2020-06-15 10:26:10 +02:00
dino
d98cf2f719
Fixe for wrong perf counter increment in ina226 driver
2020-06-15 10:26:10 +02:00
PX4 BuildBot
eee87cd605
Update submodule ecl to latest Mon Jun 15 00:38:18 UTC 2020
...
- ecl in PX4/Firmware (adc733932566f0198a8892c3cebe9e5c8345e391): https://github.com/PX4/ecl/commit/38cbd1a18211f1702b403915ab37d5e22626432f
- ecl current upstream: https://github.com/PX4/ecl/commit/e835bc34c4c84b526941db418f5c9d00d35cbe12
- Changes: https://github.com/PX4/ecl/compare/38cbd1a18211f1702b403915ab37d5e22626432f...e835bc34c4c84b526941db418f5c9d00d35cbe12
e835bc3 2020-06-06 Kamil Ritz - remove inline modifier
74780aa 2020-06-06 Kamil Ritz - Refactor gps fusion commencing
2020-06-14 22:14:14 -04:00
PX4 BuildBot
f89dac03f3
Update submodule matrix to latest Sun Jun 14 12:39:39 UTC 2020
...
- matrix in PX4/Firmware (18f14ebefad29873ddeef6396c7c3a728c90b996): https://github.com/PX4/Matrix/commit/2bee0d078cb6b0e6205d17145899ccbb15dbe380
- matrix current upstream: https://github.com/PX4/Matrix/commit/674bd99f3b9284e1088d100d765b3a09cf0c192f
- Changes: https://github.com/PX4/Matrix/compare/2bee0d078cb6b0e6205d17145899ccbb15dbe380...674bd99f3b9284e1088d100d765b3a09cf0c192f
674bd99 2020-06-11 kamilritz - Add operator* and operator/ for slice with type
38b3acc 2020-06-11 Nicolas MARTIN - fix conjugate_inversed comment
2020-06-14 11:18:00 -04:00