Commit Graph

42823 Commits

Author SHA1 Message Date
bresch 01fc4c3cf1 SquareMatrix: add functions to copy upper and lower triangle 2023-08-08 12:09:56 -04:00
Silvan Fuhrer 56dd1dc930
Navigator: Resume mission with last flight speed (#21714)
* Navigator: DO_CHANGE_SPEED: only store sinlge cruising_speed_current_mode

This stored cruising speed setpoint is reset on mode change and
after a VTOL transition.

* Navigator Mission: replay DO_CHANGE_SPEED items when resuming mission

* Navigator: remove cruising_speed_sp_update()

Speed changes in a mission are handled directly in the position controllers,
and no longer in Navigator.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>

---------

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-08-08 13:22:05 +02:00
Beat Küng 02a6640000 fix uxrce_dds_client: apparently we cannot use the upper 4 bits for ID's 2023-08-08 10:59:34 +02:00
hskrieg 64c21ad428 uorb: allow for more than 255 uORB messages
Increased size for ORB_ID from uint8_t to uint16_t

Created a type: orb_id_size_t = uint16_t.
There are still a couple of places where the size
of the ORB_ID is assumed to be less than 16-bits.
The places that I have found are commented regarding
this and can be found with a search on orb_id_size_t.
2023-08-08 10:59:34 +02:00
Christian Rauch e9fbb9a3ab pca9685_pwm_out: add parameter PCA9685_RATE to set update frequency 2023-08-07 20:44:07 -04:00
Christian Rauch dce7149363 remove unused debug.h 2023-08-07 20:42:58 -04:00
Christian Rauch cab78593b4 BMI0xx: remove unused board_dma_alloc.h 2023-08-07 20:42:58 -04:00
Christian Rauch 638b18dd07 ADIS16497: replace NuttX specific up_udelay with HAL version px4_udelay 2023-08-07 20:42:58 -04:00
Christian Rauch b689082d97 enable common barometer, IMU and magnetometer 2023-08-07 20:42:58 -04:00
Christian Rauch a128517897 skip SSH key check for simpler builds in the Docker container 2023-08-07 20:42:58 -04:00
Dusan Zivkovic 29f352d49d px4-rc.simulator: set Gazebo coordinate frame reference (SIM_GZ_HOME_* params) from PX4_HOME_* env variables 2023-08-07 14:41:35 -04:00
bresch cd77d52dc1 ekf2: calcRotVecVariances using SymForce 2023-08-07 14:28:06 -04:00
Beat Küng 2d09ad55e3 omnibus/f4sd: disable urxce_dds_client and enable tools & load_mon 2023-08-04 11:27:31 -04:00
Beat Küng 0277a6486f mavsdk_tests: add offboard attitude test & run with Q estimator 2023-08-04 11:27:31 -04:00
Daniel Agar d75bb62a65
ekf2: separate mag and mag heading control logic (#21212)
- split mag_3d into new standalone mag fusion and mag fusion allowed to update all states (full mag_3d)
 - new dedicated control logic for mag/mag_3d fusion and standalone mag heading fusion
 - if WMM available use for mag_I and mag_B init
 - mag states reset if external yaw reset (yaw estimator, GPS yaw, etc)
 - mag reset if declination changed (eliminate _mag_yaw_reset_req)
 - mag fusion (but not mag_hdg or mag_3d) can be active during gps_yaw or ev_yaw (if yaw aligned north)

Co-authored-by: bresch <brescianimathieu@gmail.com>
2023-08-04 10:39:16 -04:00
alexklimaj 7db667558e ARK RTK GPS support baro on I2C bus 1 instead of 2 2023-08-03 20:48:01 -04:00
Roman Dvorak 1feb79f27f update gps submodule 2023-08-03 10:27:34 -04:00
Daniel Agar 95b3005679
lib/world_magnetic_model: add constants for min/max/mean/median field strength
- add geo_magnetic_tables.hpp comments for blackout zone warnings
 - reduce unnecessary precision in generated tests (should reduce future update noise)
 - update copyright year
2023-07-28 17:14:25 -04:00
Daniel Agar 88e7452492
commander: collapse ArmStateMachine and simplify
- simplify vehicle_status.arming_state down to just armed and disarmed
    - ARMING_STATE_INIT doesn't matter
    - ARMING_STATE_STANDBY is effectively pre_flight_checks_pass
    - ARMING_STATE_STANDBY_ERROR not needed
    - ARMING_STATE_SHUTDOWN effectively not used (all the poweroff/shutdown calls loop forever in place)
    - ARMING_STATE_IN_AIR_RESTORE doesn't exist anymore
 - collapse ArmStateMachine into commander
     - all requests already go through Commander::arm() and Commander::dismarm()
 - other minor changes
     - VEHICLE_CMD_DO_FLIGHTTERMINATION undocumented (unused?) test command (param1 > 1.5f) removed
     - switching to NAVIGATION_STATE_TERMINATION triggers parachute command centrally (only if armed)

---------

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2023-07-28 17:12:01 -04:00
Daniel Agar 84b6b472b4
ekf2: change delta angle and delta velocity bias states to accel and gyro bias (#21901)
* ekf2-test: remove outdated codegen comparison

The definition of states changed so the comparison with the old
derivation cannot work anymore.

---------

Co-authored-by: bresch <brescianimathieu@gmail.com>
2023-07-28 09:31:44 -04:00
Daniel Agar 444e5d2d4a boards: px4_fmu-v5_debug readd systemcmds/sd_stress 2023-07-27 14:48:41 -04:00
Silvan Fuhrer c0d9e2ac7a
commander: add warning for imminent navigation failure
Some system are able to dead-reckon for a while after losing GPS or
other sources providing positional feedback. If the estimated position
error grows above the failsafe threshold, the system enters a failsafe
mode. As the position error estimate is growing linerly over time, and
it is recommended to take action before entering the failsafe, we here
warn the user about the imminent failsafe and propose to take manual
control.

---------

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-07-27 14:12:04 -04:00
PX4 BuildBot 5f94eb1493 Update submodule sitl_gazebo-classic to latest Thu Jul 27 12:39:07 UTC 2023
- sitl_gazebo-classic in PX4/Firmware (1c1f8da7d9): c8ac7ff39b
    - sitl_gazebo-classic current upstream: 20ded0757b
    - Changes: c8ac7ff39b...20ded0757b

    20ded07 2023-07-21 Silvan Fuhrer - wind pluging: fix wind ramp (#998)
6620a6b 2023-07-20 Silvan Fuhrer - wind plugin: add option to simulate a constant wind change with ramp up (#996)
2023-07-27 12:58:59 -04:00
Julian Oes 42bdfe0fb2
boards: px4/fmu-v5 move some test commands to test config
I would expect anyone using these test commands can just use the test config instead.

Signed-off-by: Julian Oes <julian@oes.ch>
2023-07-27 10:36:03 -04:00
Daniel Agar e468798e91
Update world_magnetic_model to latest Thu Jul 27 11:14:06 UTC 2023
Co-authored-by: PX4 BuildBot <bot@px4.io>
2023-07-27 10:34:11 -04:00
Daniel Agar d928a3a8d0
Update submodule GPSDrivers to latest Thu Jul 27 12:39:18 UTC 2023 (#21897)
- GPSDrivers in PX4/Firmware (9762316d8a0a84b5cb8563ab4c289416421d2801): 261480cb78
    - GPSDrivers current upstream: b94378bcbb
    - Changes: 261480cb78...b94378bcbb

    b94378b 2023-07-26 Eric Katzfey - Fixing UBlox M10 support

Co-authored-by: PX4 BuildBot <bot@px4.io>
2023-07-27 10:33:22 -04:00
PX4 BuildBot 37a6ac5c93 Update submodule mavlink to latest Thu Jul 27 12:39:22 UTC 2023
- mavlink in PX4/Firmware (3476e500bf5baa837314e09ff29deeabb719071b): e47dfbb4b7
    - mavlink current upstream: e04677782a
    - Changes: e47dfbb4b7...e04677782a

    e0467778 2023-07-27 JaeyoungLim - Clarify SET_ATTITUDE_TARGET quaternion field (#2020)
2023-07-27 10:32:27 -04:00
PX4 BuildBot a3a19da651 update all px4board kconfig 2023-07-27 10:24:10 -04:00
Beat Küng 351a9050c3 commander: update param description for COM_MOT_TEST_EN 2023-07-27 09:39:24 -04:00
Ayham Alharbat 1c1f8da7d9
add a gz-omnicopter model (#21818)
* [not-working] add a gz-omnicopter model

* Fix axis directions on omnicopter model

The omnicopter joint axis directions had to be adapted for sdf 1.9 as it has different conventions for joint axis definitions.

* include model from gz-fuel & remove mesh files

* Fix omnicopter model using fuel

---------

Co-authored-by: Jaeyoung Lim <jalim@ethz.ch>
2023-07-27 11:34:27 +02:00
Konrad e4111a03bf mavlink-mission: Initialize the safepoint and mission counter from the dataman state.
If at the last powercycle one mission was uploaded, the counter in dataman was 1. On the next powercycle the mavlink mission counter was reset to zero and on first mission upload updated to 1 again. Other modules check, if the mission was changed based on the counter, like the mission.cpp loaded the mission counter from the dataman. On a new mission, the comparison of the counters failed, because both were the same value even if the mission was completely different.
2023-07-27 07:21:29 +02:00
Konrad aa2c47a56b mission: On an updated mission, don't assume per default that the mission is not valid, use the state from the last mission validation. 2023-07-27 07:21:29 +02:00
Daniel Agar 82962acd5c sensors/vehicle_magnetometer: add mag calibration PX4_DEBUG output 2023-07-26 12:42:51 -04:00
Daniel Agar d65ddbf810
simulation/sensor_gps_sim: lower GPS velocity variance
- for a multicopter EKF2 default required GPS speed accuracy is 0.5 m/s
2023-07-26 12:42:18 -04:00
Beniamino Pozzan b9667e955d
[uxrce-dds-client]: add parameter to disable time synchronization between Agent and Client
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@phd.unipd.it>
2023-07-26 09:16:29 -04:00
Daniel Agar 56b59dc155 Revert "jenkins ci: listener topic list update"
This reverts commit 190371c6ee.
2023-07-25 18:39:28 -04:00
bresch 30d8df7001 mag_check: fix param type 2023-07-25 11:21:05 -04:00
bresch 99309625e8 preflt-chk: report strength and inclination failure values 2023-07-25 11:21:05 -04:00
Daniel Agar 19d6e69b0b
ekf2: allow yaw estimator to perform yaw alignment
This can be useful if using a full EV + GNSS setup and you start indoors, then fly outside. Once GPS is good and the only missing requirement is yaw alignment the yaw estimator reset is performed and EV yaw will automatically stop itself.
2023-07-25 10:58:45 -04:00
Daniel Agar 6d4ec4e623 Jenkinsfile-compile increase timeout 2023-07-25 10:56:45 -04:00
bresch beb5fc5eb6 ekf-checks: set min and max values for required/failsafe eph 2023-07-24 15:10:07 -04:00
bresch 30bfe0d379 ekf2: remove artificial constraint on position uncertainty growth
There is no reason to contrsain the position uncertainty, estpecially
when flying with velocitiy aiding only.

Note that all the variances are already contrained to sane values at the
end of the covariance prediction
2023-07-24 15:10:07 -04:00
Daniel Agar 1ef9ee7622
ekf2: simplify fuseYaw() signature and use consistently
- make it safe to call for other aid sources, no EKF state is changed unless fusion_enabled
2023-07-24 10:34:00 -04:00
Daniel Agar 01bcc47fb1
ekf2: apply yaw reset to vision attitude error filter
- set vision attitude error filter uninitialized if vision data stops
 - ev error filter is only compiled when ev config is selected

Co-authored-by: bresch <brescianimathieu@gmail.com>
2023-07-24 10:32:33 -04:00
bazooka Joe 190371c6ee jenkins ci: listener topic list update 2023-07-24 10:27:48 -04:00
Junwoo Hwang e626f8666c Geofence: Disable pre-emptive geofence predictor by default (#21657)
Co-authored-by: Hamish Willee <hamishwillee@gmail.com>
2023-07-24 10:25:31 -04:00
bresch a95c11d48a ekf2-test: add test for inclination of mag earth field 2023-07-24 10:16:37 -04:00
bresch 72be724b86 ekf2: log mag inclination and strength for tuning 2023-07-24 10:16:37 -04:00
bresch 357bf024f6 ekf2-mag: add inclination check 2023-07-24 10:16:37 -04:00
bresch e4a16bfc80 ekf2-mag: rework mag strength check 2023-07-24 10:16:37 -04:00