17923 Commits

Author SHA1 Message Date
chfriedrich98
ce9dd237a9 rover: handle invalid bearing setpoint 2025-05-13 10:23:35 +02:00
chfriedrich98
1857920a5f rover: clean up velocity setpoint 2025-05-13 10:23:35 +02:00
chfriedrich98
b727ce86a0 rover: clean up speed terminology 2025-05-13 10:23:35 +02:00
Jacob Dahl
1d5e58b948
mavlink: set system clock from SYSTEM_TIME (#24807)
* mavlink: set system clock from SYSTEM_TIME message if behind by more than 60 seconds
2025-05-12 16:11:16 -08:00
chfriedrich98
2d23fda77d rtl_direct: fix function naming 2025-05-07 17:42:07 +02:00
chfriedrich98
4e436cc64e rover: update land detector 2025-05-07 17:42:07 +02:00
chfriedrich98
771d09b968 navigator: reset next WP in mission fast reverse 2025-05-07 17:42:07 +02:00
chfriedrich98
b78b063fd8 rover: skip to LAND on direct RTL activation 2025-05-07 17:42:07 +02:00
bresch
6b8bf80423 ekf2-mag: never skip post-takeoff mag yaw reset 2025-05-06 11:24:31 -04:00
chfriedrich98
4e17c5496c mecanum: streamline flow of information 2025-05-05 11:38:17 +02:00
chfriedrich98
04512ee91f mecanum: separate velocity control 2025-05-05 11:38:17 +02:00
Jacob Dahl
2fece23c64
gz small improvements (#24761)
* gz: print version number in init, remove gst plugin spam, rename function

* fix 0 timestamp issue by waiting for clock callback before subscribing to other topics. Refactor to cleanup topic subscriptions

* format

* change gzerr to gzwarn
2025-05-04 14:41:19 -08:00
Marco Hauswirth
f0fdf0b53b EKF2: distinguish airspeed source and use synthetic for wind
Enable wind-dead-reckoning with airspeed source to synthetic airspeed
2025-05-02 13:37:18 +02:00
Silvan
6d12b04bb0 VTOL: do central handling of airspeed measurement
- only use data from airspeed_validated topic if source is SENSOR
    - add 1s timeout (set to NAN if older)
    - use FW_USE_AIRSPD consitently (treat the same as CAS=NAN)

Signed-off-by: Silvan <silvan@auterion.com>
2025-05-02 13:37:18 +02:00
Silvan
f7bb5d13f7 At every consumation of AirspeedValidated, check for SOURCE
Signed-off-by: Silvan <silvan@auterion.com>
2025-05-02 13:37:18 +02:00
Marco Hauswirth
5842c991ec AirspeedSelector: add synthetic airspeed option
Synthetic airspeed is calculated based on the thrust setpoint
and the thrust<->airpseed model as configured in the parameters.
2025-05-02 13:37:18 +02:00
Marco Hauswirth
c3c863ad95 AirspeedSelector: clean up in preparation of synthetic airspeed 2025-05-02 13:37:18 +02:00
bresch
e7250bc8d5 ekf2: do not let mag heading and declination update xy gyro biases
This can destabilize the tilt estimate when the mag field is disturbed
2025-05-02 10:23:43 +02:00
bresch
a40377e544 ekf2: always update IMU filters 2025-05-02 10:23:43 +02:00
bresch
6a105bcbdb ekf2-grav: accelerate tilt alignment 2025-05-02 10:23:43 +02:00
bresch
c59101e8ed ekf2-gravity: do not estimate accel bias when gravity fusion is active
Gravity fusion uses the bias corrected accelerometer data to correct the
tilt estimate. We should not continue to estimate the accel bias when
this is active as it creates an unwanted feedback loop.
2025-05-02 10:23:43 +02:00
bresch
ee30b70a3c ekf2-gravity: start based on accel LPF instead of peak hold
This prevent rapid switching in presence of noise and the innovation
filter is good at rejecting spikes
2025-05-02 10:23:43 +02:00
bresch
6ec6f1b297 ekf2-decl: do not always update tilt 2025-05-02 10:23:43 +02:00
chfriedrich98
39fa8b5550 differential: migrate state machine to velocity control 2025-04-29 14:49:44 +02:00
chfriedrich98
16c9c175ae differential: streamline flow of information 2025-04-29 14:49:44 +02:00
chfriedrich98
0ab9071606 differential: seperate velocity control 2025-04-29 14:49:44 +02:00
Silvan Fuhrer
03c7e7aa08 FW Rate Controller: scale static trim offsets with airspeed
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2025-04-28 13:34:04 +02:00
Silvan
06d3331d71 mavlink streams: remove unused sub from global pos int
Signed-off-by: Silvan <silvan@auterion.com>
2025-04-28 13:17:53 +02:00
Tomas Twardzik
94bbd2d69a
[fix]reducing length of Geofence vilations to prevent STATUSTEXT message length overrun (#24719) 2025-04-25 10:20:17 -08:00
Matthias Grob
dfed3970d4 navigator: use reference instead of pointer to pass the vehicle command to publish 2025-04-25 15:32:47 +02:00
Matthias Grob
672d228d79 navigator: fill vehicle_command with float literals and comment what they stand for 2025-04-25 15:32:47 +02:00
Matthias Grob
da870c4dce navigator: refactor vcmd -> vehicle_command 2025-04-25 15:32:47 +02:00
Matthias Grob
176783dbcb navigator: clarify publish_vehicle_command() comment 2025-04-25 15:32:47 +02:00
Matthias Grob
f07ddda344 navigator: refactor publish_vehicle_cmd() -> publish_vehicle_command() 2025-04-25 15:32:47 +02:00
Matthias Grob
5f34474ecb FlightTaskAuto: clean up parameter description and internal variable naming 2025-04-25 15:32:47 +02:00
Silvan
2ba5a455ed FW land detector: increase some max thresholds
Signed-off-by: Silvan <silvan@auterion.com>
2025-04-25 15:21:19 +02:00
Silvan
180658c5f9 sensors: display one decimal for params
Signed-off-by: Silvan <silvan@auterion.com>
2025-04-25 15:21:19 +02:00
Silvan
f7bde67f9a VTOL: make VT_FWD_THRUST_EN more concise
Signed-off-by: Silvan <silvan@auterion.com>
2025-04-25 15:21:19 +02:00
Silvan
db25101e52 VTOL: increase max for VT_FWD_THRUST_SC
Signed-off-by: Silvan <silvan@auterion.com>
2025-04-25 15:21:19 +02:00
Peter Breuer
38922d10a0 fix: fallback to mode set by COM_POSCTL_NAVL upon navigation loss in pos slow mode 2025-04-25 08:16:21 +02:00
Matthias Grob
9eaec534ab
mc_att_control_main: fix check for hover thrust estimate update (#24750) 2025-04-22 15:53:51 -08:00
dawr68
f08d01b4d5
Make throttle stick scaling more predictable in mc-stabilized mode (#24710)
* Rescale throttle curve to HTE as option

* Add slew rate to hover thrust estimate

* Update docs to reflect changes

Fix formating

* mc_att_control: suggestions for hover thrust slewing

- Slower slew rate
- Move update of hover thrust estimate into main loop
- Make sure dt for slew rate is correct
- Apply parameter updates if hover thrust estimate not used
- Parameter description in metadata files

* fix: Rescaling cases order

* Rescale to HTE estimate by default

* Update src/modules/mc_pos_control/multicopter_position_control_params.c

Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>

* Fix hte sub name

* Update MPC_THR_CURVE description

* Swap thr curve values to make hte rescaling default for value 0

---------

Co-authored-by: Matthias Grob <maetugr@gmail.com>
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2025-04-22 16:36:33 +02:00
Matthias Grob
9404783c99 EKF2: more accurate unaided yaw calculation
to fix the yaw unlocking in StickYaw
when giving a lot of roll and pitch input
2025-04-22 15:55:38 +02:00
Matthias Grob
d514cb4903 mc_att_control: use StickYaw class for Stabilized
to make yawing including reset and drift handling consistent with
Altitude and Position mode.
2025-04-22 15:35:26 +02:00
Matthias Grob
174147208e Move StickYaw class into a globally available library 2025-04-22 15:35:26 +02:00
Alexander Lerach
937998b739
vtol: reduce schedule frequency, which causes DSHOT150 problems
* vtol: reduce schedule frequency, which causes DSHOT150 problems

* vtol_att_control_main: refactor callback handling

---------

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2025-04-17 18:31:57 +02:00
Silvan
921dc67824 FW land detector: only use LNDFW_ROT_MAX if speeds are not valid
The rotational speed threshold on fixed-wing vehicles is triggering easily
if the plane is lifted prior to takeoff (hand-launch), and can cause issues
for the auto takeoff state machine. Thus if either airspeed or groundspeed is valid,
it's better to rely on these for land detection, and only use the rotational
speed if they're invalid.

Signed-off-by: Silvan <silvan@auterion.com>
2025-04-16 17:20:55 +02:00
Matthias Grob
fa3f255301
SIH: write out vehicle types for clarity (#24731) 2025-04-16 14:03:34 +02:00
Jacob Dahl
ff7c636065
gz: better error message when installation is missing (#24661) 2025-04-16 09:36:25 +02:00
Hamish Willee
0bb0719327
Update mavlink submodule to latest (#24698) 2025-04-10 14:43:28 +12:00