Commit Graph

47063 Commits

Author SHA1 Message Date
bresch 71d514d359 replay: avoid recursion when adding subscriptions
readAndAddSubscription uses nextDataMessage to find the first
corresponding data and nextDataMessage calls readAndAddSubscription
when it finds a new message definition.
2025-03-03 22:32:55 -05:00
Eric Katzfey 38a794260c voxl2-slpi: Updated ghst_parse call in RC driver to match the new function signature 2025-03-03 22:17:00 -05:00
Beniamino Pozzan 9198125ec5 Remove reboot_required from IMU_GYRO_* parameters (#24435)
* fix: IMU_GYRO_* parameters do not requires reboot

Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com>

* restore IMU_GYRO_RATEMAX reboot_required to true

---------

Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com>
2025-03-03 12:33:02 -09:00
Jacob Dahl 6dc39d9deb [wip] gz plugins (#24153)
* added optical flow to gz bridge

* log high rate sensor data

* it builds

* it builds and publishes, need to figure out build system now

* single library

* rename files

* add gz_msg for proto, fix build, test basic flow impl

* update rate, no blur

* PX4-OpticalFlow impl

* rename OpticalFlowSensor

* rename plugins

* disable gps, add plugin path

* cleanup

* fix plugin path export

* properly add OpticalFlowSystem dependency to gz

* move everything under gz_bridge

* cleanup

* add GZ_VEBOSE

* cleanup model/world build target cmake

* added GZ_DISTRO env, harmonic or ionic

* fix gz transport, unstage ark fpv bootloader

* unstage logged_topics.cpp

* cleanup

* make format

* ci fixes

* fix cmake

* remove required for gz-transport

* use model/world namespace for multi vehicle sim. Make format

* make format

* license

* remove needless member var

* made separate Kconfig for gz_msgs, gz_plugins, and gz_bridge

* move OpticalFlow build to it's own cmake

* fix clang

* cleanup comments

* fix rebase
2025-03-03 12:21:28 -09:00
Jacob Dahl 3b2d74b017 gz: Refactor GZBridge and px4-rc.simulator (#24421)
* disable SENS_EN_GPSSIM for all gz airframes

* add GPS + noise to GZBridge

* remove mutex from gz callbacks. Callbacks run synchronously after sim update step and run() loop does not share resources.

* remove hrt check in callbacks

* format

* remove param set-default for already default params

* update submodule

* remove unnecessary comments

* overhaul of the GZBridge and px4-rc.simulator script

* remove arg

* shellcheck disable

* add bus/address

* start gz_bridge before adjusting sim speed or camera follow
2025-03-03 11:29:21 -09:00
bresch 2d1652f499 Commander: fix parachute trigger
Setting "lockdown" disables the actuators. In this mode,
"force_failsafe" has no effect as the actuators are disabled, so the
parachute is not getting released as it requires the output to change to
its failsafe value.
2025-03-03 15:41:39 +01:00
Julian Oes d4509a6cd4 flashfs32: fix result handling (#24371)
We need to translate return values here, otherwise this complains being
unsuccessful when it was actually ok.
2025-02-28 16:21:09 -09:00
Sebastian Domoszlai b5f37c9fa6 Simplify Battery-related Enum Naming (#24265)
* Simplify battery-related enum naming

* Fix mistakenly removed string in enum names

* Fix missing renamings

* Update outdated file

* msg: Increase battery_status version since the enum naming was changed

* Revert message version increase

---------

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2025-02-28 11:42:40 -09:00
Niklas Hauser 336d055923 Robustify Ulanding Radar (#24333)
* [ulanding_radar] Fix comms error perf counter usage

* [ulanding_radar] Workaround for lost messages by lowering sampling rate

The current implementation of the Aerotenna uLanding radar driver assumes that
the UART frames are received in full. If the driver polls with 10ms this is not
always the case and the driver will fail to parse the frame leading to
significant packet loss. This workaround polls at 12ms which ensures that at
least one entire frame is received.
2025-02-28 11:14:32 -09:00
Niklas Hauser 0a9a1a1552 [rcS] Only start CDC/ACM when the module is enabled (#24430)
Otherwise sercon and mavlink are attempted to be started and may fail,
spamming the console on boot with error messages.
2025-02-28 11:09:45 -09:00
Marco Hauswirth 1f5a9e526c dont change mode_change-flag if mode was not allowed to change 2025-02-28 14:23:58 +01:00
Silvan 14941bc270 Commander: handle mode change rejection the same for RC and MAVLink
Previously, when requesting a mode switch to Position without a valid
position estimate through an RC button, the mode change to Position mode
was not rejected if COM_POSCTL_NAVL was set to 1 and instead the system
switched to Altitude mode.
If the mode request instead came in through MAVLink it was rejected.
This commit aligns the two ways of changing a flight mode.

Signed-off-by: Silvan <silvan@auterion.com>
2025-02-28 14:22:36 +01:00
Tony Cake ba31054992 Add RSSI in dBm support, plus LQ, to GHST protocol (#24351) 2025-02-28 00:53:32 -09:00
Beat Küng 93b8bc1515 commander: add hysteresis for avionics power low/high check
We had a setup where the voltage was right at the threshold and the check
toggled continuously.

It still triggers immediately, and then keeps for 15 seconds
2025-02-27 22:24:28 -05:00
Eric Katzfey 5fb810a5ea voxl_esc: Added Mavlink tunnel UART pass-through mechanism 2025-02-26 18:04:34 -05:00
Eric Katzfey d4918ea118 mavlink: updated to latest 2025-02-26 18:04:34 -05:00
Jacob Dahl 1ba9eeafd9 ekf2: silence output from symforce module check (#24384)
Co-authored-by: Alex Klimaj <alex@arkelectron.com>
2025-02-26 11:23:13 -07:00
Jacob Dahl f23ae924de cmake: bump min version (#24386)
* cmake: bump min version to 3.16.3, which is what Ubuntu 20.04 ships with

* reduce to cmake 3.10

---------

Co-authored-by: Alex Klimaj <alex@arkelectron.com>
2025-02-26 11:22:39 -07:00
Andrew Brahim 75c0089c26 Faster than Real -Time support in GZ (#23783)
* add rtf service to gzbridge

Signed-off-by: dirksavage88 <dirksavage88@gmail.com>

* physics before model spawn

Signed-off-by: dirksavage88 <dirksavage88@gmail.com>

---------

Signed-off-by: dirksavage88 <dirksavage88@gmail.com>
2025-02-26 18:52:07 +01:00
Marco Hauswirth 84134e5123 clean up variable declaration 2025-02-26 13:48:59 +01:00
Matthias Grob f69361f742 vtol_type: remove unused variable and function for deceleration pitch integral (#24419)
This functionality was moved to FlightTaskTransition and the variable was forgotten in 079b756f1b
2025-02-26 13:37:21 +01:00
Alexander Lerach 5d2814f6c9 dataman KConfig for persistent storage 2025-02-26 12:48:23 +01:00
Marco Hauswirth 2169ea561b PR: add optical flow arming check (#24375)
* add optical flow arming check

* removed deprecated mavlink_log_critical

* change SYS_HAS_NUM_OF description, keep max sensor at 1 since multiple instances are currently not support.

* restructure if/else blocks
2025-02-26 08:41:12 +01:00
Eric Katzfey 0cb7b8b525 voxl2: Changed from old CONFIG_BOARD_ROOTFSDIR to new CONFIG_BOARD_ROOT_PATH in Posix builds (#24392) 2025-02-25 21:54:43 -05:00
Ramon Roche e6b80d8800 readme: minor cleanup 2025-02-25 21:16:54 -05:00
Pernilla 65a80dc8e6 VTOL: Don't overwrite attitude setpoint in Stabilized transition modes (#24406)
Co-authored-by: Silvan Fuhrer <silvan@auterion.com>
2025-02-25 20:06:16 +01:00
chfriedrich98 7c63468e8b mecanum: refactor code architecture 2025-02-25 17:06:17 +01:00
Jacob Dahl d602b569b1 msg: fix comments in SensorOpticalFlow and VehicleOpticalFlow (#24337) 2025-02-25 14:04:52 +01:00
bresch c09c63171c MC auto: fix land nudging
Revert removal of isTargetModified as this is required when the target
is changed by "RC help" (nudging) during landing.
2025-02-25 09:11:23 +01:00
Ramon Roche 393d4c13db ci: disable flash workflow comments (#24409)
Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2025-02-24 12:02:28 -09:00
Marco Hauswirth 689db41c57 ci: flash test adjust permissions for downstream forks (#24404)
adds "contents: read" to permissions to enable clones on private forks of PX4 again. (#24404)
2025-02-24 07:33:54 -08:00
Alexander Lerach 2356cb973f Performance & testing targets
* Added minimal configs for performance testing

* Rename recovery to performance

* added mfg_cfg

* fix params & don't inherit from default

* rename performance -> performance-test

---------

Co-authored-by: Igor-Misic <igy1000mb@gmail.com>
2025-02-24 16:02:46 +01:00
Ted 35d96d57f9 control_allocator: Added linearization feature for 4 servo swash plates to prevent binding (#23961)
* control_allocator: Added linearization feature for heli swashplates to help prevent servo binding

* Apply suggestions from code review

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

* update description of CA_LIN_SERVO parameter

* update variable name

* add missing semi-colon

* fix variable referenced before assignment

* add missing indentation

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

* removed param unnecessary param

* removed whitespace

* remove CA_LIN_SERVO and enable feature if CA_MAX_SERVO_THROW > 0 plus Update param description.

* remove CA_MAX_SVO_THROW from actuators tab to avoid confusion during standard swashplate setup.

* added comment and fixed spelling mistake

* fix spelling mistake

* fix formatting

* reduce CA_MAX_SVO_THROW short description length to stop test failure

* ActuatorEffectivenessHelicopter: clarfification suggestions for servo linearization feature

* remove NAN check.

---------

Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2025-02-24 12:17:11 +00:00
Jacob Dahl 73b51242c8 nuttx: h7: eth: add checks for PHYID in stm32_phyinit
arch: stm32h7: Add support for dual bank flash memory
2025-02-22 08:46:12 -05:00
Jacob Dahl 11704985f3 ci: add write permissions for flash_analysis workflow (#24393) 2025-02-21 15:18:56 -08:00
Hamish Willee 4ea7de449a InternalCombustionEngineControl - doc corrections (#24359)
* InternalCombustionEngineControl - doc corrections

* Update InternalCombustionEngineControl.cpp
2025-02-21 08:34:08 +11:00
Silvan Fuhrer 24da87db12 FW Position Control: keep flaps in landing config during abort if below AIRSPD_MIN (#23877)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2025-02-20 09:28:27 +01:00
Silvan Fuhrer 29317d90c3 RPM capture: improve description of param RPM_CAP_ENABLE (#24368)
* RPM capture: improve description of param RPM_CAP_ENABLE
---------

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2025-02-20 09:19:43 +01:00
GuillaumeLaine 44d5bfc42c Tools: in px4_msgs copy versioned msgs to common root folder 2025-02-20 07:42:18 +01:00
GuillaumeLaine 86bfac7c8f fix Jenkins: add copy safeguard and copy to unified folder 2025-02-20 07:42:18 +01:00
Jacob Dahl 1db50cb331 mavlink: add missing fields for DISTANCE_SENSOR 2025-02-19 12:11:42 -05:00
Julian Oes 786c2a7f39 drivers/imu/invensense/mpu6000: include cstdlib for size_t 2025-02-19 12:09:54 -05:00
Jacob Dahl af311c8d45 gz: update submodule 2025-02-19 12:08:40 -05:00
Eric Katzfey 98ceb0ce79 voxl_esc: Added GPIO control feature
voxl_esc: Removed obsolete modal_io_data UORB topic
2025-02-19 11:00:15 -05:00
Eric Katzfey 73dbecadf1 Qurt: changed the mutex for I2C for the Qurt platform from a single mutex to one for each bus. (#23531) 2025-02-19 10:59:45 -05:00
chfriedrich98 04a3c4af20 Differential Rover: Refactor and clean up, align with Ackermann rover(#24318)
* differential: refactor code architecture

* Offboard fix

* fix accel/decel slew rate
2025-02-18 18:26:38 +01:00
Silvan Fuhrer 3c129aefa1 Add IC engine control module (#24055)
Internal combustion engine control module.
New actuator functions and RPM based start/restart logic.
Not enabled by default. 

---------

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
Co-authored-by: Pernilla <pernilla@auterion.com>
2025-02-18 17:15:32 +01:00
Perre 412d4390a6 MC Slowmode: Yawstick for gimbal control, vehicle yaw follows gimbal (#24242)
* Yawsticks on gimbal, vehicle follows gimbal in slowmode, once vehicle has taken off

* Increase queue length to avoid automatically unadvertise queued publications with queue length 1

* Improve readability

---------

Co-authored-by: Pernilla <pernilla@auterion.com>
2025-02-18 14:38:11 +01:00
bresch 5e06ab1430 ekf-agp: do not reset to AGP if GNSS fusion is active 2025-02-18 14:35:10 +01:00
Silvan Fuhrer 3be8b680f6 msg_translation: Add vehicle_status_v1 translation
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2025-02-18 14:33:16 +01:00