28152 Commits

Author SHA1 Message Date
Vincent Poon
5a76868cff Change INA238_SHUNT Default Value for Consistency
Change INA238_SHUNT Default Value from 0.0003 to 0.0005 for Consistency with INA226 & INA228.
2025-05-15 11:04:21 +12:00
Hamish Willee
fa2b8cbd49
RC driver config Kconfig -typo (#24848) 2025-05-14 10:10:44 -08:00
Julian Oes
bf9167da50 ina238: actually run it
Without this the driver would not run when started from the
i2c_launcher.
2025-05-14 07:34:02 -07:00
Julian Oes
abf903a851 ina2xx: params require reboot 2025-05-14 07:34:02 -07:00
Julian Oes
117f198891 ina228/ina238: correctly set ADC range
It turns out that we set the ADC range incorrectly leading to the
measured current being capped at a certain level as the ADC on the
sensor saturates.

Instead, we need to set the range according to the formula given in the
interface datasheet.
2025-05-14 07:34:02 -07:00
Jacob Dahl
7ac85d8f99
adis16507: enhance driver to handle and recover from all failure modes (#24691)
* adis16507: enhance driver to handle and recover from all failure modes
- Clean up driver
- Add optional hardware reset
- Fix scale and range for 125 deg/s variant
- Handle communication errors when read returns zeroes
- Improved perf counters

* change prints to PX4_DEBUG, define BURST_READ_CMD, do both soft and hard reset, use ScheduleNow instead of 1ms delay, change read/write stall period to SPI_STALL value
2025-05-13 09:42:19 -06:00
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
Ramon Roche
688e6aafae
ci: introduce px4-dev container with multi arch support (#24022) 2025-05-07 12:12:27 -04: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
chfriedrich98
f13f9b2240 rover: update rtl time estimator 2025-05-07 17:42:07 +02:00
Matthias Grob
87db286a88
pps_capture_params: clarify description (#24641) 2025-05-07 11:15:20 +10: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
Julian Oes
3c39095271
[Sponsored by Holybro] Support for Kakute H743-Wing (#24669)
* hrt: Fix PPM input on channel 2

The CCMR1_PPM define for PPM input on channel 2 was incorrectly set to 2,
which was setting bits for channel 1 instead of channel 2. This prevented
PPM input from functioning properly on channel 2.

Changed CCMR1_PPM for channel 2 from 2 to (1 << 8), which correctly
configures the CC2S bits for input capture mode on TI2.

This fixes an issue noted in the existing code comment:
"FIXME! There is an interaction in the CCMR registers that prevents
using Chan 1 as the timer and chan 2 as the PPM"

Tested on STM32H743 with PPM input on PC7 (TIM8_CH2).

* rc_input: enable sharing serial and PPM pin

By setting RC_SERIAL_PORT_SHARED_PPM_PIN_GPIO_RX it is now possible to
use the same pin on the STM32 for PPM input as well as serial input.

* boards: Add support for Holybro KakuteH7-Wing
2025-05-04 14:44:11 -08: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
Daniel Agar
38d67f5a93 drivers/ins/vectornav: bump cmake minimum to 3.5 2025-04-30 18:12:33 -04: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
bresch
b5f011a31f cal: transpose rotation instead of computing inverse
This is equivalent for an orthonormal matrix
2025-04-29 10:26:51 +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