Daniel Agar and Matthias Grob
9be8f81d75
flight_mode_manager: StickAccelerationXY protect from NAN velocity reset
...
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2023-03-10 08:17:20 -05:00
Daniel Agar
435c799f57
uORB: print more decimal places for float32 and float64
2023-03-10 07:39:34 +01:00
Daniel Agar
b3cc945a5a
ekf2: merge runOnGroundYawReset() + runInAirYawReset() into unified magReset()
2023-03-09 09:08:27 -05:00
Daniel Agar
c1f244a6fd
ekf2: decrease EKF2_MAG_YAWLIM default 0.25 -> 0.2 rad/s ( #21264 )
2023-03-09 09:07:54 -05:00
Daniel Agar
60b85c2e1a
mavlink: add kconfig option to disable UAVCAN parameter bridge
...
- depends on DRIVERS_UAVCAN
2023-03-08 19:30:06 -05:00
Daniel Agar
4dda5a97d8
ekf2: mag_3d check mag bias variance before allowed to update all states (orientation)
2023-03-08 15:12:48 -05:00
Daniel Agar
d45aeae1de
ekf2: add and share centralized method to clear inhibited state Kalman gains
2023-03-07 13:27:57 -05:00
Daniel Agar
3fac85369e
ekf2: gps control use adjusted velocity and position for reset
2023-03-06 09:03:39 -05:00
Daniel Agar
74130d7f71
ucdr msg template add timestamp protections
...
- if timestamp (or timestamp_sample) unpopulated fill it with current hrt_absolute_time()
- if using provided timestamp don't allow it to exceed current hrt_absolute_time()
2023-03-02 09:52:53 -05:00
Daniel Agar
bde194fb12
simulation/gz_bridge: local_position_groundtruth include heading ( #21224 )
2023-03-01 18:44:31 +01:00
Daniel Agar
b5a6d6db0d
ekf2: fix controlEvYawFusion() yaw reset
2023-02-24 16:59:59 -05:00
Daniel Agar
a06a635da3
drivers/inv/vectornav: fix official vectornav library NuttX support
...
- vectornav library (libvnc) fixed for NuttX
- open serial port O_NONBLOCK (like __APPLE__)
- set serial port baud rate with cfsetspeed (like __APPLE__)
- vectornav backend thread increase stack and run at higher priority (SCHED_FIFO)
2023-02-24 16:59:38 -05:00
Daniel Agar
98263de17b
ekf2: move aux vel helpers to auxvel_fusion.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
a199df78cc
ekf2: move mag control helpers to mag_control.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
c20e4e4421
ekf2: move stopFlowFusion() to optical_flow_control.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
3a317ec18c
ekf2: move gps helpers to gps_control.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
9ec3f30ae1
ekf2: move gps buffer pop to controlGpsFusion()
...
- controlGpsFusion() now owns yaw estimator update
2023-02-22 09:08:33 -05:00
Daniel Agar
a867bb7d88
ekf2: let controlAirDataFusion() update yaw estimator TAS
2023-02-22 09:08:33 -05:00
Daniel Agar
60856ebe62
ekf2: move range buffer pop to controlRangeHeightFusion()
2023-02-22 09:08:33 -05:00
Daniel Agar
08f111f694
ekf2: consolidate airspeed fusion logic and helpers
...
- pass new airspeed sample around when available
- can't completely eliminate _airspeed_sample_delayed until resetWind()
called from sideslip fusion is updated
2023-02-22 09:08:33 -05:00
Daniel Agar
241cee2bb7
ekf2: move airspeed buffer pop to controlAirDataFusion
2023-02-22 09:08:33 -05:00
Daniel Agar
0711a34d0e
ekf2: move flow buffer pop to controlOpticalFlowFusion
2023-02-22 09:08:33 -05:00
Daniel Agar
ed8cef6cf0
ekf2: move controlAuxVelFusion control.cpp -> auxvel_fusion.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
b4e845d7c0
ekf2: move controlDragFusion control.cpp -> drag_fusion.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
c08a387c5a
ekf2: move controlBetaFusion control.cpp -> sideslip_fusion.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
d61b8c21b2
ekf2: move controlAirDataFusion() control.cpp -> airspeed_fusion.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
d840f7f39f
ekf2: move controlGpsYawFusion() control.cpp -> gps_control.cpp
2023-02-22 09:08:33 -05:00
Daniel Agar
b3eb563db4
boards: cubepilot_cubeorange_test restore sd_bench (used on test rack)
2023-02-13 23:53:54 -05:00
Daniel Agar
2ea25804a1
ekf2: allow filter init with only IMU ( #21041 )
...
- if mag enabled heading init is now pushed to controlMagFusion()
2023-02-13 22:07:15 -05:00
Daniel Agar and Mathieu Bresciani
a18e07e525
drivers/imu/bosch/bmi088: add more time between configure and FIFO_READ
...
- new FIFO_RESET state used to give the sensor more time after successful configuration before sampling begins
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2023-02-13 21:01:50 -05:00
Daniel Agar
1134d5338f
boards: sky-drones_smartap-airlink_default disable modules to save flash
2023-02-13 20:58:17 -05:00
Daniel Agar
4d95150e18
boards: px4_fmu-v4pro_test disable gyro_fft to save flash
2023-02-13 20:56:19 -05:00
Daniel Agar
299cb32aa8
boards: nxp_fmuk66-v3_test disable gyro_fft to save flash
2023-02-13 20:55:06 -05:00
Daniel Agar
bc5f4f8377
boards: mro ctrl-zero-h7 and pixracer disable modules to save flash
2023-02-13 20:53:52 -05:00
Daniel Agar
70a7edbcd0
boards: cubepilot_cubeorange_default disable SIH simulator to save flash
2023-02-13 20:47:26 -05:00
Daniel Agar
b14e0c21b6
boards: px4_fmu-v2_default disable sensors/vehicle_airspeed and sensors/vehicle_optical_flow to save flash
2023-02-13 20:45:28 -05:00
Daniel Agar
7b3befded5
ekf2: disable new gravity fusion by default
2023-02-07 13:57:10 -05:00
Daniel Agar
661eb2adb4
lib/sensor_calibration: BiasCorrectedSensorOffset() don't incorporate thermal offsets
...
- the thermal offsets are an optional correction applied to the raw data, so when updating an existing calibration offset with new learned bias we don't want this incorporated
2023-02-06 15:09:07 -05:00
Daniel Agar
04d3e549f5
ekf2: resetQuatStateYaw() set _time_last_heading_fuse
2023-02-03 10:03:09 -05:00
Daniel Agar
66ad7fd06c
ekf2: include 0 timestamp checks in helpers (isTimedOut(), isRecent(), etc)
...
- EKF isTimedOut(), isRecent(), and isNewestSampleRecent() need to handle the case where the timestamp has never been set
- reset() more thoroughly reset fields (mainly impacts unit tests)
2023-02-03 10:00:51 -05:00
Daniel Agar
264a99fb77
ekf2: new EKF2_IMU_CTRL parameter and gyro bias inhibit mechanism
...
- EKF2_AID_MASK accel bias inhibit moves to EKF2_IMU_CTRL
2023-02-03 09:52:24 -05:00
Daniel Agar
f668ea5aa6
ekf2: RingBuffer add reset method
2023-02-03 08:49:44 -05:00
Daniel Agar
e3d73cd837
ekf2: mag control reset mag_lpf on first sample
2023-02-02 16:12:09 -05:00
Daniel Agar
2be701f902
platforms/nuttx: cmake debug pass GDB path and set RTOS plugin file extension
2023-01-30 20:19:38 -05:00
Daniel Agar
47215bb625
lib/wind_estimator: symforce codegen remove reserved identifier naming
...
- from the C standard, "All identifiers that begin with an underscore and either an uppercase letter or another underscore are always reserved for any use"
2023-01-30 09:24:32 -05:00
Daniel Agar
efe1d43550
ekf2: symforce codegen remove reserved identifier naming
...
- from the C standard, "All identifiers that begin with an underscore and either an uppercase letter or another underscore are always reserved for any use"
2023-01-30 09:24:32 -05:00
Daniel Agar and PX4 BuildBot
8da993c30e
Update world_magnetic_model to latest Sat Jan 28 11:14:05 UTC 2023
...
Co-authored-by: PX4 BuildBot <bot@px4.io >
2023-01-28 11:41:03 -05:00
Daniel Agar
0bdec5bcc0
cmake: nuttx fix jlink-nuttx dependency
2023-01-25 09:06:35 -05:00
Daniel Agar
64c2ec5eea
simulation/gz_bridge: remove cmake CONFIGURE_DEPENDS
...
- PX4 build system simulation targets are optional and no longer
strictly required
2023-01-24 13:58:30 -05:00
Daniel Agar
9cb6de8010
simulation: relax jmavsim java requirements (finding vecmath.jar)
2023-01-24 13:56:24 -05:00
Daniel Agar
3b543c7700
mavlink: serialize mavlink generation to prevent broken output
...
- let uAvionix generation fully complete before generating CONFIG_MAVLINK_DIALECT
2023-01-24 13:49:28 -05:00
Daniel Agar
7c9dcd1985
drivers/uavcan: silence noisy libuavcan cmake version deprecation warning for now
...
- keep drivers/uavcannode cmake in sync with drivers/uavcan
2023-01-22 14:48:43 -05:00
Daniel Agar
1b46028fd3
mavlink: generate mavlink quiet by default (stdout redirected to log file)
2023-01-22 14:45:41 -05:00
Daniel Agar
3f842f01a0
simulator/gz_bridge: split actuator outputs for ESCs and servos ( #20979 )
...
- existing SIM_GZ outputs -> SIM_GZ_EC (ESCs)
- new SIM_GZ_SV for servos (not fully implemented)
2023-01-21 14:44:09 -05:00
Daniel Agar
a93ef657d1
HIL/test_airframes.sh allow 'gps' and 'mavlink' status to fail
...
- we're only looking for debug info if/when things go wrong later
2023-01-21 11:38:39 -05:00
Daniel Agar
fb000e874f
boards: px4_fmu-v5_debug quiet RTC debug errors
...
- test rack CUAV v5 plus is producing false positives (in this particular situation) that are failing the overall testing
2023-01-21 11:14:28 -05:00
Daniel Agar
6b13fb8b86
HIL/test_airframes.sh check mavlink and gps status before stopping all
...
- occasionally these fail on the test rack (cube orange), so try to
gather more information
2023-01-21 11:06:23 -05:00
Daniel Agar
1aa8ec4537
drivers: initial VectorNav (VN-100, VN-200, VN-300) support
2023-01-20 19:09:30 -05:00
Daniel Agar
bd9d09663f
commander: avoid uint64 timestamp implicit float conversions
...
- 64 bit time in microseconds stored in a 32 bit float quickly becomes problematic
- fixes https://github.com/PX4/PX4-Autopilot/issues/20944
2023-01-19 17:48:40 -05:00
Daniel Agar
3822ef1519
boards: update all in tree bootloaders
2023-01-19 17:25:39 -05:00
Daniel Agar
9d7c4b8273
boards: ark_can-flow_default disable sensors/vehicle_acceleration to save flash
2023-01-18 22:58:19 -05:00
Daniel Agar
ffa9d61065
boards: px4_sitl_default include gz_bridge by default
2023-01-18 22:56:17 -05:00
Daniel Agar
2b5722786b
cmake: fix and update packaging
2023-01-18 22:51:12 -05:00
Daniel Agar
967c37ac17
boards: mro_pixracerpro_default disable examples/fake_gps to save flash
2023-01-18 21:44:09 -05:00
Daniel Agar
6a64e74ef3
icm42688p: fix register bank selection
...
* icm42688p: clear INT_CONFIG1 INT_ASYNC_RESET for proper INT1/INT2 pin operation
2023-01-18 11:08:03 -05:00
Daniel Agar
95300d5637
ekf2: refactor output predictor to class
...
- refactor all EKF backend output predictor pieces into new OutputPredictor class
- output states are now calculated immediately with new high rate IMU rather than after EKF update
- IMU delayed sample is passed as around as control data to avoid storing an extra copy and make the requirement clear
2023-01-18 10:59:34 -05:00
Daniel Agar
71d916dbcd
ekf2: PreFlightChecker fix vel_ne_innov_lpf index
2023-01-17 13:03:38 -05:00
Daniel Agar
6991ac014c
rename 'gazebo' simulation to 'gazebo-classic' ( #20936 )
...
- use `gazebo-classic` everywhere consistently referring to the original Gazebo (eg version 9,10,11)
- additional `gazebo_*` helper targets added for compatibility, but warn about deprecation and tell you the new target naming
- use `gz` everywhere when referring to Gazebo (aka Ignition Gazebo or new Gazebo)
2023-01-15 11:36:12 -05:00
Daniel Agar
6605378d0d
boards: px4_fmu-v6c_default disable systemcmds/serial_test to save flash
2023-01-14 19:24:47 -05:00
Daniel Agar
30a240a7a4
boards: modalai_fc-v2_default disable examples/fake_gps to save flash
2023-01-14 19:23:19 -05:00
Daniel Agar
52b9b9ba2f
simulation: restore 'gazebo' alias for 'gazebo_iris'
...
- only create helper targets if Gazebo 11 found on system
2023-01-14 17:03:18 -05:00
Daniel Agar
45912066d2
fix copyright header year range
2023-01-14 09:16:16 -05:00
Daniel Agar
674a59e48f
ekf2: new gyro bias limit parameter EKF2_GYR_B_LIM
...
- default is now a more conservative 0.15 rad/s (~8.6 deg/s) instead of the previous hardcoded 20 deg/s
2023-01-14 09:15:46 -05:00
Daniel Agar
c97381c97f
mavlink: streams SCALED_IMU fix gyro dt
2023-01-13 20:01:41 -05:00
Daniel Agar
5942194c66
iridiumsbd: advertise status topic immediately and log by default
2023-01-13 20:01:03 -05:00
Daniel Agar
635daeed8a
NuttX push jlink-nuttx into cmake and enable CONFIG_DEBUG_TCBINFO by default
2023-01-12 09:05:26 -05:00
Daniel Agar
5453630a6d
Jenkins: hardware test rack ignore irrelevant sensor timeouts
2023-01-11 16:56:19 -05:00
Daniel Agar
0f9bc351f1
ekf2: fix global_pos alt_reset_counter publish ( #20906 )
...
- fixes #20900
2023-01-11 14:15:07 -05:00
Daniel Agar
618288cca9
SITL Gazebo classic make airframes simulator specific
2023-01-07 17:00:35 -05:00
Daniel Agar
97c8a60d67
SITL gz make airframes simulator specific
2023-01-07 17:00:35 -05:00
Daniel Agar
ae4cb24100
SITL flightgear make airframes simulator specific
2023-01-07 17:00:35 -05:00
Daniel Agar
1abe35c220
SITL jsbsim make airframes simulator specific
2023-01-07 17:00:35 -05:00
Daniel Agar
75125da34c
SITL sihsim make airframes simulator specific
2023-01-07 17:00:35 -05:00
Daniel Agar
95a6eba36c
SITL jmavsim make airframes simulator specific
...
-cleanup and simplify jmavsim SITL launch and debug
2023-01-07 17:00:35 -05:00
Daniel Agar
760fff7d89
Kconfig: fix missing SERIAL_EXT2 (fmu-v5x/v6x)
2023-01-07 12:10:52 -05:00
Daniel Agar
dc5ce9b0ce
boards: NuttX increase default CONFIG_ARCH_INTERRUPTSTACK 512->768 bytes
...
- during casual testing on default configs the stack was penetration was reaching ~90% which is a bit too close for comfort
- increasing by 50% to be conservative
2023-01-07 12:07:35 -05:00
Daniel Agar
7f7dfea998
drivers/imu/analog_devices: experimental support for new ADIS16507 IMU (untested)
2023-01-07 10:56:30 -05:00
Daniel Agar and PX4 BuildBot
f520d4b3be
Update submodule mavlink to latest Sat Jan 7 12:38:21 UTC 2023
...
- mavlink in PX4/Firmware (8bc88ed526044a864427a4b65135c3baffabb2ef): https://github.com/mavlink/mavlink/commit/0c7792edfeee7cf08e531cb4ce5b4f01854e5724
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/74dee05f0cd121ae27e021d011a04b161c9d0440
- Changes: https://github.com/mavlink/mavlink/compare/0c7792edfeee7cf08e531cb4ce5b4f01854e5724...74dee05f0cd121ae27e021d011a04b161c9d0440
74dee05f 2023-01-04 Beat Küng - component_metadata: add translation schema (#1934 )
0267c4cf 2023-01-04 Bob Long - common.xml: add fuel_pressure ext. to EFI_STATUS (#1938 )
c64818e8 2023-01-04 Mathieu Mirmont - common.xml: fix typos in AIS_TYPE enumerate (#1939 )
2306bf79 2023-01-04 Hamish Willee - Update pymavlink (#1940 )
0077129b 2022-10-06 Peter Hall - Development: update airspeed message
fbf84c64 2022-10-05 Peter Hall - gitignore: add /.vscode
817c44d8 2022-12-15 Mathieu Mirmont - Add the MAV_TYPE_VTOL_TILTWING aircraft type (#1933 )
Co-authored-by: PX4 BuildBot <bot@px4.io >
2023-01-07 10:55:05 -05:00
Daniel Agar
34c57cc5b5
px4-rc.simulator shellcheck fixes
2023-01-04 17:35:41 -05:00
Daniel Agar
ca9ae80b10
px4-rc.simulator support launching new Gazebo Garden vs Fortress ( #20864 )
...
- "ign gazebo" command is now "gz sim" as of Gazebo Garden
2023-01-04 12:39:06 -05:00
Daniel Agar
cc1b043e18
cmake/kconfig.cmake: fix whitespace
2022-12-30 13:01:30 -05:00
Daniel Agar
20a1c73cf0
ekf2: reinit baro height on sensor or calibration change
...
- handle reset on delayed time horizon
2022-12-29 16:37:34 -05:00
Daniel Agar
40e3503c39
boards: fix all NuttX configs (CONFIG_SMALL NuttX upgrade migration)
2022-12-29 12:50:37 -05:00
Daniel Agar
0fbb6db6d4
boards: update all NuttX defconfig (make all_olddefconfig)
2022-12-29 12:50:37 -05:00
Daniel Agar
c2f15f5957
boards: update all px4boards (make all_px4_savedefconfig)
2022-12-29 12:50:37 -05:00
Daniel Agar
0204a55354
Makefile: add all_olddefconfig and all_px4_savedefconfig helpers for updating all boards
2022-12-29 12:50:37 -05:00
Daniel Agar
f37eb55e19
platforms/nuttx: FATAL error if NSH enabled and SET disabled
2022-12-29 12:50:37 -05:00
Daniel Agar
03c0808ae6
vscode/settings.json: add .sdf and Jenkinsfile associations
2022-12-21 16:46:25 -05:00
Daniel Agar
f2cd7667dc
systemcmds/bsondump: new command line utility (extracted from parameters)
2022-12-21 10:14:00 -05:00
Daniel Agar
54a32eb2f7
ekf2: EV overhaul yaw and position fusion ( #20501 )
...
- move EV yaw and EV position to new state machines
- EV yaw and EV pos now configured via EKF2_EV_CTRL (migrated from EKF2_AID_MASK)
- new EV position offset estimator to enable EV position while GPS position is active (no more EV pos delta fusion)
- yaw_align now strictly means north (no more rotate external vision aid mask)
- automatic switching between EV yaw, and yaw align north based on GPS quality
2022-12-20 10:23:56 -05:00