Daniel Agar
f3d923f226
sensors: VehicleIMU improve scheduling
...
- schedule on interval multiple of sensor_gyro publications without increasing the configured integration rate
- IMU_INTEG_RATE add enums to guide appropriate selection
- add average calculation bounds to prevent incorrect calculation and force monitoring again if there are consecutive gaps in data
2020-07-09 10:29:04 -04:00
Daniel Agar
fa8ba09f50
drivers/imu/bosch/bmi055: remove interrupt latch
...
- the latch would actually cause more problems if the backup schedule hit
- this reduces the number of cycles where the FIFO is actually empty at max rate (when there's only 1 sample in the FIFO expected)
2020-07-09 10:15:33 -04:00
Daniel Agar
194029d010
drivers/imu: Invensense & Bosch remove transfer perf counters
...
- we already have nearly equivalent data in every sensor publication with the (publication) timestamp and timestamp_sample
2020-07-09 10:12:37 -04:00
Daniel Agar
6bc1af7680
sensors/vehicle_air_data: only publish primary if error free
...
- cleanup failover related messaging
- store previous failover count to prevent unecessary checks
- check for parameter update initially to minimize work after fetching
fresh sensor data
2020-07-09 10:11:23 -04:00
Daniel Agar
6d52772d30
sensors/vehicle_air_data: move to sensors namespace
...
- move params to end of class
2020-07-09 10:11:23 -04:00
Beat Küng
405cb5038d
sdp3x: introduce State enum
...
to avoid blocking the work queue during configuring.
2020-07-08 11:43:21 -04:00
Beat Küng
fc1be6e0b1
sdp3x: add '-k' option to keep retrying even if probing fails
...
we have a setup where the sensor is connected via magnets, so the system
could boot without sensor initially attached.
2020-07-08 11:43:21 -04:00
Beat Küng
3cc394e6c7
sdp3x: improve robustness, try to reconfigure on transfer error
2020-07-08 11:43:21 -04:00
Daniel Agar
96a6b5c914
load_mon: decrease warning threshold for stack check builds
...
- enabling stack check increases stack usage and will assert if there's
any overflow
2020-07-06 11:13:15 -04:00
Beat Küng
2bcc2f4ccc
mag params: add missing mag rotations according to rotation.h
2020-07-06 10:16:17 -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
Matthias Grob
03735f12a2
FlightTask: correct activate() doxygen comment
2020-07-04 12:29:10 +02:00
Thomas Stauber
3702c8b481
[VTOL] impose minimum transition duration
...
* VT_F_TR_OL_TM would silently reduce VT_TRANS_MIN_TM when VT_F_TR_OL_TM was smaller
2020-07-03 13:19:02 -04:00
Daniel Agar
d3157f4266
sensors/vehicle_acceleration: apply calibration before filtering
2020-07-02 12:35:17 -04:00
Claudio Micheli
743898d574
Commander: failure detector, automatically disarm on a ESC failure
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2020-07-01 08:55:54 +02:00
Claudio Micheli
a7f2f2908b
Commander: make optional tilt-check after takeoff (failure detector).
...
- Introduced COM_LKDOWN_TKO parameter
- Introduced auto disarm for lockdown state
- Do not trigger flight termiantion if system is in lockdown
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2020-07-01 08:55:54 +02:00
Claudio Micheli
6358dd400a
failure detector: added esc failures detection
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2020-07-01 08:55:54 +02:00
PX4 BuildBot
19d2de0726
Update submodule matrix to latest Tue Jun 30 14:40:13 UTC 2020
...
- matrix in PX4/Firmware (a1043f6ce068cc4d039d6808ef98fd8c3f379582): https://github.com/PX4/Matrix/commit/f529358e9ac28b0809572c14a964ba7ba691adc4
- matrix current upstream: https://github.com/PX4/Matrix/commit/9a30828a0a1d79e87fd09653bb9f936d7ca0ba17
- Changes: https://github.com/PX4/Matrix/compare/f529358e9ac28b0809572c14a964ba7ba691adc4...9a30828a0a1d79e87fd09653bb9f936d7ca0ba17
9a30828 2020-06-30 Julian Kent - Add explicit matrix + scalar test
f3cf615 2020-06-30 Julian Kent - Do += -= and scalar *= /= in place
2020-06-30 11:11:45 -04:00
PX4 BuildBot
38588f0c37
Update submodule ecl to latest Tue Jun 30 00:38:47 UTC 2020
...
- ecl in PX4/Firmware (bd4d3f2b9929271b2616d2e1d6952059a7e8bc72): https://github.com/PX4/ecl/commit/e4b44f704bb641fa93bedc81734c5249fcd9ed42
- ecl current upstream: https://github.com/PX4/ecl/commit/5356077a3244a9a29adfae4aeaaab900cd28e9e8
- Changes: https://github.com/PX4/ecl/compare/e4b44f704bb641fa93bedc81734c5249fcd9ed42...5356077a3244a9a29adfae4aeaaab900cd28e9e8
5356077 2020-06-21 kamilritz - Make flow_innov/-var a matrix Vector2f
c2801eb 2020-06-21 kamilritz - Add const modifier and increase matrix library usage
d9afc2f 2020-06-21 kamilritz - Remove repeated division by same value
d16b43a 2020-06-21 kamilritz - Get rid of non functional piece of code
c3653e6 2020-06-21 kamilritz - Add const modifier
48f0eb1 2020-06-21 kamilritz - Remove uninformative comments
4a69b41 2020-06-21 kamilritz - Increase matrix library usage even more
630be60 2020-06-21 kamilritz - Increase matrix library usage
22274b1 2020-06-21 kamilritz - Add const modifier
61c139e 2020-06-21 kamilritz - Remove unused variable
afd4f3f 2020-06-21 kamilritz - Fix typo
a3706fd 2020-06-21 kamilritz - Make relative wind computation more compact
b8f9376 2020-06-21 kamilritz - Make mag_innov/-var a Matrix::Vector3f
0ea7cd8 2020-06-25 Kamil Ritz - Attempt to fix CI firmware build test
2927132 2020-06-25 Daniel Agar - clang-format set BreakBeforeBraces to Linux style
b96c62e 2020-06-25 sevenbill - Optionalized build dependency on git
794e6ec 2020-06-25 Bill Morris - Enforce tabs via editorcofig
2020-06-29 21:50:55 -04:00
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