21706 Commits

Author SHA1 Message Date
Daniel Agar
2c874f1cd9 ekf2 selector fix SITL lockstep
- ekf2 selector don't register lockstep until first attitude publication
 - sensors module register lockstep component
 - enable multi-EKF2 in SITL
2020-10-28 09:42:41 -04:00
Thies Lennart Alff
82988b1912
airframes: added BlueROV2 (heavy configuration) airframe (#16004) 2020-10-28 11:07:31 +01:00
Daniel Agar
69986affbf commander: calibration restore sleep after CAL_QGC_DONE_MSG/CAL_QGC_FAILED_MSG 2020-10-27 18:54:16 -04:00
Nicolas Martin
171bd6d784 positionControl: add check on sign before sqrtf 2020-10-27 18:52:23 -04:00
SalimTerryLi
05f1efd1a4
load_mon: get mem_usage by reading /proc/meminfo on Linux 2020-10-27 18:49:25 -04:00
Daniel Agar
91da194bd7 sensors/vehicle_gps_position: only register callbacks once topic published
- this avoids creating unnecessary uORB device nodes for GPS instances that might never exist
2020-10-27 18:40:57 -04:00
Daniel Agar
df2f26ebdf
rename vehicle_visual_odometry_aligned -> estimator_visual_odometry_aligned
- saves a small amount of work for the ekf2 selector in multi-EKF mode (visual_odometry_aligned now ignored)
 - helps to distinguish the origin/purpose from vehicle_odometry and vehicle_visual_odometry
2020-10-27 12:33:39 -04:00
Daniel Agar
d5e68bc05a mathlib: NotchFilter delete unused update method 2020-10-27 12:30:59 -04:00
Mathieu Bresciani
050c9dcd3d
HTE: fix variance prediction (#16016)
In the predition step, the process variance was erroneously
multiplied by dt instead of dt^2. The default values are adjusted
accordingly to keep the same tuning for the default loop rate of 50Hz
2020-10-27 16:56:32 +01:00
Daniel Agar
f36f8928e3
distance_sensor/vl53l1x: fix code style 2020-10-27 11:43:11 -04:00
Alexey
2e98c64853
drivers/distance_sensor: new driver for ST VL53L1x
Co-authored-by: Alexey Matveev <>
2020-10-27 11:26:53 -04:00
Daniel Agar
0f411d6820
Multi-EKF support (ekf2)
- ekf2 can now run in multi-instance mode (currently up to 9 instances)
    - in multi mode all estimates are published to alternate topics (eg estimator_attitude instead of vehicle_attitude)
 - new ekf2 selector runs in multi-instance mode to monitor and compare all instances, selecting a primary (eg N x estimator_attitude => vehicle_attitude)
 - sensors module accel & gyro inconsistency checks are now relative to the mean of all instances, rather than the current primary (when active ekf2 selector is responsible for choosing primary accel & gyro)
 - existing consumers of estimator_status must check estimator_selector_status to select current primary instance status
 - ekf2 single instance mode is still fully supported and the default

Co-authored-by: Paul Riseborough <gncsolns@gmail.com>
2020-10-27 10:56:11 -04:00
Daniel Agar
d5245a22d3 logger: limit default estimator_optical_flow_vel logging 2020-10-26 14:10:25 -04:00
bresch
109ed18a3a Flow: adjust default optical flow delay based on pmw3901
This is the correct value for the most common optical flow sensor
2020-10-26 14:10:25 -04:00
bresch
142724748a pmw3901: Adjust scale factor to match gyro data 2020-10-26 14:10:25 -04:00
bresch
09cc3120e2 OpticalFlow: add optical flow velocity logging
This is important to align the flow with the IMU data and verify that
the compensation is properly done
2020-10-26 14:10:25 -04:00
Matthias Grob
8e710294b3 FlightTaskManualAltitudeSmoothVel: fix parameter inheritance chain 2020-10-26 15:55:21 +01:00
Matthias Grob
7ba93d5452 FlightTasks: fix reActivate not calling the parent overrided method 2020-10-26 15:55:21 +01:00
FengShun
eac9a6b68b Replace PublicationQueued with Publication to automatically configure ORB_QUEUE_LENGTH 2020-10-26 13:01:13 +01:00
FengShun
90c366f369 uORB::Publication*: template parameter automatically obtains the queue size according to the type 2020-10-26 13:01:13 +01:00
Nicolas Martin
948bed6b5c fix ekf2 saved mag bias comments (mGauss -> Gauss) 2020-10-26 00:43:20 -04:00
Daniel Agar
8435742dd5 logger: double actuator_controls_0 and vehicle_attitude_setpoint default log rate 2020-10-26 00:36:02 -04:00
Daniel Agar
6d2f592c16 logger: add vehicle_constraints to default set 2020-10-26 00:36:02 -04:00
Daniel Agar
614a0ac2a2
experimental/gyro_fft: improve peak detection, add start parameter
- add new parameter `IMU_GYRO_FFT_EN` to start
 - add 75% overlap in buffer to increase FFT update rate
 - space out FFT calls (no more than 1 per cycle)
 - increase `IMU_GYRO_FFT_MIN` default
 - decrease main stack usage
2020-10-25 23:48:21 -04:00
Daniel Agar
945c17bc3f
move subsystem_info entirely into commander and remove from uORB
* HealthFlags: define bitfield using 1<<X

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2020-10-25 10:08:15 -04:00
Daniel Agar
6285e06fe2 mc_pos_control: split out header and name consistently 2020-10-23 15:06:04 -04:00
Matthias Grob
1fb4f960cd FlightTaskAuto: Lock down yaw when waypoint is reached
This is done to prevent yawing 180 degrees when switching
to hold mode with high velocity and the overshoot causing a 180°
yaw turn.

The yaw is unlocked on waypoint updates and the yaw
setpoint generation had to be put at the end because otherwise the
first yaw calculation is with the old waypoint and immediately
locks again.
2020-10-23 20:54:01 +02:00
Daniel Agar
81765bc06a commander: PreFlightCheck remove HIL special cases
- skipping these sensor checks in HIL no longer makes sense as each
sensor has a normal publication (sensor_accel/gyro/etc) regardless of
simulation
2020-10-23 11:25:50 -04:00
Beat Küng
d2644a3bf7 distance_sensor/sf0x: rename to lightware_laser_serial 2020-10-22 11:30:50 -04:00
Beat Küng
a68ac95399 distance_sensor/sf1xx: rename to lightware_laser_i2c 2020-10-22 11:30:50 -04:00
Beat Küng
6d2e306d50 sf1xx: use new protocol for LW20/c
benefits:
- read & validate product name
- sensor configuration with the output we want (raw distance data)
- get signal quality

Protocol description: http://support.lightware.co.za/sf20/#/commands

Other Lightware sensors can easily be moved over to that as well.
2020-10-22 11:30:50 -04:00
Beat Küng
c0cf144a5a ll40ls: fix rotation -> orientation 2020-10-22 11:30:50 -04:00
JaeyoungLim
46d79d3050
Remove exception of actuator scaling for airships (#16011)
This removes the exception handling of airship type vehicles when scaling actuators for the simulator
2020-10-22 10:37:03 +02:00
Hamish Willee
d91d7e3282 parameter markdown table - remove styling 2020-10-22 08:05:41 +02:00
Daniel Agar
2201424dfd micrortps_bridge: don't reuse msg_files variable (now global) 2020-10-20 11:05:47 -04:00
Daniel Agar
1eb3c59277 systemcmds/topic_listener: use msg_files list from msg/ 2020-10-20 11:05:47 -04:00
Daniel Agar
16119f0e8c mavlink debug messages disable on CONSTRAINED_FLASH boards
- mavlink messages DEBUG/DEBUG_FLOAT_ARRAY/DEBUG_VECT/NAMED_VALUE_FLOAT move to separate stream headers and don't include if CONSTRAINED_FLASH
 - mavlink receiver DEBUG/DEBUG_FLOAT_ARRAY/DEBUG_VECT/NAMED_VALUE_FLOAT handling excluded if CONSTRAINED_FLASH
 - msg: skip debug_array.msg, debug_key_value.msg, debug_value.msg, debug_vect.msg if CONSTRAINED_FLASH
2020-10-20 11:05:47 -04:00
Julian Kent
d9b3db1082
Check that home position is valid in RTL (#15964) 2020-10-20 10:31:44 +02:00
Beat Küng
f776997a07 battery: disable secondary module by default
Avoid a GCS showing 2 battery indicators.
Alternatively we could also check the 'connected' flag, but this is more
explicit.
2020-10-20 09:18:47 +02:00
Beat Küng
83b81fbbef battery: fix isFloatEqual(), use matrix::isEqualF
Fixes param migration, e.g. if BAT_N_CELLS is set, migrates to
BAT1_N_CELLS.
2020-10-20 09:18:47 +02:00
Beat Küng
6ae17eb13c fix EscBattery: remove _battery.publish();
updateBatteryStatus() already publishes
2020-10-20 09:18:47 +02:00
Daniel Agar
be0f884dde
commander: preflight check don't read mag device_id 2020-10-19 23:01:02 -04:00
Daniel Agar
b08b83ba48 logger: logged topics support up to 4 accels/baros/gyros 2020-10-19 18:30:22 -04:00
Oleg Kalachev
c302514a08 mavlink: expose kill switch status 2020-10-19 10:49:52 -04:00
Beat Küng
d0fd60de8d output_limit: use add_library instead of px4_add_library
px4_add_library adds uorb dependencies, which since cf26f24387d added libm.
This in turn led to build failures for px4_io-v2 in the form of:
__aeabi_f2d' wf_sqrt.c:(.text.sqrtf+0x54): undefined reference to
__aeabi_ddiv'
2020-10-19 09:45:46 -04:00
FengShun
d19b54481a fix: uORB topics lost messages when publications overflow 2020-10-19 08:52:55 +02:00
Daniel Agar
224be8ba24
drivers/uavcan: RGB LED support (publish uavcan::equipment::indication::LightsCommand)
Co-authored-by: Alex Mikhalev <alexmikhalevalex@gmail.com>
2020-10-17 12:33:09 -04:00
David Sidrane
7d6f8dc882 mtd:Allow a Board to set the partition sizes.
To define an N way split this define the following:

        #define BOARD_HAS_MTD_PARTITION_OVERRIDE {"/fs/mtd_params", "/fs/mtd_waypoints","/fs/equal_part" }

	OR
        To define a percentage split this define the following:
        #define BOARD_HAS_MTD_PARTITION_OVERRIDE {"/fs/mtd_params", "/fs/mtd_waypoints","/fs/tiny" }
        #define BOARD_MTD_PARTITION_TABLE_SIZES {50.0f, 49.0f, 1.0f}
2020-10-15 17:22:50 -04:00
Silvan Fuhrer
4ed3ecea41 lis2mdl: reduce update rate from 50Hz to 20Hz to reduce spikes
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-10-15 09:55:40 +02:00
Daniel Agar
d985887468 ekf2: use new Param<> reset method 2020-10-15 08:32:05 +02:00