Commit Graph

28501 Commits

Author SHA1 Message Date
Matthias Grob 5b94557310 Sticks: change internal order and sign of stick positions 2025-09-18 15:50:10 +02:00
Matthias Grob 234e4688b0 Sticks: calculate expo only upon getter call 2025-09-18 15:50:10 +02:00
Matthias Grob 2e910fe185 FlightTask{Altitude+Orbit}: use getter for specific stick value instead of entire array 2025-09-18 15:50:10 +02:00
Matthias Grob 2bf9fce577 Sticks: globalize MPC_HOLD_DZ to MAN_DEADZONE 2025-09-18 15:50:10 +02:00
mahima-yoga a9720cf1ef FixedWingModeManager: use Sticks library 2025-09-18 15:50:10 +02:00
mahima-yoga a514289a68 Move Stick class into a globally available library 2025-09-18 15:50:10 +02:00
Pernilla 2cb97e79b9 FlightTaskManualAccelerationSlow: Acquire gimbal control until expected IDs are reported (#25565)
* Acquire control until expected id s are reported

* require an updated message and allow release in case early exit of FlightTask

* FlightTask Gimbal: acquiring logic simplification suggestion

* formatting

---------

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2025-09-18 11:09:09 +02:00
Pernilla 0c8f5ebc32 Navigator: delay neutral gimbal command (#25551)
* Set gimbal neutral after delay
2025-09-16 10:38:47 +02:00
Rowan Dempster d205d11c3d Recovering UTC timestamps from ULog without sensor_gps (#25534)
* Added overloaded get_log_time util for fractional seconds

* Added write_info implementation for double info types

* Save boot time to .ulg via info message key boot_time_utc

* Changed time type from double to uint64_t, formatted

* Fixing get_log_time function doc
2025-09-15 16:18:26 -08:00
Daniel Agar 41d3403ec7 drivers/gps: prioritize non-blocking reads over injection (#25535) 2025-09-15 15:18:45 -08:00
Silvan db8a1f11a7 EstimatorCheck: fix reporting of low position accuracy failsafe
Signed-off-by: Silvan <silvan@auterion.com>
2025-09-12 14:16:16 +02:00
jmackay2 8669947bcb Support Gazebo Jetty (#25521)
* Support Gazebo Jetty

* Gazebo jetty cmake spelling fix

---------

Co-authored-by: jmackay2 <jmackay2@gmail.com>
2025-09-11 19:30:27 -08:00
Matthias Grob 7b68c5dbfc parameters: remove parameters_injected.xml and support for it in the build system (#25549)
This was apparently added 10 years ago to store metadata of UAVCAN components within the PX4 binary. The parameters in the xml are mostly early UAVCAN ESC parameters that are presumably out of date and not used. Also it does not scale to maintain metadata for all the possible UAVCAN components and it causes confusion when users read the metadata documentation because these parameters are not available in PX4. That's why I suggest to remove it.
2025-09-11 10:47:45 -08:00
Samuel Toledano b2672910da sbgecom: Implement sbgECom INS driver (#24137)
* Add new INS driver sbgECom

Implement sbgECom messages handling to provide IMU sensors, GNSS and EKF data to the autopilot
Be able to parametrize the serial port, baudrate and the communicating mode
Clone sbgECom library only if sbgecom support is enabled and apply a patch
Be able to send SBG Systems INS settings in several ways when starting sbgecom driver

* Fix sensor airspeed simulator units

* Fix HIGHRES_IMU pressure unit

* Allow HIGHRES_IMU to support 4 IMUs

* sbgECom: Add documentation

* Use submodule instead of fetching sbgECom using CMake

* Remove patch strategy

* Fix dates

* Remove patch file

* Update SBG dev type ID

Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>

---------

Co-authored-by: Samuel Toledano <samuel.toledano@sbg-systems.com>
Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com>
2025-09-11 00:37:41 -08:00
Pernilla b4395d5960 FlightTaskManualAcceleration: fix velocity constraint overwriting + altitude limit slow down
- The velocity constraint gets set from multiple places e.g. Position slow knob and altitude related slow down. Depending on the execution order it was overwritten with a higher value again not obeying a stricter limit.
- The slowdown used valocities as inputs instead of the ratio of available altitude.
2025-09-10 10:18:09 +02:00
Matthias Grob e0cdcdb436 Remove COM_POSCTL_NAVL
In an effort to reduce configuration space.
I've not seen use for this option.
If a pilot flies manually in position mode he has some visual reference of the vehicle and can do better than an autonomous mode without position reference.
Also by now we have nudging in Descend mode so the pilot can still give input and the only difference is it automatically goes down instead of the pilot having to descend by stick to land.
2025-09-08 09:41:52 +02:00
Alexander Lerach fd2b7cbea4 gps: update submodule (#25529) 2025-09-05 17:46:32 +02:00
Silvan Fuhrer 5f5a1aa4ab Mavlink stream low bandwidth: add some important missing ones, update rates (#25524)
* mavlink stream low bandwidth: add GLOBAL_POSITION

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

* mavlink stream low bandwidth: add FIGURE_EIGHT_EXECUTION_STATUS

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

* mavlink stream low bandwidth: increase sending rate for all positioning messages to 2Hz

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

* mavlink stream low bandwidth: reduce sending rate for a couple of status messages

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

* mavlink stream low bandwidth: add ATTITUDE_QUATERNION

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

* mavlink stream low bandwidth: use ATTITUDE_QUATERNION instead of ATTITUDE as its preferred by GCS

* mavlink stream low bandwidth: add RAW_RPM for vehicles with ICE

* mavlink stream low bandwidth: increase VFR_HUD rate

* mavlink stream low bandwidth: decrease FIGURE_EIGHT_EXECUTION_STATUS rate

---------

Signed-off-by: Silvan <silvan@auterion.com>
Co-authored-by: Alexander Lerach <alexander@auterion.com>
2025-09-05 16:28:09 +02:00
Claudio Chies 1840c0db48 UAVCAN:BAT: improve remaining time calculation (#25500)
* UAVCAN:BAT: improve remaining time calculation

* UAVCAN:BAT: fix time_remaining calculation, bugfixes, improved filter convergence time

* UAVCAN:BAT: remove BatteryInfo Publishing if no valid info

* UAVCAN + Battery library: suggestions while reviewing

---------

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2025-09-05 10:57:13 +02:00
alexklimaj 89c6d24946 Update GPS submodule 2025-09-04 17:02:31 -06:00
fbaklanov fc8e2021e7 A driver for EULER-NAV Baro-Inertial AHRS (#24534)
* Create a dummy BAHRS driver

* Resolve compilation

* Switch back to cpp, fix compilation

* Create module.yaml

* Implement required module APIs and open serial port

* Revise info and error messages

* Poll serial port

* Push received bytes into the ring buffer

* Process data buffer (1)

* Process data buffer (2)

* Process data buffer (3)

* Process data buffer (4)

* Process data buffer (5)

* Process data buffer (6)

* Implement and use initialize() and deinitialize() methods

* Implement print_usage() and print_status()

* Collect all config constants in a class

* Put info about next found message into a class

* Print CRC failure count

* Remove unneeded print

* Add comments

* Disable EKF2, advertise vehicle attitude

* Decode and publish BAHRS signals (1)

* Run the driver as an additional source of sensor signals

* Add tiny noise to baro-inertial pressure signal

* Fix the sensor ID

* Add copyrights

* Fix formatting

* Remove redundant newline character

* Fix long parameter name

* Fix findings (1)

* Fix finding (2)

* Fix formatting

* Fix the timeout value

* Remove aliases

* Fix copyright

* Fix indent

* Comply with naming convention

* Rework comparison to false

* Reduce nesting (1)

* Reduce nesting (2)

* Reduce nesting (3)

* Fix BAHRS sensor ID
2025-09-04 09:31:36 -08:00
Silvan Fuhrer e6f60ef403 Sensors: remove some distance sensors from COMMON_DISTANCE_SENSOR again (#25522)
* distance sensors common: remove DISTANCE_SENSOR_TERARANGER

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

* distance sensors common: remove DISTANCE_SENSOR_CM8JL65

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

---------

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2025-09-04 09:28:37 -08:00
Alexander Lerach 9015001b42 uavcan: fix driver init after stop/start (#25511) 2025-09-02 10:02:15 -08:00
Niklas Hauser 9062d0cc7d [driver] Add a parameter to enable the PCA9685 driver 2025-08-29 14:05:40 +02:00
Balduin 2eac6cca38 dds_topics: accept landing_gear command from external modes (#25496) 2025-08-28 08:30:27 -08:00
Marco Hauswirth 073013cf85 reset terrain w flow based on current horizontal velocity 2025-08-28 13:58:29 +02:00
Silvan Fuhrer 547582b16b DSHOT: fix unit for DSHOT_MIN parameter (#25493)
Signed-off-by: Silvan <silvan@auterion.com>
2025-08-27 09:21:16 -08:00
Alexander Lerach 8f2c36689d logging: allow logging backend config
* logging: allow logging backend config

* correct board comments

* documentation: updated logging section
2025-08-27 15:44:36 +02:00
Jacob Dahl 30fcb4fcb1 uavcan: esc: init msg to avoid publishing random values (#25485) 2025-08-27 17:09:36 +12:00
Davide Iafrate ec436d3be3 Enable selectively disabling sensors in the Gazebo bridge. (#25484)
* Initial plan

* Add configurable sensor subscription parameters

Co-authored-by: Tuxliri <3532595+Tuxliri@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Tuxliri <3532595+Tuxliri@users.noreply.github.com>
2025-08-26 10:00:47 -08:00
Beat Küng 6ec8dec63a commander: add valid_registrations_mask to ArmingCheckRequest.msg
This allows external modes to individually check if they are flagged as
invalid/unresponsive.
Previously this was done only based on whether or not ArmingCheckRequest
was received, which does not work when multiple modes are running.
2025-08-26 14:38:05 +02:00
Beat Küng edfcdaa008 commander: check for stale arming_check_reply messages
based on the message timestamp.

Previously it was possible to run into the following case:
- 2 external modes are registered (running inside the same ROS node)
- they time out due to the micro xrce agent being blocked for some reason
- PX4 removes them
- the latest arming check replies still arrive to PX4
- the application restarts
- the first mode gets registered
- PX4 handles the previous arming check reply, and clears
  waiting_for_first_response, which reduces the timeout
- the second mode registers and as part of that checks for message
  compatibility. This takes ~1s, triggering a timeout of the first mode
2025-08-26 14:38:05 +02:00
Silvan a1ee9eb2c4 mavlink: remove streams from LOW_BANDWIDTH that are deprecated
Signed-off-by: Silvan <silvan@auterion.com>
2025-08-25 17:34:34 +02:00
bresch 4a697d0191 ekf2: stop GNSS altittude and velocity aiding when gnss_fault is set 2025-08-25 10:22:23 +02:00
mahima-yoga dd09cdf986 Commander: remove HIL_STATE_ON from arming lockdown
Removing this from the boolean allows users to send pwm values in SIH.
2025-08-25 09:28:43 +02:00
chfriedrich98 4a5eabb61e rover: constrain update steps 2025-08-22 12:13:01 +02:00
chfriedrich98 248f113141 rover: improve hold position logic (#25466) 2025-08-22 12:10:16 +02:00
Peter van der Perk c1d15d0e09 Zenoh: use strncpy and bool 2025-08-22 08:22:59 +02:00
Peter van der Perk 8689c00be7 Zenoh: cleanup and review 2025-08-22 08:22:59 +02:00
Peter van der Perk 17e843a985 zenoh: remove MessageFormat since Zenoh RIHS01 already provides it
RIHS01 has the same functionality and already provides type safety with
rmw_zenoh_cpp. The user on ROS2 can compare the PX4 ros2_lv hashes with
their own px4_msgs for a mismatch
2025-08-22 08:22:59 +02:00
Peter van der Perk 747bcc9db5 zenoh: Move ROS2 Rmw attachment code to rmw_attachment.h
Allows for re-use for later ROS2 Service / Zenoh queryable
2025-08-22 08:22:59 +02:00
Benjamin Chung c41216376a Add an explicatory comment to Zenoh publisher's handling of the uOrb topic number (or lack thereof) 2025-08-22 08:22:59 +02:00
Benjamin Chung 88c1412d25 Zenoh CLI improvements 2025-08-22 08:22:59 +02:00
Benjamin Chung 01bf700f3d Fix dds topics naming 2025-08-22 08:22:59 +02:00
Benjamin Chung 70054fc567 Implement instance selection & pub/sub deletion for Zenoh 2025-08-22 08:22:59 +02:00
Benjamin Chung 7a98c87fcb Copy the uxrce config for Zenoh 2025-08-22 08:22:59 +02:00
Benjamin Chung 80b5cf2ed7 Prevent conversion warnings from static integers in zenoh-pico 2025-08-22 08:22:59 +02:00
Peter van der Perk 9ffd31097d zenoh: Use CDRv1 to match ROS2
Fixes various padding related serialization issues.
2025-08-22 08:22:59 +02:00
Peter van der Perk f99759db87 zenoh: Fix status keyexpr printf 2025-08-22 08:22:59 +02:00
Peter van der Perk 231128c68e Zenoh set transport lease to 60000 to match ros2 2025-08-22 08:22:59 +02:00