Daniel Agar
9c15be22d6
mc_autotune_attitude_control: add new MC_AT_EN parameter to enable
...
- only enabled by default on boards that aren't memory constrained
2021-11-05 09:52:07 -04:00
bresch
1e94512719
FD: use flags union instead of bitmask
2021-11-05 09:45:52 -04:00
bresch
3f1025fb1e
FD: add dedicated topic to log more internal states
...
log imbalanced propeller check metric
add failure_detector_status message
2021-11-05 09:45:52 -04:00
bresch
b8ed457371
Commander: trigger failsafe action if imbalanced propeller detected
2021-11-05 09:45:52 -04:00
bresch
5dfb8e594a
FD: add imbalanced propeller check
2021-11-05 09:45:52 -04:00
bresch
bf2fb70d67
vehicleIMU: compute and log accel variance
2021-11-05 09:45:52 -04:00
Silvan Fuhrer
f02786d112
Navigator/Commander: make GPS failsafe consitent: switch to Descend also for FW and VTOL
...
- remove GPS failsafe mode
- for VTOL: transition to hover in Descend (unless NAV_FORCE_VT is not set)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 12:09:39 +03:00
Silvan Fuhrer
b77487d69c
Fixed-wing Position controller: add modes for auto altitude and auto descend
...
- bit of clean up
- add GPS failsafe mode auto_altitude, that will keep current altitude with a fixed-bank angle
for some time, then switches to auto_descend that will descend with constant sink rate
of 0.5m/s
- params controlling GPS failsafe are not FW params: NAV_GPSF_R --> FW_GPSF_R and
NAV_GPSF_LT --> FW_GPSF_LT
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-05 12:09:39 +03:00
Daniel Agar
c73a1b4c68
update UAVCAN-v0 dsdl to DroneCAN
2021-11-04 21:36:13 -04:00
Daniel Agar
67437396f1
mpu6000: add USER_CTRL I2C_MST_EN bit to checked registers
2021-11-04 21:22:14 -04:00
Daniel Agar
8fbb241c2e
mpu6000: add gyro/accel self test bits to checked registers
2021-11-04 21:22:14 -04:00
Matthias Grob
f55590ce78
FlightTaskOrbit: remove duplicate newlines
2021-11-03 17:37:52 +01:00
Matthias Grob
6cea707330
FlightTaskOrbit: increase acceptance radius from 1 to 2m
...
to avoid reaproaching when tracking is not perfect while
acc/deccelerating by stick.
2021-11-03 17:37:52 +01:00
Matthias Grob
eda9dce033
FlightTaskOrbit: fix direction change via MAVLink command
2021-11-03 17:37:52 +01:00
Thomas Debrunner
d450afead6
FlightTaskOrbit: Direct orbit approach with slowdown at intersection point
2021-11-03 17:37:52 +01:00
Thomas Debrunner
0d0b87e193
Update src/modules/flight_mode_manager/tasks/Orbit/FlightTaskOrbit.cpp
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2021-11-03 17:37:52 +01:00
Thomas Debrunner
9bd46be124
Orbit: Switch to PositionSmoothing library.
...
This also fixes the bug with altitude not follows and smoothes orbit approach trajectory
2021-11-03 17:37:52 +01:00
Vatsal Asitkumar Joshi
ea1ae73526
Support for Raspberry PI RP2040 MCU ( #18083 )
2021-11-03 12:14:30 -04:00
Daniel Agar
8f6fd5f37b
sensors/vehicle_angular_velocity: gyro RPM dynamic notch filter handle negative RPM
...
- some UAVCAN ESCs report negative RPM for reverse rotation
- lower hard coded safety limit RPM limit to 10 Hz (600 RPM)
- avoid disabling notch filters that weren't configured
2021-11-02 09:36:02 -04:00
Daniel Agar
fec0d6c5ed
ekf2: change indication further reduce data precision
2021-11-02 10:21:54 +01:00
bresch
1317b1a6e1
[AUTO COMMIT] update change indication
2021-11-01 13:59:34 +01:00
bresch
9e54c6d1aa
ekf2: move generic functions to control.cpp
...
these functions aren't specific to GPS fusion
2021-11-01 13:59:34 +01:00
bresch
e90734881b
ekf2_test: add more GPS fusion control tests
2021-11-01 13:59:34 +01:00
bresch
8aae39e82a
ekf2: move GPS control logic to separate source file
2021-11-01 13:59:34 +01:00
bresch
689ab12845
ekf2: refactor gps vel/pos fusion control logic
2021-11-01 13:59:34 +01:00
bresch
9afc390552
ekf2: move gps yaw reset in starting function
2021-11-01 13:59:34 +01:00
Daniel Agar
1461eb0e32
logger: increase optimization to ${MAX_CUSTOM_OPT_LEVEL}
...
- ${MAX_CUSTOM_OPT_LEVEL} is -O2 on boards that aren't flash constrained
2021-11-01 09:13:12 +01:00
Thomas Debrunner
32be88404a
commander: Only run estimator navigation checks when armed
2021-10-28 12:06:31 -04:00
Harrison MG
c9b89ee869
fixed ulanding_radar autostart command
2021-10-28 00:01:37 -04:00
Peter van der Perk
51abb804ac
UAVCANv1 Fix NodeClient header and Kconfig merge logic
2021-10-27 10:07:01 -04:00
Silvan Fuhrer
e715e6c245
Fixed-wing position control: set yaw_sp to yaw_current instead of nav_bearing when not controlled
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-10-27 14:35:00 +03:00
Silvan Fuhrer
b53808d11b
fixed-wing: set yaw_sp to yaw_current instead of 0 when not controlled
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-10-27 14:35:00 +03:00
Silvan Fuhrer
da4d6dc657
L1: increase the max allowed tangential velocity in the opposite direction to 2m/s
...
There is logic in L1 that prevents the vehicle from trying to achieve
an impossible loiter entry (e.g. due to wind). That check makes the
vehicle track the loiter center if the tangential velocity is in the wrong
direction while loitering. After the vehicle flies through the center, it can
then turn the other way around to join the loiter.
This check is though too sensitive if it purely checks for the wrong direction,
and it can end in delayed loiter entry for no reason.
This commit increases the threshold to 2m/s of tangential velocity
in the wrong direction to trigger the check.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-10-27 12:32:58 +03:00
RomanBapst
eee5f501cd
navigator: fix flyaway when altitude change is commanded without a valid
...
triplet
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-10-27 11:01:13 +03:00
RomanBapst
bf6a47ba6a
navigator: cleanup of set_loiter_item
...
Unwraps the set_loiter_item() to solve the issue where the altitdue setpoint
in a MC takeoff wasn't correctly used.
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-10-27 11:01:13 +03:00
Silvan Fuhrer
cb78ba34d7
Mission: for tangential loiter exit, set current position setpoint typ to position
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-10-27 11:01:13 +03:00
Silvan Fuhrer
4b21c0c49e
Fw Pos C: always reset pos_sp type from LOITER to POSITION if far away
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-10-27 11:01:13 +03:00
RomanBapst
d678e792cc
mission_block: don't require an exiting heading when loitering if the next
...
waypoint is within the loiter radius of the current waypoint
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-10-27 11:01:13 +03:00
Michael Schaeuble
5e1f62e9d0
Add option to warn the pilot in case of strong magnetic interference but still allow arming.
...
This PR changes the COM_ARM_MAG_STR parameter to accept values. If the parameter is set to 2, the check is performed and a warning is logged but the vehicle can still arm.
2021-10-27 09:59:18 +02:00
ponomarevda
2b6bd452df
fix hardpoint hardfault by checking argc before std::strcmp
2021-10-27 08:11:23 +02:00
Beat Küng
48344c6e2a
state_machine_helper: add missing 'break' (no behavior change)
2021-10-27 08:03:55 +02:00
Daniel Agar
6d0c6bb6ce
lib/world_magnetic_model: cmake remove helper target BYPRODUCTS
...
- otherwise ninja will try to rebuild these
2021-10-26 18:52:12 -04:00
dagar
a2801bab80
[AUTO COMMIT] update change indication
2021-10-26 14:39:58 -04:00
Daniel Agar
88a979cf1d
lib/world_magnetic_model: add cmake helpers for updating tables
...
- `world_magnetic_model_update` to fetch latest geo_magnetic_tables.hpp
- `world_magnetic_model_tests_update` to fetch latest test_geo_lookup.cpp
2021-10-26 14:39:58 -04:00
bresch
d0f89f7fff
ekf2: refactor wind reset functions
2021-10-26 10:18:56 +02:00
bresch
456dfcb4b9
ekf2: update getter for true airspeed
2021-10-26 10:18:56 +02:00
bresch
3927c183de
ekf2_test: adjust airspeed unit test
...
an airpseed of > 2m/s is required to start the fusion (set by param)
fw mode is also required
Given the larger estimated windspeed after those changes, the change of
static pressure is larger and the height estimate takes more time to
reach the final value
2021-10-26 10:18:56 +02:00
bresch
6e8f0e92ff
ekf2: refactor airspeed fusion control logic
2021-10-26 10:18:56 +02:00
bresch
8873e92c7c
ekf: force fallback to baro if GPS is stopped while in GPS height mode
...
Otherwise, no height aiding source is used
2021-10-26 10:05:28 +02:00
bresch
0a140ec59a
ekf2_test: add GPS height to baro fallback
2021-10-26 10:05:28 +02:00