Daniel Agar
b491356d3f
UAVCAN: publish CAN frames to uORB (ORB_ID(can_frame_out))
...
- can frames published to ORB_ID(can_frame_in) are injected
2022-10-09 13:18:38 -04:00
Daniel Agar
f3964513c7
sensors: fix accel/gyro/mag calibration offset units
2022-10-09 13:02:38 -04:00
Daniel Agar
ee4821ed0a
commander: relax COM_ARM_MAG_ANG default to minimize false positives
...
- this check is mainly intended for catching blatant setup problems like a magnetometer that's mounted 90 or 180 degrees off
2022-10-09 12:41:06 -04:00
fkaiser
30150f723a
Tools/px_uploader.py: use monotonic clock if available ( #20352 )
...
Signed-off-by: fkaiser <fabian.kaiser@wingtra.com >
2022-10-06 09:49:05 -04:00
alexklimaj
064f3f86bc
Increase mag calibration max_var_allowed
2022-10-06 08:44:36 -04:00
Hamish Willee
022aa13aa1
mpu9250_i2c - also needs docs update
2022-10-05 20:26:25 -04:00
Hamish Willee
6d612b1ba4
MPU9250 driver doc incorrect
2022-10-05 20:26:25 -04:00
Daniel Agar
8cc39096cb
load_mon: NuttX cpuload use system times for calculation
...
- this is to minimize the impact of any load_mon scheduling jitter in the sampled load percentage
2022-10-05 14:21:38 -04:00
benjinne
29b031c862
Tools/setup/ubuntu.sh update comment to include 22.04
2022-10-05 13:41:47 -04:00
Daniel Agar
5f0a539633
gps_blending: fix blending init to best instance
...
- output GPS publication defaults to best input instance
- blended states are explicitly cleared and then populated with
weighted blend
2022-10-05 10:26:48 -04:00
Beat Küng
f79dad1e63
fix ROMFS: run camera trigger, capture and PPS before pwm_out
...
As they might need to reserve the pwm pins.
2022-10-05 09:13:35 -04:00
Matthias Grob
46e6e83e14
Commander: allow disarmin not-landed boat like rover
...
This is a hotfix and a boat should never even detect a takeoff
in normal operation.
2022-10-05 09:07:18 -04:00
Beat Küng
dafead6f20
logger: add compressed events metadata file if it exists in the ROMFS
...
Allows to decode events not (yet) on main.
The file is currently ~15KB.
2022-10-05 07:44:55 +02:00
Beat Küng
02035d94aa
metadata: sort json output
...
ensures the files don't change arbitrarily
2022-10-05 07:44:55 +02:00
modaltb
06a0aedbdb
modalai_esc: directly using deadband param value instead of converting it to RPM
2022-10-04 20:14:59 -04:00
Thomas Debrunner
0af87ec745
mavlink: initial OPEN_DRONE_ID_BASIC_ID/OPEN_DRONE_ID_LOCATION support
2022-10-04 14:40:59 -04:00
Matthias Grob
b179427b4c
Remove opinionated non-default MPC_TKO_SPEED from airframes
2022-10-04 11:36:57 -04:00
pandafeng1999
e4b4df4e5d
drivers/distance_sensor/gy_us42: add the specified i2c address
2022-10-04 11:35:45 -04:00
Matthias Grob
f96507bb22
vtol_takeoff: fix comment typo
2022-10-04 10:01:04 -04:00
Peter van der Perk
c807d6079d
FMUK66-V3 Enable DMA on SPI
2022-10-04 09:46:04 -04:00
Peter van der Perk
0cf2ecedb9
FMUK66 Disable Telnet to save RAM
2022-10-04 09:46:04 -04:00
Julian Oes
5c77bbcb4c
ms5611: ignore reading 0
...
This prevents publishing a negative pressure which leads to a NAN
altitude estimate further down the line.
2022-10-04 09:37:53 -04:00
Beat Küng
04b1cbb423
vtol_att_control: standard: also do blending for FW controls
...
So that the sum of the control is always 1.
2022-10-04 09:54:11 +02:00
Silvan Fuhrer
6db92b4011
ControlAllocation: remove actuator trim value from actuator_sp to calculate allocated control
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-10-04 07:51:25 +02:00
Zachary Lowell
4520186878
qurt: replacing qurt threads with pthread
2022-10-03 18:01:04 -04:00
bresch
4b687beb3b
ekf2: remove old airspeed fusion code
2022-10-03 10:59:42 -04:00
bresch
299e6058e3
ekf2_test: test airspeed symforce vs sympy generated code
2022-10-03 10:59:42 -04:00
bresch
29ebef1f74
ekf2: migrate fuse_airspeed to SymForce
2022-10-03 10:59:42 -04:00
Daniel Agar
41cda14126
ekf2: add symforce code generation helper target
2022-10-03 10:59:42 -04:00
Daniel Agar
c9441bb48a
boards: px4_fmu-v2/v3 allow optional mpu9250 probe to fail without error
2022-10-02 21:40:18 -04:00
Benjamin Perseghetti
aa2b47845a
new Gazebo simulation handle older gz versions ( #20342 )
2022-10-02 21:30:30 -04:00
PX4 BuildBot
f4d2e176ae
Update submodule sitl_gazebo to latest Sun Oct 2 12:38:54 UTC 2022
...
- sitl_gazebo in PX4/Firmware (2bd1ac005f ): https://github.com/PX4/PX4-SITL_gazebo/commit/b968405a617005ba0a793a8b4703913d4c6eff5f
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/e80432759540c91f85a012f47aa6ebb0ee9de7e4
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/b968405a617005ba0a793a8b4703913d4c6eff5f...e80432759540c91f85a012f47aa6ebb0ee9de7e4
e804327 2022-10-01 Thomas Stauber - set lidar measurements to 0.0 if out of range (#914 )
7ed1da6 2022-09-27 Karthik S - Advanced Lift-Drag Plugin (#901 )
669d7f5 2022-09-08 Oleg Kalachev - Fix local addr assignment for qgc and sdk sockets
2022-10-02 10:54:31 -04:00
PX4 BuildBot
f7a5c91fb3
Update submodule libcanard to latest Sun Oct 2 12:38:56 UTC 2022
...
- libcanard in PX4/Firmware (8e144eece9e9cd5a23dbeb6723591f214cad631a): https://github.com/opencyphal/libcanard/commit/db87ea32aa092c48ea103963138b6346dd3e9008
- libcanard current upstream: https://github.com/opencyphal/libcanard/commit/2e3b11f6b8325080c160d38521b169b0bbb6b1c7
- Changes: https://github.com/opencyphal/libcanard/compare/db87ea32aa092c48ea103963138b6346dd3e9008...2e3b11f6b8325080c160d38521b169b0bbb6b1c7
2e3b11f 2022-07-15 Pavel Kirienko - Follow-up for #197 -- fix minor issues discovered by Sonar (#198 )
106ceaf 2022-07-11 Dmitry Ponomarev - Fix cast-align warnings on ARM
8953fe6 2022-07-06 Dmitry Ponomarev - Add ARM build to github workflow
2022-10-02 10:54:05 -04:00
PX4 BuildBot
644a836d0a
Update submodule libevents to latest Sun Oct 2 12:39:02 UTC 2022
...
- libevents in PX4/Firmware (ddc1e6d6c5c2707be5522d4c4d7434403202cf45): https://github.com/mavlink/libevents/commit/82dabdb914d7bd640c281900e2852d0afc074b68
- libevents current upstream: https://github.com/mavlink/libevents/commit/a89808bffd1efb0543e66f17a7fa12dfce5e6bf0
- Changes: https://github.com/mavlink/libevents/compare/82dabdb914d7bd640c281900e2852d0afc074b68...a89808bffd1efb0543e66f17a7fa12dfce5e6bf0
a89808b 2022-09-26 Beat Küng - combine.py: sort json keys
2022-10-02 10:53:28 -04:00
PX4 BuildBot
cf0cd4ebf2
Update submodule mavlink to latest Sun Oct 2 12:39:04 UTC 2022
...
- mavlink in PX4/Firmware (65bd1fd4c000a7fa0de2a0e8dce1ba9b2a62fa86): https://github.com/mavlink/mavlink/commit/c46af523263ff0dad59afe018fe387c1df030442
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/dda5a18ddb002a871ba301bb584893ee6378e2f3
- Changes: https://github.com/mavlink/mavlink/compare/c46af523263ff0dad59afe018fe387c1df030442...dda5a18ddb002a871ba301bb584893ee6378e2f3
dda5a18d 2022-09-28 WickedShell - Support a return to default speed for DO_CHANGE_SPEED (#1890 )
4e04dbbf 2022-09-24 Hamish Willee - MAV_FRAME_BODY_FRD - match to implementations and sanity (#1894 )
89a61214 2022-09-23 Hamish Willee - DO_CHANGE_SPEED - clarify lifetime of speed setting (#1892 )
11414f88 2022-09-21 Søren Friis - Clarify swarm fields (#1891 )
5cdf8b60 2022-09-08 Hamish Willee - HOME_POSITION - clarify local frame means NED (#1886 )
551e3b49 2022-09-07 Julian Oes - Fix CI (#1888 )
d99ee9b6 2022-09-07 Julian Oes - pymavlink: update submodule to latest master (#1887 )
92d2a58d 2022-09-01 Hamish Willee - common.xml:TIMESYNC docs and extensions (#1878 )
c424dc65 2022-09-01 Julian Oes - minimal: try to make component ID less confusing (#1876 )
153939bd 2022-09-01 Hamish Willee - Fix typo MAV_CMD_DO_SET_MISSION_CURRENT
5043a1e0 2022-09-01 Hamish Willee - MAV_CMD_DO_SET_MISSION_CURRENT - allow mission resetting (#1870 )
90aa7bfc 2022-08-31 Chikirev Sirguy - Update common.xml (#1815 )
554ccadd 2022-08-31 Hamish Willee - common: OpenDroneID messages no longer WIP (#1882 )
06448cf6 2022-08-24 Hamish Willee - MAV_ODID_ARM_STATUS entries update to naming convention (#1883 )
ff649224 2022-08-18 Patrick José Pereira - Fix gibberish descriptions ualberta.xml (#1881 )
11f4b236 2022-08-18 Hamish Willee - Mission item - document values for autocontinue (#1868 )
fb8ac31b 2022-08-18 Julian Oes - development: remove MISSION_CHANGED (#1879 )
76b794c2 2022-08-18 Julian Oes - common: extend MISSION_CURRENT (#1869 )
1ae3edc4 2022-08-15 Andrew Tridgell - common: added OPEN_DRONE_ID_SYSTEM_UPDATE message (#1880 )
aa25f4df 2022-08-11 Andrew Tridgell - common: added OPEN_DRONE_ID_ARM_STATUS (#1873 )
2022-10-02 10:53:00 -04:00
Daniel Agar
2bd1ac005f
.gitmodules update branches master -> main
2022-10-01 12:22:22 -04:00
Silvan Fuhrer
9b3cb6c758
FW Attitdue controller: fix throttle in acro (use _rate_sp.throttle_body) ( #20330 )
...
* FW Attitdue controller: fix throttle in acro (use _rate_sp.throttle_body)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* FW Attitude controller: do manual control polling before attitude setpoint polling
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-30 13:45:20 +02:00
Silvan Fuhrer
34b6786f79
actuator_controls.msg: fix NUM_ACTUATOR_CONTROLS (9)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-29 14:25:16 -04:00
Beat Küng
64ae0049de
mission: add support for NAV_CMD_DO_SET_ACTUATOR
2022-09-29 14:23:16 -04:00
Daniel Agar
a27aeb30bf
mc_pos_control: fix trajectory setpoint copy
...
- trajectory_setpoint and vehicle_local_position_setpoint used to be
the same data type
- we got extremely lucky here that this didn't cause any issues due to
all the fields still aligning
2022-09-29 14:17:00 -04:00
bresch
20b46ad33f
ekf2_test: test validity of local position when not at rest
...
At rest, the zero velocity update keeps the local position valid all the
time. Deactivate it to be able to test the validity checks
2022-09-29 14:16:36 -04:00
bresch
1914053db2
ekf2: synchronize z_valid and v_z_valid
...
mc_pos_control doesn't handle all the cases at the moment
2022-09-29 14:16:36 -04:00
bresch
f753b92cff
ekf2: start fake pos fusion after dead-reckoning timeout
...
Starting the fake position as soon as all the aiding sources stop makes
the local position immediately invalid while we could continue to navigate
for a couple of second with inertial dead-reckoning
2022-09-29 14:16:36 -04:00
bresch
bb790c9bec
ekf2: add vertical dead-reckoning timeout check for height validity
2022-09-29 14:16:36 -04:00
Thomas Stastny
da99387215
welford mean: protect against negative variances
2022-09-29 14:14:16 -04:00
Thomas Stastny
d3849c0265
welford mean: convert to matrix only template
2022-09-29 14:14:16 -04:00
Daniel Agar
d4e5876d4c
vehicle_imu: only reset raw accel/gyro Welford mean periodically
...
- vehicle_imu_status can publish immediately on any measured sample
rate change or sensor error increment, but the windowed mean/variance
shouldn't necessarily reset that often
2022-09-29 14:14:16 -04:00
Benjamin Perseghetti
f9522e831c
Gazebo Simulation Enablement ( #20319 )
2022-09-29 13:49:31 -04:00
Silvan Fuhrer
f89df9d986
VTOL: make const and return when either of mc or fw att sp isn't updated
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-29 16:01:43 +02:00
Silvan Fuhrer
fdcbabeb9e
VTOL Tailsitter: don't use the fw attitude sp for determing the initial pitch if not recent
...
Use a pitch of 0 to initialize the ramp otherwise.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-29 16:01:43 +02:00
Silvan Fuhrer
9c5a423753
VTOL: in update_transition_state(): check that needed virtual attitude setpoints are recent
...
This is to prevent that that data from non-recent publications of the virtual
attitude setpoints are used in the transition code.
It removes the previous implementation where the update_transition_state()
method was only run when both mc and fw virtual att sp where recent, independetly
of whether both are used or not.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-29 16:01:43 +02:00
Silvan Fuhrer
dd2e6bd416
ROMFS: SITL configs: enable airmode by default for all VTOLs
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-29 16:01:43 +02:00
Silvan Fuhrer
fbc7e6a435
ROMFS: tiltrotor sitl config: use tilt for yaw in hover as opposed to differential thrust
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-29 16:01:43 +02:00
Silvan Fuhrer
97e3b76a2e
VTOL: improve readability of VT_FWD_THRUST_EN param
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-29 16:01:43 +02:00
Roman Bapst
20457c5e2e
position_setpoint: replaced loiter_direction integer by boolean ( #20317 )
...
* position_setpoint: replaced loiter_direction integer by boolean (loiter_direction_counter_clockwise)
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-09-29 11:06:10 +02:00
Yang Hau
5d39fdba6d
fix: Add boundary protection for array access
2022-09-29 08:11:03 +02:00
Yang Hau
2dcde93d96
fix: Fix misuse of atoi()
2022-09-29 08:11:03 +02:00
Yang Hau
e2f3157ecb
fix: Add missing comma for const strings
2022-09-29 08:11:03 +02:00
David Sidrane
99ef597719
Nuttx with backport of stm32h7:SDMMC fix unaligned access
2022-09-29 07:56:46 +02:00
Ville Juven
59e86c490d
Remove include <log.h> from defines.h
...
The reason for this is that log.h includes drv_hrt.h which sucks in
half the project's include files with it, which causes strange build
issues
2022-09-29 07:56:24 +02:00
Daniel Agar
1f7080a710
ekf2: extend sensor bias stability requirement
...
- for accel/gyro/mag estimated bias only consider them stable (valid
for calibration updates) if the value isn't changing (10% of limit) over
the validity period
2022-09-28 10:40:52 -04:00
Daniel Agar
16f8adb4b3
hysteresis: avoid subtracting unsigned integers
...
- avoid potential errors with timestamp passed in from different sources
2022-09-28 09:51:16 -04:00
bresch
06f2004580
Mag: fix estimated bias save to calibration
...
Clear the calibration at the end only otherwise everything gets erased
at the end of the first iteration of the outer loop
2022-09-28 10:43:54 +02:00
Karthik S
70d73c8690
Advanced Plane Airframe for SITL Advanced Lift-Drag Plugin ( #20207 )
...
* Changed sitl_gazebo to the advanced liftdrag plugin fork.
* Added advanced plane and its associated parameters to PX4. Also tweaked one of the plugins to fix a compilation error (upcasting from float to double).
* Switched gazebo back to main branch, to avoid merge conflicts.
* Change simulator bridge back to what it was in main branch
* Changed sitl_gazebo to match the PX4 main branch's (commit hash b968405)
* Changed SimulatorIgnitionBridge to match most recent main.
2022-09-27 23:09:27 +02:00
jmackay2
0ee4d89744
drivers/osd/msp_osd: fix uorb_to_msg isnan floating-point check ( #20309 )
2022-09-27 14:41:43 -04:00
Eric Katzfey
a5bfc3fbc2
Added a self test feature to the VOXL 2 muorb module ( #20307 )
...
* Removed exit after dsp signature generation.
* First full test suite
* Cleaned up the muorb tests
* Improved VOXL 2 self test trigger in startup file
* Removed unneeded include file
2022-09-26 16:25:24 -04:00
Daniel Agar
7bc79b491f
sensors/vehicle_magnetometer: more granular in flight mag cal reset on parameter changes
...
- if mag calibration parameters change only reset any inflight mag cal
for the corresponding magnetometer
2022-09-26 12:42:32 -04:00
Daniel Agar
462d0af384
uORB: fix static orb_exists call for protected build
...
- unify ORBSet to maximum code coverage
2022-09-26 12:38:58 -04:00
Silvan Fuhrer
2717137982
RTL params: remove some unnecessary param constraints
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-26 13:32:35 +02:00
Silvan Fuhrer
b0a7d206f3
RTL params: increase max of RTL_RETURN_ALT and improve description
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-26 13:32:35 +02:00
Charles Cross
cfdaba35cc
Adds reset counter logic to EV height fusion
2022-09-26 11:48:18 +02:00
Daniel M. Sahu
779e738143
MSP OSD Revision
2022-09-24 18:40:47 -04:00
chris1seto
770f8080c0
CRSF: Validate unknown packet sizes to be smaller than max packet size
...
Co-authored-by: Chris Seto <chris1seto@gmail.com >
2022-09-24 16:36:17 -04:00
Daniel Agar
57bdac2b26
cmake: px4_parse_function_args re-enable failure on unparsed (invalid) arguments
2022-09-24 13:48:51 -04:00
Daniel Agar
ca0465aeca
Tools/generate_board_targets_json.py: properly exclude VOXL2 for now
2022-09-24 11:27:31 -04:00
Daniel Agar
e58275e6f5
platforms/posix: restore none SITL helper target for replay
2022-09-23 19:20:01 -04:00
chris1seto
77fdce9f3c
drivers/rc/crsf_rc: update standalone driver for CRSF and direct support for lq/rssi ( #20084 )
...
Co-authored-by: Chris Seto <chris1seto@gmail.com >
2022-09-23 19:19:25 -04:00
chris1seto
86cddc6a52
fw_autotune_attitude_control : Add better support for RC TX control while in FW AT ( #20069 )
...
Co-authored-by: Chris Seto <chris1seto@gmail.com >
2022-09-23 19:17:51 -04:00
Daniel Agar
b7fab39165
icm20948_i2c_passthrough: PX4_ERR is reset/configure fails and check temperature for validity
2022-09-23 19:16:10 -04:00
Daniel Agar
eb2a714aa5
ak09916: PX4_ERR if reset/configure is failing after 5s
2022-09-23 19:16:10 -04:00
Daniel Agar
16b4149492
Tools/generate_board_targets_json.py exclude VOXL2 for now (dev environment not yet available to github)
2022-09-23 16:40:56 -04:00
Thomas Debrunner
32277f6332
uavcan rgbled: Scale brightness for constant illumination
2022-09-23 14:33:20 -04:00
Eric Katzfey
d30ccb2b1d
initial board and platform support for the ModalAI VOXL 2 (POSIX + QuRT)
2022-09-23 12:03:05 -04:00
David Sidrane
e6b292b693
Revert "boards: px4_fmu-v6x_default remove gyro_fft to save flash (will be restored later)"
...
This reverts commit ed16354413 .
2022-09-23 09:32:43 -04:00
David Sidrane
d749389f95
fmu-v6x:CUAV HW Version changes
2022-09-23 09:32:43 -04:00
bresch
cddade2047
ekf2: use validated airspeed from airspeed sensor only
...
don't use synthetic measurements to prevent circular dependency
2022-09-23 09:26:47 -04:00
Julian Oes
8080ca966a
boards/platform: remove confusing override
...
This removes the odd px4_i2c_bus_external override which was confusing
me and lead to odd and inconsistent results.
The function is now only available with an int as the argument.
2022-09-23 20:54:08 +12:00
Junwoo Hwang
13d565d707
payload_deliverer: Add gripper state output to "status" CLI output
...
- Previously it was hard to check which state the gripper was in
(GRAB/GRABBED/ etc), not even whether it was correctly initialized, this
commit adds that functionality
2022-09-23 07:41:51 +02:00
Junwoo Hwang
e65d48c070
payload_deliverer: Fix Gripper unitialized message spamming
...
- When the gripper was uninitialized, the error message popped up
everytime the module had 'any' vehicle command received. But we should
be spamming only when we do actually get 'DO_GRIPPER' command received,
this commit adds that feature
- Also converted error messages for CLI when gripper test functinality
fails, so that user would get a feedback (originally, the PX4_DEBUG was
of course not outputting everything)
2022-09-23 07:41:51 +02:00
alexklimaj
fdf4b668eb
Ark flow rev 3 with PAA3905"
...
Add AFBR-S50LX85D
2022-09-22 20:36:43 -04:00
Daniel Agar
38d332a553
ekf2: inhibit accel bias dynamically when fake position/height fusion active
...
- inhibit accel bias learning dynamically depending on the angle between an accelerometer and the vertical axis when fake position fusion is active
2022-09-22 20:32:20 -04:00
Daniel Agar
1806f0d2b4
boards: delete broken flywoo_gn-f405_rtps
2022-09-22 17:44:24 -04:00
Silvan Fuhrer
300288b57e
FW Attitude Controller: fix polling of rate setpoint for tailsitter
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-22 19:13:36 +02:00
Daniel Agar
ed16354413
boards: px4_fmu-v6x_default remove gyro_fft to save flash (will be restored later)
2022-09-22 11:36:16 -04:00
David Sidrane
e284d4aa52
fmu-v6x:CUAV HW Version changes
2022-09-22 11:36:16 -04:00
CUAVmengxiao
21daa0f398
drivers: add support for ICP101XX and ICP201XX
2022-09-22 11:36:16 -04:00
CUAVmengxiao
9493008dbb
px4_fmu-v6X: add CUAV board
2022-09-22 11:36:16 -04:00
Silvan Fuhrer
0df878bc18
Navigator: use NAV_FW_ALTL_RAD only for FW landings, not VTOL landings
...
Also containst a mini refactor by removing the unnecessary function
get_default_altitude_acceptance_radius().
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-22 16:52:51 +02:00
Silvan Fuhrer
c6c7733587
FW Position control: add option to scale min airspeed wtih wind magnitude
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-22 16:39:27 +02:00
Beat Küng
e8ac9b266b
px4events: add @skip-file tag
2022-09-22 09:42:39 -04:00
Daniel Agar
54c97db8b2
ekf2: fix covariance comment typo
2022-09-21 15:29:07 -04:00
Silvan Fuhrer
d7fab74727
VTOL: remove _flag_was_in_trans_mode from standard vtol (not used)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-21 14:18:43 -04:00
Silvan Fuhrer
828f629413
VTOL: remove some pwm hackery leftovers from legacy mixing systems
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-21 14:18:43 -04:00
Beat Küng
d948fcd72b
fix control_allocator: check if 2. thrust and torque sp topic is valid
...
Otherwise the 2. setpoint is equal to the first one. This is only an issue
if the 2. instance isn't advertised.
2022-09-21 15:11:11 +02:00
Silvan Fuhrer
a53e1277dd
remove fixedwing example module
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-21 09:03:35 -04:00
Daniel Agar
a96187cb18
drivers/optical_flow: paw3902/paa3905 refactor into simple state machine for reset/configure/read
2022-09-20 18:59:00 -04:00
vincentpoont2
d5f7763817
add V5X005001 V5X005002 to start correct sensor
2022-09-21 10:40:04 +12:00
RomanBapst
e41913a699
vtol_type: removed unused "was_in_trans_mode" function
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-09-20 16:50:07 +02:00
RomanBapst
2a6cd4a409
vtol_att_control: avoid using non-recent attitude setpoint during beginning
...
of transition
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-09-20 16:50:07 +02:00
Julian Oes
5aa873aed5
fmu-v6x: alias, add VX43
...
- alias from hw_mft_list_v0650 to hw_mft_list_v0600 as it is the same
- add V6X50 again
2022-09-20 08:26:16 -04:00
Julian Oes
d78de90fc8
fmu-v5x: alias for duplicates, remove commented
...
- Removed commented out config data.
- hw_mft_list_v0540 was the same as hw_mft_list_v0500
2022-09-20 08:26:16 -04:00
Daniel Agar
a47895e809
[DO NOT MERGE] px4_i2c_device_external hacks
2022-09-20 10:31:26 +12:00
Julian Oes
b922307ddb
px4_fmu-v6c: Move I2C 4 back to External
...
This is a revert of the revert.
This reverts commit 1080855f4d .
2022-09-20 10:31:26 +12:00
Julian Oes
94c8a4a840
fmu-v6c: internal baro and mag on external bus
...
This swaps the internal baro and mag back to the bus which is both
internal an external but configured as external for this case.
2022-09-20 10:31:26 +12:00
Silvan Fuhrer
13fc5918cc
AirspeedValidator: keep data stuck test but only enable in FW mode
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-19 17:44:44 +02:00
Silvan Fuhrer
1a5d0f4347
AirspeedValidator: add new check (variance after boot) and disable data stuck check by default
...
This new check is inteded to trigger if there is no data variation published by
the airspeed driver for the first 10s after the first data is published.
This is to capture malfunctioning sensors/drivers that do publish a value, this
value though does not come from real sensor measurements.
Previously this was captured by the data stuck check, but it has shown that
some drivers can publish a stuck value without being actually malfunctioning
(e.g. when the airspeed is outside of their measurement range). Checking for
any data variation is the more conservative check that still catches the above
described failure case.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-19 17:44:44 +02:00
Daniel Agar
0a5c9d4951
position_setpoint delete unused landing_gear
2022-09-19 11:16:45 -04:00
Daniel Agar
11dd924bd4
position_setpoint delete unused SETPOINT_TYPE_FOLLOW_TARGET
2022-09-19 11:16:45 -04:00
Beat Küng
c707997b9e
lockstep_scheduler: use PRIu64 for timestamp printf
2022-09-19 10:04:31 -04:00
Daniel Agar
87815d8869
simulator_ignition_bridge: add simple esc_status publication
...
- ideally we'd get this from the actual joint velocity, but this is
good enough to start
2022-09-19 09:49:12 -04:00
Daniel Agar
3440f543f1
simulator_ignition_bridge: wait for first clock set before returning successfully
2022-09-16 21:37:09 -04:00
Daniel Agar
98036f93c5
msp_osd: fix module documentation
2022-09-16 18:54:14 -04:00
modaltb
e1098c328e
modalai_esc: maintenance release 1 ( #20225 )
2022-09-16 14:52:28 -07:00
Daniel Agar
07c34f7446
boards: px4_fmu-v6x update bootloader
2022-09-16 12:11:25 -04:00
chris1seto
cfb98e44c9
MSP telemetry and OSD support ( #19515 )
...
Co-authored-by: Chris Seto <chris.seto@bossanova.com >
2022-09-16 11:46:08 -04:00
Daniel Agar
eaa9eae472
simulator_ignition_bridge: fix double promotions
2022-09-16 11:36:35 -04:00
Daniel Agar
085ec0e8ef
flight_mode_manager: StickAccelerationXY minimize setpoint oscillations around 0
2022-09-16 07:54:12 +02:00
Ville Juven
f300ec1da2
px4_platform_common/atomic.h: fetch_add/sub were really fetch_inc/dec
...
fetch_add/sub were really inc/dec for the __atomic_always_lock_free == true
branch. This fixes them so that the arg "num" is actually used.
2022-09-15 21:11:08 -04:00
Daniel Agar
ff196a7363
crsf_rc: trivial compile fixes for updated vehicle_gps_position and removed NAVIGATION_STATE_AUTO_LANDENGFAIL
2022-09-15 21:01:53 -04:00
Daniel Agar
97f239d3ab
boards/flywoo/gn-f405: fix code style
2022-09-15 20:06:01 -04:00
chris1seto
b682b30ab1
drivers/rc/crsf_rc: create new standalone CRSF driver
2022-09-15 20:00:20 -04:00
David O
b910c1dcf4
Update mavlink_main.cpp
...
Corrected
2022-09-15 19:49:49 -04:00
David O
8f7233b1e2
Tailsitters need ATTITUDE_QUATERNION to display properly the artificial horizon
2022-09-15 19:49:49 -04:00
Daniel Agar
05850e2fc0
mavlink: eliminate timestamped_list dynamic allocation
2022-09-15 19:27:39 -04:00
David Sidrane
eaac84ab20
px4_fmu-v6x_bootloader:Ensure PWM pins are low from boot
2022-09-15 19:24:50 -04:00
Oleg Kalachev
585e81fc30
mavlink: fix path for mavlink_types.h include
2022-09-15 19:20:11 -04:00
Daniel Agar
5fcdffc8c0
drivers/device/nuttx/I2C: only issue I2C_RESET() if retrying, and only before the next retry
2022-09-15 18:42:30 -04:00
Claudio Micheli
30e867d4de
navigator_main: use camera_trigger driver for single captures
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2022-09-15 18:15:25 -04:00
Julian Oes
fc89705ef8
navigator: stop capturing images on mission exit
...
When a mission starts capturing images using the
MAV_CMD_IMAGE_START_CAPTURE command, it should also stop it again, in
case it is stopped early, e.g. with RTL.
2022-09-15 18:15:25 -04:00
Zhengtian
70194f52cd
boards: New target flywoo goku-gn-f405s-aio ( #20131 )
2022-09-15 18:11:49 -04:00
Ville Juven
3b9936edd2
hrt_ioctl: Move common code under /common folder
...
The HRT ioctl is common code, so move it out of chip specific code
2022-09-15 17:57:40 -04:00
Bruce Meagher
b1c7098c54
Initial version of log history support.
2022-09-15 14:15:34 -04:00
Beniamino Pozzan
2e83c3a465
Fixed fastrtps version reading in microRTPS generation
...
Issue addressed: ROS2 is built from source and
no system-wide version of fastrtps is installed
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@phd.unipd.it >
2022-09-15 13:36:40 -04:00
vincentpoont2
4951ce0ed7
Add PX4 vision v1.5 Airframe
2022-09-15 13:33:04 -04:00
Ville Juven
328bc5b8c2
image_toc.c: Check that the ToC actually lies within the first entry
...
As the first entry is used to sign / authenticate the ToC, make sure
the ToC is actually in the first entry.
2022-09-15 13:32:08 -04:00
murata
9e2ff11d45
fmu-v6x: Add sd_bench command
2022-09-15 13:25:34 -04:00
Travis Bottalico
9c0750776d
voxl2_io: initial board support
2022-09-15 13:19:01 -04:00
Silvan Fuhrer
5a74f07a74
RTL: always fill loiter_radius field, indpendent on vehicle type
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-15 13:17:36 -04:00
Silvan Fuhrer
e9f349a2fc
RTL: set WP type to LOITER_TO_ALT for FW in Return stage
...
Such that the loiter (orbit) status can be displayed on groundstation
and the WP is accepted once within loiter radius
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-15 13:17:36 -04:00
Silvan Fuhrer
5f0fc7aaf1
FW Position Controller: fix publishing of negative loiter directions (CCW)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-15 13:17:36 -04:00
Silvan Fuhrer
7a760c8c6e
RTL: use loiter radius from mission for loiter before enganging mission in RTL
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-15 13:17:36 -04:00
Alex Klimaj
0ce76679b7
boards: add new ARKV6X ( #20191 )
2022-09-15 13:13:49 -04:00
Alvin Sun
80243aef53
remove microdds from rtps target
2022-09-15 13:10:23 -04:00
Alvin Sun
c3e6421549
add v4 rtps build
2022-09-15 13:09:35 -04:00
mcsauder
b885c920d8
Breakout header file from sensors.cpp and delete unnecessary #includes.
2022-09-15 13:09:04 -04:00
Junwoo Hwang
e3dff5c074
board_identity: Add UUID/MFGUID/GUID unit tests
...
- To check stack smashing (buffer overflow)
- To check if the buffer without enough length gets appropriate values
filled
- To check if the format has expected length
2022-09-15 13:06:15 -04:00
Junwoo Hwang
f5215e8207
board_identity: Fix UUID format function buffer overflow bug
...
- Previously, not having a proper boundary check caused overflows in the
buffer (wrong memory access)
- Moreoever, negative size values getting introduced to snprintf &
strncat were also being truncated to unsigned value, hence causing
overflow, so index check needed to be added before both functions
- Fixed typo in board_common.h
2022-09-15 13:06:15 -04:00
bresch
facf01d69d
ekf2: report combined vertical position test ratio
2022-09-15 08:51:19 -04:00
Daniel Agar
54b5d4c5b8
drivers/rc_input: don't allow starting on the px4io serial port
2022-09-14 21:23:30 -04:00
Jaeyoung Lim
9245d71397
Fixedwing att control rate loop cleanup
2022-09-14 13:53:58 +02:00
Silvan Fuhrer
b4f27c9abb
MissionBlock: loiter exit condition based on vector operation instead of atan
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-14 10:47:21 +02:00
Silvan Fuhrer
27780308c0
MissionBlock: base loiter course exit condition on a constant value instead of MIS_YAW_ERR
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-14 10:47:21 +02:00
Konrad
5a7f098b8d
Enable multiple simulated imu and magnetometers in gazebo
2022-09-14 10:27:04 +02:00
Silvan Fuhrer
f9b6edab07
Navigator/FW Position Control: VTOL front towards specified transition heading if available
...
If the current yaw setpoint is valid we should use it to make the transition in this direction.
For a VTOL_TAKEOFF the yaw_setpoint is used to specify the transition direction (the
vehicle is aligned towards it and then transition is started). The current yaw can be
a bit off (e.g. because MIS_YAW_ERR is large), and it is better to track the actual setpoint.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-09-14 08:55:20 +02:00
alexklimaj
82b28bc72f
Add BMP390 to BMP388 driver
2022-09-13 09:33:24 -04:00
Vojtech Spurny
7ca16cd504
increased rate of Lidar Lite driver over I2C
2022-09-13 09:11:12 -04:00
David Sidrane
1080855f4d
Revert "px4_fmu-v6c Move I2C 4 to External"
...
This reverts commit 6b2509cbba .
2022-09-13 01:06:17 -04:00
alexklimaj
ba1b6f4d2c
Standardize AFBR irq lock calls
2022-09-12 19:14:18 -04:00
alexklimaj
3398380262
Switch to async AFBR measurement calls and use schedule.
2022-09-12 13:00:25 -04:00
Shriv
3dffa5e6df
gps: add UART2 Baudrate Configurability and New UBX Mode. ( #20133 )
2022-09-12 14:13:17 +02:00
Daniel Agar
b8fb5dfa51
merge px4_sitl_ign into px4_sitl_default ( #20188 )
...
- for convenience merge px4_sitl_ign into px4_sitl_default, but allow simulator_ignition_bridge to quietly skip inclusion if ignition-transport isn't available
- simulator_ignition_bridge only try setting the system clock in
lockstep builds
- this simplifies usage and CI system dependencies
2022-09-10 16:18:02 -04:00
bresch
34d8bd7988
update EKF2 change indicator
2022-09-10 12:29:29 -04:00
bresch
6bd81c0eb7
ekf2: do not store delayed baro sample in class
...
the sample is popped from the buffer and directly used; there is no
need to keep a local copy of it
2022-09-10 12:29:29 -04:00
bresch
ae1e12a6b5
ekf2: remove baro accumulation from initializeFilter
2022-09-10 12:29:29 -04:00
bresch
fe4a6ce8de
ekf2: allow initialization without baro data when fusion is disabled
2022-09-10 12:29:29 -04:00
bresch
a54fa7b9b1
ekf2: add fake height fusion logic
...
When there is no vertical aiding, fake height is started to constrain
the vertical channel of the EKF
2022-09-10 12:29:29 -04:00
bresch
aa716936bf
ekf2: move synthetic_position flag to control_status.flags.fake_pos
2022-09-10 12:29:29 -04:00
Julian Oes
86f7e15f7a
libuavcan: update submodule
...
This fixes a Python 3.10 issue for me.
2022-09-09 20:41:11 -04:00
Daniel Agar
8f25acd428
sih remove gps and use standalone sensor_gps_sim
2022-09-09 18:00:50 -04:00
Daniel Agar
bfe0d71a21
sih remove baro and use standalone sensor_baro_sim
2022-09-09 18:00:50 -04:00
Daniel Agar
c5336abba2
sih remove mag and use standalone sensor_mag_sim
2022-09-09 18:00:50 -04:00
Daniel Agar
99a20646e2
simulator sih add local position ground truth and cleanup
2022-09-09 18:00:50 -04:00
Daniel Agar
355f184f06
boards/px4/fmu-v3: allow optional ms5607 startup to fail quietly (no error)
2022-09-09 17:32:18 -04:00
Alvin Sun
238fdadfee
Add attitude and bodyrate control to RTPS
2022-09-09 22:21:02 +02:00
Daniel Agar
3f3a5f19f0
parameters: open export files O_TRUNC to discard previous data
...
- rcS parameter backup try to directly restore param (FRAM) from backup (in case SD card is removed before successful export)
- rcS parameter backup logging rearrange to capture more logging output (param_import_fail.txt)
- posix rcS try to keep param backup and restore roughly in sync with NuttX rcS
- tinybson fix debug printf format
- param_export_internal ensure file descriptor positioned at 0 (precaution)
2022-09-09 16:20:16 -04:00
Igor Mišić
296b1704c5
invensense/icm42688p: add additional state FIFO_RESET
...
This state is added to give extra time between FIFO flush command. Some icm42688p IMUs need more time between config -> FIFO reset -> FIFO read. More about the issue #20181
2022-09-09 16:19:10 -04:00
Alex Klimaj
efcf4c95fd
drivers/uavcannode: Add RTCMStream subscriber and fix RTCMStream Publisher ( #20056 )
...
* Add cannode RTCMStream subscriber
* Fix uavcan RTCMStream publisher
* Break out CANNODE_SUB_RTCM and CANNODE_SUB_MBD
2022-09-09 15:16:09 -04:00
Daniel Agar
9d1aeb6aa7
platforms/posix: cleanup macos legacy
2022-09-09 13:05:06 -04:00
matthewoots
b09329f287
boards/matek/h743: add fix to resolve no startup of imu for matek_h743 target ( #20184 )
...
* Add fix for matek_h743 target that resolves no startup of imu for h743-wing v3 and h743-wlite boards
* Added imu driver according to spi bus (https://www.mateksys.com/?portfolio=h743-wing-v2#tab-id-7 )
2022-09-09 13:02:38 -04:00
Agata Barcis
e268e69265
Fixed fastrtps version reading in microRTPS generation for ROS2 built from sources
2022-09-09 15:11:11 +01:00
Daniel Agar
b45daac0e8
commander: fix angular velocity validity
...
- vehicle_angular_velocity timestamp can be newer than saved now
2022-09-09 09:14:09 -04:00
Daniel Agar
15fece7e14
delete SYS_CTRL_ALLOC
2022-09-09 09:14:09 -04:00
Daniel Agar
13f9eabd70
delete unused actuator_controls_3
2022-09-09 09:14:09 -04:00
Daniel Agar
55be169e18
delete remaining PWM_MAIN/PWM_AUX/PWM_EXTRA parameters
2022-09-09 09:14:09 -04:00
Daniel Agar
4ec9e2f216
uavcan: delete unused ESC idle and soft_stop
2022-09-09 09:14:09 -04:00
Daniel Agar
bdec17a9d4
drivers/pwm_out_sim: add perf counters (sync with drivers/pwm_out)
2022-09-09 09:14:09 -04:00
Daniel Agar
baa05b2631
drivers/pwm_out: remove custom module boilerplate (dual output bank handling)
2022-09-09 09:14:09 -04:00
Daniel Agar
ce337a3d80
delete unused PWM IOCTLs
2022-09-09 09:14:09 -04:00
Daniel Agar
bcdd2203d3
delete systemcmds/motor_test and msg/test_motor.msg
2022-09-09 09:14:09 -04:00
Daniel Agar
72efe84b80
delete MOT_ORDERING
2022-09-09 09:14:09 -04:00
Daniel Agar
a7bbcd5b04
delete lib/mixer and mixer_module static mixing
2022-09-09 09:14:09 -04:00
Daniel Agar
0019ffbea6
delete drv_mixer.h
2022-09-09 09:14:09 -04:00
Daniel Agar
d3312f955f
delete systemcmds/pwm
2022-09-09 09:14:09 -04:00
Daniel Agar
5dd1e5a018
delete systemcmds/mixer
2022-09-09 09:14:09 -04:00
Daniel Agar
cac9c51ac8
ROMFS: purge old mixing system
...
- SYS_USE_IO is now off by default (enabled by default per board)
2022-09-09 09:14:09 -04:00
Julian Oes
ed10146e9f
fmu-v6: disable Rev 0, Rev 1 for HB Mini, and CM4
...
As I understand it, only Rev 3 and Rev 4 were shipped by HB for Mini and
CM4, and are likely to be used for it.
It would be nice to have all combinations but it requires quite some
flash in the current implementation.
2022-09-08 20:54:19 -04:00
Julian Oes
f05fccebb7
fmu-v5x: disable rev0 for HB Mini and CM4 base
...
As I understand it, only Rev 1 and Rev 2 were shipped by HB, and likely
to be used for the Mini and CM4.
2022-09-08 20:54:19 -04:00
Julian Oes
6bd020e848
platforms: decrease flash usage by type for bus id
...
My assumption is that the bus are numbered < 127.
This saves about 100 bytes of flash.
2022-09-08 20:54:19 -04:00
vincentpoont2
4fe90322db
update fmu-v6x rc.board_sensors, add V6X004003
2022-09-08 20:54:19 -04:00
vincentpoont2
167c3da99d
update fmuv5x rc.board_sensors with V5X004000
2022-09-08 20:54:19 -04:00
Vincent Poon
70321ed610
update v5x rc.board_sensors
...
add V5X004002
2022-09-08 20:54:19 -04:00
Vincentpoont2
f476ebdcbf
Correct BOARD_NUM_SPI_CFG_HW_VERSIONS at board_config.h
2022-09-08 20:54:19 -04:00
Vincentpoont2
9d5adf8bab
Fix Error on manifest.c
2022-09-08 20:54:19 -04:00
Vincentpoont2
e91295e5db
Fix Error on board_config.h Define on FMUv5X & FMUv6X
2022-09-08 20:54:19 -04:00
Vincentpoont2
b16a53018d
Add Holybro Pixhawk Pi CM4 Baseboard Support
2022-09-08 20:54:19 -04:00
Don Gagne
0987bb2e8e
Fix bug with yaw only reposition
...
Fix formatting
2022-09-08 17:55:30 -04:00
Matthias Grob
da01dd9eeb
mission_block: explicitly (re)set the acceptance radius to default for takeoff items
...
otherwise a previously adjusted or uninitialized radius from the last flight
can cause problems during the new takeoff
2022-09-08 14:49:32 +02:00
Matthias Grob
b825b61a20
mission_block: minimal acceptance radius of 1mm
...
to avoid float rounding errors leading to tiny acceptance radii
getting considered
2022-09-08 14:49:32 +02:00
Ville Juven
9c204774f1
px4_userspace_init: Fix NULL dereference for px4_spi_buses in user space
...
For targets that define the SPI buses via px4_spi_buses_all_hw, a call
to px4_set_spi_buses_from_hw_version() is needed. Otherwise a NULL
de-reference will occur when trying to access px4_spi_buses.
Fixes a system crash in px4_fmu-v5_protected:
up_assert: Assertion failed at file:armv7-m/arm_memfault.c line: 101 task: wq:lp_default
2022-09-08 07:05:11 +02:00
Justin
88bf1030b5
Update CI to use the main branches.
2022-09-07 20:03:19 -04:00
Ville Juven
d4cce452cf
modules/dataman: Increase stack size by 100B
...
Fixes:
WARN [load_mon] dataman low on stack! (276 bytes left)
Seen on px4_fmu-v5_protected target.
2022-09-07 20:02:26 -04:00
Junwoo Hwang
2542b1bb26
Implement Pacakge delivery via Gripper during mission
...
This feature allows user to use a Gripper type pacakge delivery
mechanism on a drone to trigger the delivery during a mission via the
mission item `DO_GRIPPER`.
This is a minimal change that is intended to have simplest pacakge
delivery feature on PX4, however the future scope would extend this
feature out of Navigator, and rather move towards a federated PX4
(flight-mode flexibility) architecture. But until then, this will serve
the purpose.
Update Tools/sitl_gazebo submodule to remove sdf file overwrite error
- There was an error happening due to .sdf file being overwritten, it
was caused by a wrongfully added. sdf file.
- This update pulls in the PR commit: https://github.com/Auterion/sitl_gazebo/pull/147
Initial cut on supporing PAYLOAD_PLACE mission item
Tidy and comment on navigation.h to clarify mission item definition
- Convert vehicle command ack subscription data type to
SubscriptionData, to not care about having a dedicated struct for
copying the latest data
- Tidy and comment on navigation.h to clarify the definition of
mission_item_s, which is confusing as it is an intergration of MAVLink
Standard into PX4's internal Mission Item structure
Rename mission_block's mission item reached function & cleanup navigator
- Isolated Handle Vehicle Commands function inside the Navigator
- Rename mission_block's mission item reached function to 'reached or
completed', as the navigation command can also be an action (e.g.
DO_SET_SERVO, which doesn't make sense to refer to as 'reached' when we
have successfully done executed the command)
Include MAVLink PR commit to include payload_drop message
More changes to add payload_drop MAVLink message support
- Comitting for testing purposes
Add mission item payload_drop to vehicle command payload drop link
- Now with a mission item with the nav_cmd set to 'payload drop', the
appropriate 'payload drop' vehicle command will be issued
Make Payload drop executable via Mission Plan
Implement payload_drop module to simulate payload delivery
- Simple module that acknowledges the payload drop vehicle command after
certain time, to simulate a successful delivery
Additional changes - payload drop module not working yet
- Need to do more thread stuff to make it work :(
Fix Payload Drop enum mismatch in vehicle_command enums
- First functional Payload Drop Implementation MVP
- Simple Ack & resuming mission from Navigator tested successfully
Hold the position while executing payload drop mission item
- Still the position hold is not solid, maybe I am missing something in
the position setpoint part and all the internal implications of
Navigator :(
Add DO_WINCH command support
Some fixes after rebase on develop branch
- Some missed brackets
- Some comment edits, etc
Add DO_WINCH command support
- Still has a problem of flying away from the waypoint while the
DO_WINCH is being executed, probably position setpoint related stuff :(
Apply braking of the vehicle for DO_WINCH command
- Copies the behavior of NAV_CMD_DELAY, which executes a smooth, braking
behavior when executing the delay because of the braking condition in
`set_mission_items` function
- This will not apply to Fixed wings
- The payload deploy getting triggered may be too early, as right now as
soon as the vehicle approaches the waypoint within the acceptance
threshold, the payload gets deployed
Add DO_GRIPPER support
Implement Gripper actual Hardware triggering support
- Currently not working, possibly in the mixer there's a bug
- Implemented the publishing of actuator_controls_1 uORB topic
- Implemented the test command for the payload_drop module, to test the
grpiper functionality
- Edited px4board file to include the payload_drop module
- Added Holybro X500 V2 airframe file, to enable testing on X500 V2
- Created new Quad X Payload Delivery mixer, which maps the actuator
controls 1 topic's data into the MAIN pin 5 output
Make Payload Drop Gripper Work
- Initialization of the Gripper position to CLOSED on Constructor of the
payload_drop module
- Setting the OPEN and CLOSED value to the appropriate actuator controls
input
Set vehicle_command_ack message's timestamp correctly
- By not setting the timestamp, the ack commands were not correctly
graphed in PlotJuggler!
Rename payload drop module to payload deliverer
- I think it's a more complex name (harder to type), but more generic
Add Gripper class (WIP)
Add Gripper class functionalities
- Add gripper uORB message
- Add gripper state machine
Use Gripper class as main interface in payload_deliverer
- Utilizes Gripper class functions for doing Gripper functionality
Remove mixer based package delivery trigger logic
- Remove custom mixer files that mapped actuator controls to outputs
statically
Additional improvements of the payload_deliverer
Fix payload_deliverer module not starting
- _task_id wasn't geting set appropriately in task_spawn function, which
led to runtime failure
Add Gripper Function to mixer_module
- Still not showing up as function mapping in QGC, needs fix
Add parameters to control gripper behavior
- Now user can enable / disable gripper
- Also select which type of gripper to use
Applying review from nuno
Remove timeout fetching from mission item and use gripper's timeout
- Previously, it was planned to use a custom DO_GRIPPER and DO_WINCH
MAVLink message definitions with information on timeout, but since now
we are using original message definition, only relevant timeout
information is defined in the payload_deliverer class
- This change brings in the timeout parameter to the Navigator, which
then sets the timeout in the mission_block class level, which then
processes the timeout logic
Make payload deployment work for Allmend test :P
Support gripper open/close test commands in payload_deliverer
Move enum definition for GRIPPER_ACTION to vehicle_command.msg
Remove double call for ` ${R}etc/init.d/rc.vehicle_setup`
- Was introduced during the rebase
- Was causing module already running & uORB topic can't be advertised
errors
Fix format via `make format` command
Modify S500 airframe file to use for control allocation usage
- Added Control allocation related parameters as default to not have it
reset every time the airframe is selected
Implement mission specific payload deploy timeout and more changes
Switch payload_deliverer to run on work queue
Remove unnecessary files
- Airframe changes from enabling control allocation are removed
Address review comments
- Remove debug messages
- Remove unnecessary or verbose comments & code
- Properly call parameter_update() function
Switch payload_deliverer to scheduled interval work item & refactor
- Switch to Schedeuled on Interval Work Item, as previous vehicle
command subscription callback based behavior led to vehicle comamnd ack
not being sent accordingly (since the Run() wouldn't be called unless
there's a new vehicle command), leading to ack command not being sent
out
- Also, old vehicle commands were getting fetched due to the
subscription callback as well, which was removed with this patch
- Fix the wrong population of floating point param2 field of vehicle
command by int8_t type gripper action by creating dedicated function
- Refactor and add comments to increase readability
Add gripper::grabbing() method and handle this in parameter update
- Previously, the intermediate state 'grabbing' was not considered, and
when the parameter update was called after the first initialization of
the gripper, the grab() function was being called again, which would
produce unnecessary duplicate vehicle command.
- Also replaced direct .grab() access to sending vehicle comamnd, which
unifies the gripper actuation mechanism through vehicle commands.
Navigator: Change SubscriptionData to Subscription to reduce memory usage
- Also removed unused vehicle command ack sub
PayloadDeliverer: Remove unnecessary changes & Bring back vehicle_command sub cb
2022-09-07 08:11:52 +02:00
Matthias Grob
e115095f70
Functions: correct interpolate function for N points
2022-09-07 08:00:27 +02:00
Beat Küng
4087c27e84
control_allocator: handle saturation flags for helicopters
2022-09-07 08:00:27 +02:00
alexklimaj
aa8d594e9b
Add heli servo trim
2022-09-07 08:00:27 +02:00
Matthias Grob
667e99be81
Helicopter: fix unit test after default throttle curve was changed
2022-09-07 08:00:27 +02:00
Matthias Grob
115cf4d572
Helicopter: More intuitive yaw direction configuration for the common cases
2022-09-07 08:00:27 +02:00
Matthias Grob
f233f2167e
generic_250, px4vision: remove zero manual thrust without airmode
...
When hitting zero thrust by stick there is 0 torque authority
without airmode. So 0% minimum manual thrust should never be the default
without airmode.
2022-09-07 08:00:27 +02:00
Matthias Grob
8a25d06ed7
heli_defaults: comment and spacing
2022-09-07 08:00:26 +02:00
Beat Küng
cecef7e3f6
control_allocator: update heli throttle + collective curve defaults
2022-09-07 08:00:26 +02:00
Beat Küng
d38c02fd6a
commander: increase maximum COM_SPOOLUP_TIME to 30s (for helis)
2022-09-07 08:00:26 +02:00
Beat Küng
2635e2c386
airframes: replace blade with generic helicopter
2022-09-07 08:00:26 +02:00
Beat Küng
7e75b497ae
helicopter: add switch to engage main motor
...
For helicopters it's useful (e.g. during bringup) to be able to disable
the main rotor while the tail is still controlled to safely land.
2022-09-07 08:00:26 +02:00
Matthias Grob
f32d931117
helicopter: add yaw sign parameter & expose settings in UI
2022-09-07 08:00:26 +02:00
Matthias Grob
349f152601
Helicopter: throttle spoolup upon arming
...
Uses COM_SPOOLUP_TIME to slowly ramp the throttle and allow the
tailrotor to compensate in a coordinated way based on the yaw
compesation from throttle, see CA_HELI_YAW_TH_S.
This coordinated spoolup is necessary to avoid unsafe yaw twitches
because of the heli rotating until the correct compensation kicks in
through the feedback controller.
2022-09-07 08:00:26 +02:00
Matthias Grob
7bf62373ae
Helicopter: refactor complicated throttle curve logic
2022-09-07 08:00:26 +02:00
Matthias Grob
2edb35b1b5
Functions: add gradual function with arbitrary number of corner points
2022-09-07 08:00:26 +02:00
Matthias Grob
6a9a049f1e
Helicopter: add unit testing for throttle curve
2022-09-07 08:00:26 +02:00
Matthias Grob
9ba6f4efb7
Helicopter: add yaw compensation from throttle CA_HELI_YAW_TH_S
2022-09-07 08:00:26 +02:00
Matthias Grob
554d965a2d
Helicopter: use absolute value for yaw compensation from collective pitch
2022-09-07 08:00:26 +02:00
Beat Küng
608ab9ff9c
control_allocator: extend description for CA_SP0_ANGx
2022-09-07 08:00:25 +02:00
Beat Küng
e346190e63
helicopter: use tail motor & add CA_HELI_YAW_CP_S
2022-09-07 08:00:25 +02:00
Julian Oes
5ece24cdc4
setup: attempt to fix macOS CI
...
Somehow the wheel install of pymavlink fails without future, let's try
to work around that.
2022-09-07 13:49:37 +12:00
Peter van der Perk
8f0c2f4146
UCANS32K1 Enable some sensors by default
2022-09-06 09:43:11 -04:00
bresch
92fbd86b46
ekf2: add gps altitude drift test
2022-09-05 10:28:37 -04:00
bresch
a2a5093881
ekf2: relax zero velocity update
...
The ZVU is too strong and prevents the EKF from following variations in
the height aiding sources, creating large innovations.
2022-09-05 10:28:37 -04:00
Daniel Agar
d996af4647
ekf2: pass gpsSample around where required
...
- this minimizes potential misuse accessing _gps_sample_delayed and
makes the dependency clear
2022-09-05 10:27:19 -04:00
RomanBapst
0c860fa227
airspeed_selector: don't declare wind estimate valid if estmator is not initialised
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-09-05 10:21:38 -04:00
Ville Juven
9ed35debec
board_ctrl: Clean up usage of VBUS, nARMED from user/kernelspace
...
Move logic implemented in the header files to source files, this way
it will be simpler to define which is compiled to kernel space and
which to user space
Also allows to remove some headers that pull in half the universe
from the board definitions (which should just be pin definitions and
no functionality)
2022-09-05 07:37:28 +02:00
Benjamin Perseghetti
a56f654651
Multi-Vehicle Ignition Gazebo Simulation ( #20154 )
2022-09-04 21:10:29 -04:00
Daniel Agar
7bbdc220f5
ekf2: initialiseFilter() simplify mag heading init and resetQuatStateYaw
...
- most of resetQuatStateYaw doesn't apply to initial heading init, so
removing the special case keeps it simple
2022-09-02 08:46:10 -04:00
Ville Juven
e467d11990
boards/px4/fmu-v5/toc: The RD certificate signature points to the wrong place
...
The signature end address is incorrect
2022-09-02 08:00:27 +02:00
Daniel Agar
5dfd2f39ef
boards/cubepilot/cubeorange: initialize all I2C pins immediately
2022-09-01 20:46:09 -04:00
Daniel Agar
e93a3a2a3a
ak09916: enable retries and reset perf count
2022-09-01 20:45:20 -04:00
Daniel Agar
f66b5ce204
simulation: ignition bridge allow IMU or pose callbacks to update system time if newer than clock
...
* requires HRT lockstep changes to eliminate offset (PR #20146 )
2022-09-01 20:42:21 -04:00
Daniel Agar
c52f2143d2
posix lockstep remove HRT offset and use full sim time
2022-09-01 20:40:37 -04:00
Daniel Agar
3da0293369
simulator_ignition_bridge: init error handling
2022-09-01 18:54:59 -04:00
Beat Küng
43c5f14aa0
commander: update arming & health protocol, add modes to event hash
2022-09-01 17:07:23 -04:00
Beat Küng
f57321d365
simulator_mavlink: fix esc_status publication
2022-09-01 17:07:23 -04:00
Beat Küng
295caaea60
events/enums.json: remove redundant manual_control_input
2022-09-01 17:07:23 -04:00
Beat Küng
2c96bb3746
px4_parameters.hpp.jinja: explicitly set .name attribute
...
Fixes the compile error on llvm:
mixture of designated and non-designated initializers in the same initializer list is a C99 extension [-Wc99-designator]
2022-09-01 17:07:23 -04:00
Beat Küng
1370cc0d74
log.h: add PRINTF_LOG option for direct printf to reduce dependencies
2022-09-01 17:07:23 -04:00
Beat Küng
a9c1415337
Makefile: allow to set CMAKE_ARGS via CLI
2022-09-01 17:07:23 -04:00
Beat Küng
4e940fab83
perf_counter: remove unused include sys/queue.h
2022-09-01 17:07:23 -04:00
Beat Küng
9eff6dd049
commander: cleanup param value description for COM_POSCTL_NAVL
2022-09-01 17:07:23 -04:00
Beat Küng
0e130eac83
refactor commander: move code inside run() into separate methods
2022-09-01 17:07:23 -04:00
Beat Küng
dcb9b712bb
refactor commander: move vehicle control mode to ModeUtil
2022-09-01 17:07:23 -04:00
Beat Küng
f197c8884d
commander: move esc checks to arming check
2022-09-01 17:07:23 -04:00
Beat Küng
c9037f115b
refactor commander: split out home position
2022-09-01 17:07:23 -04:00
Beat Küng
f17f38197d
commander: move estimator checks to arming check
2022-09-01 17:07:23 -04:00
Beat Küng
cfe3d793bf
commander: move battery handling into arming checks
2022-09-01 17:07:23 -04:00
Daniel Agar
5cb44a521c
ekf2: estimator interface handle sample time with signed integers
...
- this prevents unsigned integer overflow if the timestamp is smaller
than the configured delay (mostly a simulation edge case)
2022-09-01 09:47:29 -04:00
dagar
75f6f22223
[AUTO COMMIT] update change indication
2022-08-31 08:52:30 -04:00
Daniel Agar
1948c5057a
ekf2: handle all time on delayed horizon (except for newest sample checks)
...
- a growing number of samples come into the backend with the time
already delayed (sensor's interrupt setting timestamp sample)
- if the incoming timestamp is already delayed then the new data checks
(relative to latest IMU) can be slightly wrong
- handle almost all timestamps and checks on delayed time horizon,
except for explicit checks of new samples
- isRecent() and isTimedOut() helpers use delayed time
- add new isNewestSampleRecent() used for checking the incoming
timestamp of the incoming (adjusted) data
2022-08-31 08:52:30 -04:00
Jukka Laitinen
d6a4e158cf
Add call-gates to px4_crypto for protected build
...
This adds kernel-userspace interfaces to crypto layer
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-08-31 09:48:49 +02:00
Beat Küng
d681782c7f
fix flashfs: find_entry: do not go to the next sector if the CRC is invalid
2022-08-31 09:42:59 +02:00
Beat Küng
4f52cda504
flashfs: ensure no address past the end of a sector is dereferenced
...
As it might result in a hardfault if it's the last flash sector.
2022-08-31 09:42:59 +02:00
Beat Küng
2776b723ea
holybro/kakuteh7: switch to flash-based params
2022-08-31 09:42:59 +02:00
Hamish Willee
e780a583cd
Fix typo follow height: FLW_TGT_HT
2022-08-29 13:25:35 +02:00
Ben Berry
734d3e4aa0
Reverted changes that broke Level Horizon calibration
2022-08-29 09:54:36 +02:00
Beat Küng
afc99749b8
px4/fmu-v5/uavcanv0perith: disable gps to reduce flash usage
2022-08-25 22:02:15 -04:00
Beat Küng
715afd27f5
ROMFS: exclude mixers on v2 & disable mixer command
...
The dynamic mixing is now the default
2022-08-25 22:02:15 -04:00
Beat Küng
f0295cf596
px4/fmu-v2/defconfig: disable PROCFS
...
Reduces flash usage by ~7.3KB
2022-08-25 22:02:15 -04:00
Beat Küng
ad222760dd
platforms: move CONFIG_FS_PROCFS_MAX_TASKS definition to cpuload.h
...
So it's used for both cases
2022-08-25 22:02:15 -04:00
Beat Küng
70ec3493c5
px4/fmu-v5/stackcheck: disable distance sensors to reduce flash
2022-08-25 22:02:15 -04:00
Beat Küng
666b84027d
GyroFFT: disable 4096 for IMU_GYRO_FFT_LEN
...
saves around 10.5KB flash on px4-fmu-v5
2022-08-25 22:02:15 -04:00
Beat Küng
060738cae1
src: avoid use of double precision pow & exp
...
saves around 5KB flash on px4-fmu-v5
2022-08-25 22:02:15 -04:00
Beat Küng
983a9815eb
libevents: update submodule
2022-08-25 22:02:15 -04:00
Beat Küng
4c41934bb4
commander: inline HealthComponentIndex::HealthComponentIndex
...
Saves around 1KB flash
2022-08-25 22:02:15 -04:00
Beat Küng
1c89b0c9c8
commander: use actuator_function for ESC reporting
2022-08-25 22:02:15 -04:00
Beat Küng
13c93db11a
commander: use circuit breaker params directly in arming checks
2022-08-25 22:02:15 -04:00
Beat Küng
4230eee24f
commander: print 'ready for takeoff' to console for sitl after startup
2022-08-25 22:02:15 -04:00
Beat Küng
2fccb576ad
commander: remove unused includes and variables
2022-08-25 22:02:15 -04:00
Beat Küng
dbb814ff24
HealthAndArmingChecks: CONSOLE_PRINT_ARMING_CHECK_EVENT & reduce flash usage
...
- print list of events whenever they change if
CONSOLE_PRINT_ARMING_CHECK_EVENT is set, instead of on each update call
- reduce flash usage by moving out templated code into non-template method
2022-08-25 22:02:15 -04:00
Beat Küng
b2cb164c12
commander: replace health flags with health_report from arming checks
2022-08-25 22:02:15 -04:00
Beat Küng
6d1fb92eb7
commander: rework arming checks to use the events interface
2022-08-25 22:02:15 -04:00
Beat Küng
b4a3597c7d
posix rcS: set PWM_AUX_OUT
...
Prevents a shell error in rc.interface
2022-08-25 22:02:15 -04:00
Beat Küng
b3fe0eeae8
mavlink_events: send reset sequence out immediately on startup
2022-08-25 22:02:15 -04:00
Beat Küng
552d08176f
posix rcS: set MAV_PROTO_VER to 2
...
For SITL it's important that the GCS receives the first events messages
that reset the sequence number, in case the user does not press 'Disconnect'
when restarting SITL.
2022-08-25 22:02:15 -04:00
Beat Küng
c7b64e3c01
commander: check for ack when calling 'commander takeoff'
2022-08-25 22:02:15 -04:00
Beat Küng
406b0bbc86
commander: handle VEHICLE_CMD_RUN_PREARM_CHECKS
2022-08-25 22:02:15 -04:00
Beat Küng
8f9be0541f
HealthAndArmingChecks: add support for legacy mavlink_log reporting
2022-08-25 22:02:15 -04:00
Beat Küng
f23363f88c
HealthAndArmingChecks: add unit tests for Report
2022-08-25 22:02:15 -04:00
Beat Küng
2507f0a143
px4events: fix known_groups list
2022-08-25 22:02:15 -04:00
Beat Küng
fcadc69e52
mavlink_receiver: set timestamp to gps_inject_data_topic
2022-08-25 22:02:15 -04:00
Beat Küng
c95192d050
orb_print_message_internal: handle 64 bit bitsets
2022-08-25 22:02:15 -04:00
Beat Küng
b7a6de05df
arming checks: add health topic
2022-08-25 22:02:15 -04:00
Beat Küng
07afcf4586
commander preflight checks: new structure using events interface
...
- Reporter class that keeps track of results (list of events + whether
arming is possible + health).
And only reports when one or more checks change.
2022-08-25 22:02:15 -04:00
Beat Küng
04f7df3848
SubscriptionMultiArray: use Subscription instead of SubscriptionInterval
...
Saves ~3KB RAM on fmu-v5.
2022-08-25 22:02:15 -04:00
Daniel Agar
9b0b0d1168
ekf2: update test change indication csv
2022-08-25 15:55:45 -04:00
Ville Juven
f60f6d2425
Remove px4_work_queue from the kernel side LD command
...
The comment is right, it is not needed -> get rid of it
2022-08-25 13:30:11 -04:00
Daniel Agar
2786239ca6
Jenkinsfile: HIL remove delete airframe from test
2022-08-25 09:48:49 -04:00
Benjamin Perseghetti
02c9ec6085
Add thumbnails for x500.
2022-08-25 09:10:03 -04:00
Benjamin Perseghetti
0e8e38e698
Add x500 ignition (replaces x3)
2022-08-25 09:10:03 -04:00
Daniel Agar
4040e4cdf2
simulation organization and cleanup
...
- new modules/simulation directory to collect all simulators and related modules
- new Tools/simulation directory to collect and organize scattered simulation submodules, scripts, etc
- simulation module renamed to simulator_mavlink
- sih renamed to simulator_sih (not a great name, but I wanted to be clear it was a simulator)
- ignition_simulator renamed to simulator_ignition_bridge
- large sitl_target.cmake split by simulation option and in some cases pushed to appropriate modules
- sitl targets broken down to what's actually available (eg jmavsim only has 1 model and 1 world)
- new Gazebo consistently referred to as Ignition for now (probably the least confusing thing until we fully drop Gazebo classic support someday)
2022-08-25 09:10:03 -04:00
David Sidrane
6b2509cbba
px4_fmu-v6c Move I2C 4 to External
2022-08-25 08:46:51 -04:00
FARHANG
8b4df8ceb2
airframes: re-add Holybro X500v2 with dynamic control allocation
2022-08-25 07:52:18 +02:00
Jukka Laitinen
f8f1213841
board_adc: Small fix for printf formatter
...
Print sizeof type with %zu to be compatible with 64 bit targets, where it is unsigned long
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-08-25 07:50:23 +02:00
bresch
0061ef8b89
[AUTO COMMIT] update change indication
2022-08-24 09:16:11 -04:00
bresch
090d03eea2
ekf2: publish GNSS, rng and EV height biases
2022-08-24 09:16:11 -04:00
bresch
a2a29ba0dd
ekf2: verify parameter configuration for height sources
2022-08-24 09:16:11 -04:00
bresch
8dd5d0d1a3
ekf2: don't reset height when in conditional range aiding
2022-08-24 09:16:11 -04:00
bresch
20cd599bb7
ekf2: fix param migration
2022-08-24 09:16:11 -04:00
bresch
2d39097f60
ekf2: move rng height to file
2022-08-24 09:16:11 -04:00
bresch
28b4cd0579
ekf2: move GNSS hgt control to file
2022-08-24 09:16:11 -04:00
bresch
b6f76b5eaa
ekf2: move ev control to file
2022-08-24 09:16:11 -04:00
bresch
f555281c94
ekf2: move height control-related function to file
2022-08-24 09:16:11 -04:00
bresch
d87feee5b0
ekf2: move baro control logic to file
2022-08-24 09:16:11 -04:00
bresch
12e25eba62
ekf2: add common height fusion timeout parameter
2022-08-24 09:16:11 -04:00
bresch
52f726c5b7
ekf2: in bias estimator, use psd instead of var for prediction
...
PSD is independent from the sampling time while variance isn't
2022-08-24 09:16:11 -04:00
bresch
b04d61c411
ekf2: param migration for rng aid, aid mask (gps) and hgt mode
2022-08-24 09:16:11 -04:00
bresch
3fb218600a
ekf2_test: add multi height source unit tests
2022-08-24 09:16:11 -04:00
bresch
aba2eac0df
ekf2: publish GNSS, rng and EV height biases
2022-08-24 09:16:11 -04:00
bresch
6833c7e311
ekf2: adjust ekf2 aid parameters in configs
2022-08-24 09:16:11 -04:00
bresch
8962cf2d25
ekf2: GPS, baro and range finder control parameters
...
Also remove the legacy "range aid" than can be achieved by setting the
height reference to range finder and the range finder control parameter
to "conditional".
Conditional range aiding cal also be set when the height reference isn't
the range finder. This prevents the ratchetting effect due to switching
between references.
2022-08-24 09:16:11 -04:00
bresch
578e1339ca
ekf2: re-implement range aid
...
range aid simply forces the range finder to be the height reference when
starting
2022-08-24 09:16:11 -04:00
bresch
88ac5ea210
ekf2_test: add test case for accel clipping handling
2022-08-24 09:16:11 -04:00
bresch
375753eba8
ekf2_test: add inertial nav falling detection tests
2022-08-24 09:16:11 -04:00
bresch
66ce1a002b
ekf2_test: rename VisionHeight -> ExternalVisionHeight
2022-08-24 09:16:11 -04:00
bresch
82ec7a495a
ekf2: refactor inertial nav falling check
2022-08-24 09:16:11 -04:00
bresch
f9188b2a14
ekf2: refactor vertical acceleration check for multiple height sources
2022-08-24 09:16:11 -04:00
bresch
8fd79688c0
ekf2: enable multiple height sources fusion
...
Instead of having a single height source fused into the EKF and the
other ones "waiting" for a failure or the primary sensor, fuse all
sources in EKF2 at the same time. To prevent the sources from fighting against each
other, the "primary" source is set as reference and the other ones are
running a bias estimator in order to make all the secondary height
sources converge to the primary one.
If the reference isn't available, another one is automatically selected
from a priority list. This secondary reference keeps its current bias
estimate but stops updating it in order to be the new reference as close
as possible to the primary one.
2022-08-24 09:16:11 -04:00
bresch
f5f31006a0
Ekf2: create HeightBiasEstimator class
...
Contains some logic common to all height bias estimators
2022-08-24 09:16:11 -04:00
JacobCrabill
57125a4c8f
cyphal: Fix FMUv5 config; throw error if no CAN driver exists
2022-08-23 21:24:24 -04:00
huiyulhy
c81efd0174
Fix velocity smoothing functional test
2022-08-23 21:11:35 -04:00
Beat Küng
7b810bb776
boards: update px4 io binary
2022-08-23 21:07:18 -04:00
Beat Küng
b260df711c
Makefile: force serial build for px4io_update
2022-08-23 21:07:18 -04:00
Beat Küng
bae275898b
rc/sbus: restart parser after sucessful decoding & increase time limit
...
Instead of directly passing the next packet to the parser after successful
parsing, switch the state to SBUS2_DECODE_STATE_SBUS_START and search for
the start byte again.
The timeout is increased as the IO main loop also takes a bit of time
(max ~0.7ms).
Tested on v5x with Futaba R7008SB (60Hz update rate) and FrSky X8R (111Hz
update rate).
Background:
When using the Futaba R7008SB, I noticed there's additional bytes added in
between packets. Often it's a null byte, but sometimes more. There's some
consistency but I did not find any documentation for it.
Sample data:
a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 34 00 0f 05 ec
1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 04 00 c0 8b
00 0f 04 ec 1f a8 fb 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00
14 00 0f 04 ec 1f a8 fb 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80
00 24 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10
80 00 34 00 0f 05 ec 1f 30 60 bf 1c bd 07 16 5b 81 05 d4 a0 06 20 00 01 08
40 00 02 10 80 00 34 00 0f 07 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01
08 40 00 02 10 80 00 04 00 03 c0 31 00 0f 05 fc 1f a8 fb 07 16 5b 81 05 d4
a0 06 20 00 01 08 40 00 02 10 80 00 14 00 0f 05 fc 1f a8 fb 07 16 5b 81 05
d4 a0 06 20 00 01 08 40 00 02 10 80 00 24 00 0f 04 ec 1f a8 fd 07 16 5b 81
05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 34 00 0f 04 ec 1f a8 fd 07 16 5b
81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 04 00 03 c4 00 00 0f 04 ec 1f
a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 14 00 0f 04 ec
1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 24 00 0f 04
ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 34 00 0f
05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 04 00
03 c0 31 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02
10 80 00 14 00 0f 05 fc 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00
02 10 80 00 24 00 0f 05 fc 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40
00 02 10 80 00 34 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08
40 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80
00 04 00 03 c0 31 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08
40 00 02 10 80 00 14 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01
08 40 00 02 10 80 00 24 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00
01 08 40 00 02 10 80 00 34 00 0f 05 f4 1f a8 fb 07 16 5b 81 05 d4 a0 06 20
00 01 08 40 00 02 10 80 00 04 00 03 c4 00 00 b0 60 7f 1c bd 07 16 5b 81 05
d4 a0 06 20 00 01 08 40 00 02 10 80 00 14 00 0f 05 ec 1f a8 fd 07 16 5b 81
05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 24 00 0f 05 ec 1f a8 fd 07 16 5b
81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 34 00 0f 05 ec 1f a8 fb 07 16
5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 04 00 03 c0 31 00 b0 60 bf
1c bd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 14 00 0f 04 f4
1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 24 00 30 70
7f 1c bd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 34 00 0f 05
f4 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10 80 00 04 00 03
c4 00 00 0f 05 fc 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01 08 40 00 02 10
80 00 14 00 0f 05 ec 1f b0 60 bf 1c bd 07 16 5b 81 05 d4 a0 06 20 00 01 08
40 00 02 10 80 00 14 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00 01
08 40 00 02 10 80 00 24 00 0f 05 ec 1f a8 fd 07 16 5b 81 05 d4 a0 06 20 00
This was causing the parser to skip entire packets resulting in an update
rate of ~31Hz on the FMU side.
With this patch the update rate increases to 42-48Hz.
The investigation was triggered by an RC glitch with a packet containing
random channel data. It's likely, although not completely verified that
the frequent desync randomly happend to pass the CRC check with garbage
data.
2022-08-23 21:07:18 -04:00
Daniel Agar
b58f70726f
ekf2: scale delta angle and delta velocity bias to particular IMU sample
2022-08-23 21:06:13 -04:00
Ville Juven
213d5dac2a
platforms/nuttx: Fix hard coded path for karch library
...
Use CONFIG_ARCH instead of arm
2022-08-23 21:05:41 -04:00
Ville Juven
4f6d523c95
mixer_module: Fix linking of mixer_module
...
The module has a hard dependency on mixer library, so link them together
2022-08-23 21:04:58 -04:00
bresch
f89044cfbe
ekf2: fix replay EKF2 start when CONSTRAINED_FLASH
2022-08-23 11:14:15 -04:00
modaltb
40149ecabc
boards: modalai_fc-v2 configure SPI6, disable unused SPI3/4 ( #20093 )
2022-08-22 20:58:44 -04:00
alexklimaj
913bae9924
Revert "drivers/uavcan: update libuavcan"
...
This reverts commit deb938fcea .
2022-08-22 20:57:06 -04:00
Daniel Agar
cfc579542e
new Ignition Gazebo simulation interface architecture ( #20057 )
...
- much simpler direct interface using Ignition Transport
- in tree models and worlds
- control allocation output configuration, no more magic actuator mapping to mavlink and back
- currently requires no custom Gazebo plugins (keeping things as lightweight and simple as possible)
Co-authored-by: Jaeyoung-Lim <jalim@ethz.ch >
2022-08-22 10:58:19 -04:00
Silvan Fuhrer
889a2fddea
FW Position Control: remove unnsed params
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 19:06:07 +02:00
Silvan Fuhrer
e3e021a1c2
FW Attitude Control: rename att_control to angular_acceleration_setpoint
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
e595952ed4
FW Attitude Control: add @brief, @param and @return for control_attitude()
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
f67d80460f
FW Attitude controller: update copyright headers
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Jaeyoung Lim
bcdf61b65f
Fix format
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
b87afb138c
Update src/modules/fw_att_control/FixedwingAttitudeControl.cpp
...
reduce code duplication
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2022-08-19 09:40:48 +02:00
Jaeyoung Lim
70134296ed
Fix parameter description from review comments
...
This commit makes the parameter description of the fixewing attitude controller more descriptive
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
70d7070307
ROMFS: plane airframe: make tuning tighter
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
c54f62e17a
FW attitude control: fix ff terms and constrain outputs to (-1, 1)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
dadd4f39ad
FW attitude control: fix yaw rate publishing
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
6724e4af26
FW attitude control: manual stick input sets yaw rate setpoint, not rudder directly
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
22067a1128
FW attitude control: set FF gains for rate controller to 0 as FF controls is handles outside
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
57e052d02d
FW attitdue controller: use allocator status for anti-windup
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
6aab44e425
ControlAllocator: publish allocator_status from all active matrices (2 for VTOL, otherwise 1)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
a9b848cae3
FW attitue controller: fix publishing of rate controller status
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
5a2127d026
fixed-wing: update rate controller integrator handling
...
-always reset roll/pitch/yaw integrators at the same time
-reset them while waiting for launch or during FW Takeoff before Climbout
-reset wheel rate integrator only when disarmed
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
cd080289c6
FW attitude controller: constrain rates correctly
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
15c95a7b6a
FW attitude controller: improve readability and fix euler rate sp vs. body rate sp
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Silvan Fuhrer
e0a998e6ad
FW attitude controller: remove unused control_input.scaler
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Jaeyoung Lim
33d068cfb2
Added feedforward terms in fw att control
2022-08-19 09:40:48 +02:00
Jaeyoung Lim
958c61dbba
Populate rate control setpoints properly
2022-08-19 09:40:48 +02:00
JaeyoungLim
6f24f4cd1c
Update src/modules/fw_att_control/fw_att_control_params.c
...
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
Jaeyoung Lim
dcff481219
Map derivative gains for rate controls
2022-08-19 09:40:48 +02:00
Jaeyoung-Lim
f2877ce585
Replace rate controller with RateControlLibrary
...
This commit makes the fw attitude controller take share the rate controller as a library with the mc_rate_control module
2022-08-19 09:40:48 +02:00
Thomas Debrunner
44a18acd51
Fix race condition in px4io serial driver ( #20005 )
...
* px4io: prevent memory corruption on corrput io data
* px4io_serial: Prevent race between handling wait timeout case and interrupt posting semaphore
2022-08-18 17:46:47 +02:00
bresch
02c4e0361c
MCPosControl: fix horizontal anti-reset windup algirithm
...
Since the horizontal and vertical velocity controllers are now
decoupled, it can be that the horizontal acceleration produced by the
controller is actually greater than the desired one (by design). This
condition would actually make the ARW run "backwards", degrading the
controller performance.
2022-08-18 14:19:10 +02:00
mcsauder
87a5705960
Rename math::gradual() to math::interpolate() and add unit tests to cover additional corner cases.
2022-08-18 14:18:02 +02:00
bresch
021b23826d
wind_replay: allow estimated local vel and GNSS vel sources
...
local vel by default, set --gnss to use GNSS vel instead
2022-08-18 14:09:23 +02:00
bresch
be6acb0a68
wind_est: add python script to replay wind estimator equations
2022-08-18 14:09:23 +02:00
bresch
4d21c90cbb
wind_est: generate wind estimator equations for python use
2022-08-18 14:09:23 +02:00
Kalyan Sriram
deb938fcea
drivers/uavcan: update libuavcan
2022-08-16 11:05:51 -04:00
Daniel Agar
1c72f86761
Update src/drivers/imu/analog_devices/adis16470/ADIS16470.cpp
...
Co-authored-by: Kabir Mohammed <kabir@corvus-robotics.com >
2022-08-16 08:40:43 -04:00
Daniel Agar
49d87f1907
adis16470: fix accel and gyro scaling
2022-08-16 08:40:43 -04:00
bresch
616b5689ba
Python: move symforce to optional requirements
...
symforce requires python 3.8 which isn't available by default on ubuntu
18.04.
2022-08-15 21:14:07 -04:00
Silvan Fuhrer
a7a8daaf4d
ROMFS: tiltrotor sitl config: some small tuning improvements in hover
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-16 02:48:44 +02:00
Silvan Fuhrer
771dbf9395
ROMFS: tiltrotor sitl config: adapt CA params to new output indexes
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-16 02:48:44 +02:00
Silvan Fuhrer
09f83016c9
update sitl_gazebo (tiltrotor index fixes)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-16 02:48:44 +02:00
Junwoo Hwang
d7a962b426
mavlink: fix PX4_DEBUG message formats
2022-08-12 09:43:12 +02:00
Junwoo Hwang
0c218e6628
atl/mantis-edu: enable mavlink ftp
2022-08-12 09:43:12 +02:00
Silvan Fuhrer
ffb8fb4383
Allocation: add SteeringWheel type control surface
...
Directly use yaw controls for it, and don't add it to the allocation matrix,
as that would have an effect on rudder scaling if the wheel also would have
a yaw effectiveness.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-12 09:43:12 +02:00
Silvan Fuhrer
9e18b351bc
Allocation: add Single Channel Aileron to CS types
...
This is the control surface type for airframes that have only a
single aileron servo or have the ailerons on a single output channel.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-12 09:43:12 +02:00
Silvan Fuhrer
c6d1b1f50f
Allocation: add A-tail servo type
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-12 09:43:12 +02:00
Beat Küng
f454dcef6b
ROMFS: set control allocation parameters for airframes
...
Removes some airframes:
- 1000_rc_fw_easystar.hil
- 10015_tbs_discovery
- 10016_3dr_iris
- 10018_tbs_endurance
- 13001_caipirinha_vtol
- 13002_firefly6
- 13003_quad_tailsitter
- 13004_quad+_tailsitter
- 13005_vtol_AAERT_quad
- 13006_vtol_standard_delta
- 13007_vtol_AAVVT_quad
- 13008_QuadRanger
- 13009_vtol_spt_ranger
- 13012_convergence
- 13050_generic_vtol_octo
- 14001_tri_y_yaw+
- 14002_tri_y_yaw-
- 15001_coax_heli
- 2105_maja
- 2200_mini_talon
- 3031_phantom
- 3032_skywalker_x5
- 3033_wingwing
- 3036_pigeon
- 3100_tbs_caipirinha
- 4003_qavr5
- 4009_qav250
- 4019_x500_v2
- 4030_3dr_solo
- 4031_3dr_quad
- 4051_s250aq
- 4072_draco
- 4080_zmr250
- 4090_nanomind
- 4100_tiltquadrotor
- 50003_aion_robotics_r1_rover
2022-08-12 09:43:12 +02:00
Beat Küng
4d60fadc05
ROMFS: set control allocation parameters for sitl airframes
...
Removes some airframes:
- if750a
- solo
- iris_ctrlalloc
- typhoon_h480_ctrlalloc
2022-08-12 09:43:12 +02:00
Beat Küng
f2db7b8deb
control_allocator: hide motor positions for fixed-wings
...
should not be set for now
2022-08-12 09:43:12 +02:00
Beat Küng
923a90d78b
control_allocator: set default control surface type to (not set)
...
Before it was set to left aileron, but the torque values were all 0.
2022-08-12 09:43:12 +02:00
Beat Küng
720cf5a485
config: enable dynamic control allocation by default (SYS_CTRL_ALLOC=1)
2022-08-12 09:43:12 +02:00
Oleg
6ea3c6a7d2
mavlink_ftp: fix to correctly trim reply messages
...
Clear any not used payload data to correctly trim mavlink ftp message reply to avoid sending long ACK and NACK messages.
2022-08-12 08:53:33 +02:00
David Sidrane
cd971948da
NuttX Backport critical F7 Ethernet issues
2022-08-12 08:22:55 +02:00
Matthias Grob
1f81101994
mc_att_control_main: do not jump throttle scaling when taking off
...
2fbb70d9ca made the lowest possible
throttle value commanded by stick in Stabilized mode before taking off 0.
The real world problem with this is that when takeoff is detected then
the entire throttle scaling range jumps from
[0, MPC_MANTHR_MIN]
to [MPC_MANTHR_MIN, MPC_MANTHR_MIN].
As a result whenever MPC_MANTHR_MIN is not zero there is a thrust jump
on every takeoff just at the moment takeoff is detected even when the
stick is moved continuously.
Because of this I suggest to revert to having a higher throttle value
from the beginning on because it's less complicated and there's
no obvious value in starting out with zero thrust if anyways not
possible to go back to zero for safety once takeoff is detected.
2022-08-11 14:18:54 +02:00
Matthias Grob
5b1b6f6080
mc_att_control_main: use gradual() for throttle curve rescale without hover thrust
2022-08-11 14:18:54 +02:00
Matthias Grob
7cb6a47714
TIME_ESTIMATE_TO_TARGET: fill unsupported fields with value representing unavailability
2022-08-11 07:27:04 +02:00
bresch
7996a1a70f
ekf2: reset ekf preflight checks on takeoff correctly
...
Using the control status flags isn't robust as this part of the code
runs at the EKF update rate while the in_air transition is don at the
prediction rate. It was then likely to miss the transition
2022-08-10 16:52:28 +02:00
marcirsch
a8b342722e
mavlink_main: Add TIME_ESTIMATE_TO_TARGET stream to config, onboard, and onboard_low_bandwidth modes
...
Signed-off-by: marcirsch <marcell@auterion.com >
2022-08-10 09:13:58 +02:00
marcirsch
4bf6ebf4c3
TIME_ESTIMATE_TO_TARGET: Populate TIME_ESTIMATE_TO_TARGET MAVLink message with the estimated time to RTL
...
mavlink_messages: Added newly created MAVLink stream
mavlink_main: Enabled stream
Signed-off-by: marcirsch <marcell@auterion.com >
2022-08-10 09:13:58 +02:00
Daniel Agar
7f2fea1cca
mpu9250: try all I2C addresses if not manually specified
2022-08-09 13:06:40 -04:00
Jaeyoung Lim
d4b77a6172
Update sitl gazebo submodule
2022-08-09 16:35:27 +02:00
Jaeyoung Lim
ea5b1be2d4
Disable rear motors tilt for tiltrotor SITL airframe
...
This commit disables the rear motor tilt on the tiltrotor SITL airframe
2022-08-09 16:35:27 +02:00
Jukka Laitinen
c7aaf52fd4
Double the allocated stack size of 64-bit NuttX built-in modules
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-08-09 08:08:54 +02:00
Daniel Agar
7c809f034d
replay: ReplayEkf2 disable parameter auto save
...
- not needed and silences a startup error
2022-08-08 21:27:47 -04:00
Daniel Agar
34dee09b74
ekf2: replay fixes, don't use HRT for timeout checks
...
- this interferes with current ekf2 replay where the latest IMU sample
is effectively the current timestamp
2022-08-08 21:27:47 -04:00
Daniel Agar
1c49a4349f
ekf2: force skip multi-EKF config if replay is enabled
2022-08-08 21:27:47 -04:00
Daniel Agar
66b55d9d0a
ekf2: fix yaw estimator velocity accuracy
...
- additionally require GPS speed accuracy is within EKF2_REQ_SACC
2022-08-08 21:27:01 -04:00
bresch
d9d127a237
lightware dist sensor: set min range based on datasheet
2022-08-08 19:32:44 -04:00
Daniel Agar
0bce1ef573
drivers/imu: new TDK IIM-42652 IMU support
2022-08-08 13:51:39 -04:00
Thomas Stastny
0ea347a5c9
fw pos ctrl: fix the touchdown offset on flare, and nudge the wheel directly
2022-08-08 09:32:44 +02:00
Thomas Stastny
02d7a46025
fw pos ctrl: increase landing nudge rate
2022-08-08 09:32:44 +02:00
Beat Küng
3e68870547
gtest: update to version 1.12.1
...
Fixes the error
googletest-src/googletest/src/gtest-death-test.cc:1283:24: error: ‘dummy’ may be used uninitialized [-Werror=maybe-uninitialized]
with GCC 11
2022-08-08 07:43:42 +02:00
Daniel Agar
bce4237963
move ekf2 Matrix helper utilities to mathlib
2022-08-05 09:58:07 -04:00
Silvan Fuhrer
6ebc88fed7
ROMFS: vtol_defaults: reduce aggressiveness around roll and yaw axis
...
For most VTOLs the param defaults for the agressiveness of the MC attitude controller
are too high, as VTOLs usually have high intertia and lot af drag due to wings and
can thus not rotate as fast as MCs.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Silvan Fuhrer
a064164c14
FW pos C params: add param group FW Auto Landing
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Silvan Fuhrer
b039ae1614
FW pos c params: change grouping of some clearly longitudinal params to TECS
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Silvan Fuhrer
45073f000a
FW Position control: reduce defaults for max pitch
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Silvan Fuhrer
d04f21aa16
FW attitude controller: reduce FW_MAN_P_MAX from 45 to 30
...
45° is a very large pitch angle, and for me 30° is much more reasonable for
a default value.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Silvan Fuhrer
828992adf7
increase default of MPC_Z_VEL_MAX_DN and MPC_Z_V_AUTO_DN from 1 to 1.5
...
I think most vehicle can safely decend with at least 1.5m/s, and having this
value too low makes Descents/Landings/RTLs unnecessary long.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Silvan Fuhrer
c42667ac64
ROMFS: vtol_defaults: remvoe custom NAV_ACC_RAD, leave at param default (10)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Silvan Fuhrer
4614c1a0b4
ROMFS: vtol_defaults: increase default hover speeds
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Silvan Fuhrer
0d10491b89
ROMFS: vtol_defaults: remove MPC_TKO_SPEED from VTOL defaults
...
The VTOL default was set to 1, while the param default is 1.5.
I don't see why it shuold be a different default for VTOLs and thus remove it.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Matthias Grob
87cbda1992
FlightTaskOrbit: parameterize hardcoded maximum radius ( #20012 )
2022-08-05 09:19:32 +02:00
Daniel Agar
dfdfbbfa9c
msg/vehicle_odometry.msg: simplify covariance handling and update all usage ( #19966 )
...
- replace float32[21] URT covariances with smaller dedicated position/velocity/orientation variances (the crossterms are unused, awkward, and relatively costly)
- these are easier to casually inspect and more representative of what's actually being used currently and reduces the size of vehicle_odometry_s quite a bit
- ekf2: add new helper to get roll/pitch/yaw covariances
- mavlink: receiver ODOMETRY handle more frame types for both pose (MAV_FRAME_LOCAL_NED, MAV_FRAME_LOCAL_ENU, MAV_FRAME_LOCAL_FRD, MAV_FRAME_LOCAL_FLU) and velocity (MAV_FRAME_LOCAL_NED, MAV_FRAME_LOCAL_ENU, MAV_FRAME_LOCAL_FRD, MAV_FRAME_LOCAL_FLU, MAV_FRAME_BODY_FRD)
- mavlink: delete unused ATT_POS_MOCAP stream (this is just a passthrough)
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2022-08-04 12:55:21 -04:00
bresch
61f390b0dd
ekf2_test: fix height offset compensation after origin reset
2022-08-04 16:50:31 +02:00
bresch
e34de53e2e
ekf2_test: let the GPS start before setting the new origin
...
fix test by reducing the distance to the new origin: the maximum size of
the local position origin is a cube of 1e6m. If the origin is moved
further than this, the state is clipped to that maximum value
2022-08-04 16:50:31 +02:00
Silvan Fuhrer
55f395a7e9
FlightTaskAuto: apply cruise speed from position triplet also when negative ( #20006 )
...
Navigator sets the cruise_speed to -1 if the controller shouldn't listen to
it and instead use the default speed (for MC: MPC_XY_CRUISE). This is for
example for RTL the case, where we want to return at the default speed,
independetly of what the mission speed before was.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-04 13:36:15 +02:00
FARHANG
2498cbbb74
boards: px4_fmu-v6c rc.board_defaults remove irrelevant ethernet configuration
2022-08-03 11:13:12 -04:00
Tony Cake
f321117568
GHST: Add support for GPS Telemetry ( #19953 )
...
Add support for the basic GPS telemetry values when using the GHST protocol.
* Fix formatting in GHST GPS telemetry changes
* GHST GPS Telemetry formatting cleanup
* GHST GPS Telemetry, Last formatting change
2022-08-03 10:44:21 +02:00
Hamish Willee
270c456121
CI - build on main as well ( #20001 )
2022-08-02 16:52:17 -07:00
Roman Bapst
dbf7d32e07
Skip VTOL_TAKEOFF mission item when in fixed wing mode ( #19985 )
...
* mission: skip VTOL_TAKEOFF mission item when in fixed wing mode
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* mission: added better comment regarding skipping VTOL Takeoff in fw mode
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-08-02 15:34:42 +02:00
RomanBapst
f11f2e9797
addressed review comments
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-08-02 15:29:25 +02:00
RomanBapst
a425bc4c92
vehicle_local_position: fixed comment
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-08-02 15:29:25 +02:00
RomanBapst
fbd4534edc
WindEstimator: reworked filter initialisation
...
- separate initialisation with and without airspeed
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-08-02 15:29:25 +02:00
RomanBapst
a63f1b71fe
wind_estimator: added simple check for validity of synthetic airspeed
...
- synthetic airspeed will only be declared valid as soon as the wind variance
has dropped below a parameterized threshold. This is useful for vehicles without
an airspeed sensor which rely on synthetic airspeed but only once the vehicle
has turned sufficiently for the wind estimates to be reliable.
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-08-02 15:29:25 +02:00
Hamish Willee
a715b5468e
mc_wind_estimator - improve readability ( #19545 )
2022-08-02 09:26:06 +02:00
Hamish Willee
30e2490d5b
Docs are now in user guide and main ( #19977 )
...
* Fix links to docs in source to point to docs on main not master
* More docs and scripts that need to point to main
2022-08-01 11:39:39 +10:00
Peter van der Perk
c566fb414b
S32K1XX add dummy iwdg driver
2022-07-31 11:21:41 -04:00
Beat Küng
e7588d2da0
px4io+pwm_out: set the PWM rate and disarmed value when a channel is first set to a servo
...
This should simplify the first setup a bit.
2022-07-31 11:20:57 -04:00
Igor Mišić
f929017618
boards: link missing arch_io_pins lib
2022-07-31 11:19:20 -04:00
Daniel Agar
41d9c3dd2a
ekf2: add AUX velocity aid src status
...
- also includes velocity and position helpers for using estimator aid
source status messages that will later be used for GPS, EV, etc
2022-07-29 12:02:31 -04:00
Daniel Agar
a397c09e59
ekf2: use estimator_aid_src for all yaw sources (mag, gnss, ev)
2022-07-29 11:20:48 -04:00
Agata Barcis
d5d88cba5b
generate_microRTPS_bridge.py updated to support ROS2 humble
...
Signed-off-by: Agata Barcis <agata.barcis@tii.ae >
2022-07-29 15:21:05 +02:00
Silvan Fuhrer
638eff426a
AirspeedValidator: increase max update step size of tas_scale_validated from 1% to 5%
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-29 09:29:27 +02:00
Beniamino Pozzan
a20483ed11
msg/position_controller_landing_status.msg: fix constant name conventions
...
- msg constant names now comply with ROS conventions:
uppercase alphanumeric characters with underscores for separating words
partially fix #19917
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@phd.unipd.it >
2022-07-28 11:29:03 -04:00
Daniel Agar
9ed861e0a3
lib/mixer_module: split functions into separate headers
...
- this arguably improves visibility/discoverability
2022-07-28 08:08:58 +02:00
bresch
f7ff0a9961
WindEstimator: add test case for airspeed fusion singularity
2022-07-27 08:19:40 -04:00
Daniel Agar
38c02ea29a
wind_estimator: cmake add symforce generation helper target (wind_estimator_generate_airspeed_fusion)
2022-07-27 08:19:40 -04:00
bresch
26190a7799
WindEstimator: use SymForce auto-generated function for airspeed fusion
2022-07-27 08:19:40 -04:00
Hamish Willee
e6eed43648
Spelling errors ( #19935 )
2022-07-27 14:33:16 +10:00
RomanBapst
97f632a408
vtol_takeoff: reset reposition triplet before handing over to loiter mode
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-25 14:48:18 +02:00
Igor Mišić
d6488fafc3
serial_test: fix first write_count_value for next write
2022-07-25 11:48:36 +02:00
Igor Mišić
32ca7ad706
serial_test: fix write for max buffer size
2022-07-25 11:48:36 +02:00
Taylor Nelms
21cb0ef50f
Component: flash parameter storage on stm32h7. Fixes #15331 .
...
As per the discussion in #15331 , fixed issue where stm32h7 chips
use hardware ECC bits in program memory that disallow overwriting
32-byte flash line that has already been written. As such,
this change allows for a variant implementation of the flashfs system
that uses more space in the flash entry header in order to
allow an entire line to be reserved for erasing an entry.
Signed-off-by: Taylor Nelms <tnelms@roboticresearch.com >
2022-07-25 08:19:00 +02:00
Thomas Stastny
6a0f394d46
rtl: reset rtl state only on activation
...
rtl state was getting reset on inactive, which meant that the state which triggered resuming e.g. mission landing would be overwritten, and the navigator mode would switch back and forth between rtl and mission. this commit:
1. moves the reset of rtl state to the on activation function (removing it from the on inactive function)
2. functionalizes the rtl state input to the rtl time estimator so that rtl time can still be calculated from state=none while inactive
2022-07-22 14:59:20 +02:00
Thomas Stastny
e512d77b89
RTL: expose RTL state
2022-07-22 14:59:20 +02:00
Silvan Fuhrer
85a621303d
VtolLandDetector: remove airspeed check
...
This commit removes the additional airspeed check (airspeed for VTOLs in
hover below LNDFW_AIRSPD_MAX), as it is not a required condition in the
landed state (headwind blowing into the airspeed sensor won't stop
once on the gruond). In FW mode the check would make more sense, but there
the land detector is currently simply disabled.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-22 08:31:32 +02:00
Daniel Agar
32c6ec061e
sensors: add kconfig options to skip angular velocity and acceleration
2022-07-21 11:27:09 -04:00
Silvan Fuhrer
c9c62b860c
ROMFS: add generic tiltrotor VTOL (13200)
...
Add geometry for a quad tiltrotor VTOL, with only front motors tiltable,
two ailerons and a V-tail.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-21 10:09:12 -04:00
Silvan Fuhrer
3ffc37d988
ROMFS: generic tailsitter VTOL: enable CA by default and remove legacy mixer
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-21 10:09:12 -04:00
Silvan Fuhrer
ab58717313
ROMFS: standard VTOL: enable CA by default and remove legacy mixer
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-21 10:09:12 -04:00
Silvan Fuhrer
607c53e873
ROMFS: flying wing: enable CA by default and remove legacy mixer
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-21 10:09:12 -04:00
Silvan Fuhrer
4dabc8b7ed
ROMFS: standard plane: enable CA by default and remove legacy mixer
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-21 10:09:12 -04:00
Daniel Agar
70e95812e7
ekf2: reset mag_lpf (by zeroing _mag_counter) when resetting mag bias (or changing mags)
...
- so that there's new filtered data avaiable for reset
2022-07-21 09:24:28 -04:00
Daniel Agar
ecdade3638
ekf2: mag in air reset fall back to regular resetMagHeading() if realignYawGPS() fails
2022-07-21 09:24:28 -04:00
Daniel Agar
05133aed27
ekf2: clear test ratios, flags, etc when stopping mag fusion
2022-07-21 09:24:28 -04:00
Daniel Agar
65a587e56a
ekf2: mag fusion don't update all states if mag_fault or mag_field_disturbed
2022-07-21 09:24:28 -04:00
Daniel Agar
a41a0e7e80
ekf2: resetMagHeading() split out simple init case
2022-07-21 09:24:28 -04:00
Daniel Agar
9efadad06a
ekf2: move checkMagFieldStrength() to magFieldStrengthDisturbed() const method
2022-07-21 09:24:28 -04:00
Daniel Agar
a7f573e150
ekf2: delete isStrongMagneticDisturbance()
2022-07-21 09:24:28 -04:00
Daniel Agar
e6e27e694e
ekf2: delete isYawResetAuthorized()
2022-07-21 09:24:28 -04:00
Daniel Agar
0f1f6daa1a
ekf2: delete isMagBiasObservable()
2022-07-21 09:24:28 -04:00
Daniel Agar
d160229f47
ekf2: delete isYawAngleObservable()
2022-07-21 09:24:28 -04:00
Daniel Agar
b0c979f745
ekf2: add copyright header to EKFGSF_yaw and utils
2022-07-21 09:24:28 -04:00
Daniel Agar
4fee059696
ekf2: simplify mag yaw reset request when transitioning to mag enabled
2022-07-21 09:24:28 -04:00
Daniel Agar
f254b55523
ekf2: add mag fusion timestamps
2022-07-21 09:24:28 -04:00
Jukka Laitinen
e3e067d640
stub_keystore: Allow using also with other that SW_CRYPTO driver
...
Remove "depends on DRIVERS_SW_CRYPTO"
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-07-21 08:08:14 +02:00
Jukka Laitinen
026bd073b5
Don't error on CONFIG_CRYPTO_RANDOM_POOL not defined
...
px4_secure_random can be implemented also outside NuttX for some platform
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-07-21 08:08:14 +02:00
Thomas Stastny
d6fb1114ff
rtl: fix printout of rtl delay time
2022-07-20 14:15:12 +02:00
Thomas Stastny
1ec62c4063
rtl: let fixed-wing RTL all the way to the loiter/delay state
...
also fix home vs destination alt discrepancy on RTL
2022-07-20 14:15:12 +02:00
Daniel Agar
2f3cb97872
sensors/vehicle_magnetometer: don't advertise vehicle_magnetometer instance if mag has been disable
...
- if using multi-EKF across all magnetometers then an instance of
vehicle_magnetometer is advertised immediately for every sensor_mag
instance
- this can become problematic if EKF2 multi-mag is enabled, but with
only 1 IMU (EKF2_MULTI_MAG) because you will be stuck with no magnetometer data
2022-07-20 01:18:19 -04:00
Daniel Agar
e5be0e776e
ekf2: if multi-mag disabled (EKF2_MULTI_MAG <= 1) properly re-enable sensors hub selection (SENS_MAG_MODE)
...
- this prevents potential misconfiguration if trying to disable ekf2 multi mag
2022-07-20 01:16:55 -04:00
Daniel Agar
8ccd8fbed1
px4io: minimal backup scheduling regardless of dynamic mixing
...
- even if there's no configured output we still need to run to grab RC
data
2022-07-20 01:15:36 -04:00
Daniel Agar
8f8615e6c2
delete CBRK_RATE_CTRL
2022-07-20 01:14:53 -04:00
Beat Küng
67107f4978
.clang-tidy: exclude some warnings
...
Some are too verbose, others don't apply to the code base
2022-07-20 01:14:04 -04:00
Beat Küng
84b0a889a4
cmake: add clion support
2022-07-20 01:14:04 -04:00
Beat Küng
f22dc80ecc
system: add missing includes (added indirectly via visibility.h for normal builds)
2022-07-20 01:14:04 -04:00
Beat Küng
ea136e73be
ekf2: remove unused variables
2022-07-20 01:14:04 -04:00
Thomas Schneider
cd66a262ee
Robustify RTPS bridge stream parsing.
2022-07-20 01:13:47 -04:00
Peter van der Perk
089fbdccc9
UAVCANNODE NuttX SocketCAN driver
...
Change init mode for CAN driver so it get executed in a single context
2022-07-20 01:12:43 -04:00
Peter van der Perk
47aaa38d5f
Added DroneCAN SocketCAN driver Skeleton
2022-07-20 01:12:43 -04:00
Daniel Agar
14df1ee917
boards: px4_fmu-v5x_rtps disable systemcmds/gpio to save flash
2022-07-20 01:05:28 -04:00
Daniel Agar
2ece92abd0
sagetech_mxs: module.yaml remove invalid default
2022-07-20 01:00:15 -04:00
Daniel Agar
ace80e2b9d
fw_att_control: add simple backup scheduling if vehicle_attitude unavailable (or stops)
2022-07-20 00:53:37 -04:00
jasta
1603883dc9
Configure SCALED_PRESSURE so temperature data is available to QGroundControl
2022-07-20 00:49:11 -04:00
jasta
a110032dc0
Fix typo in SCALED_PRESSURE*_HPP defines
...
This was preventing SCALED_PRESSURE* from being added to the list of
streams, so even if it was configured it still wouldn't work.
2022-07-20 00:49:11 -04:00
Thomas Stastny
413ce8a3c4
fw pos ctrl: absorb fw_lnd_rel_ter into fw_lnd_useter parameter
2022-07-19 22:37:09 -04:00
Thomas Stastny
de3ac12ecd
fw pos ctrl params: clarify landing parameters, change defaults
...
FW_LND_USETER defaulted to 1 and FW_LND_ABORT terrain based bits all enabled. why? because using a distance sensor is critical to detecting when to flare, and we want to force the user to actively disable these safety settings if they so choose, so that they understand the implications.
2022-07-19 22:37:09 -04:00
Thomas Stastny
26cb55ec2c
fw pos ctrl: takeoff and landing nudging enabled by default
2022-07-19 22:37:09 -04:00
Thomas Stastny
121cc1fce8
fw pos ctrl: rework landing abort status
...
abort boolean and reasons no longer separated, single status field with corresponding abort triggers
2022-07-19 22:37:09 -04:00
Thomas Stastny
694d36050a
fw pos ctrl: update landing parameter descriptions
2022-07-19 22:37:09 -04:00
Thomas Stastny
888e72661f
fw pos ctrl: add option to fix the glide slope reference altitude
...
- new param, FW_LND_TER_REL
- fixing the glide slope helps keep the landing glide behavior steady (avoiding bumps in the altitude setpoint from e.g. trees)
- flare is still triggered via the distance sensor, if enabled by FW_LND_USETERR
2022-07-19 22:37:09 -04:00
Thomas Stastny
c60b215574
fw pos ctrl: allow negative landing glide slope relative altitude
...
when the vehicle did not track the slope well (e.g. at an offset above the track) and the altitude setpoint flattening on intersection with terrain, the throttle would spool up to smoothly intersect the newly flattened altitude setpoint, this could happen before the flare altitude was reached, which is bad. now the steady state glide behavior will be maintained, and flare can trigger at the appropriate time
2022-07-19 22:37:09 -04:00
Thomas Stastny
4953fdd1ab
fw pos ctrl: variable min calibrated airsp in auto airspeed adjuster
2022-07-19 22:37:09 -04:00
Thomas Stastny
6612d4696d
fw pos ctrl: fix glide slope calculation, from geometry, not param
2022-07-19 22:37:09 -04:00
Thomas Stastny
d73b2e8625
fw pos ctrl params: update flaring param values and docs
2022-07-19 22:37:09 -04:00
Thomas Stastny
7283cd7c9d
fw pos ctrl: fix virtual waypoint calculation typo
2022-07-19 22:37:09 -04:00
Thomas Stastny
8f5b274e72
fw pos ctrl: refactor terrain estimate and land abort
...
- improve terrain estiamte documentation
- add landing abort condition bitmasked parameter to choose abort conditions
- refactor terrain estimate getter with landing abort logic
- log abort status and inform user
- log flaring status
2022-07-19 22:37:09 -04:00
Thomas Stastny
c98153e044
fw pos ctrl: enumerate landing nudging options, add to param documenation
2022-07-19 22:37:09 -04:00
Thomas Stastny
9fab914687
fw pos ctrl: use max function for landing approach entrance rel alt
2022-07-19 22:37:09 -04:00
Thomas Stastny
217efcb12d
fw pos ctrl: set idle throttle in landed conditions
...
also set the default idle throttle to zero as most PX4 applications use electric motors
2022-07-19 22:37:09 -04:00
Thomas Stastny
ceb432aacb
mission feasibility checker: use param_find() to check fixed-wing land angle
2022-07-19 22:37:09 -04:00
Thomas Stastny
4b0a8565fe
fw pos ctrl: lower underspeed detection bound for landing airspeed
2022-07-19 22:37:09 -04:00
Thomas Stastny
41b0a6c62c
fw pos ctrl: open up desired max sink rate limits for landing slope
...
- the target_sink_rate param could possibly constrain the maximum commanded sink rate to something less than that of the landing glide slope, which would make it impossible to track. this commit allows opening up the desired max sink rate up to the performance limits of the aircraft, if necessary, for the landing case
2022-07-19 22:37:09 -04:00
Thomas Stastny
d1aca4032d
mission feasibility / fw pos ctrl: add limited landing checks back, allow glide slopes below max
2022-07-19 22:37:09 -04:00
Thomas Stastny
87e09ad9f5
fw pos ctrl: auto landing refactor
...
- landing slope/curve library removed
- flare curve removed (the position setpoints will not be tracked during a flare, and were being ignored by open-loop maneuvers anyway)
- flare curve replaced by simply commanding a constant glide slope to the ground from the approach entrance, and commanding a sink rate once below flaring alt
- flare is now time-to-touchdown -based to account for differing descent rates (e.g. due to wind)
- flare pitch limits and height rate commands are ramped in from the previous iteration's values at flare onset to avoid jumpy commands
- TECS controls all aspects of the auto landing airspeed and altitude/height rate, and is only constrained by pitch and throttle limits (lessening unintuitive open loop manuever overrides)
- throttle is killed on flare
- flare is the singular point of no return during landing
- lateral manual nudging of the touchdown point is configurable via parameter, allowing the operator to nudge (via remote) either the touchdown point itself (adjusting approach vector) or shifting the entire approach path to the left or right. this helps when GCS map or GNSS uncertainties set the aircraft on a slightly offset approach"
2022-07-19 22:37:09 -04:00
bresch
f962399ba1
ekf2: rename BaroBiasEstimator -> BiasEstimator
2022-07-19 20:46:53 -04:00
Daniel Agar
39453405a0
ekf2: cleanup zero innovation heading fusion
...
- refactor updateQuaternion() to compute the yaw jacobian directly (respecting the rotation sequence determination)
- fuseHeading()/fuseYaw321()/fuseYaw312() helpers are eliminated and now mag heading fusion and EV yaw fusion compute the innovation in place
- clear up logic for performing zero innovation heading fusion when quaternion variance exceeds threshold (no more _is_yaw_fusion_inhibited flag manipulation)
- when at rest continue fusing last static heading with very low variance even if other heading sources are active
2022-07-19 11:58:27 -04:00
Roman Dvořák
ed14151734
Update Flight-gear bridge, Add support of TF-G2 autogyro flight-gear model ( #19122 )
...
* Add Transfer of RPM from FG to PX4,
-switch FG_bridge module to ThudnderFlyaerospace
* Add TF-G2 flightgear sim target
* Add simulator support, fix astyle
* Update SITL TF-G2 airframe, update fg bridge
Co-authored-by: Vit Hanousek <vithanousek@seznam.cz >
2022-07-19 09:11:44 +02:00
Daniel Agar
1a513153be
ekf2: update range sample fix ekf2_timestamps
...
- this is necessary to use distance_sensor data in replay
2022-07-18 14:39:12 -04:00
Ramon Roche
e5e74f65d7
README: Project governance and trademarks
...
We need to ensure the Dronecode logo is prominently displayed
and linked to the PX4 brand for trademark protection of PX4 and Dronecode.
If you have any questions about this, please feel free to reach out directly to me.
2022-07-18 11:16:55 -04:00
Silvan Fuhrer
1e0235d87b
ROMFS: remove outdated RWTO_MAX_ROLL from all configs
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-18 10:49:27 -04:00
Thomas Stastny
69bc5d37bc
fw pos ctrl: mark completed manual takeoff true if rotary wing and armed
2022-07-18 10:49:27 -04:00
Thomas Stastny
b4e066f056
fw pos ctrl: use hardcoded buffer altitude instead of parameter for clearance altitude buffer
2022-07-18 10:49:27 -04:00
Thomas Stastny
67b0f5e07e
runway takeoff params: improve descriptions
2022-07-18 10:49:27 -04:00
Thomas Stastny
81d6fdfe8c
fw pos ctrl params: update defaults and bounds on wing geometry
2022-07-18 10:49:27 -04:00
Thomas Stastny
7e12f6ba5a
fw pos ctrl: dont use terrain alt for takeoff
2022-07-18 10:49:27 -04:00
Thomas Stastny
ec02413387
fw pos ctrl: remove vtol condition from manual takeoff completion
2022-07-18 10:49:27 -04:00
Thomas Stastny
a12e40b1d8
tecs: convert tas error and soft bounds to percentage of trim airspeed
2022-07-18 10:49:27 -04:00
Thomas Stastny
1782f9cd3e
tecs: zero guard ste rates and airspeed setpoint rates
2022-07-18 10:49:27 -04:00
Thomas Stastny
63e4ea23b7
vehicle_rates_setpoint: log wheel controller yaw rate on common yaw rate channel
2022-07-18 10:49:27 -04:00
Thomas Stastny
c447064596
fw pos ctrl: rename position control mode variable
2022-07-18 10:49:27 -04:00
Thomas Stastny
5648deb5a1
fw pos ctrl: organize state variables
2022-07-18 10:49:27 -04:00
Thomas Stastny
2d5f1a5c6b
fw pos ctrl: head straight for next waypoint after takeoff
2022-07-18 10:49:27 -04:00
Thomas Stastny
721131a135
fw pos/att ctrl: pass manual nose wheel increments during takeoff ground roll
2022-07-18 10:49:27 -04:00
Thomas Stastny
fcee314646
fw att ctrl: log the yaw rate command controlled by the wheel
2022-07-18 10:49:27 -04:00
Thomas Stastny
4d3f05479d
fw pos ctrl: refactor takeoff mode
...
- post takeoff, the aircraft follows the infinite line sourced from the launch point in the direction of the takeoff waypoint
- takeoff waypoint altitude is used as a clearance altitude, set such that once above, the aircraft has cleared all ground occlusions and may proceed with the mission
- runway takeoff state machine simplified to throttle ramp, clamped to runway, climbout, and fly
- throttle ramp must complete before switching to next state to avoid a jump in throttle setpoint just after takeoff if the takeoff airspeed is reached before the ramp is complete
- roll constraints near ground post takeoff removed from runway takeoff class (handled externally now)
- minimum airspeed in TECS is reduced to takeoff speed (if necessary) to lower the underspeed detection bound
- lateral-directional guidance uses a different period parameter during ground roll
2022-07-18 10:49:27 -04:00
Thomas Stastny
7c6ce436ca
fw pos ctrl: encapsulate wing tip strike constraint for roll angle
...
- apply constraint only for takeoff and landing modes
- add two params, wing span and wing height, to calculate a reasonable height at which roll limits can be opened
2022-07-18 10:49:27 -04:00
Thomas Stastny
5241f016f7
fw pos ctrl: rework manual takeoff aid
...
- takeoff situational knowledge removed from all other modes except manual (or actual takeoff mode)
- manual takeoff is marked complete if at a controllable airspeed
- minimum pitch bounds TECS until manual takeoff complete
- remove individual roll constraints during manual takeoff (ground proximity constraints coming in subsequent commit)
2022-07-18 10:49:27 -04:00
Thomas Stastny
73010cc69b
TECS: speed (only) -based underspeed detection
...
- underspeed condition only determined by true airspeed undershoot
- change binary underspeed condition to a continuous percent undersped
- ramp-in max throttle, pitch speed weight, and TAS setpoint reduction during underspeed to avoid jumpy commands at the true airspeed error boundary
- let true airspeed filter reach zero airspeed
2022-07-18 10:49:27 -04:00
Thomas Stastny
eed073887d
remove in air vs landed knowledge from TECS
...
- create integral and trajectory generator reset methods
- always run TECS unless in rotary-wing mode (or in transition)
- constantly reset TECS integrals and trajectory generators when landed
2022-07-18 10:49:27 -04:00
Thomas Stastny
ddeca2538c
fw pos ctrl: handle takeoff detection when switching to takeoff mode while in air
...
- simplify takeoff reset method
- removes _last_manual variable in favor of _skipping_takeoff_detection, which is handled in the control mode setter
- takeoff detection (both launch and runway) is skipped if entering takeoff mode from any other mode while having already been in the air
- added method to runway takeoff class for force setting the fly state when we want to skip the takeoff detection
2022-07-18 10:49:27 -04:00
bresch
8cc6d02af3
ekf2: add missing mag fuse type in enum
2022-07-15 15:57:17 +02:00
alexklimaj
f9b8ca1326
Support two RTCM links with the same corrections
...
Add selected_rtcm_instance to sensor_gps message to track loss of rtcm links
Publish _rate_rtcm_injection
2022-07-15 08:20:27 +02:00
Raffaele Rossi
1e55b69fdb
ADS1115 ADC: start internal ADC as well ( #19880 )
...
But only publish the system power.
2022-07-15 08:15:26 +02:00
Daniel Agar
c71cc5b815
drivers/imu/bosch: new BMI085 driver
...
- very similar to the BMI088 with minor differences in accel range
2022-07-14 18:20:13 -04:00
Daniel Agar
077547f31e
rm3100: fix trivial whitespace style failure
2022-07-14 14:44:59 -04:00
alexklimaj
768565ed6f
Enable GPS Blending by default
2022-07-14 10:20:59 -04:00
Daniel Agar
ea4a1bfb6a
sagetech_mxs: don't run by default
2022-07-14 10:20:20 -04:00
Bruce Meagher
c5f72fb5d9
Fixed formatting to pass check_format
2022-07-14 09:43:59 -04:00
Bruce Meagher
e66683a059
Fixed rm3100 self-test bug
2022-07-14 09:43:59 -04:00
Junwoo Hwang
1a620b450d
Change min > max notation to [min, max] in Parameters Markdown ( #19911 )
...
* Change min > max notation to [min, max] in Parameters Markdown
* Update src/lib/parameters/px4params/markdownout.py
Co-authored-by: Thomas Stastny <thomas.stastny@auterion.com >
Co-authored-by: Hamish Willee <hamishwillee@gmail.com >
Co-authored-by: Thomas Stastny <thomas.stastny@auterion.com >
2022-07-14 09:13:49 +10:00
Daniel Agar
a2f83269e9
airspeed_selector: don't consider vehicle_local_position valid if dead_reckoning
2022-07-13 09:01:33 +02:00
Daniel Agar
ac209c2e78
ekf2: vehicle_local_position add dead_reckoning flag
2022-07-13 09:01:33 +02:00
RomanBapst
9886660862
gps_inject_data: fixed integer overflow
...
- array length of data was increased without changing the data type of
the variable holding the length
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-13 07:49:47 +02:00
Hamish Willee
5f953fd1da
commander_params: COM_RC_IN_MODE - comment out of date ( #19634 )
2022-07-13 15:26:32 +10:00
Daniel Agar
e99da22cbe
delete CBRK_VELPOSERR circuit breaker
2022-07-12 13:51:13 -04:00
bresch
de74f45e2d
ekf2: do not run rng kinematic consistency check for fixed-wings
...
As they are always moving horizontally, the check doesn't make sense
for fixed-wings.
Also don't run the check while on ground to prevent getting a failed
check during pre-takeoff manipulation.
2022-07-12 13:45:59 -04:00
Matthias Grob
fb455c8f4b
vehicle_status: reorder message definition
...
for readability. No functional changes.
2022-07-12 15:50:49 +02:00
Daniel Agar
19b9b052ab
uavcan: GNSS optionally publish RTCMStream or MovingBaselineData
2022-07-12 08:15:15 -04:00
Daniel Agar
a73efd9c4f
NuttX carry minimal c++ cmath (replacing Matrix stdlib_imports.hpp)
2022-07-12 08:05:06 -04:00
Daniel Agar
fe22167512
differential_pressure/sdp3x: sdp3x_main fix 'keep running' regression
2022-07-12 09:11:57 +02:00
RomanBapst
a23cb111b7
added comment for cruising throttle only affecting rover
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
RomanBapst
b7d6e646cc
FixedWingPositionControl: better naming for manual airspeed setpoint
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
RomanBapst
c2f5ffdfcd
log tecs trim throttle
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
RomanBapst
92cdff6798
TECS: rename airspeed/throttle "cruise" to "trim"
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
RomanBapst
b57d3c6d74
TECS: set true airspeed rate setpoint to zero if airspeed is not enabled
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
RomanBapst
6dbea21ef5
TECS: renamed airspeed cruse to airspeed trim & general cleanup
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
RomanBapst
c05e0f076b
FixedWingPositionControl: do not pass trim throttle via position setpoint triplet
...
- trim throttle is handled entirely by the position controller
- navigator should use speed setpoints
- added flag gliding_enabled in position setpoint to stills support gliding
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
RomanBapst
cae7e1b88b
improved trim throttle compensation
...
- allow compensation based on vehicle weight (parameterized)
- use density for calculating trim throttle compensation instead of pressure
- removed parameter FW_THR_ALT_SCL
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
RomanBapst
461d0561b8
replace FW_THR_CRUISE with FW_THR_TRIM
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-12 09:07:20 +02:00
marcirsch
226b8a6f90
README: Updated links to point to main branch instead of master. Fixed broken links
...
Signed-off-by: marcirsch <marcell@auterion.com >
2022-07-12 08:38:05 +02:00
Matthias Grob
10a2b4c9f7
commander_helper: typo in set_tune() description
2022-07-08 14:51:15 +02:00
Junwoo Hwang
f66c3914f6
Give priority to power off tune over other tunes (e.g. Battery Low)
...
Make Power Off tune not interruptable
This solves the case of Low Battery warning tune overriding the power
off tune, as now the Power off tune is not interruptable by any other
tune unless override flag is specified
commander_helper: resolve "redundant boolean literal in ternary expression result"
2022-07-08 14:51:15 +02:00
Junwoo Hwang
652b153383
Cleanup set_tune() functions in the commander_helper
...
- Existing code was hard to read and quite ambiguous
- Also it allowed constantly re-sending the tune_control request for a
fixed duration tunes like "TUNE_ID_BATTERY_WARNING_SLOW", while not
respecting the tune duration
2022-07-08 14:51:15 +02:00
bresch
3b26c611af
mpc: add sideways and backward speed for manual position modes
2022-07-08 14:03:44 +02:00
bresch
1de38c88d9
mpc: use xy stick limiting function from library
2022-07-08 14:03:44 +02:00
Igor Mišić
7e9a45a01a
uavcan/sensors/battery: add multiple battery filter instances
2022-07-08 10:03:11 +02:00
Igor Mišić
90e2ac60ce
uavcan/sensors/battery: add the option to filter raw data
...
Useful for power modules that send just pure voltage and current without algorithmic prediction of voltage drop, time estimation, etc.
2022-07-08 10:03:11 +02:00
Igor Mišić
27b65481ba
uavcan/sensors/battery: refactoring _battery_status name
2022-07-08 10:03:11 +02:00
Junwoo Hwang
0eeb699af8
Convert add 'Hz' suffix to PWM50, PWM400, ... protocol names
...
* To avoid confusion as to what the number after the 'PWM' part means
when setting it up in the Actuators Tab
2022-07-08 08:15:13 +02:00
bresch
2f486c37fc
ekf2: start airspeed fusion when test ratio is passing only
...
When wind is already estimated, we don't reset the states using airspeed
data, so it could be that the fusion fails if the airspeed isn't
consistent with the filter (test ratio > 1). In this case, don't start
the fusion.
When wind isn't already estimated, the wind states are reset using
airspeed so the fusion can start regardless of the current test ratio.
2022-07-07 17:39:06 -04:00
Daniel Agar
e1933f6ade
ROMFS: execute rc.autostart (airframes) before starting dataman
2022-07-07 11:37:39 -04:00
Daniel Agar
f591988f32
drivers/actuators: modalai_esc driver
...
Co-authored-by: Travis Bottalico <travis@modalai.com >
Co-authored-by: akushley <akushley>
2022-07-07 10:32:52 -04:00
Daniel Agar
fe9af6769c
commander add GPS warnings (GPS invalid if flying and jamming critical)
2022-07-07 10:24:11 -04:00
Daniel Agar
15223009d2
combine sensor_gps + vehicle_gps_position msgs (keeping separate topics)
2022-07-07 10:24:11 -04:00
Junwoo Hwang
32ae00fd44
Move Vehicle Command Result Enum defs to Vehicle Command Ack ( #19729 )
...
- As it is always only used for the vehicle command ack message
- It was a duplicate, hence making it error prone for maintainment
- The uORB message comments were updated to make the relationship with
the MAVLink message / enum definitions clear
2022-07-07 16:15:11 +02:00
bresch
af4038aa7e
ekf2: publish estimator_aid_src_airspeed
2022-07-07 09:42:54 -04:00
bresch
2fd87c47e8
ekf2: use estimator_aid_source_1d message for airspeed fusion
...
split the fusion process into:
1. updateAirspeed: computes innov, innov_var, obs_var, ...
2. fuseAirspeed: uses data computed in 1. to generate K, H and fuse the
observation
2022-07-07 09:42:54 -04:00
bresch
503aa87957
ekf2_derivation: create functions to generate innov_var or HK only
...
This is required when the innovation variance computation and the fusion
are performed in two different functions.
2022-07-07 09:42:54 -04:00
Junwoo Hwang
6225fae1d6
Increase Battery level emergency shutdown time delay
...
from 300 ms to 60 seconds, to give enough time for the user to configure
the vehicle in the mean time.
This is needed especially when the battery cell count setting is wrong
(when it should be 3, but set to 4 for example), since then whenever you
boot the vehicle, it will shutdown after 300 ms, which leaves the user
puzzled as to exactly what's happening. And it also prevented the user
from changing the Parameter since it's shutting down so quickly.
60 second window is intended to be a reasonable time that will allow the
user to figure out what's going on (via checking the battery level on
QGC, etc) but also not deep discharge the battery to a dangerous level.
2022-07-07 15:09:41 +02:00
Chuck
4528341069
sagetech_mxs: Adding fixes for crashes due to ADSB vehicle list initialization failure
...
Co-authored-by: cfaber <chuck.faber@sagetech.com >
2022-07-06 21:19:46 -04:00
RomanBapst
44f98ac355
standard: fixed pusher assist in hover
...
- in hover mode the pusher assist is already set in update_mc_state()
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-06 16:07:55 +02:00
Beat Küng
7022d59a54
ROMFS: fix incremental build for airframe processing
...
Fixes the error:
Aborting due to missing @type tag in file: 'build/px4_fmu-v5_test/etc/init.d/airframes/11001_hexa_cox'
This can happen due to a change to e.g. board_serial_ports, which changes
the CLI command and triggers a re-execution of the airframe processing.
2022-07-06 07:50:18 -04:00
Beat Küng
6f8663ac62
mcp23009: add drivers__device cmake dependency
...
needed for device::I2C
2022-07-06 07:50:18 -04:00
RomanBapst
42cd0b4ce0
FlightTaskAuto: don't override landing gear state for takeoff
...
- this allows landing gear to retract automatically when doing a takeoff
and the vehicle is considered high enough
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-07-06 11:11:14 +02:00
Thomas Debrunner
42c562b748
gps: Increase param name buffer to address warning in newer gccs ( #19876 )
2022-07-06 10:20:31 +02:00
Silvan Fuhrer
b0490b9f6b
ROMFS: assign all 4 tilts to motors to have them all tilt
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-07-06 09:04:52 +02:00
Matthias Grob
a3288ff732
Commander: run ekf checks without grace period after boot
2022-07-05 10:35:07 -04:00
Matthias Grob
8deebd07b8
preArmCheck: Shorten messages to to not write "Arming denied!"
2022-07-05 10:35:07 -04:00
bresch
3d01b5aa11
ekf2_derivation: use unsimplified q->rot for observation equations
2022-07-05 14:25:35 +02:00
bresch
28b34a634b
ekf2_derivation: do not print null equations
2022-07-05 14:25:35 +02:00
bresch
78dd557b26
ekf2_derivation: automatically replace pow function
2022-07-05 14:25:35 +02:00
bresch
11f78a3686
ekf2_derivation: update generated equations with SymPy 1.10.1
2022-07-05 14:25:35 +02:00
Igor Mišić
dff946c39a
usr_mcu_version: add missing headers
2022-07-05 09:29:26 +02:00
Igor Mišić
89c287581b
boards/px4/fmu-v6c: update to extended hw_ver_rev format
2022-07-05 09:29:26 +02:00
Igor Mišić
4b503c310e
Merge PR #19575 (changes to pr-extendend_hw_ver_rev_format)
...
- 4096 of 3 hex digits each for rev and ver is enough.
#defines used in SPI versions do not be long format, use use the macro
- Board provides a prefix and the formatting is sized and built in
- No need for funky board_get_base_eeprom_mtd_manifest interface
Original mft is used where the abstraction is done with the MFT interface
Co-authored-by: David Sidrane <David.Sidrane@Nscdg.com >
2022-07-05 09:29:26 +02:00
Igor Mišić
f7d542e720
boards/sky-drones: update to extended hw_ver_rev format
2022-07-05 09:29:26 +02:00
Igor Mišić
4ea8527304
board/fmu-v5x: reverse order for start boards to shorten the command
2022-07-05 09:29:26 +02:00
Igor Mišić
8b77d68028
board/fmu-v5x: add new board version V5X00100001
2022-07-05 09:29:26 +02:00
David Sidrane
00e82c9060
board_hw_eeprom_rev_ver:Versioning hierarchy
2022-07-05 09:29:26 +02:00
Igor Mišić
ec1614d156
boards: update id string from V5X{0-a}{0-a} to V5X{xxxx}{xxxx}
...
boards: new format for hwtypecmp string
boards: update manifest.c to follow the new hw_ver_rev format
2022-07-05 09:29:26 +02:00
David Sidrane
49d63958a8
platforms/common/spi:Support 16 bit of VER and REV
2022-07-05 09:29:26 +02:00
Igor Mišić
b938215c2b
board_hw_info: add set and get functions for hw_version to/from eeprom
2022-07-05 09:29:26 +02:00
Igor Mišić
dd38ced7c4
fmu-v5x: use mtd to get hw info from base EEPROM
2022-07-05 09:29:26 +02:00
Igor Mišić
cc63c49a51
px4_manifest: add function declaration for get base EEPROM mtd
2022-07-05 09:29:26 +02:00
Igor Mišić
3463b725a5
px4_manifest: fix px4_mft_s to accept multiple manifests
2022-07-05 09:29:26 +02:00
Igor Mišić
432b664acc
px4_mtd: fix instantiation for multiple mtds
2022-07-05 09:29:26 +02:00
Igor Mišić
08a9e49f3e
px4_mtd: update eeprom at24c driver to initialize multiple instances
2022-07-05 09:29:26 +02:00
Daniel Agar
efde738826
ekf2: update EKF2_EV_DELAY default to 0
2022-07-04 11:44:53 -04:00
Matthias Grob
21f858de1f
drv_pwm_output: remove not used anymore define for presumed servo middle position
2022-07-04 16:34:58 +02:00
Matthias Grob
af4b8bfd60
linux_pwm_out: sync configuration logic from FMU and IO
2022-07-04 16:34:58 +02:00
Matthias Grob
8ccd40185a
PWMOut/px4io: use disarmed values as default failsafe values
...
to avoid surprises where upon disarm an ESC can suddenly spool up
even though it stops when disarmed and no specific failsafe value is configured.
2022-07-04 16:34:58 +02:00
Michael Schaeuble
85a5dd87cd
Remove camera capture GPIO interrupt when the rate is higher than 5kHz
...
If the capture GPIO is exposed to a signal with high frequency changes, a lot of
interrupts are scheduled and the handling of these call can worst-case
starve flight critical processes leading to a loss of control. Since camera capture
is not flight critical, we now give up the capture
functionality and stop the interrupts to prevent the starvation of other processes.
2022-07-04 11:32:33 +02:00
Igor Mišić
941c47fb19
Remove logging rate limit for pps_capture
...
In case of a signal issue on the PPS GPIO it is helpful to have logging
data with higher rates.
2022-07-04 11:32:33 +02:00
Michael Schaeuble
5abee359d6
Remove PPS GPIO interrupt when the rate is higher than 20Hz
...
If the PPS GPIO is exposed to a signal with high frequency changes, a lot of
interrupts are scheduled and the handling of these calls can worst-case
starve flight critical processes leading to a loss of
control. Since PPS is not flight critical, we now give up the PPS
functionality and stop the interrupts to prevent the starvation of other processes.
2022-07-04 11:32:33 +02:00
Jaeyoung-Lim
55eed0e125
Remove multirotor mixer include from MC Ratecontro;
...
This commit removes multirotormixer includes since it is not being used
2022-07-03 19:20:19 -04:00
Daniel Agar
c9b6047124
platforms/nuttx/CMakeLists.txt add STM32H743VI SVD/debug
2022-07-03 11:38:01 -04:00
Daniel Agar
7f76761657
uavcannode: schedule to run on log_message publications
...
- this is a precaution to minimize message latency and potential lost messages
2022-07-01 09:18:17 -04:00
Ryan Meagher
f16ea921c2
drivers/barometer/invensense: fix icp10111 and icp10100
...
* fix icp so it compiles
* add icp10111 and icp10100 DEVTPYE
2022-06-29 21:22:10 -04:00
Martina Rivizzigno
55563eba49
MPC_SPOOLUP_TIME -> COM_SPOOLUP_TIME
2022-06-24 19:44:43 +02:00
Matthias Grob
c8fb7a6990
fw/uuv control: remove duplicated comments, restyle initializers
2022-06-24 10:05:16 -05:00
Matthias Grob
78225f7b1f
examples/fixedwing_control: use initializers instead of memset
2022-06-24 10:05:16 -05:00
Matthias Grob
cfd4e64b02
uuv_pos_control: remove practically unused manual control subscription
2022-06-24 10:05:16 -05:00
Matthias Grob
3a239ff649
examples: remove empty fake_gyro
2022-06-24 10:05:16 -05:00
CUAVhonglang
cfa8b451c7
cuav-nora: changed brick to compatible with cuav noraplus
2022-06-24 10:03:43 -05:00
CR
ffb0097052
removed unused code - _constrainOneSide and _constrainAbs
2022-06-22 23:21:16 +02:00
Matthias Grob
479c85047f
WeatherVane: Allow weathervane on multirotors not just VTOLs
2022-06-22 14:19:28 +02:00
Matthias Grob
54145cedc7
FlightTask: Weather vane cleanup
...
Remove the entire external yaw handler, dynamic memory allocation,
pointer passing logic. Directly instanciate the weather vane instance
in the flight tasks that support it.
2022-06-22 14:19:28 +02:00
Daniel Agar
ab4e10dc26
paa3905: update scaling from datasheet
2022-06-21 16:59:14 -04:00
Daniel Agar
07e28fda7a
paw3902: update scaling from datasheet
2022-06-21 16:59:14 -04:00
Daniel Agar
dc8ed97809
ekf2: optical flow control limits constrain speed using HAGL max
2022-06-21 12:52:25 -04:00
Daniel Agar
15747239c1
mc_pos_control: always respect position estimate vxy_max if set
...
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2022-06-21 12:52:25 -04:00
Daniel Agar
5d2dfadb0e
boards: px4_fmu-v5_uavcanv0periph disable modules to save flash
2022-06-20 21:31:27 -04:00
Daniel Agar
e5f081d9ac
drivers/optical_flow/paa3905: cleanup/overhaul
...
- remove internal accumulation and publish every valid raw sample synchronized with sensor
- store timestamp_sample from motion interrupt
- improve timing requirements from datasheet (minimum delays after register read/write)
2022-06-20 20:56:56 -04:00
Daniel Agar
1fbe3c4ab3
drivers/optical_flow/paw3902: cleanup/overhaul
...
- remove internal accumulation and publish every valid raw sample synchronized with sensor
- store timestamp_sample from motion interrupt
- improve timing requirements from datasheet (minimum delays after register read/write)
2022-06-20 20:56:56 -04:00
Daniel Agar
d5839e2dd5
optical flow sensor pipeline overhaul
...
- all sources of optical flow publish sensor_optical_flow
- sensor_optical_flow is aggregated by the sensors module, aligned with integrated gyro, and published as vehicle_optical_flow
Co-authored-by: alexklimaj <alex@arkelectron.com >
2022-06-20 20:56:56 -04:00
Chuck
32544452f0
drivers: Sagetech MXS transponder support
...
Co-authored-by: Megan McCormick <megan.mccormick@sagetech.com >
Co-authored-by: Chuck Faber <chuck.faber@sagetech.com >
2022-06-20 18:16:07 -04:00
Claudio Micheli
9d486b1ccd
esc_battery: account for online ESCs when averaging voltage
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2022-06-20 18:14:13 -04:00
Daniel Agar
450fcca8b8
drivers/differential_pressure/Kconfig: remove ets and ms4515 from common sensors to save flash
2022-06-20 13:04:19 -04:00
Daniel Agar
8d2e8ef422
boards: px4_fmu-v5_test disable gyro_fft module to save flash
2022-06-20 13:04:19 -04:00
Bruce Meagher
714234ca90
posix: add mavlink shell for posix targets ( #19800 )
2022-06-20 11:51:47 +02:00
alexklimaj
4cc3e78558
Add mag bias estimator to CAN GPS units with IMUs
...
- run `sensors` hub to process sensor_mag and publish vehicle_magnetometer
- update uavcannode to use vehicle_magnetometer
2022-06-19 15:46:36 -04:00
Daniel Agar
73f45fee6e
boards: px4_fmu-v5_test disable fake_gps module to save flash
2022-06-19 14:25:06 -04:00
Daniel Agar
902b789292
boards: px4_fmu-v5_protected disable gyro_fft module to save flash
2022-06-19 14:25:01 -04:00
Daniel Agar
b81a5b3efa
ekf2: request mag yaw reset after calibration or sensor change
2022-06-17 21:04:05 -04:00
Daniel Agar
c7cec4252c
sensors: add CONFIG_SENSORS_VEHICLE_AIRSPEED for airspeed/differential pressure
...
- disable CONFIG_SENSORS_VEHICLE_AIRSPEED on boards only used for multicopter
2022-06-17 19:31:45 -04:00
Daniel Agar
10deb7019e
enable gyro_calibration for CAN nodes
...
- allow saving initial gyro cal if very close to 0
2022-06-17 19:31:45 -04:00
Daniel Agar
db4e09d529
Tools/kconfig: delete old migration helpers
...
- people are updating this without really understanding the purpose,
and it's generally no longer useful
2022-06-17 19:31:45 -04:00
Daniel Agar
c46fa01195
sensors: add kconfig mechanism to optionally exclude sensor types
2022-06-17 19:31:45 -04:00
Alex Klimaj
60450e63c0
uavcannode: Fix dronecan baro units
2022-06-17 14:22:15 -04:00
Beat Küng
b9475d6ebe
mavlink_shell: set target system and component id
...
These got added in https://github.com/mavlink/mavlink/pull/1725 and need
to be set for correct routing.
2022-06-17 09:29:43 -04:00
Daniel Agar
dea404a9a3
boards: disable modules to save flash
...
- px4_fmu-v5x_rtps disable common barometers to save flash
- px4_fmu-v6x_default disable telemetry drivers to save flash
2022-06-16 16:14:57 -04:00
Junwoo Hwang
8bae4e5c0e
FollowMe : Replace First order target position filter with Second order position and velocity filter
...
Follow me : tidied second order filter implementation
Added velocity filtered info to uORB follow target status message, and rebase to potaito/new-follow-me-task
FollowMe : Rebasing and missing definition fixes on target position second order filter
Follow Me : Remove Alpha filter delay compensation code, since second order filter is used for pose filtering now
Followme : Remove unused target pose estimation update function
Follow Target : Added Target orientation estimation logic
Follow Target : Replaced offset vector based setpoint to rate controlled orbital angle control
Follow Target : Bug fixes and first working version of rate based control logic, still buggy
Follow Target : Added target orientation, follow angle, orbit angle value into follow_target_status uORB message for debugging
Follow Target : Fix orbit angle step calculation typo bug
Follow Target : Few more fixes
Follow Target : Few fixes and follow angle value logging bug fix
Follow Target : Added lowpass alpha filter for yaw setpoint filtering
Follow Target : Remove unused filter delay compensation param
Follow Target : Add Yaw setpoint filter initialization logic and bufix for when unwrap had an input of NAN angle value
Follow Target : Add Yaw setpoint filtering enabler parameter
Follow Target : Change Target Velocity Deadzone to 1.0 m/s, to accomodate walking speed of 1.5 m/s
Follow Target : Add Orbit Tangential Velocity calculation for velocity setpoint and logging uORB topics
Follow target : Fix indentation in yaw setpoint filtering logic
Follow Target : Fix Follow Target Estimator timeout logic bug that was making the 2nd order pose filter reset to raw value every loop
Follow Target : Remove debug printf statement for target pose filter reset check
Follow Target : Add pose filter natural frequency parameter for filter testing
Follow Target : Make target following side param selectable and add target pose filter natural frequency param description
Follow Target : Add Terrain following altitude mode and make 2D altitude mode keep altitude relative to the home position, instead of raw local position origin
Follow Target : Log follow target estimator & status at full rate for filter characteristics test
Follow Target : Implementing RC control user input for Follow Target control
Follow Target : edit to conform to updated unwrap_pi function
Follow Target : Make follow angle, distance and height RC command input configurable
Follow Target : Make Follow Target not interruptable by moving joystick in Commander
Follow Target : reconfigure yaw, pitch and roll for better user experience in RC adjusting configurations, and add angular rate limit taking target distance into account
Follow Target : Change RC channels used for adjustments and re-order header file for clarity
Follow Target : Fix Parameters custom parent macro, since using DEFINE_PARAMETERS alone misses the parameter updates of the parent class, FlightTask
Follow Target : Fix Orbit Tangential speed actually being angular rate bug, which was causing a phenomenon of drnoe getting 'dragged' towards the target velocity direction
Follow Target : Final tidying and refactoring for master merge - step 1
Add more comments on header file
Follow Target : tidy, remove unnecessary debug uORB elements from follow_target_status message
Follow Target : Turn off Yaw filtering by default
Follow Target : Tidy maximum orbital velocity calculation
Follow Target : add yaw setpoint filter time constant parameter for testing and fix NAV_FT_HT title
Follow Target : Add RC adjustment window logic to prevent drone not catching up the change of follow target parameters
Follow Target : fixes
Follow Target: PR tidy few edits remove, and update comments
Follow Target : apply comments and reviews
Follow Target : Edit according to review comments part 2
Follow Target : Split RC adjustment code and other refactors
- Splitted the RC adjustment into follow angle, height and distance
- Added Parameter change detection to reset the follow properties
- Added comments and removed yaw setpoint filter enabler logic
Follow Target : Modify orbit angle error bufferzone bug that was causing excessive velocity setpoints when setpoint catched up with raw orbit setpoint
Follow Target : Remove buffer zone velocity ramp down logic and add acceleration and rate limited Trajectory generation library for orbit angle and velocity setpoint
Follow Target : Remove internally tracked data from local scope function's parameters to simplify code
Follow Target : Fix to track unwrapped orbit angle, with no wrapping
Follow Target : Apply user adjustment deadzone to reduce sensitivity
Follow Target : Apply suggestions from PR review round 2 by @potaito
Revert submodule update changes, fall back to potaito/new-followme-task
Follow Target : [Debug] Expose max vel and acceleration settings as parameters, instead of using Multicopter Position Controller
's settings
Follow Target : Use matrix::isEqualF() function to compare floats
Follow Target : Add Acceleration feedback enabler parameter and Velocity ramp in initial commit for overshoot phenomenon improvement
Follow Target : Implement Velocity feed forward limit and debug logging values
Follow Target : Apply Velocity Ramp-in for Acceleration as well & Apply it to total velocity setpoint and not just orbit tangential velocity component
Follow Target : Don't set Acceleration setpoint if not commanded
Follow Target : Use Jerk limited orbit angle control. Add orbit angle tracking related uORB values"
Follow Target : Add Orbit Angle Setpoint Rate Tracking filter, to take into consideration for calculating velocity setpoint for trajectory generator for orbit angle
Revert "Follow Target : Add Orbit Angle Setpoint Rate Tracking filter, to take into consideration for calculating velocity setpoint for trajectory generator for orbit angle"
This reverts commit a3f48ac7652adb70baf3a2fed3ea34d77cbd6a70.
Follow Target : Take Unfiltered target velocity into acount for target course calculation to fix overshoot orbit angle 180 deg flip problem
Follow Target : Remove Yaw Filter since it doesn't make a big difference in yaw jitterness
Follow Target : Remove velocity ramp in control & remove debug values from follow_target_status.msg
Follow Target : Tidy Follow Target Status message logging code
Follow Target : Remove jerk and acceleration settings from Follow Target orbit trajectory generation
Follow Target : Change PublicationMulti into Publication, since topics published are single instances
Follow Target : Edit comments to reflect changes in the final revision of Follow Target
Follow Target : Apply incorrectly merged conflicts during rebase & update Sticks function usage for getThrottled()
Follow Target : Apply final review comments before merge into Alessandro's PR
Apply further changes from the PR review, like units
Use RC Sticks' Expo() function for user adjustments to decrease sensitivity around the center (0 value)
Update Function styles to lowerCamelCase
And make functions const & return the params, rather than modifying them
internally via pointer / reference
Specify kFollowPerspective enum as uint8_t, so that it can't be set to negative value when converted from the parameter 'FLW_TGT_FP'
Fix bug in updateParams() to reset internally tracked params if they actually changed.
Remove unnecessary comments
Fix format of the Follow Target code
Fix Follow Perspective Param metadata
follow-me: use new trajectory_setpoint msg
Convert FollowPerspective enum into a Follow Angle float value
1. Increases flexibility in user's side, to set any arbitrary follow
angle [deg]
2. Removes the need to have a dedicated Enum, which can be a hassle to
make it match MAVSDK's side
3. A step in the direction of adding a proper Follow Mode (Perspective)
mode support, where we can support kite mode (drone behaves as if it is
hovering & getting dragged by the target with a leash) or a constant
orbit angle mode (Drone always on the East / North / etc. side, for
cinematic shots)
Continue fixing Follow Target MAVSDK code to match MAVSDK changes
- Support Follow Angle configuration instead of Follow Direction
- Change follow position tolerance logic to use the follow angle
*Still work in progress!
Update Follow Me MAVSDK Test Code to match MAVSDK v2 spec
- Add RC Adjustment Test case
- Change follow direction logic to follow angle based logic completely
- Cleanup on variable names and comment on code
follow-me: disable SITL test
Need to update MAVSDK with the following PR:
https://github.com/mavlink/MAVSDK/pull/1770
SITL is failing now because the follow-me
perspectives are no longer defined the
same way in MAVSDK and in the flight task.
update copyright year
follow-me: mark uORB topics optional
Apply review comments
more copyright years
follow-me sitl test: simpler "state machine"
flight_mode_manager: exclude AutoFollowTarget and Orbit on flash contrained boards
Remove unnecessary follow_target_status message properties
- As it eats up FLASH and consumes uLog bandwidth
2022-06-16 16:14:57 -04:00
Alessandro Simovic
de1fa11e96
New follow-me flight task
...
rename follow_me_status to follow_target_status
enable follow_target_estimator on skynode
implement the responsiveness parameter:
The responsiveness parameter should behave similarly to the previous
follow-me implementation in navigator. The difference here is that
there are now two separate gains for position and velocity fusion.
The previous implemenation in navigator had no velocity fusion.
Allow follow-me to be flown without RC
SITL tests for follow-me flight task
This includes:
- Testing the setting for the follow-me angle
- Testing that streaming position only or position
and velocity measurements both work
- Testing that RC override works
Most of these tests are done with a simulated model
of a point object that moves on a straight line. So
nothing too spectacular. But it makes the test checks
much easier.
Since the estimator for the target actually checks new
measurements and compares them to old ones, I also added
random gausian noise to the measurements with a fixed seed
for deterministic randomness. So repeated runs produce
exactly the same results over and over.
Half of the angles are still missing in MAVSDK. Need to create
an upstream PR to add center left/right and rear left/right options.
These and the corresponding SITL tests need to be implemented
later.
sitl: Increase position tolerance during follow-me
Astro seems to barely exceed the current tolerance (4.3 !< 4.0)
causing CI to fail. The point of the CI test is not to check
the accuracy of the flight behaviour, but only the fact that the
drone is doing the expected thing. So the exact value of this
tolerance is not really important.
follow-me: gimbal control in follow-me
follow-me: create sub-routines in flight task class
follow-me: use ground-dist for emergency ascent
dist_bottom is only defined when a ground facing distance sensor exist.
It's therefore better to use dist_ground instead, which has the distance
to the home altitude if no distance sensor is available.
As a consequence it will only be possible to use follow-me in a valley
when the drone has a distance sensor.
follow-me: point gimbal to the ground in 2D mode
follow-me: another fuzzy msg handling for the estimator
follow-me: bugfix in acceleration saturation limit
follow-me: parameter for filter delay compensation
mantis: dont use flow for terrain estimation
follow-me: default responsiveness 0.5 -> 0.1
0.5 is way too jerky in real and simulated tests.
flight_task: clarify comments for bottom distance
follow-me: minor comment improvement
follow-me: [debug] log emergency_ascent
follow-me: [debug] log gimbal pitch
follow-me: [debug] status values for follow-me estimator
follow-me: setting for gimbal tracking mode
follow-me: release gimbal control at destruction
mavsdk: cosmetics 💄
2022-06-16 16:14:57 -04:00
Chris Seto
285556e463
Re-set param limits for fw tuning values to align with fw tuning guide
2022-06-16 14:22:51 -04:00
Daniel Agar
c1c2858341
Update submodule GPSDrivers to latest Thu Jun 16 12:38:52 UTC 2022
...
- GPSDrivers in PX4/Firmware (1069570a2a90fdc7f0e081b6c2c4b418446d65d7): https://github.com/PX4/PX4-GPSDrivers/commit/016c37cd1f18c716427e2465d8daa6aa1054b0f1
- GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/8c09c5426d23ea4db4e462c1f4e3a1de33d253cc
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/016c37cd1f18c716427e2465d8daa6aa1054b0f1...8c09c5426d23ea4db4e462c1f4e3a1de33d253cc
8c09c54 2022-06-15 Daniel Agar - sbf trivial whitespace fix
Co-authored-by: PX4 BuildBot <bot@px4.io >
2022-06-16 12:21:06 -04:00
Matthias Grob
92b6862485
Commander: replace arm requirements
2022-06-16 10:25:32 -04:00
Matthias Grob
3b3d8b9942
Commander: execute pre arm check with preflight checks
2022-06-16 10:25:32 -04:00
Matthias Grob
aa575d6af0
Commander: move first preflight check run to constructor
2022-06-16 10:25:32 -04:00
Matthias Grob
0f41a5e385
ArmStateMachine: simplify how preflight checks are called
2022-06-16 10:25:32 -04:00
Igor Mišić
5dc3fecac0
boards/bitcraze: add PWM_SERVO_STOP define
2022-06-16 08:09:00 +02:00
Igor Mišić
7c1da8d608
driver/px4io: set default failsafe values
2022-06-16 08:09:00 +02:00
Igor Mišić
04c2d0fe97
drivers/pwm_out: set default failsafe values
2022-06-16 08:09:00 +02:00
Daniel Agar
1980b5c5e8
ekf2: setEkfGlobalOrigin() reset baro and hgt sensor offsets if necessary
...
- handle uninitalized _gps_alt_ref
- add basic lat/lon/alt sanity checks
2022-06-16 00:59:54 -04:00
achim
fc3d88bb67
boards/diatone/mamba-f405-mk2: symmetric buffers for wifi telemetry ( #19808 )
...
Symmetric buffers allow a much more reliable QGC Wifi telemetry connection especially when (virtual) joysticks are used. (this board does not provide RX DMA on UART 4 as its timer does DSHOT).
2022-06-15 14:30:28 -04:00
Matthias Grob
c59809b14a
Commander: remove system_sensors_initialized
...
and system_hotplug_timeout. They're not in use for over 2 years.
Instead control LED with preflight checks.
2022-06-15 14:02:00 -04:00
Igor Mišić
0922f003f5
uavcan: don't print an error if there is no UAVCAN device on the CAN bus
2022-06-15 03:29:13 -04:00
bresch
680191cc75
WindEstimator: make wind process noise tuning same as EKF2
2022-06-14 18:44:30 +10:00
bresch
b6f1a7aed9
migrate wind process noise parameters
2022-06-14 18:39:10 +10:00
bresch
0d256b8ff6
ekf2 wind: use noise spectral density for process noise tuning
...
The noise spectral density, NSD, (square root of power spectral density) is a
continuous-time parameter that makes the tuning independent from the EKF
prediction rate.
NSD corresponds to the rate at which the state uncertainty increases
when no measurements are fused into the filter.
Given that the current prediction rate of EKF2 is 100Hz, the
same tuning is obtained by dividing the std_dev legacy parameter by 10:
nsd = sqrt(std_dev^2 / 100Hz)
2022-06-14 18:39:10 +10:00
bresch
e105869986
wind_estimator: use noise spectral density for process noise tuning
...
The noise spectral density, NSD, (square root of power spectral density) is a
continuous-time parameter that makes the tuning independent from the EKF
prediction rate.
NSD corresponds to the rate at which the state uncertainty increases
when no measurements are fused into the filter.
Given that the current prediction rate of the wind estimator is 1Hz, the
same tuning is obtained with the same values as before.
2022-06-14 18:39:10 +10:00
Junwoo Hwang
377338109c
uLog message definition comment improvements
...
- Added more comments
- Converted to DOxygen comment format for the comments on struct members
2022-06-13 10:31:07 +02:00
Junwoo Hwang
1ddd1573be
Improve uLog message struct definitions
...
1. Rename *_header_s structs to *_s, since the _header postfix is not
helpful
2. Rename the "key" string variables in the message structs to
"key_value_str" as the string actually contains not just the key but the
key and value pair information
3. Add comments on other uLog messages to clarify use (need more
improvement / can be even more simplified)
2022-06-13 10:31:07 +02:00
achim
e6f90bcb81
disable uart´s dma
...
Still no way to get GPS and auto flash of the IO without disabling their uart´s dma
2022-06-11 13:39:01 -04:00
fury1895
283aad01fd
Airspeed params: change default for ASPD_SCALE_APPLY to 2
2022-06-10 14:02:41 +02:00
David Sidrane
f15eb91814
px4_fmu-v6x:HB Mini add Ver 3, Ver 4 init
2022-06-10 04:20:26 -07:00
PX4 BuildBot
e33199c182
Update submodule mavlink to latest Fri Jun 10 00:38:25 UTC 2022
...
- mavlink in PX4/Firmware (59630bcc7e7e983db2d9138c8254144c77855adc): https://github.com/mavlink/mavlink/commit/0909631552187b998dd6359f998ee78ee8765728
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/05864e218e204f1ebeee5555988150fcddbd873e
- Changes: https://github.com/mavlink/mavlink/compare/0909631552187b998dd6359f998ee78ee8765728...05864e218e204f1ebeee5555988150fcddbd873e
05864e21 2022-06-09 Peter Barker - common.xml: add ignition_voltage to EFI_STATUS (#1854 )
adc9c3f5 2022-06-01 olliw42 - update storm32.xml (nfc) (#1851 )
49dbdb66 2022-06-01 Randy Mackay - ardupilotmega: add nav_attitude_time command (#1852 )
2022-06-10 01:01:20 -04:00
Thomas Debrunner
46c9d1e288
SIH in SITL with lockstep ( #19028 )
...
* sih: Move sih out of work queue
This reverts commit bb7dd0cf00 .
* sih-sim: Enable sih in sitl, together with lockstep
* sih-sim: new files for sih: quadx and airplane
* sih: Added tailsitter for sih-sitl simulation
* sitl_target: Added seperate target loop for sih
* jmavsim_run: Allow jmavsim to run in UDP mode
* lockstep: Post semaphore on last lockstep component removed
* sih-sim: Added display for effectively achieved speed
* sih: increase stack size
* sih-sim: Improved sleep time computation, fixes bug of running too fast
* sitl_target: place omnicopter in alphabethic order
Co-authored-by: romain-chiap <romain.chiap@gmail.com >
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2022-06-09 09:52:34 +02:00
Thomas Stastny
a7e11464c1
fw pos ctrl: update method documentation
2022-06-09 09:23:02 +02:00
Thomas Stastny
594a6d6e80
fw pos ctrl: some incremental clean up of the class
...
- documentation of units, params, returns, and descriptions for variables and methods
- rename ambiguous or erroneous state variables
- remove unused or unecessary input arguments to functions
- remove ugly header white space
2022-06-09 09:23:02 +02:00
Silvan Fuhrer
9863c24b40
navigator_main: DO_REPOSITION: only trigger reposition setpoint update if vehicle is armed
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-06-08 21:47:06 +02:00
Thomas Stastny
cbf0fe8803
fw pos ctrl: centralize parameter and state resets
2022-06-08 08:44:30 -05:00
Thomas Stastny
ccfbbb553a
fw pos ctrl: only manipulate heading hold yaw in manual position control mode
2022-06-08 08:44:30 -05:00
Thomas Stastny
67d8dd359d
fw pos ctrl: calculate control interval once
...
- Use the same time interval for all position control logic (including TECS)
- Sync naming in control methods
- Remove some unused input arguments
2022-06-08 08:44:30 -05:00
Matthias Grob
f5e7b1e6a8
Commander: switch battery bitflied to dedicated datatype
2022-06-08 11:32:26 +02:00
Matthias Grob
9b2166de72
manual_control_params: configure arm gesture doesn't require reboot
...
I added wrong documentation here.
2022-06-08 05:12:05 -04:00
Matthias Grob
bd50a52c9c
Commander: fix startup sound interrupted by safety button initialization
...
The safetyButtonHandler() reports that the safety statatus
changed on the first loop iteration when safety is disabled which makes
sense to inform the system that safety is off but the tune for the user
should not be played because it interrupts the startup tune.
2022-06-08 05:12:05 -04:00
Matthias Grob
71103e6114
Safety: keep initialized constant flags when safety disabled
2022-06-08 05:12:05 -04:00
Matthias Grob
44c4b8fa85
Style refactoring related to safety button
2022-06-08 05:12:05 -04:00
Daniel Agar
ce70b6f4ac
sensors/vehicle_angular_velocity: add IMU_GYRO_RATEMAX constraints
2022-06-07 15:45:47 -04:00
Daniel Agar
01f0992f49
sensors/vehicle_imu: don't bother checking IMU_GYRO_RATEMAX
2022-06-07 15:45:47 -04:00
Matthias Grob
5df266cedc
MulticopterRateControl: use constructor to copy thrust setpoint array
2022-06-07 11:45:59 -04:00
bresch
4f1091792f
ekf2 preflight: only check innovation of active height sources
2022-06-07 11:44:56 -04:00
Daniel Agar
cb2738e187
Update submodule GPSDrivers to latest Sat Jun 4 12:38:49 UTC 2022 ( #19766 )
...
- GPSDrivers in PX4/Firmware (6e77a084cd43830c8b13018b7fd5470da9bc4ff5): https://github.com/PX4/PX4-GPSDrivers/commit/181fae1a4b5e33576d786755782adb2f195ecc48
- GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/016c37cd1f18c716427e2465d8daa6aa1054b0f1
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/181fae1a4b5e33576d786755782adb2f195ecc48...016c37cd1f18c716427e2465d8daa6aa1054b0f1
016c37c 2022-06-01 Julian Oes - sbf: fix overrun on invalid length
2022-06-04 15:58:56 -04:00
PX4BuildBot
a247b42907
[AUTO COMMIT] update change indication
2022-06-04 15:57:11 -04:00
PX4 BuildBot
e86a74321e
Update world_magnetic_model to latest Sat Jun 4 11:14:10 UTC 2022
2022-06-04 15:57:11 -04:00
Beat Küng
da55256f2f
test_multicopter_failure_injection: remove 'Reject before arming' test
...
Not sure why injection should fail before arming.
2022-06-04 07:40:29 +02:00
Beat Küng
d1142008f6
FailureDetector: check if ESCs have current
...
And increase the timeout to 300ms, as some ESCs only update with 10Hz.
2022-06-04 07:40:29 +02:00
Beat Küng
8bf18e31be
SITL: enable failure command (SYS_FAILURE_EN=1)
2022-06-04 07:40:29 +02:00
Beat Küng
56faaae959
failure: fix invalid memory access
...
failure_units[unit].key was incorrect
2022-06-04 07:40:29 +02:00
Beat Küng
0ab61aee2e
control_allocator: show motor axis for MC (as advanced)
2022-06-04 07:40:29 +02:00
Beat Küng
99a329f937
mc_rate_control: pass through 3D thrust
2022-06-04 07:40:29 +02:00
Beat Küng
82eb71d70b
failure_detector: allow disabling attitude failure (as already documented)
2022-06-04 07:40:29 +02:00
Jaeyoung-Lim
bf68d3433e
Add omnicopter SITL model
...
F
2022-06-04 07:40:29 +02:00
bresch
e2955bdd61
terrain est: clear innovation/var/test ration when aiding stops
2022-06-03 17:31:14 -04:00
Matthias Grob
fad3d46907
Use signNoZero() where possible
2022-06-03 16:08:16 +02:00
abarcis
4fc2640ee3
vehicle_command.msg: unneeded comment closings removed ( #19759 )
...
They cause problems with building px4_msgs in ROS2 Humble Hawksbill and removing them fixes the issue.
Co-authored-by: Agata Barcis <agata.barcis@tii.ae >
2022-06-03 07:25:05 +02:00
BA-ED
b9be783b69
dshot: corrected DShot motor spin direction command
...
Some ESCs don't store DShot_cmd_spin_direction_reversed persistently
2022-06-02 13:36:40 +02:00
Thomas Watson
d390e6d46d
boards/mro/pixracerpro: fix voltage/current monitoring
...
This corrects the board definition to use the proper polarity
for the brick power valid signal, thus allowing the board to
detect the battery and monitor it properly.
2022-06-02 08:11:15 +02:00
Mark Sauder
c19e74784a
attitude_estimator_q: Run() method refactoring ( #19526 )
...
* Refactor attitude_estimator_q_main.cpp Run() method by breaking apart into separate method calls:
* update_vehicle_local_position()
* update_motion_capture_odometry()
* update_visual_odometry()
* update_magnetometer()
* update_vehicle_attitude()
* update_sensors()
* Rename init_attitude_q()
* Standardize whitespace formatting
* Add remaining c++ style initializers.
2022-06-01 13:41:42 -04:00
Daniel Agar
21b1c933dc
ekf2: EKFGSF_yaw delete unnecessary internal state
2022-06-01 13:16:06 -04:00
Daniel Agar
3889b79342
ekf2: yaw estimator add yaw_composite_valid boolean
2022-06-01 13:16:06 -04:00
Igor Mišić
a218f4bfaf
drivers/px4io: support legacy px4io firmware to enter BL
2022-06-01 13:15:13 -04:00
Igor Mišić
25488da944
px4io: replace safety_off state with safety button event ( #19558 )
...
internal PX4IO safety_off state is removed and replaced with a normal safety button event. From this 'commit' commander is taking care of the PX4IO safety.
2022-06-01 13:15:13 -04:00
Matthias Grob
a9cdfff7a3
FlightModeManager: only execute flight task commands when multicopter
2022-06-01 15:14:07 +02:00
Matthias Grob
96b0304049
PreFlightCheck: disallow arming in land mode
...
after the automatic switch to Hold mode was introduced.
2022-06-01 12:08:32 +12:00
Matthias Grob
83c15fca9f
Commander: switch back to Hold mode after autonomous landing
2022-06-01 12:08:32 +12:00
Matthias Grob
33df8b24f2
Commander: differentiate clearly between to arm and to disarm transition
2022-06-01 12:08:32 +12:00
Matthias Grob
400e1f8214
Commander: only initialize to tablet mode and don't switch back on RC loss
2022-06-01 12:08:32 +12:00
Daniel Agar
002579b3e0
Jenkins: reboot after ostest completes
...
- temporary workaround to ostest apparently leaving the system in a bad state
2022-05-31 01:41:07 -07:00
Daniel Agar
5b6e5a0968
boards: NuttX update all boards to preallocated sem holder list
...
- CONFIG_SEM_PREALLOCHOLDERS=32
- CONFIG_SEM_NNESTPRIO=16 (default)
2022-05-31 01:41:07 -07:00
Beat Küng
0074894637
control_allocator: disable backup schedule with lockstep
...
The backup schedule triggers updates too early and leads to simulator errors:
ERROR [simulator] poll timeout 0, 22
2022-05-31 07:17:30 +02:00
Daniel Agar
132a07f53c
boards: test boards add NuttX ostest and run on Jenkins test rack
2022-05-29 13:41:16 -04:00
Daniel Agar
0420d697e5
update NuttX and apps to latest with sem holder fixes and updated ostest
2022-05-29 13:41:16 -04:00
Daniel Agar
cb8b5ae872
mavlink: MavlinkStatustextHandlerTest ignore Wcast-align
2022-05-29 09:44:48 -04:00
Daniel Agar
d97bb168cf
lib/motion_planning: VelocitySmoothingTest delete set but not used variable
2022-05-29 09:44:48 -04:00
Daniel Agar
095e0f0604
ekf2: sensor_simulator fix enum shadow
2022-05-29 00:21:08 -04:00
PX4 BuildBot
63155b5b01
Update submodule mavlink to latest Sat May 28 00:38:55 UTC 2022
...
- mavlink in PX4/Firmware (56106be4805cb2f70d22ad31b87fbd9774f0d0f3): https://github.com/mavlink/mavlink/commit/99e82cad70494903a23a67de08ff9cbb5918d8f3
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/0909631552187b998dd6359f998ee78ee8765728
- Changes: https://github.com/mavlink/mavlink/compare/99e82cad70494903a23a67de08ff9cbb5918d8f3...0909631552187b998dd6359f998ee78ee8765728
09096315 2022-05-26 Hamish Willee - Clarify and cross reference home position everywhere (#1836 )
38c1a99f 2022-05-25 Julian Oes - WIND_COV: clarify description and unknown value (#1845 )
2022-05-28 00:06:05 -04:00
David Lechner
995265c95e
vscode: remove terminal settings
...
These terminal settings are a matter of personal preference and should
not be part of the project configuration.
2022-05-27 21:01:33 -04:00
Daniel Agar
c27b9f3b1e
boards: reduce SPI DMA buffers on older STM32F4 boards
...
- on common IMUs like the mpu6000, mpu9250, icm20602, etc each FIFO
sample is only 12 bytes so this is still more than large enough for the
worst case transfer
2022-05-27 16:27:41 -04:00
Daniel Agar
4561cf2ce6
boards: pixhawk 2 cube skip starting low quality l3gd20 gyro to save memory and cpu
...
- free memory is getting tight on these older boards (depending on
configuratoin) and the pixhawk 2 cube still has 2 other superior IMUs, so this is just
dropping dead weight
2022-05-27 16:27:41 -04:00
David Sidrane
74a2930315
px4_fmu-v6X:Added Holybro mini base board
2022-05-27 15:02:28 -04:00
David Sidrane
dd6d7e9979
uc_stm32h7_can:Correct initalization of the mumber of interfaces
...
H7 Only supports 2 not 3 CAN interfaces.
CanInitHelper passes in in the run time configuration of
the number of interfaces. The code was ignoring these!
2022-05-27 15:02:28 -04:00
David Sidrane
9353c15e8a
px4_fmu-v5X:Added Holybro mini base board
2022-05-27 15:02:28 -04:00
David Sidrane
479b52fd02
Update all H7 Bootloders
2022-05-27 14:25:25 -04:00
David Sidrane
645f4c3428
flash_cache:Flush complete cache line
2022-05-27 14:25:25 -04:00
David Sidrane
fd81951391
boards: STM32H7 pad to 256 bit - 32 bytes ( #19724 )
2022-05-27 14:04:51 -04:00
Daniel Agar
1ba3610cfc
boards: delete omnibus_f4sd_ekf2 due to flash overflow
2022-05-27 09:46:07 -04:00
David Sidrane
55cfd8597d
px4_fmu-v6c:Fix mag rotation
2022-05-26 11:26:29 -07:00
Igor Misic
554283655c
Revert "px4io: replace safety_off state with safety button event ( #19558 )"
...
This reverts commit 12a81979a8 .
2022-05-26 10:06:32 -04:00
Igor Misic
6aefcbb6cf
Revert "px4iofirmware: fix for bug introduced with #19558 "
...
This reverts commit 79a34b5aed .
2022-05-26 10:06:32 -04:00
Matthias Grob
c03f5b9481
Commander: fix overlooked rebase naming error
2022-05-25 21:10:19 +02:00
alessandro
29c4119e24
Match commander uORB var names to message names ( #19707 )
...
* match vehicle_status
* match home_position
* match vehicle_command_ack
* match actuator_armed
* match vehicle_control_mode
* match commander_state
2022-05-25 17:08:48 +02:00
Daniel Agar
98354ba10a
Update submodule GPSDrivers to latest Wed May 25 12:38:58 UTC 2022
...
- devices in PX4/Firmware (7cc84e0f9e44697475b0f355df9a29de6ea6b9ff): https://github.com/PX4/PX4-GPSDrivers/commit/58968922b718176be8756f11113d16b2cfbc4022
- devices current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/181fae1a4b5e33576d786755782adb2f195ecc48
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/58968922b718176be8756f11113d16b2cfbc4022...181fae1a4b5e33576d786755782adb2f195ecc48
181fae1 2022-05-23 numan - README: add information for definition.h
2022-05-25 09:56:40 -04:00
Daniel Agar
58ea6235fe
ekf2: estimator aid source status (range height)
2022-05-25 09:25:12 -04:00
Daniel Agar
1e25aee6fa
ekf2: estimator aid source status (baro height)
2022-05-25 09:25:12 -04:00
Silvan Fuhrer
4dbe6f0a1c
simulator_mavlink: fix MAV_TYPE_VTOL_TAILSITTER case
...
This type (23) doesn't specify a motor number, so it can't be properly handled.
There are duo (19) and quad (20) tailsitter types that still work in simulation.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-24 17:58:44 -04:00
Daniel Agar
376201e64d
boards: px4_fmu-v5/v5x init all I2C pins
2022-05-24 11:02:03 -04:00
bresch
d04a91a3ae
ekf2_post-processing: use estimator_status_flags instead of bitmasks
2022-05-24 16:15:42 +02:00
Beat Küng
016b8aeb35
MulticopterRateControl: fix thrust sign for acro
...
Regression from fbc109436f
2022-05-24 15:03:17 +02:00
Matthias Grob
44be415e0e
mission_block: make "Delay until" item work while landed
...
To enable landing, waiting and taking off again e.g. for delivery.
2022-05-24 13:42:03 +02:00
Matthias Grob
0be474430c
Commander: don't disarm on landing amid a mission
2022-05-24 13:42:03 +02:00
Matthias Grob
4f34207c4e
battery_params: increase default empty cellvoltage to 3.6v
...
Based on feedback that very often the battery is used down too low.
I observed this happens consistently when the cell voltage is properly
load compensated. The default load compensation before #19429 was very
inaccurate and resulted in unpredictable estimate.
After that if there is a usable current measurement and the battery is
within expected tolerances of the default internal resistance the
compensation is pretty good and 3.5V is too low for an empty compensated
cell voltage. That was seen in various logs where the compensated
cell voltage was already dropping fast after 3.6V.
In case the voltage is not load compensated the vehicle estimates the
state of charge a bit too low which is safer than to high
especially for a default configuration.
2022-05-24 11:26:58 +02:00
Mark Sauder
a1fb9fb7c6
rcS: Keep Mag Cal with AUTOCONFIG param reset in rcS, deprecate rcS AUTOCNF param ( #19693 )
...
* Deprecate the rcS AUTOCNF script param and associated logic.
* Update posix rcS to match previous commit.
2022-05-23 20:35:22 -04:00
Daniel Agar
639222dd65
ekf2: estimator aid source status (GPS pos, GPS vel)
2022-05-23 16:21:49 -04:00
Daniel Agar
1ae467e9cd
ekf2: estimator aid source status (starting with fake position)
2022-05-23 16:21:49 -04:00
Igor Misic
79a34b5aed
px4iofirmware: fix for bug introduced with #19558
2022-05-23 14:59:11 -04:00
Daniel Agar
d25a784a3a
icm42688p: only check configured registers periodically (as intended)
2022-05-23 14:58:23 -04:00
bresch
c57c575cfe
ekf2: use explicit flags instead of bitmask position
...
This prevents bitmask mismatch when a new flag is inserted
2022-05-23 14:43:02 -04:00
Matthias Grob
62edcc7a57
battery: only compensate using sane current
2022-05-23 16:40:32 +02:00
Matthias Grob
2cbdcc9671
battery: default to reasonable internal resistance
...
instead of disabling the load compensation using current.
2022-05-23 16:40:32 +02:00
Matthias Grob
58b1139a21
battery: allow setting precise internal resistance with parameter
2022-05-23 16:40:32 +02:00
Matthias Grob
2c5a7ea118
battery: rather undercompensate for load
...
than over compensate which makes the estimate to high and breaks batteries
beause they get flown for too long.
2022-05-23 16:40:32 +02:00
Serhat Aksun
bc220ddb82
sensors/vehicle_magnetometer: fix multi_mode check
...
Signed-off-by: Serhat Aksun <serhat.aksun@maxwell-innovations.com >
2022-05-23 10:09:41 -04:00
Igor Misic
12a81979a8
px4io: replace safety_off state with safety button event ( #19558 )
...
internal PX4IO safety_off state is removed and replaced with a normal safety button event. From this 'commit' commander is taking care of the PX4IO safety.
2022-05-23 06:54:37 +02:00
Igor Misic
08dcc72e1f
commander/safety: replace safety.msg with Safety class ( #19558 )
2022-05-23 06:54:37 +02:00
Daniel Agar
b800600a6c
boards: px4_fmu-v2_fixeding disable fw_autotune_attitude_control to save flash
2022-05-22 12:32:24 -04:00
Daniel Agar
61d5a23445
Jenkinsfile: hardware test rack skip runing HITL airframes
2022-05-22 12:31:08 -04:00
Julian Oes
47bcee70c4
ROMFS: disable UAVCAN in HITL
...
Without this, uavcan creates MixingOutput classes which then create
empty actuator_outputs publications. This then prevents the motor
output in HITL to be forwarded to the simulator via mavlink.
2022-05-21 17:53:20 -04:00
bresch
00e88a02c0
baro bias: improve innovation sequence monitoring
...
The baro observation noise parameter is often over-estimated in order as
a measure to mitigate temporary offsets in the readings due to wind
gusts or poor pressure compensation tuning. The side effect is that the
innovation sequence monitoring based on normalized innovation struggles
to detect an offset in the state because the innovation isn't
statistically significant.
To counter this issue, a simpler check is added to trigger the process
noise boost when the innovation has the same sign for a long period of
time.
2022-05-21 22:37:04 +02:00
PX4 BuildBot
c3f10c2cb1
Update submodule sitl_gazebo to latest Sat May 21 12:38:49 UTC 2022
...
- sitl_gazebo in PX4/Firmware (422be90140 ): https://github.com/PX4/PX4-SITL_gazebo/commit/48440d7b5c78a21182415266334981f1163f4b2c
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/5eb5df80450a412076bfc24e7dd343839020f056
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/48440d7b5c78a21182415266334981f1163f4b2c...5eb5df80450a412076bfc24e7dd343839020f056
5eb5df8 2022-04-28 stmoon - ROS2_PLUGIN set OFF by default
c8f4d5b 2022-04-28 stmoon - update the motor failure plugin for ros2
2022-05-21 14:58:42 -04:00
Daniel Agar
db4545e442
Update world_magnetic_model to latest Sat May 21 11:14:10 UTC 2022
2022-05-21 14:57:55 -04:00
mcsauder
6b0788ff46
Standardize variable naming and formatting across vehicle attitude controller files.
2022-05-21 12:22:18 -04:00
Junwoo Hwang
422be90140
Update Issue and Pull Request Templates
...
1. Change the paragraph headings to proper Markdown headings (easier to
link / structure the Markdown)
2. Move PULL_REQUEST_TEMPLATE into .github folder
3. Change description in Issue template and remove outdated DevGuide
Repository information
4. Add a bug emoji to bug report isue template
5. Support automatically adding labels 'bug-report' and
'feature-request' to easily sort / filter appropriate issues in Github
2022-05-20 21:01:14 -04:00
Julian Oes
d08e5eae2d
sitl_gazebo: update submodule
...
This fixes the issue where HITL doesn't connect over USB.
2022-05-20 21:00:33 -04:00
Daniel Agar
c40631c136
commander: handle RC loss timeout if manual_control_setpoint stops publishing ( #19680 )
...
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2022-05-20 19:37:30 -04:00
David Sidrane
2bdeb36ea3
px4_fmu-v6x:Add Rev 4 Sensors
2022-05-20 15:52:32 -04:00
David Sidrane
9d0e57230a
boards: new px4_fmu-v6c board support ( #19544 )
2022-05-20 15:49:06 -04:00
Julian Oes
33a77c225c
commander: lockdown is not termination
...
We use lockdown to prevent outputs like motors and servos from being
active in HITL simulation. This means that we can't treat the lockdown
flag as a flight_terminated, otherwise we can't arm in HITL at all.
2022-05-20 09:43:32 -04:00
Nicolas MARTIN
a0cb7f6258
HITL: undefined time_remaining_s should be NAN
2022-05-20 09:38:43 -04:00
Nico van Duijn
04071b9456
Commander: ignore MAV_CMD_REQUEST_MSG
...
This commit adds the MAV_CMD_REQUEST_MESSAGE to the list of vehicle
commands which are ignored without generating a warning sound.
2022-05-20 15:36:42 +02:00
Matthias Grob
38e027ee45
ArmStateMachine: remove dependency on armed.armed
...
To have the internal state as single source of truth
for the arming state within Commander.
2022-05-20 13:51:51 +02:00
Matthias Grob
37c485ce89
ArmStateMachine: move arm state into the class
2022-05-20 13:51:51 +02:00
Matthias Grob
47532ca07b
ArmStateMachine: replace state name array with method
2022-05-20 13:51:51 +02:00
alessandro
c5bbf4553b
ubuntu.sh: fix gazebo and openjdk for 22.04
2022-05-20 06:38:09 +02:00
Matthias Grob
887fe7dba2
commander_params: shorten low battery action delay
...
I got multiple times the feedback now that a consistent delay
is helpful and makes sense but the default delay
is too long
for low battery action where you're trying to come back in time
and possibly the emergency reaction kicks in while the critical action
is executing which leads to a longer accumulated delay.
2022-05-19 21:54:09 +02:00
Daniel Agar
fd4b62032e
commander: publish actuator_armed first on any change
2022-05-19 12:47:50 -04:00
PX4 BuildBot
9518b65f93
Update submodule mavlink to latest Thu May 19 00:38:59 UTC 2022
...
- mavlink in PX4/Firmware (87c73145b36a835b1635de0498a5613a7af5cafc): https://github.com/mavlink/mavlink/commit/a1cb2c0e71f191f04da3d92d92db8702a7e91ff6
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/99e82cad70494903a23a67de08ff9cbb5918d8f3
- Changes: https://github.com/mavlink/mavlink/compare/a1cb2c0e71f191f04da3d92d92db8702a7e91ff6...99e82cad70494903a23a67de08ff9cbb5918d8f3
99e82cad 2022-05-19 Hamish Willee - Deprecated GPS_INJECT_DATA (#1842 )
bf3df03d 2022-05-16 Hamish Willee - WIND_COV - accuracy units are m/s (#1844 )
a73d4864 2022-05-11 Hamish Willee - development.xml FIGURE_EIGHT_EXECUTION_STATUS - add a note about it being set at lower rate (#1841 )
2022-05-18 21:41:08 -04:00
mcsauder
e8da98fd14
Add gyro clipping to mirror accel clipping monitoring instances.
2022-05-18 21:16:05 -04:00
mcsauder
ea10eacb99
Replace EKF/common.h #defines with enums.
2022-05-18 09:25:19 -04:00
Silvan Fuhrer
8f2c84d36f
VTOL paras: add min of 0.1 to transition times
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
c29ca6c959
tailsitter: guard against division by 0
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
3cf07e1be5
VTOL: rename params _PTCH to _PITCH
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
7c5f0121a5
VTOL: remove some unsued variables
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
2b7efeacca
vtol_vehicle_status: replace several status bools by single vehicle_vtol_state
...
Replace vtol_in_rw_mode, vtol_in_trans_mode, in_transition_to_fw by vehicle_vtol_state.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
635f64a2e5
Commander: remove permanent stabilization option for fixed-wing flight
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
d8444df11c
Set tailsitter flag via vehicle status
...
Removes the necessity of including vtol_type.h in other modules.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Silvan Fuhrer
7292ce483c
VTOL: move to cpp params API
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-18 10:01:04 +02:00
Daniel Agar
ff16131874
icm42670p run at full speed
2022-05-17 08:14:22 -07:00
Daniel Agar
83daf648ef
drivers/imu/invensense/icm42670p: cleanup and small fixes
2022-05-17 08:14:22 -07:00
Peter van der Perk
3ea492b7a2
UCANS32K146 Fix CAN1 STB pin
2022-05-17 03:13:05 -07:00
Matthias Grob
02e11eddce
mavlink_mission: add more specific information to the error message
2022-05-17 07:49:00 +02:00
Junwoo Hwang
146f0cafe0
Add get*Expo() functions to the Sticks library
...
To return Exponential Values, which is helpful for reducing the
sensitivity of the stick around the centered value (0), since it's
exponential curve.
Useful for user adjustment implementations, where accidentally touching the stick
wouldn't have so much effect when using the Exponential value, compared
to using the raw position value.
2022-05-16 23:55:05 +02:00
Matthias Grob
4bd2d4cf35
rc_update: add unit tests for mode slot
...
To verify RC mode switch and mode button functionality works as expected.
2022-05-16 14:37:29 +02:00
achim
3fe4c6e3f5
boards: matek h743-mini specify drivers to still fit to flash
...
- the code has become a bit bigger again that now the drivers have to be specified a bit more precisely to still fit into the flash.
2022-05-13 14:05:04 -04:00
Beat Küng
32df76ca8a
dshot: handle DSHOT_MIN for reversible outputs
...
Also ensures there's no deadband if dead_l == dead_h (the default).
2022-05-13 14:04:01 -04:00
Matthias Grob
57a0289627
trajectory_setpoint: correct comment typo "kinematically"
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2022-05-12 17:19:48 +02:00
Matthias Grob
4017f4bb0b
vehicle_local_position_setpoint: reorder fields for clarity
2022-05-12 17:19:48 +02:00
Matthias Grob
b67fbac296
uuv_pos_control: siplify passing on trajectory position setpoint
2022-05-12 17:19:48 +02:00
Matthias Grob
200124f094
mavlink_receiver: check entire Vectors for NAN
...
Note: Behavioral change Inf also results in the flag being true.
2022-05-12 17:19:48 +02:00
Matthias Grob
8ca28f3796
Separate message for trajectory setpoint
2022-05-12 17:19:48 +02:00
Beat Küng
9166b6953d
output drivers: init SmartLock after exit_and_cleanup
...
This fixes an invalid memory access when exiting the module:
exit_and_cleanup destroys the object, but lock_guard is destructed after
and accesses the lock.
2022-05-12 08:16:35 -04:00
Beat Küng
0a9378e0f6
mavsdk_tests: ensure motor is stopped for motor failure test
2022-05-12 07:58:56 +02:00
Alessandro Simovic
b5a3c58a95
sitl: loosen some timeouts
...
The typhoon_h480 model would not always complete takeoff in 30 seconds
or finish the mission within 60 seconds.
2022-05-12 07:58:56 +02:00
Alessandro Simovic
5c1932dcca
disable engine failure detector for SITL VTOL
...
Tried increasing ESC timeout for VTOL first
VTOL sitl tests are failing because the ESC telemetry seems to be coming
in at 0.3 Hz
2022-05-12 07:58:56 +02:00
Alessandro Simovic
06f69cd469
Add SITL tests for control allocation
2022-05-12 07:58:56 +02:00
Beat Küng
0f860045f7
failure_detector: add failure injector class for motor telemetry
...
This allows to test motor failures via 'failure motor off -i 1' on a real
system.
2022-05-12 07:58:56 +02:00
Alessandro Simovic
4640f395d7
simulator_mavlink: Add ESC telemetry
2022-05-12 07:58:56 +02:00
Alessandro Simovic
20ccfbb719
control_allocator: remove failed motor from effectiveness
...
- limit to handling only 1 motor failure
- Log which motor failures are handled
- Remove motor from effectiveness matrix without
recomputing the scale / normalization
2022-05-12 07:58:56 +02:00
Alessandro Simovic
fb71e7587c
failure_detector: add motor/ESC failure detection
2022-05-12 07:58:56 +02:00
Beat Küng
dfd934fbdb
esc_report: add actuator_function
2022-05-12 07:58:56 +02:00
Hamish Willee
aab2feb8f5
pwm.cpp: remove the test example ( #19587 )
2022-05-12 07:56:13 +02:00
alexklimaj
0f69f8ced8
Fix uavcan battery causing immediate RTL time remaining low
2022-05-11 21:48:12 -04:00
Daniel Agar
fba7c972d1
drivers/rc_input: ensure RC inversion is disabled initially and latch RC_INPUT_PROTO conservatively
...
- this allows jumping straight to a non-SBUS RC protocol
- increased the scan time per protocol 300->500 ms, which the newer DSM parser seems to need in some cases.
- only set RC_INPUT_PROTO if we've had a successful RC lock for > 3 seconds
2022-05-11 14:30:41 -04:00
Daniel Agar
c772e5230f
commander: remove compile time dependencies on non-commander parameters
...
- this allows builds with mavlink fully disabled
- move commander MAN_ARM_GESTURE, RC_MAP_ARM_SW, MC_AIRMODE checks to manual_control
2022-05-11 10:14:23 -04:00
Beat Küng
8d36ba6727
log_writer_file: fix corner case when mission log is enabled
...
Normally _should_run for mission is only ever true if _should_run for the
normal log is. There are exceptions though:
- the log buffer fails to allocate
- there was a write failure (e.g. due to SD card removal)
In that situation, the writer would not wait anymore but busy-loop.
2022-05-11 10:06:35 -04:00
Beat Küng
ebbe08bc86
log_writer_file: protect access to _should_run, use px4::atomicbool for _exit_thread
2022-05-11 10:06:35 -04:00
Peter van der Perk
0053aeec97
Cyphal restore O1Heap statistics
2022-05-11 09:49:18 -04:00
Peter van der Perk
e62e8b58d1
Update UCANS32K146 clocking to use XTAL and support higher pheriphal freq
2022-05-11 06:02:39 -07:00
Silvan Fuhrer
ea2c1095c2
ROMFS: SITL tiltrotor: enable control allocaton and only tilt front motors
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-11 10:19:37 +02:00
Silvan Fuhrer
866f9fa95b
Control Allocation: add option to disable yaw by differential thrust
...
This replaces the propeller_torque_disabled flag to disable yaw by differential thrust
for tiltrotor and tailsitter VTOLs, as propeller_torque_disabled is not enough to set
effectiveness of an acutator in the yaw axis to 0 in case it's tilted.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-11 10:19:37 +02:00
Silvan Fuhrer
46179586fb
Control Allocation: Tiltrotor: pass only thrust magnitude instead of 3D thrust to allocator
...
Special case tiltrotor: instead of passing a 3D thrust vector (that would mostly have a x-component in FW, and z in
MC), pass the vector magnitude as z-component, plus the collective tilt. Passing 3D thrust plus tilt is not feasible as they
can't be allocated independently, and with the current controller it's not possible to have collective tilt calculated
by the allocator directly.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-11 10:19:37 +02:00
Daniel Agar
a71d101869
ROMFS: delete 3037_parrot_disco_mod airframe
2022-05-10 16:23:20 -04:00
Daniel Agar
42d7fb0b66
ROMFS: delete 3035_viper airframe and mixer
2022-05-10 16:23:20 -04:00
Daniel Agar
61c5d11375
ROMFS: delete 3034_fx79 airframe
2022-05-10 16:23:20 -04:00
Daniel Agar
f1a1ed4958
ROMFS: delete 3030_io_camflyer airframe
2022-05-10 16:23:20 -04:00
Daniel Agar
b00d0720cd
ROMFS: delete 13010_claire airframe
2022-05-10 16:23:20 -04:00
Daniel Agar
451cc5058d
ROMFS: delete minimal DJI airframes
2022-05-10 16:23:20 -04:00
Daniel Agar
fa1891ace2
ROMFS: delete steadidrone airframes
2022-05-10 16:23:20 -04:00
Daniel Agar
af5e903b82
.vscode/.gitignore ignore all log files
2022-05-10 11:39:55 -04:00
Daniel Agar
b77bb6d88d
Makefile: bootloaders_update add all Matek targets
2022-05-10 11:39:54 -04:00
Daniel Agar
45e3fad3e0
Update submodule GPSDrivers to latest Tue May 10 12:38:49 UTC 2022
...
- GPSDrivers in PX4/Firmware (3ac8fdbe29 ): https://github.com/PX4/PX4-GPSDrivers/commit/6534b050ee1a48af7932c46a9a87277eed1cc997
- GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/58968922b718176be8756f11113d16b2cfbc4022
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/6534b050ee1a48af7932c46a9a87277eed1cc997...58968922b718176be8756f11113d16b2cfbc4022
5896892 2022-04-26 Seppe Geuens - sbf: add heading support (#100 )
Co-authored-by: PX4 BuildBot <bot@px4.io >
2022-05-10 11:38:52 -04:00
PX4 BuildBot
4b7b7dfa8d
Update submodule mavlink to latest Tue May 10 12:39:00 UTC 2022
...
- mavlink in PX4/Firmware (d6dff7daa984514185a8f31f6e653a69a278ded8): https://github.com/mavlink/mavlink/commit/3b52eac09c2e37325e4bc49cd2667ea37bf1d7d2
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/a1cb2c0e71f191f04da3d92d92db8702a7e91ff6
- Changes: https://github.com/mavlink/mavlink/compare/3b52eac09c2e37325e4bc49cd2667ea37bf1d7d2...a1cb2c0e71f191f04da3d92d92db8702a7e91ff6
a1cb2c0e 2022-05-05 KonradRudin - Figure eight MAV_CMD (#1831 )
0ebdf846 2022-04-28 Hamish Willee - common.xml: Deprecate MAV_CMD_GET_MESSAGE_INTERVAL for MAV_CMD_REQUEST_MESSAGE. (#1835 )
f357fc78 2022-04-27 Hamish Willee - Deprecate MAV_CMD_GET_HOME_POSITION for MAV_CMD_REQUEST_MESSAGE (#1834 )
2022-05-10 11:37:55 -04:00
Daniel Agar
371a551f05
github actions: add all matek targets and sort
2022-05-10 11:33:01 -04:00
Daniel Agar
73f4c3ea87
Jenkins: compile add all matek targets and sort
2022-05-10 11:32:52 -04:00
Daniel Agar
6d390f393c
boards: matek_h743-mini_bootloader fix NuttX CONFIG_ARCH_BOARD_CUSTOM_DIR
2022-05-10 11:28:26 -04:00
Daniel Agar
5778553508
boards: matek_h743_bootloader fix NuttX CONFIG_ARCH_BOARD_CUSTOM_DIR
2022-05-10 11:26:15 -04:00
Daniel Agar
a80a74af79
Jenkins: compile update uavcanv1 -> cyphal
2022-05-10 11:23:22 -04:00
Daniel Agar
858292209d
boards: px4_fmu-v5_uavcanv0periph disable common differential pressure sensors to save flash
2022-05-10 11:17:24 -04:00
Peter van der Perk
b1ad4e8864
Upgrade libcanard to 3.0 and rename uavcan_v1 to cyphal
...
Did some prep work for redundant interfaces by introducing CanardHandle class to decouple physical interfaces from cyphal.cpp
2022-05-10 09:46:18 -04:00
Beat Küng
3ac8fdbe29
px4/fmu-v5/stackcheck: disable module to reduce flash
2022-05-10 10:25:06 +02:00
Beat Küng
689ceefada
px4/fmu-v2/fixedwing: disable module to reduce flash
2022-05-10 10:24:55 +02:00
Beat Küng
fc062ffad4
omnibus/f4sd/ekf2: disable module to reduce flash
2022-05-10 10:24:43 +02:00
Konrad
0e464a91be
Remove contradicting geofence parameter description
...
The flight termination action on geofence violation is described as only trigger, when the corresponding circuit breaker is not disabled. However, the description of the circuit breaker states, that the geofence action is not depedning on this circuit breaker. The implementation follows the description of the circuit breaker. Hence the GF_ACTION description is adapted.
2022-05-10 09:01:12 +02:00
Beat Küng
6a35c9f5fe
px4/fmu-v5/protected.px4board: disable module to reduce flash
2022-05-10 08:57:39 +02:00
Beat Küng
639c5c741e
px4/fmu-v2/multicopter.px4board: disable module to reduce flash
2022-05-10 08:57:39 +02:00
Beat Küng
abb37a3d27
holybro/kakutef7: disable module to reduce flash
2022-05-10 08:57:39 +02:00
Beat Küng
5d114329d7
cubepilot/cubeorange/test.px4board: disable module to reduce flash
2022-05-10 08:57:39 +02:00
Beat Küng
adc6472480
cuav/x7pro/test.px4board: disable module to reduce flash
2022-05-10 08:57:39 +02:00
Beat Küng
5cdb6fbd8e
control_allocator: add helicopter mixer
...
Same logic as the existing mixer.
Untested.
2022-05-10 08:57:39 +02:00
Beat Küng
32402f31df
control_allocator: increase max num motors to 12
2022-05-10 08:57:39 +02:00
Beat Küng
9f5c5591a2
ActuatorEffectivenessRotors: fix motor count check
...
Check during init to avoid out-of-bound access.
2022-05-10 08:57:39 +02:00
Daniel Agar
15296ab453
cmake: NuttX check that CONFIG_ARCH_BOARD_CUSTOM_DIR is in PX4_BOARD_DIR
2022-05-09 15:23:18 -04:00
Silvan Fuhrer
5d6c8c986d
Commander: high wind speed handling updates
...
- add logic for detecting high wind speed in Commander,
and handle it toghether with wind speed warning
- trigger and enforce RTL if COM_WIND_MAX is breached
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-09 19:09:40 +02:00
Silvan Fuhrer
1aad82f87d
Commander: add max flight time RTL
...
Adds COM_FLT_TIME_MAX param and logic in Commander to enforce RTL when
flight time is above this value. User can only override to LAND mode,
but not proceed flight beyond that.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-09 19:09:40 +02:00
Daniel Agar
2e1cdc9e75
boards: modalai_fc-v1 enable dshot on all outputs
2022-05-09 11:31:31 -04:00
Igor Mišić
ce4e9f6690
uavcan: use timer 6 by default on stm32f7
2022-05-06 19:45:53 -04:00
achim
9c12c2a152
boards: matek h743 update unified target
2022-05-06 14:57:37 -04:00
achim
76cf4332d9
boards: matek_h743-mini sync all Matek H743 boards
2022-05-06 14:56:20 -04:00
Thomas Stastny
90789be68f
fw pos ctrl: turn back to takeoff point with npfg
2022-05-06 16:36:03 +02:00
Thomas Stastny
3ef5f433b5
fw pos ctrl: add missing guidance control interval setting to control_manual_position()
2022-05-06 16:36:03 +02:00
Thomas Stastny
1ab9fb22ee
fw pos ctrl: fix state switching logic for takeoff and landing
2022-05-06 16:36:03 +02:00
Matthias Grob
b3776134b8
Commander: ensure diconnected battery is cleared from bit field
2022-05-06 10:32:27 -04:00
Beat Küng
113982e3e7
commander: fix incorrect return in set_link_loss_nav_state()
...
If both local position and altitude were not valid, then both RC loss and
datalink loss would not trigger any failsafe at all, independently from
the configured action.
2022-05-06 10:14:13 -04:00
achim
a71cf21c28
boards: matek_h743-slim_default try to fit as many modules of all categories as possible into the flash.
2022-05-06 10:13:30 -04:00
achim
87ebf17ab0
boards: matek h743 enable 12 pwm outs on slim and wing V1.0 and V1.5
2022-05-06 10:10:59 -04:00
achim
fc887a23af
boards: matek h743 mini
2022-05-06 10:09:14 -04:00
Silvan Fuhrer
20400cbb74
ROMFS: reduce FW_SPOILERS_LND to 0.4 to leave ailerons enough control authority
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-06 16:05:03 +02:00
Matthias Grob
843c814fb8
MulticopterPositionControl: allow offboard takeoff also when not landed
2022-05-06 04:12:18 -07:00
Matthias Grob
fbc109436f
MultiCopterRateControl: refactor setpoint naming
2022-05-06 04:12:18 -07:00
Matthias Grob
1211a457d7
MulticopterPositionControl: Overwrite vertical acceleration during takeoff rampup only
2022-05-06 04:12:18 -07:00
Matthias Grob
d9a2fe5226
Revert "MCPosControl: fix invalid setpoint race condition"
...
This reverts commit e7a2c1d88e .
2022-05-06 04:12:18 -07:00
achim
1f3a78b535
boards: mro ctrl zero classic enable all pwm outs
...
* enable all available pwm outs, cause io timer 15 is supported now
2022-05-05 22:39:12 -04:00
mcsauder
2a66be4899
Colocate struct stateSample with other instances of *Sample structs.
2022-05-05 18:41:50 -04:00
mcsauder
a0d9687409
Add c++ style initializers where missing in EKF/common.cpp, standardize tab/space indentation, align comments and format whitespace.
2022-05-05 18:41:50 -04:00
bresch
cab477d715
ekf2: optimize KHP computation
...
Calculating K(HP) takes less operations than (KH)P because K and H are
vectors.
Without considering the sparsity optimization:
- KH (24*24 operations) is then a 24x24 matrix an it takes
24^3 operations to multiply it with P. Total: 14400 op
- HP (24*(24+24-1) operations) is a row vector
and it takes 24 operations to left-multiply it by K. Total:1152 op
2022-05-05 10:34:17 -04:00
achim
3233272cbb
boards: diatone_mamba-f405-mk2_default fix /dev/ttyS2 name
2022-05-05 09:41:49 -04:00
bresch
c890e8bf99
WindEstimator: fix state covariance prediction
...
All the states are stationary so the discrete-time process noise Qk can
be directly added to the state covariance matrix P
2022-05-05 11:53:33 +02:00
Konrad
14a2fdfe55
Removed l1 control slope angle limitation. The maximal approach angle to the line was set to 45°, no the approach angle can be up to 90°.
2022-05-04 21:23:22 -04:00
achim
2bee8bfd45
boards: diatone_mamba-f405-mk2_default
...
- change modules still fit to flash, there is no board variant with sd slot
2022-05-04 21:08:44 -04:00
achim
bf8d759d3d
boards: matek h743 slim support v1 and v1.5 IMU variants
...
- remove temp compensation to still fit into flash
2022-05-04 14:05:16 -04:00
Matthias Grob
46fdc28cf8
MulticopterPositionControl: fix typo "descen{d/t}"
2022-05-04 02:22:18 -07:00
Daniel Agar
7f1bb556e9
Update src/modules/mc_pos_control/MulticopterPositionControl.cpp
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2022-05-04 02:22:18 -07:00
Matthias Grob
3fb4889ab9
MultcopterPositionControl: fix executing a zero setpoint for 200ms
...
This is a combination of the originally introduced delay:
06c10f61c1
then the emergency failsafe being changed to not just land,
position control being rescheduled to not overwrite every setpoint in:
e502214429576ce68ac3fee9d2db19112f4604b9
and it being fixed by overwriting the setpoint but not removing
the long obsolete hystersis here:
114e85d260
2022-05-04 02:22:18 -07:00
Matthias Grob
cb484c5ac7
PositionControl: publish NAN jerk
...
because the controller does not read or write jerk
2022-05-04 02:22:18 -07:00
Matthias Grob
5055fec796
MulticoperPositionControl: explicitly overwrite setpoint timestamp when setpoint is reset
2022-05-04 02:22:18 -07:00
Matthias Grob
424fd8b304
MulticoperPositionControl: remove time_stamp_now alias for timestamp_sample of the local position
...
to make it explicit what is used is not a fresh hrt_absolute_time() call
by this module.
2022-05-04 02:22:18 -07:00
Matthias Grob
8180f931de
MulticopterPositionControl: rename local_pos -> vehicle_local_position
2022-05-04 02:22:18 -07:00
Matthias Grob
4ffe796b4d
MulticopterPositionControl: clarify previous position control naming
2022-05-04 02:22:18 -07:00
Daniel Agar
ad6592f669
mc_pos_control: require current trajectory setpoint to run controller
2022-05-04 02:22:18 -07:00
Silvan Fuhrer
138772386f
FW Position control: explicitly set spoiler/flaps in every control mode
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Silvan Fuhrer
089673ff35
only allow positive spoiler and flap controls
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Silvan Fuhrer
64ff31aa08
VTOL: add flap and spoiler support
...
- including slew rate limiting
- adds option to set spoiler setting during the Land phase (hover)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Silvan Fuhrer
4b8f93de5c
FW: rework spoiler/flap control logic
...
- remove separate flaperon controls input to mixer instead enable spoiler support
- add slew rate limiting on both flap and spoiler controls
- add spoiler configuration for Landing and Descend
- add trimming from spoiler deflection
- FW Attitude control: remove FW_FLAPS_SCL param -->
The flap settings for takeoff and landing are now specified relative to full range.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Silvan Fuhrer
21a2892f47
use actuator_controls[8] for collective tilt for tiltrotor VTOL, instead of [4]
...
[4] is reserved for Flaps, so also having the tilt on it was preventing us from
using flaps on tiltrotors, and other ripple effects.
By using [8] the tilt is separated from all other channels - it requires to increase the size of
actuator_controls by 1 to 9.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-05-03 15:11:21 +02:00
Peter van der Perk
7e6aa28106
Added LTO targets for CI
2022-05-02 10:07:54 -04:00
Peter van der Perk
108c98a691
Added experimental LTO kconfig option
2022-05-02 10:07:54 -04:00
Beat Küng
8da02e2233
dshot: avoid using pwm failsafe params when dynamic mixing is enabled
2022-05-02 07:16:23 +02:00
Daniel Agar
7784cd1f40
boards: mro_ctrl-zero-classic updates to sync with ctrl-zero-h7-oem
2022-04-30 09:40:52 -04:00
Daniel Agar
6fc857772d
ekf2: remove unnecessary const references
2022-04-29 21:39:02 -04:00
ShiauweiZhao
4a6e958100
add tattu_can smart battery kconfig
2022-04-29 13:49:32 -04:00
Vincent Poon
080ba4458a
holybro/kakuteh7: change Product ID to show board name properly in QGC
...
https://github.com/mavlink/qgroundcontrol/pull/10270
2022-04-29 07:21:58 +02:00
Beat Küng
d94ec84e46
logged_topics: remove unused vehicle_angular_acceleration_setpoint, extend add_high_rate_topics
2022-04-28 19:51:28 -04:00
Beat Küng
4338976247
ActuatorEffectivenessRotors: add missing getEffectivenessMatrix
...
Fixes MOTORS_6DOF
2022-04-28 19:51:28 -04:00
Beat Küng
efdf5b8fce
vehicle_{thrust,torque}_setpoint.msg: fix comment
2022-04-28 19:51:28 -04:00
Beat Küng
a9129ea003
logger watchdog: also check main thread
...
There was a time window where if a task with higher priority than the main
logger thread would busy-loop, it would block both logging threads and the
watchdog would not trigger if the writer was in idle state.
This can happen for fast SD card writes.
2022-04-28 19:49:24 -04:00
Beat Küng
9e0a8050a9
fix dshot: remove setAllFailsafeValues
...
Fixes a regression from c1e5e666f0 ,
where with static mixers the dshot outputs would go to max instead of 0
in a failsafe case.
2022-04-28 13:29:24 -04:00
Daniel Agar
a15432fac1
drivers/rc_input: RC_INPUT_PROTO parameter minimal implementation ( #19539 )
...
Co-authored-by: chris1seto <chris12892@gmail.com >
Co-authored-by: chris1seto <chris12892@gmail.com >
2022-04-27 21:06:43 -06:00
Daniel Agar
fc7e979d84
boards: px4_fmu-v5_uavcanv0periph disable modules to save flash
2022-04-26 08:39:19 -04:00
Daniel Agar
7ab9b0c6e2
boards: cubepilot_cubeorange_test disable examples/fake_gps to save flash
2022-04-26 08:39:19 -04:00
Daniel Agar
f390f52058
drivers/differential_pressure: remove lib/drivers/airspeed dependency and cleanup
...
- split ms4525_airspeed into separate ms4515 and ms4525 drivers
2022-04-26 08:39:19 -04:00
Daniel Agar
d1d15a6f6d
differential pressure remove filters from drivers and average in sensors/airspeed
2022-04-26 08:39:19 -04:00
Daniel Agar
258f558fea
apply differential pressure calibration (SENS_DPRES_OFF) centrally
...
- remove drv_airspeed.h and ioctls
2022-04-26 08:39:19 -04:00
JaeyoungLim
c6ab4c466e
Separate takeoff and landing to individual fixed wing states for FW pos control ( #19495 )
2022-04-26 10:24:36 +02:00
Daniel Agar
d6210d1725
boards: px4_fmu-v6x_default disable common barometers to save flash
2022-04-26 01:43:10 -04:00
Daniel Agar
3d7a6b4021
mc_pos_control: silence invalid setpoint warning when disarmed
2022-04-26 01:37:37 -04:00
Daniel Agar
b2bcd2631a
boards/diatone/mamba-f405-mk2: disable modules to save flash
2022-04-26 01:08:18 -04:00
Daniel Agar
c8d2d83e55
boards: px4_fmu-v2 restore systemcmds/ver needed for board init
2022-04-25 22:47:08 -04:00
Daniel Agar
7bb789cb23
boards: update bootloaders to latest
2022-04-25 22:39:25 -04:00
Daniel Agar
d8a57e15b0
boards/mro/ctrl-zero-classic: fix code style
2022-04-25 22:07:32 -04:00
Daniel Agar
248f42f9ec
boards/diatone/mamba-f405-mk2: fix code style
2022-04-25 22:07:21 -04:00
achim
adacdad32d
boards: add new Diatone Mamba F405 mk2
2022-04-25 21:53:58 -04:00
achim
1bf16cb4df
boards: add new mRo Control Zero Classic
2022-04-25 21:52:38 -04:00
Daniel Agar
3d590af115
mc_att_control: only apply quat reset if estimate is newer than setpoint
2022-04-25 21:25:29 -04:00
Daniel Agar
23c89429ac
systemcmds/param: set-default should mark parameter active to avoid race conditions
2022-04-25 21:24:18 -04:00
bresch
e32a484906
[AUTO COMMIT] update change indication
2022-04-25 12:58:18 -04:00
bresch
db0274e19b
ekf: robustify bad_acc_vertical check
...
when the vertical pos or vel innov ratio is above the threshold, the
other one needs to be significant too and not just positive to trigger
the failure
2022-04-25 12:58:18 -04:00
Daniel Agar
980f696023
commander: mag calibration tolerate fit failure if sensor disabled
2022-04-25 12:41:20 -04:00
Daniel Agar
89374b2e1d
mavlink: delete Mavlink instance if early startup fails
2022-04-25 12:38:28 -04:00
Alex Mikhalev
45dff7f71a
commander: Add prearm check for flight termination
2022-04-25 11:57:37 -04:00
Daniel Agar
6359c8c008
mavlink: shell expand locking ( #19308 )
...
- on some H7 boards (cuav x7pro tested) there's an occasional hard fault when starting the mavlink shell that is no longer reproducible with the slightly expanded locking
- this is likely just changing the timing (holding the sched lock for longer), but this should be harmless for now until we can identify the root cause
2022-04-25 11:53:22 -04:00
Junwoo Hwang
af839c828d
Set Tune's Volume for Power-Off in Commander to default volume of tune_control message
2022-04-25 11:47:43 -04:00
Daniel Agar
8df3932d6a
icm20948: disable debug output (_debug_enabled=true)
2022-04-24 15:45:51 -04:00
Kirill Shilov
6981a70859
boards: new Sky-Drones AIRLink board support
2022-04-24 13:57:42 -04:00
Daniel Agar
503f97c8bc
logger: add default ground truth logging for HITL/SITL
2022-04-24 12:45:23 -04:00
Silvan Fuhrer
680fe86c05
FlightTaskAuto: fix Weather Vane during landing
...
Weather vane should only set a yawrate setpoint, but no yaw setpoint.
Setting it to NAN when WV is active makes sure that whatever _yaw_setpoint
is set previously (e.g. through Waypoint) is not used.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-04-23 18:14:42 +02:00
Silvan Fuhrer
ae5725e71a
ROMFS: fix typo in convergence and clair configs
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-04-23 10:29:57 -04:00
Silvan Fuhrer
bd1b0cab73
Mission: don't do anything in set_current_mission_index() when index=current already
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-04-22 22:32:06 -04:00
Daniel Agar
6f87a4546d
platforms/nuttx: cdc_acm_check implement mavlink reboot directly
2022-04-22 21:16:07 -04:00
Daniel Agar
9073f3ccdf
px4flow allow delayed background startup
2022-04-22 21:11:02 -04:00
mcsauder
fef47513f5
Add gyro and accel range register values to the icm42688p driver.
2022-04-22 21:03:01 -04:00
Hamish Willee
e1d3728208
13004_quad+_tailsitter - outputs mixed up
2022-04-22 07:34:05 +02:00
Daniel Agar
435a474dff
Update submodule GPSDrivers to latest Thu Apr 21 12:38:20 UTC 2022
...
- GPSDrivers in PX4/Firmware (e9c07fac6f ): https://github.com/PX4/PX4-GPSDrivers/commit/ddb1825fe33f517853ca8a3ef75ac6f2df76f613
- GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/6534b050ee1a48af7932c46a9a87277eed1cc997
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/ddb1825fe33f517853ca8a3ef75ac6f2df76f613...6534b050ee1a48af7932c46a9a87277eed1cc997
6534b05 2022-04-19 Jonas Perolini - ubx: disable gps heading for in RTK float fix type (#104 )
Co-authored-by: PX4 BuildBot <bot@px4.io >
2022-04-21 11:41:24 -04:00
bresch
e9c07fac6f
EKF: move python tuning tools to EKF module
2022-04-21 13:39:26 +02:00
bresch
49bc5082e7
Tools: add baro pressure coefficient tuning script
2022-04-21 13:39:26 +02:00
bresch
ea7009546b
mc wind: rename MC wind estimor tuning script
2022-04-21 13:39:26 +02:00
Julian Oes
37fa4bccb6
mavsdk_tests: update MAVSDK dependency
...
This should fix the CI issue where the test just hangs trying to
connect.
2022-04-20 11:48:53 -04:00
bresch
3c6b72c33b
commander: improve set_in_air_position
...
- set local home using global pos and global home
- set local home using GNSS pos and global home
- set global home using global ref of local frame and local home
2022-04-19 15:29:25 +02:00
bresch
e9a2b3f260
geofence: remove unused function parameters
2022-04-19 15:29:25 +02:00
bresch
3f3a4ac5c1
navigator: home_positionvalid -> global_home_position_valid
...
This is to make clear that the relevant part of the home position
message for navigator is the global one. Local home position isn't
required as everything is done in global coordinates.
The specific home_alt_valid is used when lat/lon are not used
2022-04-19 15:29:25 +02:00
bresch
d2f2ba59a4
commander: refactor home position setter
...
- always try to set local or global home position when possible
- set global home with GNSS position if global pos from EKF isn't
available
- reset home when significantly moved from home before takeoff (checking
lpos or gpos or GNSS)
- reset home on takeoff transition
- reset home on mavlink arm command
- remove "home required accuracy" parameters, rely on validity flags
2022-04-19 15:29:25 +02:00
RomanBapst
a7683eea07
mission_block: fix vehicle not exiting loiter after reaching exit heading
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-04-19 13:32:18 +02:00
Thomas Stastny
d5a6174e7f
mission block: fix incorrectly calculated ccw loiter exit ( #19487 )
...
* mission block: fix incorrectly calculated ccw loiter exit
* mission block: update comment on orbit exit location
2022-04-19 13:30:11 +02:00
Daniel Agar
5e05d98fe2
output modules simplify locking for mixer reset and load
...
- fixes the deadlock in px4io ioctl mixer reset
- px4io Run() locks (CDev semaphore)
- mixer load goes through px4io ioctl MIXERIOCRESET which calls MixingOutput::resetMixerThreadSafe()
- MixingOutput::resetMixerThreadSafe() stores a Command::Type::resetMixer command in an atomic variable, schedules a work queue cycle, then sleep spins until the command is cleared
- the execution of the cycle eventually calls back into PX4IO::updateOutputs(), which tries to lock (and waits forever)
2022-04-19 08:52:17 +02:00
bazooka joe
5d95cc001f
small cleanup for FlightTask::_evaluateDistanceToGround if-else
2022-04-18 20:47:41 -04:00
Daniel Agar
2e290345d3
boards: px4_fmu-v5_stackcheck disable unused systemcmds to save flash
2022-04-18 10:01:29 -04:00
Daniel Agar
90e2cab3fa
boards: px4_fmu-v5/v5x run default & rtps boards through kconfiglib to cleanup
2022-04-18 09:58:36 -04:00
Daniel Agar
3cdeeb8d64
px4iofirmware: convert most files to c++
2022-04-17 20:44:30 -04:00
Daniel Agar
3211d0ff19
boards: px4_fmu-v2_multicopter disable lightware_laser_serial to save flash
2022-04-17 18:59:56 -04:00
Daniel Agar
d06032d7f3
boards: px4_fmu-v5_uacanv0periph disable systecmds/sd_bench to save flash
2022-04-17 16:04:01 -04:00
stmoon
e7562df13a
boards: px4_fmu_v5x_rtps disable several modules to save flash
2022-04-17 13:36:24 -04:00
Daniel Agar
cbc37f9fcd
boards: px4_fmu-v6x_default disable systemcmds/sd_bench to save flash
2022-04-14 20:07:28 -04:00
alexklimaj
6e0ac66c3c
drivers/optical_flow: new PixArt PAA3905 optical flow driver
2022-04-14 16:47:53 -04:00
Beat Küng
9a9aad98a1
mavlink: add COMPONENT_METADATA message
...
And still support the previous message COMPONENT_INFORMATION for now.
2022-04-14 09:55:06 -04:00
Igor Misic
cdfa65d792
commander/safety: set early safety_button_available
2022-04-14 08:03:37 +02:00
Thomas Debrunner
f6bdc42977
param-reset: Add option to reset all configurable params, but not the ones that store vehicle information
2022-04-14 07:57:48 +02:00
Daniel Agar
3f13c70cae
px4io cleanup LED and heater handling
...
- most px4_io-v2 boards have a blue LED that breathes for status
- the pixhawk 2.1 (hex) re-used this blue LED for as an IMU heater (active low), but kept the same board id (so we have to detect at runtime)
- the new cubepilot boards (yellow, orange) inverted the polarity of this heater pin
- untangle the mess slightly so that things we know statically (eg cubepilot cubeorange LEDs and heater polarity) are handled at build time.
2022-04-13 18:43:59 -04:00
Alessandro Simovic
510ad00024
dronecan beeper: remove unneded var
2022-04-13 18:06:58 -04:00
chris1seto
912962f109
lib/rc: Fix DSM2/DSMX guessing routine and DSM range checking ( #18270 )
...
* Add Orangerx test case
Co-authored-by: Chris Seto <chris.seto@bossanova.com >
2022-04-13 17:29:08 -04:00
PX4 BuildBot
93268a285d
Update submodule mavlink to latest Wed Apr 13 12:39:05 UTC 2022
...
- mavlink in PX4/Firmware (16fd85d9b9133f21a79a5c1bccbf4756f4b3c781): https://github.com/mavlink/mavlink/commit/56a5110d38b77c8477b0a1d6ee909607a588f98d
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/3b52eac09c2e37325e4bc49cd2667ea37bf1d7d2
- Changes: https://github.com/mavlink/mavlink/compare/56a5110d38b77c8477b0a1d6ee909607a588f98d...3b52eac09c2e37325e4bc49cd2667ea37bf1d7d2
3b52eac0 2022-04-13 Beat Küng - add COMPONENT_METADATA, deprecate COMPONENT_INFORMATION (#1823 )
2022-04-13 14:09:03 -04:00
Daniel Agar
9c381a60b5
Tools/ecl_ekf: fix vibe_metrics usage (moved to vehicle_imu_status instances)
2022-04-13 10:36:45 -04:00
Daniel Agar
b4158c1b48
sensors/vehicle_imu: Integrator use 1 microsecond for minimum DT
...
- this is a more realistic minimum for the system
2022-04-13 10:36:45 -04:00
Daniel Agar
d2f1349d1a
sensors/vehicle_imu: replace coning metric with actual integrator coning correction (averaged)
...
- this saves a relatively expensive higih rate cross product and gives
better visibility into what's actually happening internally
2022-04-13 10:36:45 -04:00
bresch
37cafe7dcd
ekf rng kin: reduce minimum rng variance
2022-04-13 11:41:48 +02:00
bresch
4994649500
ekf rng kin: increase default gate size
...
The user needs to tune the range finder noise parameters properly and we
shouldn't need such a small gate
2022-04-13 11:41:48 +02:00
bresch
1fbe04986f
ekf rng finder consistency: simplify class member names
2022-04-13 11:41:48 +02:00
bresch
4c03f0bc50
ekf: make range finder kin consistency gate tunable by parameter
2022-04-13 11:41:48 +02:00
bresch
079a5e92ba
ekf: run rng consistency check only when not horizontally moving
...
The check assumes a non-moving terrain height
2022-04-13 11:41:48 +02:00
bresch
d903613c9c
ekf: add logging for rng kinematic consistency check
2022-04-13 11:41:48 +02:00
bresch
8693ad15a7
ekf: add logging of range finder consistency check
2022-04-13 11:41:48 +02:00
bresch
baf9cc9597
ekf: use uint64_t for time variables
2022-04-13 11:41:48 +02:00
bresch
9fc331b7ea
ekf: requires kinematically consistent range finder data to continue terrain aiding
2022-04-13 11:41:48 +02:00
bresch
78211f9dbb
ekf: improve rng consistency check
...
To pass from invalid to valid:
- time hysteresis
- some vertical velocity
- test ratio < 1
- low-passed signed test ratio < 1
To pass from valid to invalid:
- low-passed signed test ratio >= 1
2022-04-13 11:41:48 +02:00
bresch
b1ea2e4e15
ekf: use same gate for innov and innov sequence monitoring
2022-04-13 11:41:48 +02:00
bresch
f96287b80a
ekf: access member variable without getter
2022-04-13 11:41:48 +02:00
bresch
904bf8ef9f
ekf: add range finder kinematic consistency check
...
At each new valid range measurement, the time derivative of the distance
to the ground is computed and compared with the estimated velocity.
The average of a normalized innovation squared statistic check is used
to detect a bias in the derivative of distance measurement,
indicating that the distance measurements are kinematically inconsistent
with the filter.
2022-04-13 11:41:48 +02:00
bresch
064518f57a
ekf: extract range finder noise computation
2022-04-13 11:41:48 +02:00
Matthias Grob
97b2947416
FlightTaskAuto: refactor _commanded_speed_ts -> _time_last_cruise_speed_override
2022-04-13 12:23:27 +03:00
Matthias Grob
68cf686892
FlightTask: rename and move setCruisingSpeed() -> overrideCruiseSpeed()
2022-04-13 12:23:27 +03:00
Matthias Grob
f892a624b7
FlightModeManager/FixedwingPositionControl: robustify vehicle command parameter casting
2022-04-13 12:23:27 +03:00
Matthias Grob
6ce3e88f9d
vehicle_command: specify what SPEED_TYPEs are for
2022-04-13 12:23:27 +03:00
RomanBapst
3ed929c7b6
addressed review comments
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-04-13 12:23:27 +03:00
RomanBapst
b335710655
vehicle_command: added enum for speed types
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-04-13 12:23:27 +03:00
RomanBapst
d41de33a85
FlightModeManager: handle MAV_CMD_DO_CHANGE_SPEED
...
- support setting the cruise speed of the auto flight task via command
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-04-13 12:23:27 +03:00
RomanBapst
ca657f36ef
FixedWingPositionControl: handle VEHICLE_CMD_DO_CHANGE_SPEED
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-04-13 12:23:27 +03:00
RomanBapst
36e32ecd7b
navigator: stop handling speed changes via reposition triplet
...
- the mc and fw controllers are handling the speed changes directly
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-04-13 12:23:27 +03:00
Junwoo Hwang
35613df210
uORB : Don't automatically include message name as default topic name in uORBTopics source files, to handle case where user doesn't use default messgae name for multi topic definition in .msg file
2022-04-13 09:08:51 +02:00
alexklimaj
4fc161192a
Add ARK CANnode board config
2022-04-12 21:23:18 -04:00
Daniel Agar
0a0987a6e0
ROMFS: move px4flow start to rc.sensors
2022-04-12 21:22:41 -04:00
Daniel Agar
1d66f2cf83
posix: HRT hrt_lock() sem_wait try again if error returned
2022-04-12 12:46:29 -04:00
Matthias Grob
10f927ae2b
MulticopterPositionControl: remove unused return value parameters_update()
2022-04-12 10:13:11 -04:00
Daniel Agar
c30475b04b
Update submodule GPSDrivers to latest Tue Apr 12 12:38:56 UTC 2022
...
- GPSDrivers in PX4/Firmware (c04e66a890c75f57f5588d669eec45c8da8c3ed5): https://github.com/PX4/PX4-GPSDrivers/commit/ad1094aaf16fcc650b270431a1d0bdcf38e8d89a
- GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/ddb1825fe33f517853ca8a3ef75ac6f2df76f613
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/ad1094aaf16fcc650b270431a1d0bdcf38e8d89a...ddb1825fe33f517853ca8a3ef75ac6f2df76f613
ddb1825 2022-03-29 Daniel Agar - ubx: print relevent UBX-MON-VER output
Co-authored-by: PX4 BuildBot <bot@px4.io >
2022-04-12 10:12:46 -04:00
PX4 BuildBot
5e6fb9b537
Update submodule sitl_gazebo to latest Tue Apr 12 12:38:53 UTC 2022
...
- sitl_gazebo in PX4/Firmware (bb2ea574aa ): https://github.com/PX4/PX4-SITL_gazebo/commit/25138e803ee8525ee5fe4e6d511506e88e3f819c
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/2cf56d0bf8a9119cadc1a44d20d641ab24a6a42d
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/25138e803ee8525ee5fe4e6d511506e88e3f819c...2cf56d0bf8a9119cadc1a44d20d641ab24a6a42d
2cf56d0 2022-03-23 Julian Oes - Revert "models: Add model for standard_vtol_ctrlalloc"
b3ab8de 2022-03-18 JamesAnawati - Update cloudship.sdf.jinja
2022-04-12 10:12:12 -04:00
Daniel Agar
8166a500ac
Update world_magnetic_model to latest Mon Apr 11 11:14:11 UTC 2022 ( #19475 )
2022-04-12 10:11:51 -04:00
Daniel Agar
bb2ea574aa
ekf2: properly reset IMU biases on calibration change (non-multi-EKF)
...
- this was working in the multi-EKF case using vehicle_imu, but missing
in sensor_combined
2022-04-11 12:23:55 -04:00
Daniel Agar
8f891332f1
boards: px4_fmu-v2_multicopter disable load_mon to save flash
2022-04-11 12:23:35 -04:00
bresch
76a59d5c66
Tools: add drag fusion tuning script
2022-04-11 09:56:01 -04:00
Daniel Agar
04f37222f8
ekf2: fix IMU missed perf count when not using multi-EKF
2022-04-10 11:07:33 -04:00
PX4 BuildBot
f2c5d70d3a
Update submodule mavlink to latest Sun Apr 10 12:39:00 UTC 2022
...
- mavlink in PX4/Firmware (a1530591764f0c694560e4bb6ae41c15d3e35c9b): https://github.com/mavlink/mavlink/commit/0133e5db7fd640dcf250f3ba7817d6f0f7bb7589
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/56a5110d38b77c8477b0a1d6ee909607a588f98d
- Changes: https://github.com/mavlink/mavlink/compare/0133e5db7fd640dcf250f3ba7817d6f0f7bb7589...56a5110d38b77c8477b0a1d6ee909607a588f98d
56a5110d 2022-04-09 Tom Pittenger - Add radius to DO_REPOSITION (#1825 )
3b5959bd 2022-04-07 Thomas Debrunner - Option to not reset non-configurable params in preflight storage (#1826 )
2022-04-10 10:21:14 -04:00
Silvan Fuhrer
6096620828
ROMFS: remove duplicate setting of NAV_LOITER_RAD to 80
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-04-09 14:31:17 -04:00
Silvan Fuhrer
c7023e5879
Increase NAV_LOITER_RAD and RTL_LOITER_RAD to 80m each
...
For many VTOLs/fixed-wing drones a 50m loiter radius is too tight, and
going to 80m is a better and safer default.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-04-09 14:31:17 -04:00
Nicolas MARTIN
eb1bb4335b
commander: fix enable_failsafe reason ( #19391 )
...
- In this case, no action is configured for datalink lost. Action is configured for RC lost.
- In case of no data link and no rc failsafe is enabled but reporting a "no_datalink" reason but "no_rc_and_no_datalink" seems more explicit.
2022-04-09 14:30:49 -04:00
Daniel Agar
091fca701e
px4io: input_rc only publish new successful decodes
...
- previously an invalid decode would continue to be transferred to the FMU (at 50 Hz) and published to the rest of the system as successfully decoded new RC data
- by only publishing new successful decodes we can more effectively discard invalid data in downstream consumers
2022-04-09 14:28:16 -04:00
alexklimaj
017f860f44
Add I2C retries in INA226 to prevent publishing 0's on a single read failure
2022-04-09 14:23:52 -04:00
Ryan Johnston
777540bd02
boards/matek/gnss-m9n-f4: RM3100 orientation fix
...
- the RM3100 needs to be pitched 180º for correction orientation on this board.
2022-04-09 14:22:21 -04:00
Ryan Johnston
c585758f67
boards/matek/gnss-m9n-f4: IMU orientation update
...
- the icm20602 needs to be rolled 180º and yaw 90º for this board.
2022-04-09 14:21:45 -04:00
Jacob Dahl
3bffe3087d
use new safety_button topic for uavcannode Button publishing
2022-04-09 14:20:18 -04:00
Matthias Grob
fe26ee244d
modeCheck: allow arming in land mode for MAVSDK compatibility
...
ideally we can remove it again when the workflow is changed to
first changing mode then arming.
2022-04-08 09:56:47 +02:00
Ramon Roche
889a5aa0b1
ci: build and deploy kakuteh7
2022-04-07 19:09:19 -04:00
Daniel Agar
77a37c26bf
rc_update: further tighten timing requirements for valid data
...
- any real RC data input will be much faster than 3 Hz, so this is an
easy way to minimize bogus decoded data from propagating
2022-04-07 14:42:05 -04:00
Daniel Agar
98623f69a3
update mavlink submodule to latest
...
- update MAV_TYPE VTOL usage for current mavlink
2022-04-07 20:35:41 +02:00
Julian Oes
a5bd65b923
mavlink: set correct param capability
...
PX4 supports int32 parameter types by interpreting the 32 bits in
the float field as an int32 field. To signal this behaviour, it should
set the bit which is described as PARAM_ENCODE_BYTEWISE.
PX4 had always handled parameters this way but never actually sent the
capability (which back then was called PARAM_UNION), however, it should
have. This came up recently in the MAVLink devcall when these flags were
discussed. The takeaway was to remove the flags to make it clearer and
to make sure the projects (like PX4) send them out correctly.
2022-04-07 20:35:41 +02:00
Matthias Grob
92adc71424
ArmStateMachine: port over unit tests to functional gtests
2022-04-06 10:02:14 +02:00
Matthias Grob
f968a5947d
ArmStateMachine: port arming_state_names into the class
2022-04-06 10:02:14 +02:00
Matthias Grob
074080c816
Commander: separate out arm state machine to class
...
Pure refactoring and just the first step to avoid conflicts on the way.
2022-04-06 10:02:14 +02:00
Daniel Agar
6e9c673262
boards: omnibus_f4sd_ekf2 disable frsky telemetry to save flash (and fix build)
...
- this isn't great, but our options are limited at the moment and this
can be fixed later once the old mixing system is deleted
2022-04-05 11:10:33 -04:00
Thomas Stastny
e4b11c49c3
mathlib: add second order reference model filter with optional rate feedback ( #19246 )
...
mathlib: add second order reference model filter with optional rate feedback (#19246 )
Reference models can be used as filters which exhibit a particular, chosen (reference) dynamic behavior. This PR implements a simple second order transfer function which can be used as such a reference model, additionally with rate feedback. The system is parameterized by explicitly set natural frequency and damping ratio. Another nice externality is that the output state and rate are kinematically consistent. Forward-euler and bilinear transform discretizations for the state space integration step are available.
2022-04-05 10:31:41 +02:00
Igor Misic
80aef942cd
safety and safety button: refactoring #19413
2022-04-05 07:57:37 +02:00
Jacob Dahl
1f17a1470a
uavcan: update safety button
...
updated uavcannode/Publishers/SafetyButton.hpp
tested successfully
make format
revert cannode publishing
2022-04-05 07:57:37 +02:00
Daniel Agar
8c3ba7adb4
commander: silence GPS no longer validity PX4_WARN
2022-04-04 14:43:11 -04:00
Alessandro Simovic
47b08fd698
precland: save flash space
2022-04-04 17:26:52 +02:00
Hovergames
457130fb69
Support for NXP UWB position sensor
...
uwb_sr150 driver for the sensor, and some
modifications in precision landing to allow
landing on a platform using the UWB system.
2022-04-04 17:26:52 +02:00
Beat Küng
3381a5914d
holybro/kakuteh7: fix BOARD_FLASH_SIZE
...
The BL was reporting a flash size of 1703936, whereas it should be 1835008.
2022-04-04 10:44:11 -04:00
Matthias Grob
dd28c3e019
battery: update average current also when no capacity is configured
2022-04-04 10:02:55 +02:00
Matthias Grob
13c3eae6d0
battery: use mechanism to keep an up to date armed state
2022-04-04 10:02:55 +02:00
Silvan Fuhrer
3f6ab5ea19
battery: improve flight time remaining improvements
...
- introduce BAT_AVRG_CURRENT param that is used for init of average current estimate
- increase filtering of average current estimation
- only update average current filter when armed
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-04-04 10:02:55 +02:00
Beat Küng
6652718354
metadata.cmake: enable ethernet parameters
2022-04-04 09:54:47 +02:00
alessandro
8af0eeae46
1011_iris_irlock: require precland ( #19431 )
2022-04-04 08:27:31 +02:00
stmoon
179820cead
boards: px4_fmu_v5x_rtps disable common telemetry modules to save flash
2022-04-02 11:46:37 -04:00
Daniel Agar
803cc6814f
boards: px4_fmu-v2_fixedwing disable drivers/camera_trigger to save flash
2022-04-01 11:08:03 -04:00
Daniel Agar
f0be554857
boards: px4_fmu-v5_uavcanv0periph disable modules to save flash
2022-03-31 09:59:58 -04:00
Matthias Grob
3aee2497bb
commander_params: add precision land option for mode switch
2022-03-30 18:11:44 +02:00
David Sidrane
d6db06faf3
px_update_git_header:Extract latest release tag
2022-03-30 11:19:02 -04:00
Daniel Agar
82c1ffb8f8
boards: px4_fmu-v5_stackcheck disable common telemetry modules to save flash
2022-03-30 10:07:05 -04:00
Alex Mikhalev
9e57c5d217
tunes: Print warning if there is a tune error
2022-03-30 09:58:33 -04:00
Alex Mikhalev
f6cda64f0d
tunes: Fixed unspecified behaviour
...
This fixes unspecified behaviour due to evaluation order of args.
It's up to the compiler whether next_number() or next_dots() is executed
first which means that the behaviour is not properly specified.
2022-03-30 09:58:33 -04:00
Kabir Mohammed
d3b3de7159
mavlink: Use round instead of ceil on BATTERY_STATUS percentage
...
Co-authored-by: Alex Mikhalev <alex@corvus-robotics.com >
2022-03-30 09:49:11 -04:00
CUAVmengxiao
1870b9245b
fmu-v5: add macro definitions for different version revisions
2022-03-29 17:09:34 -04:00
CUAVmengxiao
f540335998
spi: get the correct version revision
2022-03-29 17:09:34 -04:00
CUAVmengxiao
c0d5ae2f9f
fmu-v5: Add support for ICM-42688-P
2022-03-29 17:09:34 -04:00
Matthias Grob
7cd57b4415
FlightTaskOrbit: alert user about exceeded radius (mavlink_log)
2022-03-29 18:46:37 +02:00
Matthias Grob
3e8d2fea94
FlightTaskOrbit: alert user about exceeded radius (events)
2022-03-29 18:46:37 +02:00
Matthias Grob
8ad44ee128
FlightModeManager: remove needless space at the end of invalid task error string
2022-03-29 18:46:37 +02:00
Matthias Grob
9bdde98a68
FlightModeManager: refactor flight task switch result condition for vehicle commands
2022-03-29 18:46:37 +02:00
Matthias Grob
ffaef906c4
FlightModeManager: don't ack with result failed when parameters are invalid
...
Command denied is defined as "supported but has invalid parameters"
which matches the case.
2022-03-29 18:46:37 +02:00
Matthias Grob
fc0be6c4fc
FlightModeManager: switch to failsafe task if orbit is rejected
2022-03-29 18:46:37 +02:00
RomanBapst
18074dec5a
simulator: fix conversion from hPa to Pa
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-03-29 17:41:54 +03:00
Daniel Agar
8a552fac78
uavcannode: publish RelPosHeading (from sensor_gnss_relative)
2022-03-29 07:59:41 +02:00
Daniel Agar
84e796c385
drives/gps: add new sensor_gnsss_relative msg
...
- for ublox this corresponds to NAV_RELPOSNED
2022-03-29 07:59:41 +02:00
Daniel Agar
dfe13e16e8
boards: px4_fmu-v2_multicopter disable distance_sensor/tfmini to save flash
2022-03-28 15:40:46 -04:00
Daniel Agar
67920f089b
boards: px4_fmu-v5x_rtps disable unused systemcmds and examples to save flash
2022-03-28 12:01:21 -04:00
Matthias Grob
c7f114a26a
FlightTaskOrbit: increase radius limit
2022-03-28 17:57:56 +02:00
Matthias Grob
d0794c1189
FlightTaskOrbit: don't start Orbit if radius is not in range
2022-03-28 17:57:56 +02:00
Daniel Agar
0595efbd9b
sensors/vehicle_magnetometer: publish sensors_status_mag and other minor updates to stay in sync with air data
2022-03-26 16:08:41 -04:00
Daniel Agar
0c31f63896
sensors: add baro calibration and cleanup
...
- sensor_baro.msg use SI (pressure in Pascals)
- update all barometer drivers to publish directly and remove PX4Barometer helper
- introduce baro cal (offset) mainly as a mechanism to adjust
relative priority
- commander: add simple baro cal that sets baro offsets to align with
GPS altitude (if available)
- create new sensors_status.msg to generalize sensor reporting
2022-03-26 16:08:41 -04:00
Daniel Agar
5800c417c8
boards: px4_fmu-v2_rover disable unused drivers to save flash
2022-03-25 17:30:42 -04:00
Daniel Agar
01eb27c703
Jenkinsfile-compile: skip px4_sitl_rtps for now
2022-03-25 15:07:20 -04:00
Daniel Agar
eb666e94a4
bords: omnibus_f4sd move ekf2 from default to new ekf2 board variant
...
- temporary solution to flash overflow
2022-03-25 12:47:25 -04:00
Daniel Agar
bc26b73c07
px4io: only publish valid input_rc
2022-03-25 10:56:24 -04:00
Daniel Agar
3d08e031d2
rc_update: improve manual_switches simple protections
...
- require back to back matching switch decode to match within 1 second
- clear any previous manual switches if RC is unstable
2022-03-25 10:56:24 -04:00
Daniel Agar
875a2cc423
commander: remove loop counters and update UI LED control to use monotonic time
2022-03-24 22:43:26 -04:00
Daniel Agar
879622547c
commander: only process one vehicle_command/action_request per cycle
...
- things like arming requests can be dependent on current nav state
that might requested by a previous command, but the state machine
transition will only happen after command processing
2022-03-24 22:43:26 -04:00
Daniel Agar
e528eb5dc4
commander: fix status flags usage (condition_global_position_valid->global_position_valid)
...
- broken due to the merge timing of https://github.com/PX4/PX4-Autopilot/pull/19378 and https://github.com/PX4/PX4-Autopilot/pull/19351
2022-03-24 09:40:15 -04:00
Jaeyoung-Lim
106044be38
Initialize global local projection for rovers
...
This commit initializes the global and local projection for rovers
2022-03-24 08:57:53 -04:00
Jonas Perolini
e31304d7d5
Quadchute param update ( #19351 )
...
New parameter for actions after a quadchute (COM_QC_ACT)
Co-authored-by: Jonas <jonas.perolini@rigi.tech >
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2022-03-24 10:27:32 +01:00
Jacob Schloss
5ae4cae073
orb_advertise_multi: might return nullptr ( #19387 )
2022-03-24 07:47:48 +01:00
Daniel Agar
6135bb384b
cleanup module callback registration failed errors
2022-03-23 20:44:50 -04:00
Daniel Agar
f4c3084c26
init adjustments to ensure used topics are advertised early (primarily for logging)
...
- multi-EKF create each instance as soon as IMU & mag are advertised (before device id populated)
2022-03-23 16:51:16 -04:00
Matthias Grob
e6ed595651
Commander: make last_fail_time_us parameter a reference instead of pointer
2022-03-23 15:04:48 -04:00
Matthias Grob
eee4aaee4f
Commander: remove dynamic position velocity probation period
2022-03-23 15:04:48 -04:00
David Sidrane
9fe2dfc2e3
px4_fmuv-6x Sensor set 3
2022-03-23 12:24:31 -04:00
Thies Lennart Alff
f1ec6ea026
make mavlink atttitude setpoints non-exlusive for offboard setpoints
2022-03-23 11:06:40 -04:00
Daniel Agar
94e30f5efb
boards: delete unused px4_fmu-v2_test
2022-03-23 10:39:58 -04:00
Silvan Fuhrer
a7ddaf08c4
vehicle_status_flags.msg: remove condition_ prefix to reduce message size
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-03-23 10:37:51 -04:00
Silvan Fuhrer
c30f2b9493
vehicle_status_flags.msg: remove unused condition_system_returned_to_home
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-03-23 10:37:51 -04:00
Jaeyoung-Lim
194a281fae
Project local coordinates for all fw landing states
2022-03-23 13:34:13 +01:00
Jaeyoung-Lim
cb81c6ac8c
Address review comments
2022-03-23 13:34:13 +01:00
Jaeyoung-Lim
71bfb9c0de
Convert NPFG to local coordinates
2022-03-23 13:34:13 +01:00
Jaeyoung-Lim
f804b3516f
Remove local planar vector
2022-03-23 13:34:13 +01:00
Jaeyoung Lim
28d34bf095
Convert L1 controller to local coordinates
2022-03-23 13:34:13 +01:00
Matthias Grob
897506267d
Sticks: name getThrottle() explicitly about range
2022-03-23 11:54:05 +01:00
Junwoo Hwang
0e5c305163
Stick Verbose Functinos : Make get functions for roll, pitch, yaw and throttle const to specify that it's not changing Sticks' internal variables
2022-03-23 11:54:05 +01:00
Junwoo Hwang
f78465428c
Stick Verbose Functions : Edit other FlightTasks using checkAndUpdateStickInputs() functions and correct Throttle returned value inverse issue
2022-03-23 11:54:05 +01:00
Junwoo Hwang
8266a4df98
Sticks : Add utility functions to get pitch, roll, throttle and yaw values intuitively and rename ambiguously named function checkAndSetStickInputs()
2022-03-23 11:54:05 +01:00
Matthias Grob
db7430aa65
matrix helper: remove needless comment line
2022-03-23 10:51:45 +01:00
Matthias Grob
18629bb535
FlightTaskOrbit: fix tangential yaw stick input for rotation direction changes
2022-03-23 10:51:45 +01:00
Matthias Grob
74c0ae6e55
Functions: add sign from boolean function with unit tests
2022-03-23 10:51:45 +01:00
Matthias Grob
e03585ca06
FlightTaskOrbit: remap stick input when vehicle faces tangential
2022-03-23 10:51:45 +01:00
Matthias Grob
db1fb6acf7
Commander: no battery time based RTL when already landed
2022-03-23 10:49:38 +01:00
Matthias Grob
69f6092031
mavlink_receiver: remove unused land detection publication
2022-03-23 10:49:38 +01:00
Matthias Grob
c1b9b8a1c0
MulticopterLandDetector: correct comment with outdated time constant reference
2022-03-23 10:49:38 +01:00
Matthias Grob
b85c4ec475
Commander: rename land detection subscription for consistency
2022-03-23 10:49:38 +01:00
Matthias Grob
4a5a8d59fe
matrix helper: add documentation for sign function
2022-03-23 08:47:52 +01:00
Matthias Grob
d0abcc1ca3
MatrixHelperTest: add unit tests for the signum function
2022-03-23 08:47:52 +01:00
Matthias Grob
03f836f79d
matrix helper: fix sign function zero case
2022-03-23 08:47:52 +01:00
David Sidrane
1a17e9df4d
board_hw_rev_ve:Use 97.50% for ADC ref for "High" detection
2022-03-22 21:15:03 -04:00
David Sidrane
ebc8ecdee6
board_hw_rev_ve:ADC returns 32 bits
2022-03-22 21:15:03 -04:00
David Sidrane
1c224be8f6
stm32h7:ADC fix CCr Access
2022-03-22 21:15:03 -04:00
RomanBapst
60231bbcb6
navigator: don't reset cruise speed and throttle during a transition as part
...
of the VTOL takeoff navigation state
- the reset causes the loiter circle to be reset to home
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-03-22 15:14:02 +01:00
Daniel Mesham
06a9be74fa
microdds: add xrce client
2022-03-22 09:01:05 +01:00
Konrad
e080fab8f6
Set up landing gear logic for tiltrotor and tailsitter VTOL. Gear is set down when in hover mode, esle gear is set up.
2022-03-21 09:30:04 +01:00
Konrad
d7de67844f
Set up landing gear logic for standard VTOL. Gear is set down when in hover mode, else gear is set up.
2022-03-21 09:30:04 +01:00
Daniel Agar
c86d5769ea
boards: px4_fmu-v2_{fixedwing,multicopter} module selection changes to save flash
2022-03-19 14:43:45 -04:00
Daniel Agar
475bd42ab8
sensors: add 2nd static notch and migrate existing parameters
...
- new static notch filter configured via IMU_GYRO_NF1_FRQ and IMU_GYRO_NF1_BW
- existing notch parameters IMU_GYRO_NF_FREQ and IMU_GYRO_NF_BW become
IMU_GYRO_NF0_FRQ and IMU_GYRO_NF0_BW
2022-03-19 14:38:04 -04:00
Daniel Agar
afeab9587e
gyro_fft: peak detection exclude side FFT buckets
...
- when estimating the peak frequency the magnitude of side buckets will
be factored in, so it doesn't make sense to potentially treat them as
separatey detected peaks
2022-03-19 14:37:36 -04:00
Matthias Grob
9ab99a7689
MatrixHelperTest: don't rely on FLOAT_EQ accepting FLT_EPSILON inaccuracy
2022-03-18 13:35:18 +01:00
Thomas Stastny
144697bb6a
MatrixHelperTest: correct wrap compare values
2022-03-18 13:35:18 +01:00
benjinne
620f25503c
Add geofence predict param ( #17795 )
2022-03-18 11:44:13 +01:00
Thomas Debrunner
5b0fc8f507
print_load: Removed unused variable to fix compilation on macos
2022-03-18 10:42:19 +01:00
Daniel Agar
36e6527013
ROMFS: MAV_TYPE cleanup
...
- set MAV_TYPE as a parameter default per vehicle type, or airframe if necessary
- cleanup MAV_TYPE param metadata and commander helper to only include
what's currently used in PX4
2022-03-17 09:28:10 -04:00
Matthias Grob
cde7b1bc41
Matrix: remove deprecated minimal test framework
2022-03-17 13:02:22 +01:00
Matthias Grob
91493307b9
Matrix: convert vector test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
4b63f6b29a
Matrix: convert vector assignment test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
f4b53d2762
Matrix: convert vector3 test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
ddfd62dfc2
Matrix: convert vector2 test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
be28aeb3ee
Matrix: convert upper right triangle test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
4d43aad847
Matrix: convert transpose test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
b3cc18c6de
Matrix: convert square test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
555ed9b9d8
Matrix: convert slice test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
46df8ab60c
Matrix: convert set identity test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
831f0e9aac
Matrix: convert scalar multiplication test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
38d742f1b5
Matrix: convert pseudo inverse test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
57e443c4a4
Matrix: convert multiplication test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
719898f1e3
Matrix: convert least squares test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
fddcf342e9
Matrix: convert inverse test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
f5ec4b2339
Matrix: convert integral test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
7c9e28c168
Matrix: convert helper test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
0c4c3a917c
Matrix: convert hat vee test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
8f695a5613
Matrix: convert filter test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
79e8152f05
Matrix: convert dual test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
62571b6984
Matrix: convert copy to test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
35b035e880
Matrix: convert attitude test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
c33bf5b705
Matrix: convert assignment test to gtest
2022-03-17 13:02:22 +01:00
Matthias Grob
fa35635486
Matrix: change naming of sparse vector test
2022-03-17 13:02:22 +01:00
Jukka Laitinen
3d35929f3e
Put gyro_fft in kernel by default in protected build
...
It is a performance issue to run it on user side
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
4658a627d7
Separate i2c and spi board bus configuration into and own library for protected build target
...
This info is needed on both kernel and user sides, and is just data.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
543c7bd0c5
uORB: Build uorb systemcmd always in kernel side in memory protected build
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
d167f91eb8
logger/watchdog: Disable watchdog for NuttX protected/kernel builds
...
It accesses kernel internal structures directly; this needs to be
worked out with some proper userspace-kernel interface
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
56c6120e83
Use IOCTL for board_read_VBUS_state in NuttX protected builds
...
Direct gpio read is not possible from user side applications, so use boardctl
interface instead.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
0cf3079401
px4_fmuv5: Implement BOARD_*_LOCKOUT_STATE in protected/kernel builds
...
In memory protected builds these perform nuttx boardctl ioctl calls to kerenel
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
356328056a
Add px4_fmu-v5_protected target
...
Add a target for nuttx protected build development
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
005095d199
Add gran allocator also to user side in protected build
...
This is needed for DMA capable memory for fat also in the user side;
the file system doesn't seem to work reliably without.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
49b089f149
Add a simple way to launch kernel side modules
...
Add launch_kmod command to start/execute px4 modules in kenel space
in NuttX protected build
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
c43c71f4af
platforms/nuttx/src/px4/common/board_ctrl: Add handlers for vbus & shutdown lockout
...
Add kernel side ioctls and handlers for vbus state and managing shutdown lockout
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
4a74d266be
Initialize cxx static variables also in kernel side
...
For protected/kernel builds the cxx static initializations
needs to be done also in kernel side, since px4 creates
c++ objects in kernel
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
Jukka Laitinen
c1a7b8df1d
Add a px4 userspace initialization in protected build
...
The px4_userspace_init function is called from userspace
entrypoint before starting NSH
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-17 08:01:51 +01:00
bresch
f3f09c1344
PreFlightCheck: add data timeout detection for mag, baro accel and gyro
2022-03-16 11:46:01 +01:00
bresch
75aa11c955
PreFlightCheck: refactor sensors preflight checks
2022-03-16 11:46:01 +01:00
bresch
b1c1163ee4
PreFlightCheck: remove unused device_id argument
2022-03-16 11:46:01 +01:00
bresch
5f1b577b6d
PreFlightCheck: mark sensor required if used by an EKF2 instance
2022-03-16 11:46:01 +01:00
stmoon
6d0b11ca99
add custom target for uorb_sources_microcdr_gen
2022-03-15 17:59:22 -04:00
wangwwno1
746c16400a
Typo Fix: ChangeWorkQeue
...
Fix the typo of 'WorkItem::ChangeWorkQeue' to 'WorkItem::ChangeWorkQueue'
2022-03-15 13:31:52 -04:00
Daniel Agar
4746a19c0c
boards: px4_fmu-v5_stackcheck disable UUV modules to save flash
2022-03-15 12:10:03 -04:00
Daniel Agar
233c7fd293
goertek/spl06: parameters.c add copyright header and fix formatting
2022-03-15 10:14:46 -04:00
Ncerzzk
cb23179c50
Add Goertek SPL06 barometer driver ( #19229 )
...
Signed-off-by: ncer <huangzzk@bupt.edu.cn >
2022-03-15 10:13:03 -04:00
Konrad
963f6a91d9
exclude Mixer for Tailsitter with x motor configuration and elevons for fmu-v2 and omnibus to avoid flash size issues
2022-03-15 10:44:27 +01:00
KonradRudin
5f43be9d60
preflight checks: add check for distance sensor (via parameter)
2022-03-15 10:44:27 +01:00
Jukka Laitinen
0d31aadcc3
src/lib/paramters: Add a new interface library for protected build user side
...
Implement an interface for protected build to access parameters.
The implementation only does IOCTL calls to the kernel, where the parameters
live.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-15 07:52:26 +01:00
Jukka Laitinen
41a7ae3db2
src/lib/parameters: Refactor common functions to an own file
...
Put all functions which are commont to flat build and protected kernel and
userspace to an own source file
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-03-15 07:52:26 +01:00
Daniel Agar
7ef38112d2
ekf2: return saved mag bias variance when not in 3d magnetometer fusion
...
- the estimated mag bias was requiring > 30 seconds of continuous 3d
mag fusion to be reported stable (and saved back to mag cal), this
restores the original intent requiring 30 seconds of accumulated valid
3d mag fusion
2022-03-14 21:03:41 -04:00
Daniel Agar
5717434e93
ekf2: initialize GPS drift metrics to NAN rather than 0
2022-03-14 10:09:24 -04:00
alessandro
62d1058cc2
log irlock_report and landing_target_pose messages
...
Need to log both, because on some systems the
information will come in directly as a
landing_target_pose message, and on others
it's coming in as irlock_report and then filtered
in PX4 to produce the landing_target_pose message.
2022-03-14 10:13:08 +01:00
Matthias Grob
f1e44c6e2a
PreFlightCheck: only allow modes suitable for takeoff
2022-03-14 09:03:39 +01:00
Daniel Agar
a430f0ccae
ekf2: add simple zero velocity update when vehicle at rest ( #19149 )
...
- further decreases initial tilt alignment time (now down to 2.5 seconds if still) and improves initial bias estimates
2022-03-12 12:56:31 -05:00
Daniel Agar
3d54d25867
sensor calibration delete temperature (CAL_ACCx_TEMP, CAL_GYROx_TEMP, CAL_MAGx_TEMP)
...
- this was an experiment to casually monitor sensor offsets relative to temperature, but now that all calibration offsets can be adjusted post-flight the stored temperature can be misleading
- deleting to save a little bit of flash (and storing the temperature wasn't useful)
2022-03-12 11:38:49 -05:00
wangwwno1
aa64789792
sensors/vehicle_imu: Fix Integration Rate greater than Gyro Rate ( #19318 )
2022-03-12 11:29:23 -05:00
RomanBapst
58a4c38519
rtl: don't fly mission landing if we trigger rtl in hover
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-03-11 15:23:31 +03:00
bresch
58bd3d0c60
cmake: use elif -> elseif
2022-03-11 11:59:20 +01:00
JunwooHWANG
04f8453f4a
Reduce Beeepr Default volume : 40 -> 20, since it's too loud for TAP_ESC devices from Yuneec ( #19311 )
2022-03-11 10:27:57 +01:00
Silvan Fuhrer
f4c300af25
FlightTaskAuto: Nudging: only set yawrate_sp if WV is disabled or stick out of dead-zone
...
Otherwise the setpoint from weather vane is constantly overwritten by it,
even if the yaw stick is not moved.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-03-11 09:18:31 +01:00
Alex Klimaj
71850eeda6
mavlink: Add flow control parameters ( #19254 )
2022-03-10 08:22:00 -08:00
Daniel Agar
b66dd5ffa6
adis16470: fix gyro scaling
2022-03-09 23:00:54 -05:00
Roman Bapst
69560bd4f4
Compensate VTOL transition time for air density ( #19293 )
...
* vtol: compensate front transition minimum time and front transiton openloop time
for air density
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-03-09 08:41:30 -05:00
alessandro
0617fd2b6f
fmu-v6x: increase UART5 buffer size
...
The same fix had to be done for the fmu-v5x:
PX4/PX4-Autopilot#14932
2022-03-09 08:39:34 -05:00
bresch
182980526f
commander: allow rearming grace period for arming switch only
2022-03-09 08:42:21 +01:00
wangwwno1
cd5a1e510a
ekf2: typo Fix: pub.advertised() -> pub.advertise() ( #19302 )
2022-03-09 08:39:08 +01:00
Jacob Dahl
3e21efb721
ina228: fix sign error on CURRENT reading ( #19296 )
2022-03-08 19:47:11 -05:00
Daniel Agar
b7e0f17c6a
ekf2: minor position/velocity reset cleanup
...
- try to use avoid resetVelocity() call where possible
- reset timeouts centrally
2022-03-08 11:16:35 -05:00
Daniel Agar
c10ea97967
ekf2: fusion helpers return success/fail and set pos/vel update timestamps centrally (if healthy)
2022-03-08 11:16:35 -05:00
Matthias Grob
c4bc062714
helper_functions: generalize unwrapping function
2022-03-08 10:56:32 +01:00
Matthias Grob
c86c2db07f
helper_functions: simplify unwrap function
2022-03-08 10:56:32 +01:00
Thomas Stastny
5a3aba9c21
matrix: add angle unwrapping method
2022-03-08 10:56:32 +01:00
Matthias Grob
68a0414622
Quaternion: rename function to rotate vectors
2022-03-07 20:03:54 -05:00
Daniel Agar
5affa693f2
uavcan: increase ESC max rate 200->400 Hz
...
- this should run synchronized with the rate controller and can be
limited by IMU_GYRO_RATEMAX
2022-03-07 10:28:51 -05:00
Beat Küng
601c588294
holybro/kakuteh7: disable bluetooth
2022-03-04 08:02:11 -05:00
Beat Küng
047352d049
holybro/kakuteh7: update bootloader binary
2022-03-04 08:02:11 -05:00
Beat Küng
591c95ce2f
mixer_module: print actual failsafe value
2022-03-04 08:02:11 -05:00
Bulut Gözübüyük
80c6ab7106
Add support for Omnibus F4 boards with ICM20608G IMUs
...
One can use following command to compile:
make omnibus_f4sd_icm20608g
Co-Authored-By: berkercanatar <19846944+berkercanatar@users.noreply.github.com >
2022-03-04 08:27:48 +01:00
Matthias Grob
666cf2326d
mission_block: handle SET_ROI_LOCATION with absolute altitude correctly ( #19258 )
2022-03-03 13:25:00 +01:00
Daniel Agar
49df00c319
lib/mixer_module: check thrust factor range valid and minor optimization ( #19272 )
2022-03-03 08:10:09 +01:00
JunwooHWANG
35af604a82
Added RTL Switch Setting for ATL Mantis Edu ( #19267 )
...
Co-authored-by: Junwoo Hwang <junwoo@auterion.com >
2022-03-02 16:57:20 +01:00
Daniel Agar
52221b0bb7
vscode: add stlink debug config ( #19269 )
...
Co-authored-by: Jacob Crabill <jacob.crabill@gmail.com >
2022-03-01 09:47:22 -05:00
PX4 BuildBot
c2c455be0d
Update submodule flightgear_bridge to latest Sat Feb 26 16:47:29 UTC 2022
...
- flightgear_bridge in PX4/Firmware (8549fadb6c ): https://github.com/PX4/PX4-FlightGear-Bridge/commit/ea9b6cb5b93365928190864a6592c0a280e101ea
- flightgear_bridge current upstream: https://github.com/PX4/PX4-FlightGear-Bridge/commit/f47ce7b5fbbb3aa43d33d2be1f6cd3746b13d5bf
- Changes: https://github.com/PX4/PX4-FlightGear-Bridge/compare/ea9b6cb5b93365928190864a6592c0a280e101ea...f47ce7b5fbbb3aa43d33d2be1f6cd3746b13d5bf
f47ce7b 2022-02-07 Roman Dvořák - Add support of TF-G1 and TF-G2 to FG bridge, update readme, update mavlink communication Add support of TF-G1 and TF-G2 to FG bridge, update readme, update mavlink communication
2022-02-26 16:57:20 -05:00
Daniel Agar
6224e11463
Update world_magnetic_model to latest Sat Feb 26 16:47:08 UTC 2022 ( #19262 )
...
* Update world_magnetic_model to latest Sat Feb 26 16:47:08 UTC 2022
* [AUTO COMMIT] update change indication
Co-authored-by: PX4 BuildBot <bot@px4.io >
2022-02-26 15:39:37 -05:00
Daniel Agar
44f0278d97
Update submodule GPSDrivers to latest Sat Feb 26 16:47:30 UTC 2022 ( #19264 )
...
- GPSDrivers in PX4/Firmware (be9dbf6a077309c4c6bcf8d2de91b82502bf5d01): https://github.com/PX4/PX4-GPSDrivers/commit/d6940d9c8ccb8ab3273c677097a29d46903021ff
- GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/fa275c39935e00906d7a691770d2c10f1ea95d3c
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/d6940d9c8ccb8ab3273c677097a29d46903021ff...fa275c39935e00906d7a691770d2c10f1ea95d3c
fa275c3 2022-02-17 chalkytoast - ubx: ensure payloadRxDone does not return -1
Co-authored-by: PX4 BuildBot <bot@px4.io >
2022-02-26 15:38:43 -05:00
PX4 BuildBot
d94ad5bd6d
Update submodule mavlink to latest Sat Feb 26 16:47:38 UTC 2022
...
- mavlink in PX4/Firmware (95358ae501e92687b00d2786bc8eadf28ff93930): https://github.com/mavlink/mavlink/commit/4ee1eebbd173a3a483b79088b58fef6ec0a4dfef
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/b568a60fca42599d9998434e606f6e38e0b5e298
- Changes: https://github.com/mavlink/mavlink/compare/4ee1eebbd173a3a483b79088b58fef6ec0a4dfef...b568a60fca42599d9998434e606f6e38e0b5e298
b568a60f 2022-02-24 Hamish Willee - Update pymavlink to latest (#1805 )
b86834e0 2022-02-23 Hamish Willee - Component info - tidy descriptiosn (#1803 )
79e9545a 2022-02-23 Hamish Willee - Remove external dialect doc and improve dialect pages (#1802 )
fd7ccfbe 2022-02-23 Hamish Willee - MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION - improve linking to command (#1774 )
2b7de26c 2022-02-23 Hamish Willee - [Discuss.] MAV_PROTOCOL_CAPABILITY_FTP - supports FTP protocol not specific message (#1772 )
a7541658 2022-02-18 Alessandro Ros - fix common.xml include in AVSSUAS (#1800 )
5b4482fe 2022-02-17 Hamish Willee - RFC 0016 - Mavlink Standard Modes - Add to development.xml
2022-02-26 15:07:42 -05:00
ShiauweiZhao
8549fadb6c
add icm42670p driver kconfig
2022-02-25 12:21:06 -05:00
Jukka Laitinen
aae0876d82
platforms/rpi: Clean away the removed hrt_elapsed_time_atomic
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-25 13:35:14 +01:00
Jukka Laitinen
77f71e61d2
Add a generic hrt driver userspace interface
...
This adds a nuttx userspace interface for hrt driver, communicating with
the actual px4 hrt driver via BOARDCTL IOCTLs
This is be used when running PX4 in NuttX protected or kernel builds
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-25 13:35:14 +01:00
Jukka Laitinen
9f049b4dca
Inline ts_to_abstime and abstime_to_ts
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-25 13:35:14 +01:00
Beat Küng
3e6a35fe8a
px4/fmu-v2/rover: disable module to reduce flash
2022-02-25 08:30:58 +01:00
Beat Küng
29d5dd9b8f
omnibus/f4sd: disable module to reduce flash
2022-02-25 08:30:58 +01:00
Beat Küng
bc9dfe8599
holybro/kakutef7: disable module to reduce flash
2022-02-25 08:30:58 +01:00
Beat Küng
ddad4c31c9
control_allocator: compute thrust scaling individually per axis
...
Before, adding the pusher to the same matrix as the upwards motors affected
the scaling for the upwards motors, resulting in values not equal to -1
anymore.
2022-02-25 08:30:58 +01:00
Beat Küng
76d8d8cae6
control_allocator: generic motor configuration for standard vtols
...
This adds the pusher/puller to the standard motors and makes the axis
configurable.
2022-02-25 08:30:58 +01:00
Beat Küng
b2dc9ee710
control_allocator: add title & help url to geometry UI
2022-02-25 08:30:58 +01:00
Beat Küng
cbcae260e4
mavlink: update submodule
2022-02-25 08:30:58 +01:00
Beat Küng
e10ff59340
px4/fmu-v5/stackcheck: disable module to reduce flash
2022-02-25 08:30:58 +01:00
Beat Küng
dce2968470
ROMFS: set CA_* + HIL_ACT_* params for hitl+sih airframes
2022-02-25 08:30:58 +01:00
Beat Küng
9b629a9e95
hitl,sitl,sih: use separate actuator_outputs_sim for SYS_CTRL_ALLOC==1
...
- removes the need to do type-specific rescaling of pwm to normalized values
- allows to run physical output drivers alongside HIL/SIH
2022-02-25 08:30:58 +01:00
Charles Cross
1e32398217
Adds scheduling call to ControlAllocator initialization
2022-02-25 08:16:08 +01:00
Charles Cross
aecfbef128
Enables 20Hz backup scheduling for ControlAllocator
2022-02-25 08:16:08 +01:00
Charles Cross
b0352135bb
Restores Dshot trigger condition and adds dynamic mixing condition
2022-02-25 08:16:08 +01:00
Charles Cross
51c055832f
Changes ControlAllocator to always publish actuator controls and status
2022-02-25 08:16:08 +01:00
Charles Cross
59f9a40584
Changes Dshot commands to always trigger from updateOutputs(), unless outputs are completely off
2022-02-25 08:16:08 +01:00
Charles Cross
46f8de3a17
Changes actuator_test syscmd value arg to be a float from -1 to 1
2022-02-25 08:16:08 +01:00
Daniel Agar
32a91377bf
Tools/process_sensor_caldata.py fix scipy import
2022-02-24 20:27:26 -05:00
Jukka Laitinen
caaa13ddc0
uORB performance updates
...
Move some logic from Subscriber into uORBManager. This reduces calls from the
modules to the uORB manager, improving performance in protected build.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-24 11:50:05 -05:00
Daniel Agar
611d50edf3
boards: holybro kakutef7 disable tone_alarm to save flash
2022-02-24 11:33:25 -05:00
Daniel Agar
8de2c80b34
mavlink: SCALED_IMU streams add temperature
...
- preference for accel or gyro temperature before mag
2022-02-23 14:05:31 -05:00
Daniel Agar
5b5d428189
boards: px4_fmu-v5_stackcheck disable fake_gps to save flash
2022-02-23 10:44:09 -05:00
Daniel Agar
01daf8d6d6
boards: omnibus_f4sd disable events module to save flash
2022-02-23 10:42:48 -05:00
Daniel Agar
11f617ca9b
ekf2: default to in air and not at rest
...
- this is a more conservative default if a vehicle isn't set (no land detector running)
- handled horizontal preflight failures in commander when disarmed
rather than overloading xy_valid and v_xy_valid flags
- ekf2 no longer depend on arming or standby status
2022-02-22 16:59:10 -05:00
Daniel Agar
d6d529539d
ekf2: consolidate and simplify gnd effect logic
2022-02-22 16:59:10 -05:00
Daniel Agar
1d7791dad6
commander: monitor GPS validity and EKF2 dead reckoning
...
- ekf2: expose dead reckoning as control status flags
- commander:
- add GPS validity check
- in AUTO MISSION if dependent on GPS then a loss of GPS will
2022-02-22 09:46:21 -05:00
Julian Oes
6021b8efb3
navigator: only apply breaking for multirotors
2022-02-22 09:41:22 -05:00
Julian Oes
fa6c051ae5
navigator: break smoothly when entering hold mode
...
This uses the existing breaking functionality when hold/loiter mode is
activated.
2022-02-22 09:41:22 -05:00
Julian Oes
f88dd28e85
navigator: extract breaking functionality out
...
This only moves the breaking functionality out from the reposition
command handling to a function, so that it can get re-used in other
places.
2022-02-22 09:41:22 -05:00
bresch
0e0e0d8be7
[AUTO COMMIT] update change indication
2022-02-22 11:49:25 +01:00
bresch
4f0a959244
gps_hgt: add and improve unit tests
2022-02-22 11:49:25 +01:00
bresch
edabfd2f0e
ekf_hgt: call specific height reset function instead of generic one
...
- Also use the delayed current data instead of newest that might not be
available (gps buffer is sometimes empty if the dt between samples is
larger than the delayed horizon).
- Separate "baro fault" from "baro intermittent": intermittent is a
temporary failure and should prevent from switching to baro right now,
but "fault" means that it should never be used anymore
- In case of height timeout, check for metrics but not for consistency
as the filter is likely to have diverged already.
2022-02-22 11:49:25 +01:00
bresch
cba73585e1
use recorded last sensor timestamp for intermittent check
2022-02-22 11:49:25 +01:00
Daniel Agar
f431b233f3
ekf2: preflight checker fix flow y innovation filter
2022-02-22 09:39:22 +01:00
Daniel Agar
4f62b01dc7
Tools/px4moduledoc: add new rpm_sensor subcategory
2022-02-22 07:57:30 +01:00
Charles Cross
f31f3370ef
Add support for Timer15 on H743 boards ( #19228 )
...
* Adds Timer15 to stm32_common, if the timer base is defined
* Adds Timer15 logic for DMA and AltFunc config on stm32h7 boards
* Adds TIM15 BDTR->MOE support in stm32_common timer init
* Adds support for TIM15 pwm channels on Matek H743 Slim
2022-02-21 16:52:38 -05:00
Daniel Agar
710185d2ad
drivers/magnetometer/rm3100: cleanup and simplify ( #19238 )
...
* switch to continuous mode at 75 Hz
* add simple failure count and reset mechanism
* add range checks and perf counts
2022-02-21 16:48:20 -05:00
Roman Dvořák
976c994156
Extend the PCF8583 driver to support multiple instances ( #19232 )
...
* Add some restart events into pcf8583 driver
Co-authored-by: Vít Hanousek <vithanousek@seznam.cz >
2022-02-21 16:47:16 -05:00
Daniel Agar
3c58932aff
boards: px4_fmu-v2_default disable ms4525 to save flash
2022-02-21 16:45:22 -05:00
Charles Cross
699f34ba83
drivers/magnetometer/rm3100: self-test procedure revision ( #19207 )
...
* Adds retry behavior and additional checks to RM3100 BIST
Signed-off-by: Charles Cross <charles@missionrobotics.us >
2022-02-21 11:27:42 -05:00
Beat Küng
960003a86a
control_allocator: fix weak authority matrix check & update
...
- use max(fabsf(val)) instead of max(val)
- use correct actuator count
2022-02-21 11:17:00 -05:00
Daniel Agar
591b7b6934
ekf2: add new estimator_gps_status.msg
...
- includes the estimator status check fail bits broken out as descriptive booleans
- absorbs ekf_gps_drift.msg
2022-02-21 08:58:59 -05:00
Daniel Agar
f8d7574d3c
ekf2: simplify global position publication validity check
2022-02-21 08:57:33 -05:00
fury1895
be92165c54
AirspeedSelector: fix messaging
2022-02-21 15:21:13 +03:00
David Sidrane
c0facec889
cdc_acm_check:Prevent USB disconect on param save
...
If the hardware support RESET lockout that has nArmed ANDed with VBUS
vbus_sense may drop during a param save which uses
BOARD_INDICATE_EXTERNAL_LOCKOUT_STATE to prevent external resets
while writing the params. If we are not armed and nARMRED is low
we are in such a lock out so ignore changes on VBUS_SENSE during this
time.
2022-02-21 10:56:41 +01:00
Julian Oes
9b35b680f6
gimbal: fix input selection
...
Once we have valid input we should use that and not overwrite our
update_result with the result from other inputs, otherwise the
automatic selection does not actually work.
This behavior means that only the first update will be used if there are
several sources updating in the same cycle.
2022-02-21 08:38:16 +01:00
Igor Mišić
3c09448daf
dataman: add silence flag for _file_initialize
2022-02-21 08:36:36 +01:00
murata
cc6c6c3b8c
power_monitor: Determine I2C communication errors
2022-02-20 16:05:44 -05:00
Daniel Agar
09e36e6cb4
gimbal: new pitch limits [MNT_LND_P_MIN, MNT_LND_P_MAX] when landed
2022-02-20 16:04:09 -05:00
Justin
59f28517c5
Force ignition to use version 5 (edifice) which is what it is built for so it doesn't default to a newer version
2022-02-19 19:04:26 +01:00
Daniel Agar
d147ad3a9a
gimbal: add parameter units
2022-02-18 14:15:58 -05:00
Daniel Agar
2a8aa17a81
mavlink: streams MOUNT_ORIENTATION populate time_boot_ms
2022-02-18 14:14:56 -05:00
Daniel Agar
1f77a3750e
mavlink: don't reset _src_addr_initialized on parameter updates
2022-02-18 14:14:36 -05:00
Daniel Agar
e0a8d217fc
mavlink increase HEARTBEAT timeout 1.5->2.5s
...
- tolerate missing one HEARTBEAT + jitter
2022-02-18 10:16:20 -05:00
Daniel Agar
1addbe469e
mavlink: STATUSTEXT increase stale message timeout
2022-02-18 10:16:20 -05:00
Daniel Agar
d5d50d5855
gyro_calibration: add additional validity check before finalizing calibrations
...
- this can slip through if sensors are running normally, but then stop publishing valid data
2022-02-18 09:12:30 -05:00
Jukka Laitinen
dab7b007de
Auto-generate a list of kernel-side built-in modules(drivers)
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-18 07:58:58 +01:00
Jukka Laitinen
9449ed6e66
Add support for protected build in drivers, systemcmds and modules Kconfig
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-18 07:58:58 +01:00
Jukka Laitinen
6071b87afc
platforms/common/uORB: Separate IOCTLs going through boardctl interface from the original ones
...
It was a mistake to mix these two together, it is simpler to implement the boardctl interface
for the protected build, if the boardctl ioctls are different
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-18 07:53:13 +01:00
Jukka Laitinen
f0d9f44f45
Add an ioctl handler to launch built-in modules in kernel side
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-18 07:53:13 +01:00
Jukka Laitinen
db3baf6c26
Add an ioctl interface for userspace to kernel calls
...
This adds an ioctl interface for NuttX protected build, allowing
system calls from user space to kernel for uORB, HRT and crypto
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-18 07:53:13 +01:00
Daniel Agar
8489cec08f
boards: spracing h7extreme keep icm42688p in RAM
...
- to make space move rc_update itcm -> sram
2022-02-17 10:30:14 -05:00
Daniel Agar
9aca693945
boards: spracing h7extreme add alternate IMU icm42688p
2022-02-17 10:30:14 -05:00
Silvan Fuhrer
c51dc3b4b7
ControlAllocator: Set all the elements of a row to 0 if that row has weak authority
...
Weak authority on a axis is currently defined as: none of the actuators have an
effectivness on this particular axis larger than 0.05.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-17 13:21:50 +01:00
Silvan Fuhrer
97a280d41d
CA: Tiltrotor: set tilts to exactly -1 or 1 if close to these end points
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-17 13:21:50 +01:00
Silvan Fuhrer
25f5152583
Tiltrotor: make sure tilt doesn't exceed the FW tilt angle
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-17 13:21:50 +01:00
Silvan Fuhrer
c13726af66
Enable DO_SET_SPEED commands outside of missions in other AUTO modes ( #18834 )
...
* Navigator: enable DO_CHANGE_SPEED for outside of mission
- update _mission_cruising_speed_mc/_fw also if DO_CHANGE_SPEED command
is received outside of mission (e.g. while Loitering doing an Orbit)
- if vehicle is in AUTO_LOITER when receiving the change speed, then immediately
apply it by doing a reposition without updating any other field than cruising_speed
and cruising_throttle
-when RTL is activated reset the cruising speed and throttle
* Navigator: reset cruise speed and throttle to default when VTOL-transitioning
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-17 11:19:02 +01:00
Jaeyoung-Lim
b0f9611eb9
NPFG: use cross product for matrix library
...
This removes the use of cross products from NPFG and takes advantage of the matrix library
2022-02-17 09:52:47 +01:00
Daniel Agar
ca97b9ba5f
drivers/gps: add new GPS_SAT_INFO parameter to enable satelitte_info
...
- this replaces the command line argument -s
2022-02-17 08:30:25 +01:00
Daniel Agar
abfa3d23a5
boards: matek h743-slim fix STM32_SDMMC_SDXFR_CLKDIV typo
2022-02-16 10:28:01 -05:00
David Sidrane
1c66fb44aa
holybro_kakutef7:fit in flash
2022-02-16 10:09:02 -05:00
David Sidrane
2e67b92b4d
px4_fmu-v5_stackcheck:Fit in flash
2022-02-16 10:09:02 -05:00
David Sidrane
3593cf795d
NuttX With DMA/FLASH Backports
2022-02-16 10:09:02 -05:00
David Sidrane
d05d7f4154
bl:Clean up formatting
2022-02-16 10:09:02 -05:00
David Sidrane
92590155fc
px4_fmu-v6x:Bootloader move to TELEM1 with DMA
2022-02-16 10:09:02 -05:00
David Sidrane
c7bd7323ec
serial_test:Fix infinte TX loop with H7/DMA
2022-02-16 10:09:02 -05:00
David Sidrane
b5916ac712
px4_fmu-v6x:Document the DMA usage
2022-02-16 10:09:02 -05:00
David Sidrane
7eefdd1e3d
px4_fmu-v6x:Enable DMA on TELEM{1|2}
2022-02-16 10:09:02 -05:00
Charles Cross
f9feb04f8b
Changes SDIO clock speed to 20MHz for the Matek H743 slim
...
Signed-off-by: Charles Cross <charles@missionrobotics.us >
2022-02-15 09:38:09 -08:00
Yannick Fuhrer
26ea70e729
Airspeed selector: fix condition for messaging ( #19173 )
...
Change warning message after airspeed failure on the ground,
recommend RTL only if flying.
2022-02-15 17:23:36 +01:00
Roman Bapst
6de5d24e00
Added VTOL Takeoff navigation mode ( #19027 )
...
* Commander: added support for MAIN_STATE_AUTO_VTOL_TAKEOFF
* navigator: added support for vtol_takeoff navigation mode
2022-02-15 14:56:57 +01:00
Silvan Fuhrer
374bcb105a
RTL: fill loiter radius in state Climb ( #19165 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-15 14:50:14 +01:00
Daniel Agar
5370733d62
ekf2: publish flow vel only if compensated flow is available
...
- fix a few publication timestamp_samples
2022-02-14 10:55:10 -05:00
Daniel Agar
b157afde6a
ekf2: prefer airspeed_validated over raw airspeed if available ( #19159 )
...
* ekf2: prefer airspeed_validated over raw airspeed if available
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-14 15:37:29 +01:00
Silvan Fuhrer
df0e402c44
CA: refactor logic for matrix updating
...
-pass flag EffectivenessUpdateReason into effectiveness, indicating if there was an external
update or not. Reasons for external updates are:
-config changes (parameter)
-motor failure detected or certain redundant motors are switched off to save energy
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-14 09:23:10 +01:00
Jukka Laitinen
36d440f895
Add IOCTL interface to uORBManager for nuttx protected/kernel build split
...
When building uORB for NuttX flat build, or for some other target, everything
works as before.
When building uORB for NuttX protected or kernel build, this does the following:
- The kernel side uORB library reigsters a boardctl handler for calls from userspace
and services the boardctl_ioctls by calling the actual uORB functions
- For user mode binaries, the uORBManager acts as a proxy, making boardctl_ioctl calls to the
kernel side
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-14 09:10:49 +01:00
Daniel Agar
8b9a856cf7
drivers/barometer: new ms5837 driver ( #18213 )
...
Co-authored-by: xn365 <xn_365@163.com >
2022-02-12 14:41:31 -05:00
PX4 BuildBot
41e48435c9
Update submodule mavlink to latest Sat Feb 12 12:38:48 UTC 2022
...
- mavlink in PX4/Firmware (9457e7b25c4fa51f5ccc0bd887760e910926ba8a): https://github.com/mavlink/mavlink/commit/311eee010bb82f5fb2e4e0f64f7961a83212b003
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/4b0558d0d10efbdd550cb5321d56f6a611d0ab14
- Changes: https://github.com/mavlink/mavlink/compare/311eee010bb82f5fb2e4e0f64f7961a83212b003...4b0558d0d10efbdd550cb5321d56f6a611d0ab14
4b0558d0 2022-02-11 Andrew Tridgell - added CANFD_FRAME and CAN_FILTER_MODIFY messages
7f032afe 2022-02-10 Daniel Agar - Apply suggestions from code review
9379a601 2022-02-06 Andrew Tridgell - common: added MAV_CMD_CAN_FORWARD and CAN_FRAME
2022-02-12 13:16:42 -05:00
Daniel Agar
fca886e05a
drivers/irlock: add SENS_EN_IRLOCK parameter to start driver
2022-02-11 22:57:56 -05:00
Silvan Fuhrer
2eba1847fd
HTE: add new parameter HTE_THR_RANGE to define range of estimated thrust
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-11 17:04:14 +01:00
Silvan Fuhrer
34805e43fd
HTE: remove unused method setMeasurementNoiseStdDev()
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-11 17:04:14 +01:00
bresch
493e35b72e
ekf_terr: reset rng fault when on ground
2022-02-11 10:57:45 -05:00
bresch
502ec7ef46
ekf_terr: fix unit test
...
the flags were valid ony because they were based on timeouts and when
starting the unit test, it takes a couple of seconds to actually timeout
2022-02-11 10:57:45 -05:00
bresch
2fb7b35a8b
ekf2_terr: refactor terrain estimator - flow aiding
2022-02-11 10:57:45 -05:00
bresch
33fd1849e0
ekf2_terr: refactor terrain estimator - rng aiding
2022-02-11 10:57:45 -05:00
bresch
5818974f0f
ekf: add range finder "faulty" status
...
When delclared faulty, the range finder cannot be used anymore
2022-02-11 10:57:45 -05:00
bresch
a3b2550f07
mc_auto: only check for offtrack, infront and behind in XY-plane
...
This fixes the issue when changing the altitude during a goto for
example, where the vehicle was going backwards and upwards to reach the
closest point to the line. Now the vehicle simply goes towards the
target waypoint.
2022-02-11 16:14:48 +01:00
alessandro
1febba315a
mantis: disable optical flow fusion in EKF2
...
Above grass fields I can frequently observe position
instabilities with the mantis due to the optical flow fusion.
Let's disable flow fusion for now.
2022-02-11 15:33:34 +01:00
Daniel Agar
0b9f60a037
drivers/rc_input: always provide RC_PORT_CONFIG parameter
...
- RC_PORT_CONFIG is disabled by default if the board doesn't have
CONFIG_BOARD_SERIAL_RC set
- allows user facing custom RC configuration that overrides board
defaults
2022-02-10 09:41:32 -05:00
Daniel Agar
97a75fc388
sensors: skip selection and failover checks during parameter update cycles
2022-02-10 09:31:23 -05:00
Beat Küng
b6607a7b78
battery_status: do not publish if no voltage channel is defined
...
This is the case for boards with digital readout, like v5x, but still
enable the battery_status module for external analog driver options.
An alternative would be to not run battery_status depending on config.
2022-02-09 16:54:45 -05:00
Nico van Duijn
10ad553f1d
v5x: add battery_status module to enable analog bat sensing
2022-02-09 16:54:45 -05:00
Beat Küng
28c27f1b9a
px4/fmu-v5x: add ADC_ADS1115_EN param to use external ADC
2022-02-09 16:54:45 -05:00
David Sidrane
fd1aa3cfb9
matek_gnss-m9n-f4:Use CONFIG_BOARD_SERIAL_GPSn for serial_passthru
2022-02-09 13:11:52 -05:00
David Sidrane
0c936e4fd2
serial_passthru:Move CONFIG_xxx to serial_passthru
2022-02-09 13:11:52 -05:00
Silvan Fuhrer
81b08a0168
FW Pos C: set position_sp type to position during VTOL backtransition
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-09 11:39:47 -05:00
Silvan Fuhrer
1d6396b418
Navigator: VTOL: track virtual WP 1m ahead of vehicle during backtransition in Land mode
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-09 11:39:47 -05:00
Jukka Laitinen
dcde0d0559
src/drivers/sw_crypto: Late initialize tomcypt
...
This saves a lot of flash space, in case functions from libtomcrypt
are not used (currently only RSA related).
When RSA is not used, the linker can now drop all libtomcrypt related things.
This is especially relevant for bootloaders using the SW crypto.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-09 10:28:06 -05:00
Daniel Agar
a95da715d5
Jenkins: HIL remove airframe 4018 test
2022-02-09 10:08:59 +01:00
Beat Küng
86860808e3
ROMFS: set CA_* geometry params for some of the generic airframes
...
Not enabled, makes it easier to switch.
2022-02-09 10:08:59 +01:00
Beat Küng
a2ba613254
ROMFS: remove 4018 + 6003 ctrlalloc airframes
2022-02-09 10:08:59 +01:00
PX4 BuildBot
33ce1b9b64
Update submodule mavlink to latest Wed Feb 9 00:39:13 UTC 2022
...
- mavlink in PX4/Firmware (ed8c1dca2e792e95d9ab1ba72a22bc9658f10b79): https://github.com/mavlink/mavlink/commit/51abf3c82b3d7137406459dc9b337e57637711ae
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/311eee010bb82f5fb2e4e0f64f7961a83212b003
- Changes: https://github.com/mavlink/mavlink/compare/51abf3c82b3d7137406459dc9b337e57637711ae...311eee010bb82f5fb2e4e0f64f7961a83212b003
311eee01 2022-02-04 Peter Barker - common.xml: deprecate SET_HOME_POSITION message (#1791 )
63d62522 2022-02-02 Julian Oes - minimal: add MAV_TYPE_WINCH (#1789 )
2022-02-08 21:50:55 -05:00
PX4 BuildBot
421ca2fc48
Update submodule sitl_gazebo to latest Wed Feb 9 00:39:03 UTC 2022
...
- sitl_gazebo in PX4/Firmware (a088277fe866860272f1ef21773f5be1b6832b11): https://github.com/PX4/PX4-SITL_gazebo/commit/2750fe233c6a38dbe60e545ac0ec878d6ac20b1e
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/25138e803ee8525ee5fe4e6d511506e88e3f819c
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/2750fe233c6a38dbe60e545ac0ec878d6ac20b1e...25138e803ee8525ee5fe4e6d511506e88e3f819c
25138e8 2021-07-16 Julian Oes - gimbal_controller: fix attitude status
2022-02-08 20:52:12 -05:00
Daniel Agar
b24aa071b6
Jenkins: hardware always dump pyserial debug (silently)
2022-02-08 17:22:57 -05:00
Daniel Agar
6686736cff
drv_pwm_output.h fix dshot cmd typo
2022-02-08 17:11:49 -05:00
Daniel Agar
86f81680fb
sensors: check uORB::SubscriptionData validity before use
2022-02-08 13:19:01 -05:00
Oleg Kalachev
21b78f9d05
Enable mpu9250’s magnetometer on fmu-v4
2022-02-08 13:18:39 -05:00
Steve Nogar
dce067df83
add configurable rtps rate parameter
2022-02-08 19:03:20 +01:00
Daniel Agar
133fe0cfb1
local_position_estimator: move to INS0 work queue (for significantly more stack)
2022-02-08 11:16:49 -05:00
Daniel Agar
be3da5089c
uORB: uORBDeviceNode use px4_cache_aligned_alloc
2022-02-08 10:20:50 -05:00
Viktor Vladic
f4d02a2937
MatekH743 board_id, usb vid/pid changes, and MPU6000 delay before transfer - not after ( #18733 )
...
* Make board_id compatible with ardupilot
* Initialize outputs for CAM1/CAM2 and Vsw pad
* Correct board type 1013 in bootloader to match AP
* Change usb vendor string to "Matek"
* Change cdcacm pid to 1013
* Comment out FLASH_BASED_PARAMS because of #15331
2022-02-07 19:55:49 -05:00
Julian Oes
490a0c473b
Rename vmount to gimbal
2022-02-07 19:21:15 -05:00
Julian Oes
853047c643
Mantis: use gimbal auto input
...
This allows RC and mavlink gimbal v2 input.
2022-02-07 19:21:15 -05:00
Julian Oes
39f0e97245
vmount: refactor for v2 auto input, test command
...
This is a bigger refactor of vmount to clean it up and plug some holes
in functionality.
The changes include:
- Fixing/simplifying the test command.
- Changing the dependencies of the input and output classes to just the
parameter list.
- Adding a separate topic to publish gimbal v1 commands to avoid
polluting the vehicle_command topic.
- Removing outdated comments and author lists.
- Extracting the gimbal v2 "in control" notion outside into control_data
rather than only the v2 input.
2022-02-07 19:21:15 -05:00
Julian Oes
f2216dff55
mavlink: don't send gimbal_device_attitude_status
...
If we receive gimbal_device_attitude_status by mavlink we should not
re-send it as we are already supposed to be forwarding mavlink traffic
from the gimbal to the ground station.
2022-02-07 19:21:15 -05:00
Julian Oes
7e7a99b542
mavlink: handle for GIMBAL_DEVICE_ATTITUDE_STATUS
...
That way we can log it later.
2022-02-07 19:21:15 -05:00
Daniel Agar
5b07398b3e
Tools/HIL/test_airframes.sh: only attempt setting first 3 MAV_x_CONFIG
...
- MAV_3_CONFIG doesn't exist
2022-02-07 16:31:27 -05:00
Daniel Agar
f9d87fd97a
sensors/vehicle_angular_velocity: improve error handling (especially during initial selection)
2022-02-07 12:47:02 -05:00
Daniel Agar
3a37fd92e6
Jenkins: HIL temporarily tolerate ERRORs during 'uorb top' (long running command)
...
- on older boards if the sensor auto cal completes while this is
running it causes a brief sensor timeout
2022-02-07 10:26:48 -05:00
Daniel Agar
052adfbfd9
borads: holybro_kakutef7 disable modules/events to save flash
2022-02-06 16:53:13 -05:00
Daniel Agar
3a741cb9c9
boards: bitcrazy_crazyflie disable gyro_fft to save flash
2022-02-06 16:53:13 -05:00
Thomas Debrunner
b4087ebd2b
mc_pos_control: increase the default crawl speed for three-stage-landing approach for a more robust landing detection
2022-02-04 21:56:20 -05:00
Matthias Grob
4ef8cead3d
mc_pos_control_params: correct crawl speed reference
2022-02-04 21:56:20 -05:00
Matthias Grob
1df9d6fca6
MulticopterLandDetector: fix crawl speed parameter fetching
2022-02-04 21:56:20 -05:00
Thomas Debrunner
fb8b9b647a
land-detector: switch to crawl speed for intent detection
2022-02-04 21:56:20 -05:00
Thomas Debrunner
2a6d9bc1dd
fligh-mode-manager: First implementation of a three-stage-landing for multirotos, in case LIDAR is available
2022-02-04 21:56:20 -05:00
Daniel Agar
893cdf8f38
ekf2: test external vision adjustments after lowering fake position fusion variance
2022-02-04 21:48:32 -05:00
Daniel Agar
6b1750d8be
ekf2: lower fake position observation variance when at rest
2022-02-04 21:48:32 -05:00
Daniel Agar
c028b964e2
bmm150: minor changes to match reference driver
2022-02-04 19:57:24 -05:00
Beat Küng
8b2016b4ed
fix protocol_splitter: increment i properly in scan_for_packets
...
This also guarantees that i is increased in every loop iteration.
Before it was possible to enter a busy loop.
2022-02-04 09:42:52 -05:00
Daniel Agar
cf3db0d313
mavlink: don't send_mission_current if mission invalid
2022-02-04 09:40:25 -05:00
Silvan Fuhrer
26dba1407b
Commander: VTOL quadchuate also triggers a RTL in Loiter and VTOL_Takeoff modes, not just in Mission ( #19123 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-02-03 14:18:28 +01:00
JaeyoungLim
f82c722653
Publish correct orbit status with goto ( #19102 )
...
For fixedwings, the orbit status was publishing zero radius when a goto waypoint was being passed.
This commit corrects this by passing the default loiter radius as the guidance logic was using
2022-02-03 10:16:39 +01:00
bresch
917910f3e2
ekf: pass a float by copy instead of a constant ref
2022-02-02 17:43:25 -05:00
bresch
3077f27821
ekf: use float instead of Vector2f for innov gate in pos/vel fusion
...
We always use the same innovation gate for X and Y anyway
2022-02-02 17:43:25 -05:00
Daniel Agar
5fb0084524
ekf2: remove unused shared fields for last velocity observation and variance
2022-02-02 17:43:25 -05:00
Daniel Agar
8a0581516c
ekf2: don't store _auxvel_sample_delayed
2022-02-02 17:43:25 -05:00
Daniel Agar
452b5e94b4
ekf2: don't store _drag_sample_delayed
2022-02-02 17:43:25 -05:00
Daniel Agar
138ff7a316
sensors: ensure that best accel/gyro is in bounds
2022-02-02 17:14:46 -05:00
Daniel Agar
07c273fc31
sensors/vehicle_angular_velocity: print full sensor_selection if device id not found
2022-02-02 17:14:46 -05:00
Daniel Agar
94604ff21a
Jenkins: hardware pyserial cat shouldn't fail the build
2022-02-02 14:17:02 -05:00
Peter van der Perk
9f97793491
Generate C/C++ header to expose px4board kconfig symbols to the preprocessor
2022-02-02 13:23:21 -05:00
Jaeyoung Lim
2fc95bb369
Rebase fix
...
Use getnavspeed_2d for groundspeed
2022-02-02 17:16:19 +01:00
Jaeyoung Lim
3dd5c1fbaf
Enable NPFG by default on the believer
2022-02-02 17:16:19 +01:00
Jaeyoung Lim
3a9c5c3178
Use acceleration to pass path curvature
2022-02-02 17:16:19 +01:00
Jaeyoung Lim
e2741f988a
Add interface for passing path tangent and closest point directly
...
This commit adds an interface to pass the path tangent and closest point directly to NPFG using the offboard interface
2022-02-02 17:16:19 +01:00
David Sidrane
f460611098
Fix serial_test stack warning
2022-02-02 11:12:53 -05:00
Peter van der Perk
efd3bc1794
Serial_test move g_cl and g_mod from heap to stack to save memory by not preallocating them
2022-02-02 07:21:43 -08:00
Daniel Agar
88ffc177f7
ekf2: utils add getEulerYaw() that uses the best rotation sequence
2022-02-02 08:54:03 -05:00
Daniel Agar
c3e0b93fc8
ekf2: remove unnecessary inlines
2022-02-02 08:50:49 -05:00
Hamish Willee
26d5ac4f58
GPS_YAW_OFFSET param docs: use rover and moving base terminology
2022-02-02 07:39:01 +01:00
David Sidrane
3358712b92
UAVCAN Node Correct C to Kelvin conversion
2022-02-01 21:49:29 -05:00
David Sidrane
ec441fdba6
gnss-m9n-f4:Add serial_passthru
2022-02-01 21:49:29 -05:00
David Sidrane
3fecf8a23c
Added ability to launch passthru on u-center traffic
2022-02-01 21:49:29 -05:00
David Sidrane
48c32f7795
Added serial passthru
...
This addes the command serial_passthru which will pass data from one
device to another. This can be used to use u-center connected to USB
with a GPS on a serial port.
Usage: serial_passthru [arguments...]
-e <val> External device path
values: <file:dev>
-d <val> Internal device path
values: <file:dev>
[-b <val>] Baudrate
default: 115200
[-t] Track the External devices baudrate on internal device
With the -t option baudrate changes made on the PC connected to the USB
will be set to the intrenal device.
2022-02-01 21:49:29 -05:00
David Sidrane
0c8a5b3da1
matek-gnss-m9n-f4:Enable IO compensation
2022-02-01 21:49:29 -05:00
David Sidrane
2761112466
NuttX with CDCACM/OTGID backports
...
disable otg id
cdcacm:support c_cflag in the termios structure
and speed
2022-02-01 21:49:29 -05:00
David Sidrane
cb06f82f0f
gnss-m9n-f4:Board support clean up
...
SD is on SPI3 - correct pin mapping
Fix DMA Mapping for all SPI and RX DMA on U[S]ART RX
Fix Memory MAP SRAM size
Removed unused GPIO
Used proper I2C definitions
Ensure Watchdog is configured for debugging
Fixed FLASH param definitions
Removed unedded SPI init
matek_gnss-m9n-f4:Correct Board ID and Size
Build order SJF
Added Support for F40x
2022-02-01 21:49:29 -05:00
dirksavage88
d92244b664
Initial Matek m9nf4 can node support
...
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Added uavcan board identity
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Added usb.c, LED rework may be needed
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
PX4 dates added to all files
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Matek M9NF4 CAN Node initial board support
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Changed GPS to ttyS3 in board sensors, led board on/off definitions
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Added app descriptor section to canbootloader linker script
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Changed board naming convention to match vendor
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Changed canbootloader and nsh menuconfig
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Test defconfig changes, IRQ hardfault in bootloader
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Working canbootloader, App firmware stil WIP
Working App firmware: changed romfsroot to 'cannode', TODO: verify GPS & IMU config
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
TODO: Debug GPS no sats/low sats issue, no magnetometer on some boards
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
2022-02-01 21:49:29 -05:00
Daniel Agar
f3e2a197ad
move vehicle at rest detection ekf2 -> land_detector
...
- move vehicle at reset detection ekf2 -> land_detector
- ekf_unit: reduce init period
- Fake fusion is when at rest is quite strong and makes the variance reduce rapidly. Reduce the amount of time we wait before checking if the variances are still large enough.
- ekf_unit: reduce minimum vel/pos variance required after init
- Fake pos fusion has a low observation noise, making the vel/pos variances reduce quickly.
Co-authored-by:: bresch <brescianimathieu@gmail.com >
2022-02-01 17:50:19 -05:00
Daniel Agar
e387f302f9
mavlink: streams/COMMAND_LONG don't send internal vehicle_commands
2022-02-01 09:15:10 -05:00
Jukka Laitinen
f8a090e85e
Remove HYGROMETERS from fmu-v5 stackcheck build and rename to COMMON_HYGROMETERS
...
The stackcheck build flash space overflows after adding hygrometers.
Also follow the naming convention of other similar config flags, and rename the
config.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-01 08:56:25 -05:00
Beat Küng
a4206ba553
logger: log excluded optional topics
...
Can be displayed with:
ulog_info <file> -m excluded_optional_topics
2022-02-01 08:40:02 +01:00
Roman Dvořák
2b1229786e
Multi instance SHT3x driver support
2022-01-31 21:38:26 -05:00
Roman Dvořák
ed475ca324
SHT3x driver
...
SHT3x driver, clean code
changes leading to merge TFHT with CUAV hygrometer
Delete humidity_temperature.msg
Update CMakeLists.txt
rename 'atmosphefir_quantities' to 'hygrometers'
fix logging
removed cmake files
fix PR issues
2022-01-31 21:38:26 -05:00
mcsauder
e554f0174d
Format whitespace and group checkall() methods together in geofence class.
2022-01-31 21:01:03 -05:00
Matthias Grob
ae0bb8371d
Commander: message planned battery action with warning together
2022-01-31 20:27:06 -05:00
Matthias Grob
973116c7a4
commander_params: clarify failsafe delay procedure description
2022-01-31 20:27:06 -05:00
Matthias Grob
cd560da57c
Commander: correct battery failsafe message severity level
2022-01-31 20:27:06 -05:00
Matthias Grob
405852b5c8
Commander: only disallow RC override during battery failsafe delay
2022-01-31 20:27:06 -05:00
Matthias Grob
5ec21835a4
Commander: ensure low battery failsafe flying unatended without GPS
2022-01-31 20:27:06 -05:00
Matthias Grob
1911ec0085
Commander: fix user messageing for low battery failsafe delay
2022-01-31 20:27:06 -05:00
Matthias Grob
52a9040c62
BatterySimulator: recharge battery upon disarming
2022-01-31 20:27:06 -05:00
Matthias Grob
955aad0dfb
Commander: consistent hysteresis initialization
2022-01-31 20:27:06 -05:00
Matthias Grob
d10f9030ad
Commander: add delay before executing low battery failsafe action
2022-01-31 20:27:06 -05:00
Matthias Grob
3af315f2c3
Commander: change battery failsafe to return action instead of executing
2022-01-31 20:27:06 -05:00
Matthias Grob
8eed43b515
Commander: put battery warning and failsafe action in separate functions
2022-01-31 20:27:06 -05:00
Matthias Grob
367b6123e1
state_machine_helper: change main state directly also for low battery RTL
2022-01-31 20:27:06 -05:00
Matthias Grob
f49bd9956b
state_machine_helper: reuse battery action conditions
2022-01-31 20:27:06 -05:00
Matthias Grob
95b5bc0d84
state_machine_helper: separate low battery warning from action
2022-01-31 20:27:06 -05:00
Jukka Laitinen
70872d94c8
Split px4_layer into kernel and userspace parts for nuttx protected build
...
Split the px4_layer into user and kernel space libraries. Add some stubs for
user-space (e.g. version) where an interface to the kernel needs to be added
Use posix-versions for cpuload.cpp and print_load.cpp for userspace; these link to nuttx internals. This functinality could be built on top of posix (e.g. procfs) interfaces
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-31 20:26:08 -05:00
Jukka Laitinen
3a6ebe5fc1
NuttX Cmake changes to build combined kernel+userspace image in nuttx protected build
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-31 20:26:08 -05:00
Jukka Laitinen
1f9ace3901
boards/px4/fmu-v5: Add linker scripts for kernel-userspace split
...
These scripts are used in protected build configuration
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-31 20:26:08 -05:00
Daniel Agar
999737ddd5
ekf2: refactor mag control
...
- remove class _mag_sample_delayed
- update mag fusion call graph to use mag sample delayed functionally
- Ekf::resetMagHeading()
- use low pass mag directly, but check if valid (magnitude)
- MAG_FUSE_TYPE_INDOOR treat like auto if heading required
2022-01-31 11:47:10 -05:00
Daniel Agar
ad447ab223
commander: respect control mode for prearm requirements
...
- preflight tolerate ekf2 warnings if not in an attitude/velocity/position mode (eg manual or acro)
2022-01-31 09:48:37 -05:00
Daniel Agar
90358f078f
add odometry reset counter (ekf2, mavlink, etc)
2022-01-31 09:19:36 -05:00
mcsauder
463ac8e8a1
Standardize method name style in navigator_main.cpp and whitespace formatting in navigator.h
2022-01-29 21:36:11 -05:00
PX4 BuildBot
3862a24b8e
Update submodule sitl_gazebo to latest Sat Jan 29 00:39:00 UTC 2022
...
- sitl_gazebo in PX4/Firmware (3b277667ff ): https://github.com/PX4/PX4-SITL_gazebo/commit/831aa36fea6a1b53d083e0bbad2faf9b31807669
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/2750fe233c6a38dbe60e545ac0ec878d6ac20b1e
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/831aa36fea6a1b53d083e0bbad2faf9b31807669...2750fe233c6a38dbe60e545ac0ec878d6ac20b1e
2750fe2 2022-01-24 Jaeyoung-Lim - Improve realtime factor for standard_vtol
2022-01-28 22:56:51 -05:00
murata
3b277667ff
tfmini: If the distance is 0xFFFF, a negative value is returned
2022-01-28 17:31:12 -05:00
Daniel Agar
274d0d65c6
lib/cdev/posix: increase max FDs 256->512
2022-01-28 17:30:53 -05:00
Jukka Laitinen
058302ecdb
Link px4iofirmware against nuttx_mm
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-28 17:30:13 -05:00
Jukka Laitinen
32c53ff2dd
Link rc against nuttx_fs in nuttx builds
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-28 17:30:13 -05:00
Jukka Laitinen
9e999a39be
Revert erroneous linking of drivers__device to px4_work_queue
...
This was a mistake in commit 91b812fc42
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-28 17:30:13 -05:00
Jukka Laitinen
a2dc6e63cf
Fix sdcard logging when crypto is used but algorithm is set to NONE
...
If the board supports encrypting logfiles, but the parameter SDCARD_ALGORITHM is set to NONE,
the log should be written to the sdcard in plaintext format. This fixes a bug which caused
logger to hang in mutex instead.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-28 17:29:51 -05:00
Daniel Agar
0104b84289
logger: PX4_SITL log all ekf2 publications at full rate for replay
2022-01-28 07:46:54 +01:00
Daniel Agar
d2ce9a8560
ROMFS: rc.replay fix ulog_params argument
2022-01-28 07:46:54 +01:00
Jukka Laitinen
70704ff9d6
platforms/nuttx/src/px4/common/CMakeLists.txt: Link px4_layer to nuttx_mm for gran allocators
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
4c75f1d505
platforms/nuttx/CMakeLists.txt: fixes to accommodate other linker changes
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
e1f2bff9be
Fix parameters building for nuttx protected/kernel builds
...
- Don't link to px4_layer
- Don't link to flashparams; flashparams would work only in kernel side
- Add missing link to px4_platform
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
705171eb53
Fix linking for posix targets
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
138f584e70
fw_pos_control_l1: Add a missing dependency to motion_planning
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
4c3234af38
mavlink: fix linking
...
- link to nuttx_apps if CONFIG_NET is defined for "netlib_get_ipv4netmask"
- link to tunes
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
e959fcf9d1
bootloader: link stm bootloaders to nuttx_arch for flash functions
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
fe5059b0e8
s32k1xx/led_pwm: link to arch_io_pins
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
1326c51a1c
esc_battery: Link to battery library
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
03c0a2d56c
Fix some cmake / linker depenencies for boards
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
91b812fc42
link drivers__device to nuttx_karch instead of nuttx_arch in protected build
...
On protected/kernel build the library would be karch.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
700c13cdff
Remove linking of arch_io_pins into drivers_board
...
This goes the other way around; arch_io_pins is using the pin
definitions from drivers_board, so the drivers_board needs to be linked
into arch_io_pins
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
68729e8ec0
nuttx/rpi io_pins: link to drivers_board for timer_io_channels dependency
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
d181fe0cee
nuttx/stm io_pins: link to drivers_board for timer_io_channels dependency
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
76d4b6c7d0
arch_board_reset: link to nuttx_arch / nuttx_karch for up_systemreset dependency
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
7bb33e65ae
Remove px4_work_queue linking to px4_platform
...
Remove linking to px4_plaform in here; this breaks linking for nuttx protected build
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
98906c224b
Don't link px4_platform directly to uORB
...
Since uORB is split into kernel and userspace parts, it is no longer possible to just
link uORB into px4_platform, which is used in both kernel and user side.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
54f1e12684
Link arch_spi with drivers_board
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
51ceb9a85e
Add support for compiling modules into kernel side
...
Define __KERNEL__ macro during compilation and place the module in separate library
Remove default library linking to m or libc on NuttX. Add these in platform layer instead, since
they are different on kernel and user side
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
714df398eb
lib/version: Don't link to drivers_board
...
The needed version specific things come from px4 layer. Since version
is used both in kernel an user sides in protected build, it can't directly
link to drivers_board
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
ff4eae2c9b
Fix px4_impl_os for protected build
...
For NuttX protected or kernel build, the prebuilds can't contain libraries which are
different for kernel and user-space in protected/kerenl builds
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Jukka Laitinen
d94cc1e114
Add kernel/userspace and nuttx_syscall libraries to build
...
Build NuttX proxies, stubs and separate user space and kernel space libraries
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-01-27 12:42:40 -05:00
Daniel Agar
49d9d1c987
ekf2: only set fault status bad_acc_clipping if clipping frequently
2022-01-27 09:59:50 -05:00
Daniel Agar
f499749c23
ekf2: mag field strength check respect requirements
...
- requires valid mag data (_mag_data_ready)
- respect mag_fusion_type (including MAG_FUSE_TYPE_INDOOR)
2022-01-27 09:05:13 -05:00
CUAVmengxiao
0ddf76ed7f
uavcan: Add support for BatteryInfoAux message
2022-01-26 13:44:48 -05:00
CUAVmengxiao
425d03d909
msg: Add full_charge_capacity_wh
2022-01-26 13:44:48 -05:00
zhaoxiaowei
996b01acbc
uavcannode need link conversion
2022-01-26 13:43:29 -05:00
Roman Dvořák
c8349811d1
Enable logging of mavlink tunnel messages
...
Co-authored-by: Vit Hanousek <vithanousek@seznam.cz >
2022-01-26 11:10:43 -05:00
Daniel Agar
ae3070bbf1
ekf2: make filter update period configurable
...
- introduces new parameter EKF2_PREDICT_US to configure the filter
update period in microseconds
- actual filter update period will be an integer multiple of IMU
2022-01-26 10:57:09 -05:00
Daniel Agar
3f25349eb9
commander: don't reject VEHICLE_CMD_DO_SET_ACTUATOR
2022-01-25 18:44:58 -05:00
Oleg Kalachev
2945ce7c87
ekf2: fuse optical flow when magnetometer is disabled
...
Co-authored-by: bresch <brescianimathieu@gmail.com >
2022-01-25 15:42:10 +01:00
bresch
82e88a9547
[AUTO COMMIT] update change indication
2022-01-25 15:07:48 +01:00
bresch
d20e46567e
ekf2: improve flow for terrain unit test
2022-01-25 15:07:48 +01:00
bresch
1502d77df2
ekf: refactor fake position control logic
2022-01-25 15:07:48 +01:00
Matthias Grob
42404ade77
FlightTaskOrbit: Use cruise speed and manual acceleration for radius and velocity changes
...
instead of arbitrary fractions of the maximum radius and velocity.
2022-01-25 11:45:31 +01:00
Matthias Grob
7c55229db7
FlightTaskOrbit: Fix altitude adjustment by stick
...
This is done by inheriting from FlightTaskManualAltitudeSmoothVel again.
The altitude change by command is taken care of by switching
to the apporach when the altitude difference is big enough and
switching back once the altitude is close enough.
The altitude of the command is not perfectly reached but this can
only be done smoothly when the Orbit has full control over the
altitude smoothing. The independent altitude smoothing is not kept
because it was lacking stick handling like altitude lock and smooth
transitions when opening and closing the vertical position loop.
2022-01-25 11:45:31 +01:00
Matthias Grob
d73d8f390b
FlightTaskOrbit: Fix vertical speed limit
2022-01-25 11:45:31 +01:00
Matthias Grob
38de07186d
FlightTaskOrbit: include acceleration and jerk in approach setpoint publishing
...
I think they were forgotten and it leads to side effects:
- The acceleration feed-forward does not get executed
- The acceleration setpoint is NAN when initializing the altitude
smoothing when arriving at the circle
2022-01-25 11:45:31 +01:00
Matthias Grob
b9fb8490ba
FlightTaskOrbit: initialize position smoothing with previous setpoints instead of current state
2022-01-25 11:45:31 +01:00
Matthias Grob
e0337a484b
FlightTaskOrbit: remove unnecessary _sanitizeParams() in activation
...
the parameters are anyways sanitized on every update so even if activate()
sets unfeasible one's they get adjusted on the first update.
2022-01-25 11:45:31 +01:00
Matthias Grob
661496ab24
FlightTaskOrbit: improved naming in applyCommandParameters()
2022-01-25 11:45:31 +01:00
Matthias Grob
8525a8e520
FlightTaskAuto: fix typo pos(i)tion
2022-01-25 11:45:31 +01:00
Thomas Debrunner
4671a741dc
FlightTaskOrbit: Do not switch out of circle orbit control logic on radius change.
2022-01-25 11:45:31 +01:00
Beat Küng
bbc2b703c3
mavsdk_tests: update catch2 to 2.13.8
...
Fixes this issue on Fedora: https://github.com/catchorg/Catch2/issues/2178
2022-01-24 16:16:29 -05:00
Daniel Agar
8d03e71c16
drivers/magnetometer/bosch/bmm150: init and self test improvements
...
- if self test fails consistently proceed with startup, but report failure
2022-01-24 16:16:03 -05:00
Daniel Agar
8217e0f335
drivers/magnetometer/bosch/bmm150: add self test fail perf counter to status
2022-01-24 13:06:32 -05:00
Daniel Agar
5ded1aedcb
sensors/vehicle_angular_velocity: add IMU_GYRO_DNF_HMC to configure number of ESC RPM notch filter harmonics
2022-01-24 09:23:03 -05:00
SungTae Moon
4c6e746360
uorb graph: fix the link problem for multi topics ( #19062 )
2022-01-24 09:18:21 +01:00
Jaeyoung-Lim
ee98a3336d
Spawn at different height for multivehicle simulation
...
This commit fixes the spawn location of the multivehicle gazebo sitl script
2022-01-23 17:59:42 -08:00
Daniel Agar
07e6c274d5
uavcan/uavcannode: bridge LogMessage and PX4 ORB_ID(log_message_s)
2022-01-23 20:21:39 -05:00
PX4 BuildBot
ed28b216c7
Update submodule sitl_gazebo to latest Sat Jan 22 12:38:57 UTC 2022
...
- sitl_gazebo in PX4/Firmware (6203ad25c7 ): https://github.com/PX4/PX4-SITL_gazebo/commit/27298574ce33a79ba6cfc31ed4604974605e7257
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/831aa36fea6a1b53d083e0bbad2faf9b31807669
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/27298574ce33a79ba6cfc31ed4604974605e7257...831aa36fea6a1b53d083e0bbad2faf9b31807669
831aa36 2021-10-09 Shaochang Tan - fix imu noise model.
2022-01-22 12:24:49 -05:00
PX4 BuildBot
6203ad25c7
Update submodule mavlink to latest Sat Jan 22 00:39:17 UTC 2022
...
- mavlink in PX4/Firmware (a16a8dceb1b2d234ae963c74621c147f521abce9): https://github.com/mavlink/mavlink/commit/3d8092006ec1b2321f74e84039dadb1ebd3d1f37
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/51abf3c82b3d7137406459dc9b337e57637711ae
- Changes: https://github.com/mavlink/mavlink/compare/3d8092006ec1b2321f74e84039dadb1ebd3d1f37...51abf3c82b3d7137406459dc9b337e57637711ae
51abf3c8 2022-01-21 Julian Oes - Component information: add note (#1785 )
f5694b29 2022-01-19 Julian Oes - component_info: re-use protocol capabilities (#1786 )
2022-01-21 23:10:05 -05:00
Beat Küng
92769bd2b2
dshot: remove BOARD_DSHOT_MOTOR_ASSIGNMENT & handle timer channel gaps
2022-01-21 20:41:15 -05:00
Daniel Agar
4de9c598fa
bmm150: retry probe up to 3 times
2022-01-21 15:51:43 -05:00
David Sidrane
a11fe60135
imxrt:ADC extend timeout
2022-01-21 13:07:44 -05:00
Daniel Agar
7cb8ed3a1f
sensors/vehicle_gps_position: don't work with 64 time with 32 bit floats
2022-01-21 09:18:49 -05:00
JaeyoungLim
0607982b23
Publish orbit status also when the waypoint is a loiter waypoint ( #19048 )
...
* Publish orbit status also when the waypoint is a loiter waypoint
* Remove redundant orbit status publishing
2022-01-21 09:13:03 +01:00
Beat Küng
bcd057ac3e
uORB: fix copy-paste mistake in orb_print_message_internal
...
Could have led to invalid memory access.
2022-01-20 12:58:20 -05:00
bresch
a2260e53da
ekf2: replace yaw failure detection criteria
...
The existing logic using the angle between velocity vectors failed to
determine a yaw failure in practice because the state velocity is often
too small compared to its uncertainty to be used. In all the failures
reported, the yaw emergency estimator converged properly and yaw reset
would have fixed the issue.
A much simpler check using the yaw difference between the main EKF
and the emergency estimator is now used to tell if the vel/pos update
failure is most likely caused by a wrong heading.
2022-01-20 11:54:24 +01:00
Daniel Agar
446729566d
platforms/nuttx: px4io_serial always cleanup DMA before next bus exchange
...
- this really shouldn't be necessary, but worst case it's harmless and
much better than potentially falling out of the sky
2022-01-19 18:00:18 -05:00
Jaeyoung Lim
0dea56f88b
Use current_sp for publishing orbit status
2022-01-19 12:00:03 -05:00
Jaeyoung-Lim
dec5e7e9c8
Publish orbit status whenever the vehicle is in loiter
...
This commit moves the publish orbit status to be published whenever the vehicle is considering a loiter setpoint
2022-01-19 12:00:03 -05:00
Thomas Stastny
19c98b8841
npfg: fix typo in Vector2f indexing
2022-01-19 11:17:44 -05:00
bresch
e89e3c1b0c
ekf2: extract logic to test yaw emergency estimate quality
2022-01-19 09:05:41 -05:00
bresch
ea80c5027e
ekf2: split yaw estimator state getter into several functions
2022-01-19 09:05:41 -05:00
dagar
476c1e5c09
[AUTO COMMIT] update change indication
2022-01-19 09:04:53 -05:00
bresch
ffebd8e771
ekf2: initialize cos tilt variable assuming no tilt
2022-01-19 09:04:53 -05:00
Daniel Agar
92a5bbe97f
ekf2: improve ring buffer sizing and dynamically allocate
2022-01-19 09:04:53 -05:00
Daniel Agar
36605bfff6
sensors: lower SENS_MAG_RATE default
...
- reduce estimator 3D mag fusion cpu load (-3% on Pixhawk4)
2022-01-19 08:51:57 -05:00
Matthias Grob
c9f7c20d46
MulticoperPositionController: time failsafe messages together
...
The following output instead of printing the
action "stop and wait" just once:
WARN [mc_pos_control] invalid setpoints
WARN [mc_pos_control] invalid setpoints
WARN [mc_pos_control] Failsafe: stop and wait
WARN [mc_pos_control] invalid setpoints
WARN [mc_pos_control] Failsafe: stop and wait
WARN [mc_pos_control] invalid setpoints
WARN [mc_pos_control] Failsafe: stop and wait
2022-01-19 14:31:19 +01:00
Matthias Grob
d4e356a1ac
PosititionControl: fix integrator windup with invalid setpoint
2022-01-19 14:31:19 +01:00
Matthias Grob
8811482f1d
PositionControlTest: add integrator windup with invalid setpoint combination unit test
...
This bug was by chance found during simulation testing and debugging.
The unit test is to easily reproduce and cover this case.
2022-01-19 14:31:19 +01:00
Silvan Fuhrer
632dfa55e6
FW Pos C: add option to disable airspeed setpoint via stick input
...
-rename FW_POSCTL_INV_ST to FW_POS_STK_CONF and make bitmask out of it:
- bit 0: alternative mapping (height rate on throttle stick, airspeed on pitch)
- bit 1: enable/disable airspeed setpoints via stick
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-19 10:13:07 +01:00
Silvan Fuhrer
cbb8c90245
ControlAllocation: fix calculation of roll/pitch normalization scale
...
Take into account the actual number of roll and pitch acutators,
instead of assuming that all actuators have a roll/pitch component.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-19 08:22:12 +01:00
Silvan Fuhrer
0950bb81ab
ControlAllocation: update normalization scale only if matrix updated is forced
...
The forced flag is used to distinguish between updates due to a configuration
(parameter) change (only enabled when disarmed), and matrix updates due to motor
tilt change. Only update the normalization scale if the forced flag is true, and
use a tilt angle of vertical position for it to have the scales tilt-invariant.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-19 08:22:12 +01:00
CUAVmengxiao
258a563dd5
barometer: Add ICP10100 and ICP1011
2022-01-18 19:14:40 -05:00
FARHANG
fe44e281e5
ROMFS: Holybro X500 v2 airframe addition
2022-01-18 15:11:41 -05:00
Daniel Agar
dd6b7fa98f
sensors: switch status PX4_INFO -> PX4_INFO_RAW
2022-01-18 15:00:18 -05:00
Daniel Agar
b1d2a0cc4e
sensors: simplify timestamp data validator handling
2022-01-18 14:57:18 -05:00
Daniel Agar
8067207ea6
px4_work_queue: rename serial port WQs
2022-01-18 14:56:15 -05:00
bresch
953c90d3a6
failure detector: change imbalanced propeller metric
...
Use standard deviations instead of variances to get a linear metric
2022-01-18 12:24:35 -05:00
bresch
408cf011b2
failure detector: fix dt computation
2022-01-18 12:24:35 -05:00
Daniel Agar
7eee949a81
Jenkins: hardware tolerate irrelevant uorb status failure
2022-01-18 12:23:05 -05:00
Daniel Agar
548b7d5ece
sensors/vehicle_imu: on calibration change don't resume in flight calibration learning immediately
2022-01-18 11:22:41 -05:00
Daniel Agar
ece09064c4
parameters: perform verification pass twice
...
- on NuttX with MTD storage this is to ensure we are verifying what's
actually stored on ramtron or eeprom, not just what's cached by bchlib
2022-01-18 09:47:28 -05:00
alexklimaj
cdb6a437a0
Fix UAVCAN beep not started
2022-01-17 21:49:53 -05:00
PX4 BuildBot
0bb9cce1ce
Update submodule mavlink to latest Tue Jan 18 00:39:07 UTC 2022
...
- mavlink in PX4/Firmware (37e04f56da3916dcb518eeba66b0888db1cd8c32): https://github.com/mavlink/mavlink/commit/75204adad281e017e58e0a68fdb0a478c2b74d6f
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/3d8092006ec1b2321f74e84039dadb1ebd3d1f37
- Changes: https://github.com/mavlink/mavlink/compare/75204adad281e017e58e0a68fdb0a478c2b74d6f...3d8092006ec1b2321f74e84039dadb1ebd3d1f37
3d809200 2022-01-14 Hamish Willee - MAV_PROTOCOL_CAPABILITY_FLIGHT_INFORMATION - mark as reserved capability (#1775 )
68ff649f 2022-01-13 Hamish Willee - MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT - deprecate (#1768 )
ae531d97 2022-01-13 Peter Barker - Move "external" dialects to be normal dialects (#1761 )
00a3f8ed 2022-01-12 Julian Oes - Revert "Delete unused cmake tree (#1760 )" (#1782 )
aa0764bd 2022-01-12 Hamish Willee - MAV_PROTOCOL_CAPABILITY_PARAM_UNION - rename/reserved (#1771 )
c3b46620 2022-01-12 Hamish Willee - Update mavlink_udp.c example readme to use mavlink 2 (#1780 )
0449a5ec 2022-01-12 Tatsuya Yamaguchi - add extended sensor status bits to MAVLink UDP example (#1778 )
fc3539e1 2022-01-10 Josh Henderson - ardupilotmega: Sync to ArduPilot downstream 10-JAN-2022 (#1777 )
27395aa7 2022-01-06 Julian Oes - pymavlink: update submodule to latest master (#1776 )
2180611b 2022-01-06 Hamish Willee - MAV_WINCH_STATUS_CLUTCH_ENGAGED: Winch clutch is engaged allowing motor to move freely
7c6f104f 2022-01-05 Jacob Dahl - Extend WINCH_STATUS_FLAG and WINCH_ACTION (#1766 )
dcb44e75 2022-01-06 Hamish Willee - Delete unused cmake tree (#1760 )
5b8bec5b 2022-01-05 Hamish Willee - common.xml: AUTOTUNE_AXIS_YAW - fix value to correct one for bitmask (#1767 )
2022-01-17 21:36:02 -05:00
Julian Oes
be9385ef06
cmake: use at least 1 core to build SITL
...
If we use -j 0, ninja fails with invalid argument.
2022-01-17 17:07:31 -05:00
Daniel Agar
2fb82789fe
lib/wind_estimator: pass q_att as const reference
2022-01-17 16:59:28 -05:00
Beat Küng
4cbee44220
rc.mc_defaults: only set IMU_GYRO_RATEMAX if default
...
Allows boards to set a higher rate.
2022-01-17 10:41:33 -05:00
Beat Küng
425b268feb
boards: add holybro/kakuteh7
...
known issues:
- flash-based params does not work on H7 (due to ECC), so params are on
SD card. The last flash sector is still reserved however.
- output channel 6 does not support DShot (the implementation does not
handle channel gaps)
- flashing of the 2. flash bank is much slower (around 3x), than the 1.
bank for some unknown reason.
- after the BL jumps to the app, there's several seconds passing until
stm32_boardinitialize() is called.
2022-01-17 10:41:33 -05:00
Beat Küng
cd2bb14f9b
stm32h7/micro_hal.h: add RCC_APB1ENR_TIM4EN
2022-01-17 10:41:33 -05:00
Berker Canatar
9249d3ae3d
Update current year in LICENSE
2022-01-17 08:10:57 +01:00
Silvan Fuhrer
0ce44cebb7
WindEstimator: use vehicle heading instead of ground course for initialisation
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-14 17:42:01 -05:00
Silvan Fuhrer
1a4b2b37bb
AirspeedValidator: remove unused variable _tas_gate
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-14 17:42:01 -05:00
Thomas Stastny
3b6c9448aa
npfg: fix format CMakeLists
2022-01-14 22:05:53 +01:00
Thomas Stastny
13c36155ce
fw_pos_ctrl: allow npfg to operate without wind estimate, dont switch controllers
2022-01-14 22:05:53 +01:00
Thomas Stastny
082e320191
integrate optional NPFG library for wind-aware fixed-wing guidance
2022-01-14 22:05:53 +01:00
Beat Küng
66cbbf9f2e
control_allocator: use 'bidirectional' to clarify reversible motors
2022-01-14 12:18:29 -05:00
Beat Küng
9ca58f5e97
actuator outputs: always add reverse range param
...
and remove the possibility to set min > max to reverse.
Initially the idea was to add the checkbox on the UI side, to avoid adding
another param, but I don't think I'll go through the extra effort on the
QGC side.
2022-01-14 12:18:29 -05:00
Daniel Agar
98a9748bb8
drivers/dshot: use uORB::PublicationMulti for ORB_ID(esc_status)
...
- there can be multiple different outupt modules publishing esc_status (eg dshot & uavcan)
2022-01-14 12:17:49 -05:00
Daniel Agar
81ecd130fc
uavcan: ESC publish esc_status in callback instead of timer
...
- this ensures every ESC status gets published with minimal latency
- also prevents publishing ORB_ID(esc_status) when there's no actual
data (bug)
2022-01-14 12:17:49 -05:00
David Sidrane
25099ce11f
fmurt1062-v1:Added GPS driver dropped in move to boardconfig
2022-01-14 07:04:06 -08:00
Julian Oes
651702c2c1
setup: don't install ccache
...
I don't think the PX4 setup script should decide whether a user is to
use ccache or not. Anecdotally, I've heard from some in the dev team
that they are not using it themselves, so I don't think there is a good
basis to push it onto others.
That being said, we can of course still use ccache as part of the CI
builds nevertheless.
2022-01-14 10:01:23 -05:00
Roman Bapst
dc6067ed12
Update src/modules/fw_att_control/fw_att_control_params.c
...
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-14 16:34:44 +03:00
RomanBapst
34bb671a73
improve parameter descriptions for fw maximum/minimum roll/pitch angles
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-01-14 16:34:44 +03:00
RomanBapst
555ee371e8
FixedWingPositionControl: consistently use the same roll and pitch angle
...
limits for autonomous and semi-autonomous modes (altitude & position control)
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2022-01-14 16:34:44 +03:00
Thomas Stastny
f8c2ee73db
handle line segment termination in navigator
...
- if following line segment (fixed-wing position control) switch waypoint when in acceptance radius OR passed the second waypoint. this handles the case of being beyond the second waypoint but not within the acceptance radius without the need to fly back to the waypoint (e.g. after a loiter up to waypoint alt)
- sync navigator and fw pos ctrl waypoint acceptance altitude
2022-01-13 13:43:02 +01:00
Claudio Micheli
8a01135a93
Commander: more changes to use events with escs and battery failures
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2022-01-13 08:40:34 +01:00
Claudio Micheli
d122513197
extend support for Battery status message
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2022-01-13 08:40:34 +01:00
Daniel Agar
bb1177d504
sensor_calibration: refactor and centralize calibration slot logic
...
- centralize logic for selecting a preferred calibration slot
- automatically use existing calibration slot if it exists, otherwise
find first available slot, with a preference for a requested index
- existing commander calibration methods rewrite all calibration slots
to match current sensor ordering
2022-01-12 16:16:26 -05:00
alexklimaj
d1304e1ceb
Add CANNODE_GPS_RTCM
2022-01-12 15:30:38 -05:00
Silvan Fuhrer
3cd1e0ce19
MCLandDetector: clean up logic for ground effect
...
Before: in_ground_effect was always true with the default settings (LNDMC_ALT_GND =-1)
and when a distance sensor was present with valid data.
Now: default of LNDMC_ALT_GND is set to 2m by default, and if set to a negative value
then in_ground_effect is never set to true
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-12 18:41:16 +01:00
Matthias Grob
443406ea2b
FlightTaskAuto: use longerThan() when possible in vector calculations
2022-01-12 15:12:24 +01:00
bresch
4fc7348582
mpc: leave room for altitude error control during descent and descent
...
Since the same parameter is used to generate the trajectory and to
saturate the controller, there is no additional space for the output of
the position controller once it is filled with the feedforward, letting
the altitude grow uncontrolled.
2022-01-12 13:33:48 +01:00
bresch
ea7d2334c9
mpc: add parameter for ascent/descent speed in auto modes
2022-01-12 13:33:48 +01:00
Daniel Agar
463513f31f
Jenkins: hardware disable auto cal before on board tests
2022-01-11 11:47:02 -05:00
Daniel Agar
2eec7842ae
sensors/vehicle_imu: fix SENS_IMU_AUTOCAL saving logic
...
- on cycles that don't check for updated calibraton (estimated bias) we
check if there's anything valid to save (when disarmed)
2022-01-11 11:47:02 -05:00
romain-chiap
4e06b40e2b
sih: add tailsitter support, disable UAVCAN
2022-01-11 08:29:19 +01:00
Julian Oes
6ed48ad0c0
ROMFS: Remove now unused variable
2022-01-10 23:04:10 -05:00
Julian Oes
b52972f3f8
ROMFS: remove duplicate startup tune
...
This must have come back in a rebase.
2022-01-10 23:04:10 -05:00
Julian Oes
1baecf07ad
Mantis: remove startup tune volume
...
Let's just leave it at the default like the rest of the beeps.
2022-01-10 23:04:10 -05:00
Julian Oes
38439256e5
Mantis: move MIXER vars to airframe init
...
The two were actually conflicting and are now consolidated.
2022-01-10 23:04:10 -05:00
Julian Oes
14fb019821
Mantis: move SYS_DM_BACKEND to board_defaults
...
Otherwise it is set too late and not used during startup.
2022-01-10 23:04:10 -05:00
Julian Oes
feb2987fa8
Mantis: remove unused transition script
...
When coming from the previous stack there are no params anywhere, so
this will not execute anyway.
2022-01-10 23:04:10 -05:00
Julian Oes
a061d7a02a
Mantis: use dataman in RAM
2022-01-10 23:04:10 -05:00
Julian Oes
b3d830dd11
Mantis: move power off tune to commander
...
This way we don't allocate inside the interrupt context.
2022-01-10 23:04:10 -05:00
Julian Oes
372a0da987
Mantis: move upload.sh into boards/atl/mantis-edu
2022-01-10 23:04:10 -05:00
Julian Oes
73044c51f9
vmount: only send CONFIGURE cmd if type changes
...
We don't always have to send MOUNT_CONFIGURE but really only when the
control data type actually changes.
2022-01-10 23:04:10 -05:00
Julian Oes
22180a2639
mavlink: make range params optional
...
If there is no range sensor compiled in, these two params do not seem to
be available. Hence, we need to make them optional.
2022-01-10 23:04:10 -05:00
Julian Oes
0ffdccbd60
Mantis: Add MPC2520 again
2022-01-10 23:04:10 -05:00
Julian Oes
b44f5b49ca
Mantis: add tap_esc to Kconfig
2022-01-10 23:04:10 -05:00
Julian Oes
8331339927
atl_mantis: update bootloader binary again
...
This includes the fix which disables the UART overrun.
2022-01-10 23:04:10 -05:00
Julian Oes
b1a1e4913b
Mantis: rotate flow by 180 degrees
...
This seemed to be exactly inverted.
2022-01-10 23:04:10 -05:00
Julian Oes
28d69d3285
Mantis: fix throttle RC calibration
2022-01-10 23:04:10 -05:00
Julian Oes
b92aa92bec
Mantis: fix mixer loading
...
The ordering before did not work out, and without the sleep it fails.
2022-01-10 23:04:10 -05:00
Julian Oes
06b5b58b3b
Mantis: increase Tx buffer to with gimbal->camera
...
This way log streaming works with much less drops.
2022-01-10 23:04:10 -05:00
Julian Oes
11b60904c3
Mantis: use lower log streaming rate
2022-01-10 23:04:10 -05:00
Julian Oes
ca1fabf80a
logger: add rate factor to slow logging down
...
This is required for the Mantis to reduce the log streaming rate.
2022-01-10 23:04:10 -05:00
Julian Oes
f3a278dce5
Mantis: add comment about boot order.
...
The boot order is now:
1. The PX4 bootloader boots, and starts the camera.
2. The camera starts and sends the boot command to the PX4 bootloader.
3. PX4 starts.
2022-01-10 23:04:10 -05:00
Julian Oes
ecfc7cc24f
Mantis: set bootloader timeout to 180 seconds
...
The first byte 0xb4 is 180. This number is read by the bootloader.
2022-01-10 23:04:10 -05:00
Julian Oes
e15cbc3a6b
Mantis: move tap_esc to extras
...
This way we work around an issue where tap_esc got stuck during bootup
in a cold boot.
2022-01-10 23:04:10 -05:00
Julian Oes
24bdf79180
ROMFS: fix debug output
2022-01-10 23:04:10 -05:00
Julian Oes
c2e0e09b2d
commander: reduce PWM max again
...
This is no longer required now.
2022-01-10 23:04:10 -05:00
Julian Oes
e4763f15f6
Mantis: add RC hacks
...
This changes the way RC is handled for the Mantis:
- The RC values are re-written when arriving over MAVLink. They are
rescaled from 0..4095 to 1000..2000 and the channel bits added to
separate channels. This makes the downstream handling easier.
- Gimbal pitch is moved from Aux1 to Aux2 as that should be the default.
- Aux3 and Aux4 are used for the photo and video trigger.
- The speed button is used as the FLTMODE channel and set to switch
between POSCTL and ALTCTL.
2022-01-10 23:04:10 -05:00
Julian Oes
9fe7a40673
manual_control: enable sending camera commands
2022-01-10 23:04:10 -05:00
Julian Oes
1754e25920
vmount: add param to use RC input for angular rate
...
Until now RC input was translated to angles only. I added the param
MNT_RC_IN_MODE which allows the RC input to be used for angular rate.
2022-01-10 23:04:10 -05:00
Julian Oes
f03990f015
Mantis: prevent output setup from running
...
This is not required as we start tap_esc directly and load the mixer.
2022-01-10 23:04:10 -05:00
Julian Oes
cb15728536
Mantis: save mission in RAM
...
This is using a reduced number of mission items of 1000 instead of 2000
in order to fit in RAM.
2022-01-10 23:04:10 -05:00
Julian Oes
7d09635fb6
ROMFS: add option for dataman args
...
This is required for boards requiring dataman in RAM.
2022-01-10 23:04:10 -05:00
Julian Oes
bb09646b41
ROMFS: allow the output config to be skipped
...
This is required for the ATL Mantis-EDU.
2022-01-10 23:04:10 -05:00
Julian Oes
0fbb03dee1
ROMFS: add option for startup tune volume
...
Otherwise the CBRK_BUZZER param does not work as it should.
2022-01-10 23:04:10 -05:00
Julian Oes
a50f7af3b1
Mantis: update bootloader and SYS_AUTOSTART
...
This adds a check for the previous SYS_AUTOSTART id. If it is still the
old/previous SYS_AUTOSTART id, it will flash the new bootloader as well
as set the proper SYS_AUTOSTART id.
2022-01-10 23:04:10 -05:00
Julian Oes
fa282cfe86
Mantis: make startup less loud
2022-01-10 23:04:10 -05:00
Julian Oes
880292f5d7
commander: relax RC min/max
2022-01-10 23:04:10 -05:00
Julian Oes
2b4b87571c
Mantis: adapt RC calibration
...
This is with a newer RC firmware.
2022-01-10 23:04:10 -05:00
Julian Oes
aa007dadee
commander: fix emergency power off
...
From what I can see the CONFIG_BOARDCTL_POWEROFF is not really used
anywhere, however, the BOARD_HAS_POWER_CONTROL is something that is set,
e.g. for the Mantis, to allow power off.
2022-01-10 23:04:10 -05:00
Julian Oes
6301fa35c1
commander: add command to power off
2022-01-10 23:04:10 -05:00
Julian Oes
4a43155e69
Mantis: remove duplicate define
2022-01-10 23:04:10 -05:00
Julian Oes
7759ffb00e
Mantis: reduce power button hold time
...
This is more intuitive and matches the tune.
Hopefully, it's still long enough to prevent any false positives.
2022-01-10 23:04:10 -05:00
Julian Oes
6960600c28
Mantis: play power off tune
...
To play a power off tune, I needed to convert the file to C++, so that I
could use the uORB::Publication.
The current implementation starts playing the power off sound but then
stops it as soon as the button is released.
The problem is mostly that we only get an interrupt when the button is
pressed or released but we don't seem to be able to poll it, at least
not in the current state.
2022-01-10 23:04:10 -05:00
Julian Oes
860b23dd17
tunes: add tune to power off
...
This is used by the ATL Mantis EDU to help the user realize when the
drone is powered off.
2022-01-10 23:04:10 -05:00
Julian Oes
a21fefda48
tune_control: prevent segfault
2022-01-10 23:04:10 -05:00
Julian Oes
856e229482
ROMFS: reset the startup sound for Mantis
2022-01-10 23:04:10 -05:00
Julian Oes
1be4e35ed4
ROMFS: move startup sound further down
...
This way it works for the Mantis where the tap_esc driver needs to be
running before beeping is posssible.
2022-01-10 23:04:10 -05:00
Julian Oes
76920171c7
tap_esc: fix tunes
...
This removes the redundant _play_tone flag and instead just polls the
next_note() interface to check if there is something to play.
2022-01-10 23:04:10 -05:00
Julian Oes
de1849167d
Mantis: Add upload_wifi target to upload firmware
2022-01-10 23:04:10 -05:00
Julian Oes
185e4cfd48
Mantis: set range finder limits, and min quality
...
The limits might somewhat match the sensor, guessed based on the
original driver.
The quality is set so that spikes when sitting on the ground are not
used.
2022-01-10 23:04:10 -05:00
Julian Oes
dd00e43ca3
mavlink: set signal_quality (and sane variance)
...
Otherwise this distance data is actually not used at all.
2022-01-10 23:04:10 -05:00
Julian Oes
aefbd80b53
mavlink: use optical flow limits from params
...
This makes more sense than hard-coding arbitrary values.
2022-01-10 23:04:10 -05:00
Julian Oes
f48c3a2cc6
mavlink: don't handle RC_CHANNELS
...
This is a status/output but should not be an input for the autopilot.
Instead RC_CHANNELS_OVERRIDE should be used.
2022-01-10 23:04:10 -05:00
Daniel Agar
cc1fee525a
lib/sensor_calibration: handle calibration slot change on parameter update
2022-01-10 17:16:50 -05:00
Daniel Agar
ab547bb982
sensors/vehicle_angular_velocity: RPM notch don't fully disable if first harmonic frequency drops below minimum frequency
...
- keep higher frequency harmonics enabled per ESC
- cleanup timestamp handling (timeouts, etc)
2022-01-10 14:51:29 -05:00
Daniel Agar
b58922a5d7
sensors/vehicle_angular_velocity: notch filters automatically reset on sufficient parameter change
2022-01-10 14:51:29 -05:00
Daniel Agar
7d632254be
NotchFilter push initialization/reset into filter
...
- this simplifies the reset by allowing a notch filter to reset as
needed
- improves cascade initialization, on reset each filter will reset
properly from the previous
2022-01-10 14:51:29 -05:00
Daniel Agar
2e2ac36cab
drivers/uavcan: make firmware server available on both CAN1/CAN2 always (if enabled)
...
- uavcan firmware server no longer shuts down when arming (nodes might restart in flight)
- always handle UAVCAN parameters with or without the FW server active
- remove legacy ESC enumeration in FW server
2022-01-10 11:13:02 -05:00
Daniel Agar
d9e7315420
sensors: automatically set initial accel/gyro calibration if stable bias available
2022-01-10 10:46:37 -05:00
Daniel Agar
e731fcdbc0
sensors (accel/gyro/mag) determine if external with device id
2022-01-10 10:31:07 -05:00
Daniel Agar
45040be669
ekf2: accel/gyro/mag sensor cal minor cleanup
...
- cleanup obsolete comments
- remove debug helpers
- add additional variance requirements to mag bias stable (matching accel & gyro)
2022-01-10 09:55:59 -05:00
Daniel Agar
c3ca40a98f
drivers/px4io: delete monitor command
...
- the px4io console isn't even connected on most flight controllers
2022-01-10 09:51:11 -05:00
Daniel Agar
e5d49f6fff
drivers/px4io: delete unused detect
2022-01-10 09:51:11 -05:00
Daniel Agar
d077ca15fb
delete PWM_SERVO_SET, PWM_SERVO_SET_MODE, systemcmds/motor_ramp, and pwm_out test
2022-01-10 09:51:11 -05:00
Daniel Agar
df44df2df6
delete systemcmds/esc_calib
...
- this is redundant with commander esc_calibration
2022-01-10 09:51:11 -05:00
Daniel Agar
03bdc460d8
drivers/px4io: PWM_SERVO_GET_FAILSAFE_PWM don't get registers directly
2022-01-10 09:51:11 -05:00
Daniel Agar
d3301ba826
delete PWM_SERVO_GET_TRIM_PWM
2022-01-10 09:51:11 -05:00
Daniel Agar
8de59dad32
delete PWM_SERVO_SET_TERMINATION_FAILSAFE
2022-01-10 09:51:11 -05:00
Daniel Agar
1739ecc981
delete PWM_SERVO_SET_FORCE_FAILSAFE
2022-01-10 09:51:11 -05:00
Daniel Agar
649d3e3f55
delete PWM_SERVO_SET_DISABLE_LOCKDOWN/PWM_SERVO_GET_DISABLE_LOCKDOWN
2022-01-10 09:51:11 -05:00
Daniel Agar
b7ed4fd3e0
delete PWM_SERVO_SET_DISARMED_PWM
2022-01-10 09:51:11 -05:00
Daniel Agar
551a31ce2f
delete PWM_SERVO_SET_FAILSAFE_PWM
2022-01-10 09:51:11 -05:00
Daniel Agar
daa925137c
boards: move default battery calibration defines to parameter defaults
2022-01-10 09:49:36 -05:00
Daniel Agar
78b3d22471
lib/mixer_module: consume output_limit library
2022-01-10 11:59:55 +01:00
Daniel Agar
71d8b15b73
commander: fix COM_HOME_EN missing case
...
- VEHICLE_CMD_COMPONENT_ARM_DISARM is yet another path that calls set_home_position()
2022-01-09 20:52:07 -05:00
Daniel Agar
0b1402afe2
Tools/HIL/test_airframes.sh enable all mavlink and GPS
2022-01-08 18:11:43 -05:00
bresch
57fa9c545a
PosControl: fix hover update equation
...
The integrator now absorbs properly the change in hover thrust
2022-01-08 15:42:10 +01:00
Daniel Agar
6c97700eaa
move sensor calibration parameters to yaml
2022-01-07 19:00:41 -05:00
Matthias Grob
bbad4a5397
FlightTaskAuto: Respect altitude with offtrack state
...
To avoid weird cases where the altitude is different enough and
the offtrack state flies to the target altitude instead of the closest
point on the track between the waypoints.
2022-01-07 10:30:39 -05:00
Julian Oes
be0a5b4b32
workflows: Set up batch fuzzing every 24 hours
...
So instead of fuzzing each and every PR for 10minutes, we just fuzz
30mins every 24 hours, at 6am UTC which should be a time when US and
Europe might be least active.
2022-01-07 10:17:12 -05:00
Julian Oes
2cbc993976
Add clusterfuzzlite to fuzz in CI
2022-01-07 10:17:12 -05:00
Julian Oes
9eda5b373c
posix: add fuzz testing using MAVLink messages
...
This adds the env option PX4_FUZZ which runs the LLVM libFuzzer which
throws random bytes at mavlink_receiver using MAVLink messages over UDP.
The MAVLink messages that are being sent are valid, so the CRC is
calculated but the payload and msgid, etc. are generally garbage, unless
the fuzzing gets a msgid right by chance.
As I understand it, libFuzzer watches the test coverage and will try to
execute as much of the code as possible.
2022-01-07 10:17:12 -05:00
Daniel Agar
c17a9e8003
sensors/vehicle_imu: refactor SensorCalibrationUpdate() to separate accel/gyro cal saving
2022-01-07 09:40:51 -05:00
Daniel Agar
aec97e0020
sensors: minor IMU bias saving updates
...
- sensors/vehicle_imu: reset learned cal on any calibration change
during parameter update
- sensors/vehicle_imu: cleanup logic estimated bias -> calibration offset
saving
- don't invalidate saved calibration (the point is to keep the last valid)
- remove old debug code, etc
- sensors/vehicle_imu: notify parameter changes if accel or gyro
calibration has changed
- lib/sensor_calibration: add calibrated() and calibration_index()
getters, keep Accelerometer/Gyroscope/Magnetometer in sync
2022-01-07 09:40:51 -05:00
Silvan Fuhrer
5d7ddf5734
FW Pos Control: use SlewRate library for airspeed setpoint
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-07 09:39:10 -05:00
Daniel Agar
30ccfdb2ed
sensors/vehicle_magnetomeer: fix copyright year
2022-01-06 20:27:56 -05:00
Julian Oes
07d75d85cf
mavsdk_tests: trigger flush to stdout every second
2022-01-06 09:24:32 -05:00
Julian Oes
2d8ebc6839
mavsdk_tests: add timestamp to log output
...
The timestamp is added when the output is queued up, rather than later
when the queue is emptied and some time might have passed.
2022-01-06 09:24:32 -05:00
Julian Oes
dd6fb58f82
mavsdk_tests: don't stall mavsdk_tests binary
...
This is an attempt to fix the test failure where PX4 detects an RC
timeout presumably because the tester process mavsdk_tests is stalled
and does not send RC control messages in time.
2022-01-06 09:24:32 -05:00
Julian Oes
952cfe2fd7
ekf2: fix uninitalized memory warning
...
The imu and sensor_combined data should not be used when it has not been
updated yet, otherwise this triggers a memory sanitizer warning:
Conditional jump or move depends on uninitialised value(s)
at 0x2DA7AA: __sanitizer_cov_trace_const_cmp1 (in build/px4_sitl_default-clang/bin/px4)
by 0x3C4E79: EKF2::Run() (src/modules/ekf2/EKF2.cpp:401)
by 0x6EB881: px4::WorkQueue::Run() (platforms/common/px4_work_queue/WorkQueue.cpp:187)
by 0x6ECB9D: px4::WorkQueueRunner(void*) (platforms/common/px4_work_queue/WorkQueueManager.cpp:230)
by 0x4C07258: start_thread (in /usr/lib/libpthread-2.33.so)
by 0x4D415E2: clone (in /usr/lib/libc-2.33.so)
Conditional jump or move depends on uninitialised value(s)
at 0x3C4E7C: EKF2::Run() (src/modules/ekf2/EKF2.cpp:401)
by 0x6EB881: px4::WorkQueue::Run() (platforms/common/px4_work_queue/WorkQueue.cpp:187)
by 0x6ECB9D: px4::WorkQueueRunner(void*) (platforms/common/px4_work_queue/WorkQueueManager.cpp:230)
by 0x4C07258: start_thread (in /usr/lib/libpthread-2.33.so)
by 0x4D415E2: clone (in /usr/lib/libc-2.33.so)
2022-01-05 16:20:06 -05:00
romain-chiap
4264ec992d
Update 1101_rc_plane_sih.hil
...
This bugged me for a while, the sih FW would not takeoff from the ground. Now, I found it!
2022-01-05 16:18:53 -05:00
Silvan Fuhrer
0a82025faf
FW Position Control: some airspeed setpoint handling adaptions
...
- introuce slew rate limiting of airspeed setpoint (with slew rate of 1 m/s/s)
- some refactoring and clean up
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-05 17:06:41 +01:00
Silvan Fuhrer
20a1e5f77c
FW Position Control: simplify underspeed disabling logic for tecs
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-01-05 17:06:41 +01:00
Matthias Grob
bbb04ab4b8
Remove relaying of maximum altitude through land detector
2022-01-05 14:54:59 +01:00
Julian Oes
2445fa8b4c
commander: prevent uninitialized warning
...
This prevents a memory sanitizer/valgrind warning:
Conditional jump or move depends on uninitialised value(s)
at 0x2DA536: __sanitizer_cov_trace_cmp4 (in build/px4_sitl_default-clang/bin/px4)
by 0x6590D8: FailureDetector::update(vehicle_status_s const&, vehicle_control_mode_s const&) (src/modules/commander/failure_detector/FailureDetector.cpp:76) by 0x3817DF: Commander::run() (src/modules/commander/Commander.cpp:2605)
by 0x38B10B: ModuleBase<Commander>::run_trampoline(int, char**) (platforms/common/include/px4_platform_common/module.h:180)
2022-01-05 10:53:51 +01:00
Daniel Agar
170849c8f8
ekf2: expand accel bias stability criteria
2022-01-04 13:57:49 -05:00
PX4 BuildBot
846f807eff
Update submodule mavlink to latest Tue Jan 4 12:39:05 UTC 2022
...
- mavlink in PX4/Firmware (a8c88f1c98212e72a266fec8a9e7c0da2a14f3af): https://github.com/mavlink/mavlink/commit/4bc0de9c38626fe3640de266118af5fd64fe6a18
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/75204adad281e017e58e0a68fdb0a478c2b74d6f
- Changes: https://github.com/mavlink/mavlink/compare/4bc0de9c38626fe3640de266118af5fd64fe6a18...75204adad281e017e58e0a68fdb0a478c2b74d6f
75204ada 2022-01-04 Hamish Willee - Add ability to specify axis to autotune (#1759 )
2022-01-04 09:32:43 -05:00
bresch
d094fbbd70
ekf2: fix delta angle coning metric
2022-01-04 09:28:48 -05:00
PX4BuildBot
6fbc0e95d0
[AUTO COMMIT] update change indication
2022-01-04 09:12:45 -05:00
PX4 BuildBot
a89f21d566
Update world_magnetic_model to latest Tue Jan 4 11:14:11 UTC 2022
2022-01-04 09:12:45 -05:00
Daniel Agar
e835a7c4ea
boards: enable readline history and tab completion on newer boards
2022-01-03 10:44:32 -05:00
Daniel Agar
9d1558af25
ekf2: selector use status timestamp for timeout rather than timestamp_sample (delayed time horizon)
...
- update stale checks for publication to use hrt elapsed time from
timestamp sample
2022-01-03 09:20:44 -05:00
Daniel Agar
333edfe12f
ekf2: use delayed IMU timestamp for publication's timestamp_sample
2022-01-03 09:20:44 -05:00
Daniel Agar
35502c249d
ekf2: don't use Vectors for height innovations (baro, rng, etc)
2022-01-03 09:20:20 -05:00
David Sidrane
eac92ec671
imxrt:ADC fix timeouts
2022-01-03 06:02:19 -08:00
Jaeyoung-Lim
bdec85fdd0
Disable local vehicle setpoints while in transition
...
This commit adds disabling vehicle setpoints while in transition
2022-01-03 11:09:06 +01:00
Jaeyoung-Lim
4127dfa791
Log vehicle local position setpoints
...
This commit enables the local position setpoints to be logged by publishing vehicle_local_position_setpoint
2022-01-03 11:09:06 +01:00
Jaeyoung Lim
52418f13b0
Use groundspeed for navigate heading
2022-01-03 10:52:34 +01:00
Jaeyoung-Lim
e66e82228f
Add support for offboard velocity setpoints for fixedwing vehicles
...
This commit adds a velocity controller which the setpoint can be passed using offboard setpoints
2022-01-03 10:52:34 +01:00
Daniel Agar
75bb2f8dd2
Jenkins: hardware temporarily tolerate sd_bench failures on px4_fmu-v5_debug
2022-01-02 14:47:52 -05:00
Daniel Agar
673d4544d1
parameters: verify param backup after export
2022-01-02 10:46:34 -05:00
Daniel Agar
8e26b33009
tinybson: file write error add more detail
2022-01-02 10:46:34 -05:00
Daniel Agar
80ef6e19df
tinybson: explicitly append int32 or int64
2022-01-02 10:46:34 -05:00
Daniel Agar
9cbb5c9920
parameters: fix export shutdown locking
...
- in NuttX bchlib keeps a sector sized buffer that might not be written
out to RAMTRON until the file is closed
2022-01-02 10:46:34 -05:00
Daniel Agar
2153710917
Tools/HIL/monitor_firmware_upload.py don't fail on any ERROR
...
- on first boot we only care that it completes (gets to nsh prompt)
2022-01-02 10:05:30 -05:00
Daniel Agar
c421bff73c
Tools/HIL: use pyserial spy:// to log all serial traffic and dump on failure
2022-01-01 22:25:29 -05:00
Daniel Agar
7df1721d32
ROMFS: rcS disable simplistic SD I/O test
...
- this was added when trying to identify SD card issues at boot and
trigger a format, but didn't provide any value
2022-01-01 18:43:27 -05:00
Daniel Agar
f76aa0e772
cmake: NuttX ARMV7M_STACKCHECK skip ekf2
...
- px4_fmu-v5_stackcheck switch from icm20689 -> bmi055 (lower rate)
- this is to make performance tolerable
2022-01-01 18:43:27 -05:00
Daniel Agar
e9283d90cc
systemcmds/netman: fix code style
2022-01-01 18:40:47 -05:00
Daniel Agar
0029317e55
Jenkins: hardware additional reboots no longer required
2022-01-01 14:06:05 -05:00
Daniel Agar
439ad7daea
Jenkins: hardware disable calib_delay (too slow) and manual SD format
2022-01-01 12:10:28 -05:00
Daniel Agar
501474993e
Tools/HIL: default to USB UART if available
2022-01-01 10:49:30 -05:00
Daniel Agar
77b65ee564
boards: px4_fmu-v5_debug disable stack check
...
- this is redundant with px4_fmu-v5_stackcheck
2021-12-31 19:34:18 -05:00
Daniel Agar
247b975675
Tools/HIL: disable XON/XOFF, consistent timeouts, proper input buffer clear
2021-12-31 19:28:40 -05:00
Daniel Agar
03371f8522
NuttX with bch flush backport
2021-12-31 10:59:56 -08:00
David Sidrane
db159a43cc
test_dataman:Set SEM_PRIO_NONE on all semaphores
2021-12-31 10:27:24 -05:00
Daniel Agar
1b6700592b
parameters: require valid BSON document size
2021-12-30 16:36:23 -05:00
Daniel Agar
3514458f42
Tools/HIL/test_airframes.sh: dump all parameter storage after bootup to verify contents
2021-12-30 12:43:00 -05:00
Daniel Agar
b06215d038
Tools/HIL/test_airframes.sh: run param dump after save to verify BSON
2021-12-30 11:11:14 -05:00
PX4 BuildBot
5fc7e551ab
Update submodule mavlink to latest Wed Dec 29 12:38:13 UTC 2021
...
- mavlink in PX4/Firmware (395eeb440a2ca7503591f872d4f733fcd9867218): https://github.com/mavlink/mavlink/commit/bfaf605bd6f25c8c4843d67e455fe02acb5a9452
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/4bc0de9c38626fe3640de266118af5fd64fe6a18
- Changes: https://github.com/mavlink/mavlink/compare/bfaf605bd6f25c8c4843d67e455fe02acb5a9452...4bc0de9c38626fe3640de266118af5fd64fe6a18
4bc0de9c 2021-12-27 olliw42 - Component Information Basics: add camera cap flag (#1752 )
8035ad4d 2021-12-27 Hamish Willee - GIMBAL_DEVICE_FLAGS_NEUTRAL - note that this can be any angle (#1758 )
2021-12-29 17:16:49 -05:00
Daniel Agar
6706d9b434
Jenkins: always fully clean git workspace
2021-12-29 17:14:11 -05:00
Daniel Agar
6d0339ba0c
I2CSPIDriverBase: sensor start failure ERROR if internal, WARN if external
2021-12-28 11:05:35 -05:00
Daniel Agar
990d7c159d
pwm_out: cleanup and prep for linux compatibility
2021-12-28 11:04:00 -05:00
Daniel Agar
10f4a2e91f
boards: omnibus_f4sd_default disable systemcmds to save flash
2021-12-27 12:19:55 -05:00
Daniel Agar
3ef9c2d16c
boards: holybro_kakutef7_default disable modules/gyro_calibration to save flash
2021-12-27 12:19:55 -05:00
FengShun
8f8719d33b
cmake: use add_definitions instead of add_compile_definitions
...
Using make tests in docker will fail, because the current basic image used by px4io/px4-dev-simulation-bionic is ubuntu18.04, the default version of cmake is 3.10, and the add_compile_definitions command is only available in cmake 3.12+(ubuntu 20.04).
2021-12-27 12:19:31 -05:00
FengShun
65e976bbc2
docker: update px4-dev-simulation-bionic container versions to 2021-12-11
...
The current docker image will cause "make tests" to fail: "kconfiglib is not installed or not in PATH"
2021-12-27 12:19:31 -05:00
Daniel Agar
d94767ef88
cmake: NuttX use cygwin friendly path for linker script
2021-12-27 12:19:12 -05:00
honglang
17a99bc827
mavlink: add HYGROMETER_SENSOR stream
2021-12-27 12:13:09 -05:00
honglang
983867f9af
uavcan: support uavcan hygrometer
2021-12-27 12:13:09 -05:00
honglang
b60e59d9be
msg: new sensor_hygrometer msg
2021-12-27 12:13:09 -05:00
Daniel Agar
3f17acdcc9
boards: mro_ctrl-zerl-h7-oem pin fixes (sync with mro_ctrl-zero-h7)
2021-12-27 09:25:21 -05:00
Daniel Agar
0f4e1dd9f9
boards: mro ctrl-zero-h7 pin fixes
2021-12-27 09:25:21 -05:00
Daniel Agar
236794235a
parameters: export empty BSON document even if there are no parameters to save
...
- otherwise a 'param reset_all' won't be saved until a parameter is changed
2021-12-27 09:17:00 -05:00
Daniel Agar
33d7b42040
parameters: import quietly retry if there's no data (as a precuation)
2021-12-27 09:17:00 -05:00
Daniel Agar
20d3e6f4e1
parameters: add simple BSON verification pass after export
2021-12-27 09:17:00 -05:00
Beat Küng
72065c3d71
fix protocol_splitter: remove timeout, drop buffer if too full instead
...
The existing implementation had a flaw: when the buffer was getting full,
mavlink started to busy-loop, as the uart has data (poll returns immediately)
but no new data was read from the uart due to the buffer being full.
As rtps is running at lower prio, it never got the chance to read again,
making the problem even worse.
After 1s the timeout triggered and the buffer was cleared, so it recovered.
Instead of allowing for CPU spikes, we now immediately clear the buffer
(only as much as we have to), ensuring that new data is read from the uart.
2021-12-24 20:28:43 -05:00
Rui Miguel Carvalho
542ee86bc9
landing_target_estimator: custom irlock frame params ( #18884 )
...
Signed-off-by: ruimscarvalho98 <ruimsc98@gmail.com >
2021-12-24 20:20:35 -05:00
Silvan Fuhrer
28e01c3510
FW Position controller: make loiter switching logic robust against pos_sp with loiter_rad=0
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:17:15 -05:00
Daniel Agar
98d706772e
boards: px4_fmu-v2_rover disable events module to save flash
2021-12-24 20:06:13 -05:00
Beat Küng
d202bf9631
control_allocator: add scope to reduce stack usage by 256B
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
48be55dec8
Tiltrotor: disable tilt/thrust compensation when dynamic allocation is enabled
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
31d7328f4d
Tailsitter: invert roll (make it NED-correct) for filling vehicle_torque_setpoint
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
1ad66e606b
ControlAllocation: introduce convention for control surface deflection sign
...
- horizontal control surfaces: up=positive deflection
- vertical control surfaces (rudder): right=positive deflection
- mixed (V-Tail): up=positive deflection
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Beat Küng
5259877b1b
control_allocator: update matrix normalization
...
- only normalize rpy for MC matrices
- for thrust use the 3D vector, so it works for FW and tilt rotors as well
This keeps MC unchanged.
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
460a0df850
tiltrotor: fill out thrust_setpoint[0] also in hover, based on tilt and hover thrust
...
In the tiltrotor case, beside an F_z thrust setpoint also a F_x setpoint must be passed
to the allocator as the matrix has non-zero thrust-x effectiveness when tilts are applied.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Beat Küng
2333bef670
px4airframes doc: handle common outputs individually
...
preparation for dynamic control allocation, where we won't have MAIN vs
AUX anymore (at least for the generic frames).
2021-12-24 20:06:13 -05:00
Beat Küng
203e253dfe
airframes: sitl boat: switch to dynamic control allocation
2021-12-24 20:06:13 -05:00
Beat Küng
8486ca5766
airframes: sitl cloudship: switch to dynamic control allocation
2021-12-24 20:06:13 -05:00
Beat Küng
9bc9169b77
px4/fmu-v5x: add missing board variants to rc.board_mavlink
2021-12-24 20:06:13 -05:00
Beat Küng
09200b994d
airship_att_control: publish thrust + torque setpoint
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
478724c9fe
EffectivenessTiltrotor: fix logic for matrix update
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Beat Küng
6c8f322dfe
px4/fmu-v2/test: disable modules to reduce flash
2021-12-24 20:06:13 -05:00
Beat Küng
082cd74cab
holybro/kakutef7: disable IST8310 to reduce flash
2021-12-24 20:06:13 -05:00
Beat Küng
8e04934eab
commander: consider COM_MOT_TEST_EN for COMMAND_ACTUATOR_TEST as well
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
39d441317a
ActuatorEffectivenssTailsitterVTOL: only enable MC yaw control if more than 3 rotors
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
426aa76a59
CA/VTOL: change description of VT_ELEV_MC_LOCK as it applies to not just elevons
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
18008b2de7
CA module.yaml: add motor direction function also to UI for Tailsitter an Tiltrotor
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Beat Küng
8743b78474
px4/fmu-v2/rover: disable modules to reduce flash
2021-12-24 20:06:13 -05:00
Beat Küng
8c782b7cd9
control_allocator: add Custom + MC with tilts effectiveness
...
The param group is changed to Geometry, as this reflects the naming in the
QGC UI.
2021-12-24 20:06:13 -05:00
Beat Küng
0818bb4be0
bitcraze/crazyflie{,21}: disable modules to reduce flash
2021-12-24 20:06:13 -05:00
Beat Küng
751539304e
omnibus/f4sd: disable modules to reduce flash
2021-12-24 20:06:13 -05:00
Beat Küng
627ec0df5d
control_allocator: increase STACK_MAIN to 3000
...
It was exceeding 2000
2021-12-24 20:06:13 -05:00
Beat Küng
4d38742371
control_allocator: show VT_ELEV_MC_LOCK for vtol mixers in config ui
2021-12-24 20:06:13 -05:00
Beat Küng
28c4d0b7df
mixer_module: add unit tests
2021-12-24 20:06:13 -05:00
Beat Küng
fe1b726b62
ScheduledWorkItem: do not call ScheduleClear() if not init in destructor
...
This avoids that unit tests trying to access a wq hang.
It still fails with an error currently.
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
07306c4be3
control_allocator: add support for Tailsitter VTOL
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
0568cff299
control_allocator: handle thrust allocation for VTOL's properly
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
936f2dff52
logger: log both instances of vehicle_thrust/torque_setpoint
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-24 20:06:13 -05:00
Beat Küng
d688e5dee4
sitl airframes: add control allocation config to some airframes (not enabled)
...
To use them, manually set SYS_CTRL_ALLOC
2021-12-24 20:06:13 -05:00
Beat Küng
2362feddac
airframes/uuv_bluerov2_heavy: switch over to control allocation
2021-12-24 20:06:13 -05:00
Beat Küng
4f8e6a9548
control_allocator: do not update params while armed
...
As a precaution
2021-12-24 20:06:13 -05:00
Beat Küng
e04b4a8dbf
control_allocator: add 6DOF configuration
2021-12-24 20:06:13 -05:00
Beat Küng
4c80adfaf1
control_allocator: implement trim + slew rate limits configuration
2021-12-24 20:06:13 -05:00
Beat Küng
301100ce0e
uuv_att_control: publish vehicle_thrust_setpoint & vehicle_torque_setpoint
2021-12-24 20:06:13 -05:00
Beat Küng
590239dedb
work_queue: increase rate_ctrl stack size by 150 B
...
WARN [load_mon] wq:rate_ctrl low on stack! (172 bytes left)
2021-12-24 20:06:13 -05:00
Beat Küng
b5c2cdf6c4
vtol_att_control: do not manipulate PWM outputs if SYS_CTRL_ALLOC == 1
...
Not required anymore
2021-12-24 20:06:13 -05:00
Beat Küng
43e15148f6
rover: switch sitl configs to control allocation
2021-12-24 20:06:13 -05:00
Beat Küng
8d9e2a28c4
control_allocator: add fixed-wing actuator effectiveness
2021-12-24 20:06:13 -05:00
Beat Küng
4d2a403afa
control_allocator: add rover actuator effectiveness
...
This can be generalized later
2021-12-24 20:06:13 -05:00
Beat Küng
ed3a115c8f
control_allocator: add status publication rate limitation comment
2021-12-24 20:06:13 -05:00
Beat Küng
70e46a194f
control_allocator: major refactoring & additions
...
- allow effectiveness matrix to select control allocator method
(desaturation algorithm)
- add actuator_servos publication
- add support for multiple matrices (for vtol)
- add updateSetpoint callback method to actuator effectiveness to allow it
to manipulate the actuator setpoint after allocation
- handle motor stopping & reversal
- add control surfaces & tilt servos
- handle standard vtol + tiltrotor
- rename MC rotors params & class to be more generically usable
- fixes and enables ActuatorEffectivenessRotorsTest
2021-12-24 20:06:13 -05:00
Beat Küng
a81f11acdd
mc_rate_control: don't publish thrust + torque sp if vtol
2021-12-24 20:06:13 -05:00
Beat Küng
28e995ede2
fw_att_control: publish vehicle_thrust_setpoint & vehicle_torque_setpoint
2021-12-24 20:06:13 -05:00
Beat Küng
4becd6e4c7
rover: publish vehicle_thrust_setpoint & vehicle_torque_setpoint
2021-12-24 20:06:13 -05:00
Beat Küng
5da67e2e28
vtol_att_control: publish vehicle_thrust_setpoint & vehicle_torque_setpoint
2021-12-24 20:06:13 -05:00
Beat Küng
d1abdd0f8d
output drivers: add option to generate a separate output range reversing param
...
Makes it a bit easier to configure. Reversing by setting MIN > MAX is still
supported.
2021-12-24 20:06:13 -05:00
Beat Küng
1901edf13c
actuator_motors.msg: add reversible flags & implement in mixer_module
2021-12-24 20:06:13 -05:00
Beat Küng
ccc1f0e8fa
generate_actuators_metadata: minor additions (index_offset, item_label_prefix)
2021-12-24 20:06:13 -05:00
Beat Küng
81cef522fd
generate_params.py: fix bitmask param type
2021-12-24 20:06:13 -05:00
Beat Küng
5bcc5d3a13
generate_actuators_metadata.py: add mixer rules support
2021-12-24 20:06:13 -05:00
Beat Küng
230aae580f
ROMFS: add control_allocator to all types
2021-12-24 20:06:13 -05:00
Beat Küng
86aa9f9336
Makefile: exclude src/lib/crypto/libtommath from validate_module_configs
2021-12-24 20:06:13 -05:00
Beat Küng
9c767ff1ee
control_allocator: make effective source name a class member
2021-12-24 20:06:13 -05:00
Beat Küng
20d96f3bd9
metadata: fix BOARD_WITH_IO detection
...
Wasn't correctly updated during a rebase.
2021-12-24 20:06:13 -05:00
Daniel Agar
712353ea56
gyro_calibration: increase required samples (to be more conservative)
...
- make sure variance is checked across all available sensors
2021-12-24 19:53:44 -05:00
Daniel Agar
3f3836afa8
parameters: simplify import mark_unsaved and don't fail bson decode unnecessarily
2021-12-24 14:32:40 -05:00
Daniel Agar
d1cd4904dc
parameters: param_value_is_default avoid locking if value unchanged
2021-12-24 14:32:40 -05:00
Daniel Agar
c0b8f2952c
parameters: param_get_default_value avoid locking if value is static default
2021-12-24 14:32:40 -05:00
Daniel Agar
27a113ecab
parameters: param_get avoid locking if value is static default
2021-12-24 14:32:40 -05:00
Daniel Agar
cd8ce4d01e
parameters: remove obsolete perf_end
2021-12-24 14:32:40 -05:00
Daniel Agar
38731662c6
parameters use bitset for mark_unsaved
2021-12-24 14:32:40 -05:00
Daniel Agar
0e0639a5bf
Jenkins: hardware don't tolerate logger failures
2021-12-24 14:31:21 -05:00
Daniel Agar
b054fc7b8b
navigator: trivial code style fix
2021-12-24 10:55:20 -05:00
seungjo0109
0f7c850080
Fix typo(at modules/navigator_main)
2021-12-24 08:54:43 -05:00
PX4 BuildBot
7e9cdef57b
Update submodule jMAVSim to latest Thu Dec 23 18:11:33 UTC 2021
...
- jMAVSim in PX4/Firmware (a4040f7afd ): https://github.com/PX4/jMAVSim/commit/b23dc53d558e801b214fbcb605a061c9773105e0
- jMAVSim current upstream: https://github.com/PX4/jMAVSim/commit/66b764ada522893c05224950aa6268c809f8e48a
- Changes: https://github.com/PX4/jMAVSim/compare/b23dc53d558e801b214fbcb605a061c9773105e0...66b764ada522893c05224950aa6268c809f8e48a
66b764a 2021-12-17 romain-chiap - Merge pull request #129 from romain-chiap/tailsitter
71444c6 2021-10-04 romain-chiap - Update x_vert.mtl
4cc100e 2021-08-27 Romain Chiappinelli - tailsitter .mtl updated
561a5c4 2021-08-27 Romain Chiappinelli - tailsitter selection and docs
57fbdb8 2021-08-25 Romain Chiappinelli - tailsitter
2021-12-23 17:50:10 -05:00
Daniel Agar
00eae055ac
lib/sensor_calibration: don't save uninitialized priority parameter immediately
2021-12-23 17:49:11 -05:00
Daniel Agar
e694fa906b
tinybson: add more error output on node name overflow
2021-12-23 17:45:50 -05:00
Daniel Agar
47d6a6c63d
Tools/HIL/test_airframes.sh dump parameters before reboot (for verification)
2021-12-23 17:45:50 -05:00
Daniel Agar
14c2225b1c
ROMFS: rcS dump parameter backup contents before using
...
- this is mainly for debug comparion
2021-12-23 17:45:50 -05:00
Daniel Agar
38af93085b
linux_pwm_out: use PWM_MAIN parameter prefix
...
- this keeps things simpler for now across the old and new output
configuration
2021-12-23 15:57:11 -05:00
Daniel Agar
64e00c41d4
posix-configs: fix bbblue and rpi param import
2021-12-23 15:57:11 -05:00
Daniel Agar
c8f2a29d67
boards: beaglebone_blue_default fix missing linux_pwm_out driver
2021-12-23 15:57:11 -05:00
Daniel Agar
a5f58d321e
boards: emlid_navio_default fix missing drivers/modules
2021-12-23 15:57:11 -05:00
Daniel Agar
7d7d707db9
commander: add COM_HOME_EN parameter to enable/disable home position
2021-12-23 15:46:31 -05:00
Daniel Agar
28c34a0484
Jenkins: hardware don't force tests dataman to pass and add to stackcheck build
2021-12-23 14:50:47 -05:00
PX4 BuildBot
a069a47d50
Update submodule nuttx to latest Thu Dec 23 18:11:37 UTC 2021
...
- nuttx in PX4/Firmware (d0ce5705359f8beeb9faf7fa0d12279e03bb7ac7): https://github.com/PX4/NuttX/commit/d4c06e9dfb7bb14d0f19ef47b94d838b1caf50f3
- nuttx current upstream: https://github.com/PX4/NuttX/commit/378032a44ba1ec0e7e3df16a23d21a6e77a2d816
- Changes: https://github.com/PX4/NuttX/compare/d4c06e9dfb7bb14d0f19ef47b94d838b1caf50f3...378032a44ba1ec0e7e3df16a23d21a6e77a2d816
378032a44b 2021-12-15 David Sidrane - [BACKPORT] stm32f7:sdmmc invalidate before DMA to avoid eviction overwrite
2021-12-23 14:50:47 -05:00
Daniel Agar
a4040f7afd
px4io_serial: always perform full abort DMA on error
...
- enable DMA error perf count
2021-12-23 12:48:42 -05:00
Matthias Grob
f68ae39840
Commander: avoid RC actions during calibration
2021-12-22 09:08:23 -05:00
Beat Küng
89974c46b9
mavlink streams: add return in all cases
...
Generally not needed here, but GCC produced an error when compiling with
-finstrument-functions.
2021-12-22 08:47:33 -05:00
Beat Küng
e29759d877
WorkQueueManager: explicitly convert PTHREAD_STACK_MIN to int
...
fixes a compiler error on GCC 11.2.1:
error: no matching function for call to ‘max(long int, int)’
2021-12-22 08:47:33 -05:00
alessandro
2c8a92c628
sitl config: put model name first
...
Github constructs the workflow names from the
matrix configurations. Having latitude and longitude
in the fist columns makes these names rather cryptic.
2021-12-22 12:48:54 +01:00
Daniel Agar
47fcdb1fdb
sensors/vehicle_angular_velocity: replace ESC/FFT elapsed perf counters with single cycle perf counter
...
- non-trivial perf counters (elapsed & interval) are relatively expensive
- if ESC and FFT notch filtering are enabled this reduces 6 updates (2 per axis) to 1
2021-12-21 14:21:10 -05:00
Julian Oes
5894f302b5
mavlink: add test for zero padding
...
We want to avoid publishing garbage leftover from earlier publications.
2021-12-21 09:40:36 -05:00
Julian Oes
5cfe30fa2e
mavlink: fix include for unit tests
...
This is required to find the include directory for the unit test of the
MavlinkStatustextHandler.
2021-12-21 09:40:36 -05:00
Julian Oes
2e0286e6bb
mavlink: support receiving multi-chunk statustexts
...
This adds support for mavlink statustext messages arriving in multiple
chunks.
2021-12-21 09:40:36 -05:00
Daniel Agar
0029a75ab0
systemcmds: convert c -> c++
2021-12-21 09:22:49 -05:00
Julian Oes
d2e931858d
px4io: remove unused cmake_policy
...
This should fix the build with older cmake versions.
2021-12-21 09:21:25 -05:00
Julian Oes
9686c81f7d
boards: enable flow control on CDCACM
...
This enables flow control on CDCACM for the NuttX boards which fixes a
problem where HITL would stall.
The stall could happen if the hardware would be a bit too slow in
keeping up with the incoming messages. Often, this happened on arming
because the logger would take some time to log all parameters right at
the beginning.
The stall would then not recover due to NuttX bug where the rx interrupt
would not be restored correctly and instead only a slower watchdog would
release the next read. This watchdog takes 200ms which means it's hard
to impossible to get out of the situation without restarting sim and/or
PX4. For more information about the issue, see:
apache/incubator-nuttx#3633
As a workaround, until that bug is fixed, and because it makes sense
anyway, I propose to enable FLOWCONTROL for the serial via USB.
2021-12-21 08:01:38 +01:00
DanielePettenuzzo
88521b0145
print error only if the mavlink command fails
...
In some cases we printed also the mavlink commands that replied
to be unsupported. This is not an error to show in the log.
2021-12-21 07:37:23 +01:00
Julian Oes
199b5e7d48
Revert "mavsdk_tests: retry gz model spawn command"
...
This reverts commit c15d3f7cfa .
2021-12-20 13:05:46 -05:00
Julian Oes
9184038359
mavsdk_tests: try to restart gzserver
...
Sometimes gzserver seems to just not start correctly. With this commit
we try to just restart.
2021-12-20 13:05:46 -05:00
TSC21
9894598b63
mavsdk_tests: update to be able to fetch rtps builds as well
2021-12-20 13:05:46 -05:00
Thomas Debrunner
9312c772f1
mavsdk-tests: Re-try to launch a mission for some time before failing. This mitigates an issue where the flight controller has an uploaded mission, but has not finished the mission feasibility checks yet.
2021-12-20 13:05:46 -05:00
Julian Oes
764af19da4
mavsdk_tests: bump MAVSDK version to v0.48.0
...
This might help with CI tests where we get RC loss because, presumably,
MAVSDK is not sending them in time.
2021-12-20 13:05:46 -05:00
Claudio Micheli
9d02851893
vmount: increase stack size to 2100
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2021-12-20 13:05:15 -05:00
Julian Oes
90fe4b7a54
vmount: publish gimbal v2 protocol for v1 gimbals
...
This enables the use case where the gimbal v2 protocol is used
between the ground station and the drone, and the gimbal v1 protocol is
used between the drone and the gimbal.
2021-12-20 13:05:15 -05:00
Julian Oes
6d74b390d9
vmount: use absolute angle for location tracking
...
I'm pretty sure it makes more sense to use an absolute angle to track a
lat/lon location.
2021-12-20 13:05:15 -05:00
Julian Oes
d88f9353e8
vmount: improve debug message
...
This should help to figure out when gimbal commands don't work.
2021-12-20 13:05:15 -05:00
Julian Oes
f7c4034f3c
vmount: fix v1 frames with v2 input
...
It looks like the frames for pitch and roll were not set correctly when
v1 is used in v2 input.
2021-12-20 13:05:15 -05:00
Julian Oes
0ce4eae314
vmount: fix v1 frames for v1 input
...
This basically means that we want roll and pitch to be absolute, so
relative to the horizon.
2021-12-20 13:05:15 -05:00
Julian Oes
3c5bf497a3
esc_calib: remove unused variable
2021-12-20 10:56:24 -05:00
Julian Oes
a6431ab8f0
simulator: fix implicit-const-int-float-conversion
2021-12-20 10:56:24 -05:00
Daniel Agar
019eaf7038
multicopter: minimize dt jitter by using estimate timestamp_sample
2021-12-17 17:52:28 -05:00
Julian Oes
dcf69144cb
mavsdk_tests: fix type for mypy check
...
This was probably triggered due to a mypy update.
2021-12-17 17:28:54 +01:00
marcojob
2cfe08b3b1
small typo in vehicle_local_position msg
2021-12-17 15:45:07 +01:00
Igor Mišić
2d680dfd1a
pps_capture: fix PARAM_PREFIX for boards with px4io (CONFIG_BOARD_IO)
2021-12-17 07:56:08 +01:00
Igor Mišić
89f828fba7
pps_capture: advertise for logging
2021-12-17 07:56:08 +01:00
Igor Mišić
17f5df2d3e
pps_capture: add argument guard
2021-12-17 07:56:08 +01:00
Beat Küng
f6ced71d26
pps_capture: make it configurable via output functions
2021-12-17 07:56:08 +01:00
Igor Mišić
0f60e7debf
pps_capture: add kconfig
2021-12-17 07:56:08 +01:00
Michael Schaeuble
064a602962
Add PPS capture message to logged topics, simplify timestamp logic and small cleanup
2021-12-17 07:56:08 +01:00
Michael Schaeuble
5ad8b84dec
Fix PPS based UTC timestamp in camera trigger and capture messages
...
The existing implementation has about 100ms difference to a reference clock. With the changes this error less than 25us.
- Use sensor_gps messages with hrt timestamps as RTC reference and not the system realtime clock. The PPS interrupt can then be aligned with the GPS clock system.
- Keep fallback based on system RTC when no PPS pulse was captured
2021-12-17 07:56:08 +01:00
Michael Schaeuble
ebb657bcf4
Fix camera trigger via MAVLink when camera capture feedback is enabled
...
- camera_trigger module always publishes the camera_trigger msg (independent of the camera feedback)
- Use camera_trigger msg and set the feedback flag
- Subscribing modules determine if the message is relevant based on the feedback message
2021-12-17 07:56:08 +01:00
Michael Schaeuble
3e4031cf0f
Set rtc_edge_time also in capture_callback
...
When using an FMU channel as PPS capture GPIO, the rtc_edge_time is now set as well. The delay between actual capture and callback is compensated with the elapsed time of the rtc clock.
2021-12-17 07:56:08 +01:00
Thomas Debrunner
43bc6db99e
PPS capture: Add a param to enable / disable PPS capture module. This is important, since it takes over an FMU pin which can no longer be used for actuator output.
2021-12-17 07:56:08 +01:00
Igor Mišić
298a8c4637
boards/fmu-v5x: allocating PPS pin
...
- start pps_capture before pwm_out
2021-12-17 07:56:08 +01:00
Igor Mišić
60a212f717
px4_arch: add PX4_MAKE_GPIO_EXTI
2021-12-17 07:56:08 +01:00
Igor Mišić
c6098ef3dd
camera_capture: update to use PPS correction for UTC time
2021-12-17 07:56:08 +01:00
Igor Mišić
8eca35111e
camera_trigger: update to use PPS correction for UTC time
2021-12-17 07:56:08 +01:00
Igor Mišić
72b1db4a63
pps_capture: implementation of pulse per second capture driver
2021-12-17 07:56:08 +01:00
Daniel Agar
43a04c9bca
fix PARAM_PREFIX for boards with px4io (CONFIG_BOARD_IO)
2021-12-16 07:20:12 +01:00
Daniel Agar
ecc2ca7f98
mathlib: int16_t negate explicitly handle both INT16_MIN and INT16_MAX
...
- technically negating INT16_MAX doesn't need special handling, but
this ensures any simple saturation logic downstream works by default
2021-12-15 12:45:58 -05:00
Daniel Agar
d59d16a6cd
drivers/accelerometer: adjust int16_t clipping threshold slightly
...
- consider data clipped/saturated if it's INT16_MIN/INT16_MAX or within 1
- this accommodates rotated data (|INT16_MIN| = INT16_MAX + 1) and sensors that may re-use the lowest bit for other purposes (sync indicator, etc)
2021-12-15 12:45:58 -05:00
Daniel Agar
ea29b45282
ekf2: enable mag check by default, but commander only warn
2021-12-15 09:43:46 -05:00
Daniel Agar
3fba7288af
ekf2: selector use hysteresis for healthy flag
...
- require that an instance is healthy continuously for >= 1s before
allowing it to be used
2021-12-14 09:52:36 -05:00
Thomas Debrunner
eb69f15d3a
health-flags: Increase health flags to 64 bit bit field to support extended sys status mavlink message
...
Add SYS_STATUS flag for parachute
2021-12-14 09:41:12 -05:00
Thomas Debrunner
37099f85b9
mavlink: Update to newest mavlink master
2021-12-14 09:41:12 -05:00
Silvan Fuhrer
e9b9176ce2
param translation: fix for FW_GPSF_LT and FW_GPSF_R
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-14 08:27:04 +01:00
Jukka Laitinen
ce6147f570
uORB: Remove transfer of memory allocation ownership to CDev
...
- Allocate and free the node name in uORBDeviceNode.
- Add protected build support by de-allocating the name with kmm_free, when
running in kernel side. strdup allocates from the kernel heap in NuttX kernel
space.
- Remove the CDev::unregister_driver_and_memory(), it is no longer used
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-13 22:52:36 -05:00
Jukka Laitinen
25c10eb124
cdev: build & link fixes for NuttX protected build
...
- Always link to nuttx_fs for register/unregister_driver calls
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-13 22:52:36 -05:00
Daniel Agar
acdcc35392
tests: dataman fix ssize_t printf
2021-12-13 22:51:23 -05:00
alexklimaj
6133ef0d63
Dronecan fix beep driver
2021-12-13 14:52:46 -05:00
bresch
67a893ac6d
WelfordMean: remove unnecessary case for first sample
...
setting the mean to the sample value and then adding 0 is the same as
setting the mean to zero and then add the sample value divided by 1
2021-12-13 11:42:48 -05:00
bresch
5468841aa5
WelfordMean: add unit test
2021-12-13 11:42:48 -05:00
Daniel Agar
fc17797548
ekf2: delete obsolete _bad_vert_accel_detected
2021-12-13 09:13:39 -05:00
Daniel Agar
986cf288da
dataman: remove obsolete persistence and reset reason
2021-12-12 12:06:35 -05:00
Daniel Agar
ad1bfb5410
Tools/HIL/reboot.py retry every 90 seconds for up to 5 minutes
2021-12-12 11:53:01 -05:00
96moustafa
63189067f6
set the transponder_report message of uavs with no icao address to be their mav id
2021-12-11 15:29:43 -05:00
Daniel Agar
167edcc77b
simulator: add standalone sensor_gps_sim module
2021-12-11 15:03:15 -05:00
Daniel Agar
95b961c622
simulator: add standalone sensor_baro_sim module
2021-12-11 15:03:15 -05:00
Daniel Agar
4edfb4799f
simulator: add standalone sensor_mag_sim module
2021-12-11 15:03:15 -05:00
Daniel Agar
b71b908ac7
Tools/HIL: explain cmd, use monotonic time
2021-12-11 15:02:49 -05:00
Daniel Agar
0f6e30599c
Jenkins: hardware tolerate px4_fmu-v5_debug dataman failures for now
2021-12-10 10:28:19 -05:00
bresch
66290de745
ekf: improve range primary height source
...
allow range fusion to start with fake measurements if the sensor is
providing bad measurements because too close to the ground
2021-12-10 15:18:10 +01:00
bresch
9147d5ea5c
ekf2: use ground as ekf altitude datum when in range primary hgt mode
2021-12-10 15:18:10 +01:00
bresch
5e790da634
ekf2: reset the timeout timer in the reset function directly
2021-12-10 15:18:10 +01:00
bresch
0d874cf00a
ekf2: move aiding start details in dedicated function
...
When an aiding source needs to be started, simply call the corresponding
starting function and any required reset is handled in there.
2021-12-10 15:18:10 +01:00
Matthias Grob
897775f38d
ManualControlSelector: Allow disabling stick input
2021-12-10 09:11:08 -05:00
Matthias Grob
300e439144
ManualControlSelector: Enable original PX4 default behavior until QGC catches up
2021-12-10 09:11:08 -05:00
Daniel Agar
d961a067b9
navigator: reduce NUM_MISSIONS_SUPPORTED 2000->500 for dataman RAM usability
2021-12-10 09:10:02 -05:00
Daniel Agar
ca3f6f59f9
dataman: add SYS_DM_BACKEND parameter
2021-12-10 09:10:02 -05:00
Beat Küng
f76086ffa1
microRTPS_agent_CMakeLists.txt.em: add install section
2021-12-10 09:03:08 -05:00
Beat Küng
a9e918c7b2
fix ina226: use shunt param value
2021-12-10 09:03:08 -05:00
Beat Küng
a4ca298ee9
simulator_mavlink: handle MAV_TYPE_VTOL_RESERVED3
2021-12-10 09:03:08 -05:00
Beat Küng
7aed8c4f47
sd_bench: print errno on write failure
2021-12-10 09:03:08 -05:00
Beat Küng
80300c36b4
parameter units: add 'A' (Ampere)
2021-12-10 09:03:08 -05:00
Beat Küng
10f49c99ef
px4_add_gtest.cmake: add optional COMPILE_FLAGS, INCLUDES, EXTRA_SRCS and LINKLIBS
2021-12-10 09:03:08 -05:00
Beat Küng
87ec8839c4
px4/fmu-v5x: remove unused base_phy_DP83848C build variant
2021-12-10 09:03:08 -05:00
Igor Mišić
d1aec01b86
uavcan/actuators: stop update esc status if there is no UAVCAN ESCs
2021-12-10 09:03:08 -05:00
Beat Küng
aa96e39306
kconfig: do not inherit for recovery.px4board from default.px4board
2021-12-10 09:03:08 -05:00
Beat Küng
ca6df035b4
px4/fmu-v5x: add arch_io_pins dependency (required in init.cpp)
2021-12-10 09:03:08 -05:00
Beat Küng
0d1d454a4c
mavlink: add missing 'sensor_calibration' lib dependency
2021-12-10 09:03:08 -05:00
alexklimaj
31af09f8e7
Fix uavcan distance sensor not being logged
2021-12-10 07:19:34 +01:00
Silvan Fuhrer
24d871f792
FW land detector: tighten thresholds in airspeed-less case
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-09 20:55:09 -05:00
PX4 BuildBot
16621b19b3
Update submodule sitl_gazebo to latest Fri Dec 10 00:38:56 UTC 2021
...
- sitl_gazebo in PX4/Firmware (95222baa33 ): https://github.com/PX4/PX4-SITL_gazebo/commit/ffb87ef4a312564cf91791bd5a9d683aacd085a6
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/27298574ce33a79ba6cfc31ed4604974605e7257
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/ffb87ef4a312564cf91791bd5a9d683aacd085a6...27298574ce33a79ba6cfc31ed4604974605e7257
2729857 2021-12-06 Silvan Fuhrer - Plane.sdf: reduce flaps and aileron effectiveness by reducing the angle-to-lift ratio
2021-12-09 20:52:31 -05:00
Thomas Debrunner
ade4a1930c
trajectory-planning: Added option for PositionSmoothing library with single target waypoint that disables L1 guidance
2021-12-09 20:51:39 -05:00
Jukka Laitinen
77af102cab
px4_work_queue: Use px4_task_spawn_cmd for WorkQueueRunner in NuttX protected
...
In NuttX protected build there are separate work queues in kernel and user sides.
pthreads are only available in user side, so use tasks and kthreads for
memory protected builds.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-09 20:42:28 -05:00
Jukka Laitinen
3aab4d2daf
px4_task_spawn_cmd: launch kernel thread in protected/kernel build on kernel side
...
Also task name is accessible only in kernel side for protected/kernel build
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-09 20:42:28 -05:00
Daniel Agar
8185e2a384
boards: board_app_initialize() don't return early on failure
...
- depending on the situation we're more likely to get actionable user
feedback by allowing boot to complete rather than silently failing
2021-12-09 20:41:54 -05:00
Daniel Agar
08ee3208b2
mavlink: stop_command fix potential dead lock
2021-12-09 20:40:55 -05:00
Cindy Hsieh
ca90c785e9
correct pin in the comment, no code changed
2021-12-09 20:40:34 -05:00
Thomas Stastny
95222baa33
fix incorrect L1 period param documentation ( #18811 )
...
* fix incorrect L1 period param documentation
* reduce minimum L1 period
2021-12-08 16:42:50 +01:00
Daniel Agar
8b1543e3b0
mavlink: destroy all instances fix potential dead lock
2021-12-08 09:30:39 -05:00
Silvan Fuhrer
b00ebe53bb
FlightTaskAuto: use MPC_VEL_MAX instead of MPC_XY_CRUISE for emergency braking thresholds
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-08 09:13:01 +01:00
Julian Oes
94884594bb
mavsdk_tests: check gzserver and gz model calls
...
This adds two checks to make sure gzserver has actually started before
continuing, and also whether the gz model call was successful.
2021-12-08 07:26:32 +01:00
Daniel Agar
51c0e5553e
vmount: adjust MNT_RANGE_PITCH and MNT_RANGE_ROLL defaults
...
- this seems like a much more reasonable default
2021-12-08 01:02:46 -05:00
Daniel Agar
3b94742117
vmount: adjust timeout 50 -> 20 ms (50 Hz)
2021-12-08 01:02:46 -05:00
Julian Oes
9cb2bf389c
vmount: add param to use RC input for angular rate
...
Until now RC input was translated to angles only. I added the param
MNT_RC_IN_MODE which allows the RC input to be used for angular rate.
2021-12-08 01:02:46 -05:00
Daniel Agar
08b0ac9654
dataman: retry file read/write failures and report seek errors
2021-12-07 17:03:07 -05:00
Matthias Grob
495f1c9165
battery: don't initialize _source without constructor
2021-12-07 21:06:51 +01:00
Matthias Grob
68e2940f58
math: support max of three values additional to min and use it everywhere
2021-12-07 21:06:51 +01:00
Matthias Grob
e8676fe87a
BATTERY_STATUS: improve filling cell voltage
...
according to review comment
2021-12-07 21:06:51 +01:00
Matthias Grob
b41e345a5b
battery: correct updateBatteryStatus() description
2021-12-07 21:06:51 +01:00
Matthias Grob
ee3bc6673a
AnalogBattery: make update variables const
2021-12-07 21:06:51 +01:00
Matthias Grob
fdc40880d0
battery: separate out publishing from updating
...
to allow smart battery drivers to use the battery class and
filling in additional information in case it makes sense.
2021-12-07 21:06:51 +01:00
Matthias Grob
e70d70468a
battery: pass voltage and current by setter
2021-12-07 21:06:51 +01:00
Matthias Grob
39641494da
battery: pass connected flag in by setter
2021-12-07 21:06:51 +01:00
Matthias Grob
38d23f5345
battery: pass priority in by setter
2021-12-07 21:06:51 +01:00
Matthias Grob
f9fc9a9af6
battery: pass source in by constructor
2021-12-07 21:06:51 +01:00
Matthias Grob
b965923c08
battery: fetch throttle value inside of class
2021-12-07 21:06:51 +01:00
Matthias Grob
ddc6b6bc9c
battery: move MAVLink specific handling out of battery class
2021-12-07 21:06:51 +01:00
Matthias Grob
da2fdf923e
battery parameters: allow usage of 1S battery
2021-12-07 21:06:51 +01:00
Jukka Laitinen
d0d7f29422
platforms/common/shutdown.cpp: Enable boardctl functions for shutdown and poweroff
...
Shutdown and poweroff must go through boardctl in NuttX protected build
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-07 09:24:53 -05:00
Daniel Agar
7185bb3243
vmount: output rc simple protections
2021-12-07 13:11:22 +01:00
bresch
c947562183
ekf: get rid of intermediate variable "fuse_height"
2021-12-07 09:16:21 +01:00
bresch
9651f78b0a
ekf: centralize the height fusion decision
2021-12-07 09:16:21 +01:00
bresch
d583ef6b79
ekf2: move height fusion code to separate source file
2021-12-07 09:16:21 +01:00
Daniel Agar
452a7199a6
Jenkins: HIL stop modules before running certain tests
2021-12-06 23:31:49 -05:00
Daniel Agar
f9faa97d85
Tools/HIL/run_nsh_cmd.py increase timeout 3->4 minutes
2021-12-06 17:51:03 -05:00
Daniel Agar
01e60e853e
navigator: increase stack slightly
2021-12-06 15:10:50 -05:00
Daniel Agar
41378fcef9
ms5611: lower SPI clock 20 MHz -> 16 MHz
...
- this was necessary to get the secondary ms5611 working reliably on a
particular CubeOrange
- the sensor is transferring very little data, so lowering the speed by
default everywhere is harmless
2021-12-06 12:51:52 -05:00
Daniel Agar
8cd517f533
dataman: PX4_ERR on create_work_item failure
2021-12-06 10:23:42 -05:00
Daniel Agar
9ab633c18f
drivers/imu/invensense: check register bank during probe if necessary
...
- the WHO_AM_I is only accessible in register bank 0, which might not
be currently selected if the sensor didn't have a clean reset
2021-12-06 10:22:54 -05:00
Daniel Agar
4bf1b46e47
boards: free up flash on crazyflie and omnibus
2021-12-06 09:37:08 -05:00
Daniel Agar
2256def180
Jenkins: hardware run param dump
2021-12-06 09:37:08 -05:00
Daniel Agar
1f6acd0171
parameters: add simple backup and restore mechanism
2021-12-06 09:37:08 -05:00
Daniel Agar
e692f4ca01
ROMFS: rcS param import fail try to gather data
...
- startup tune and console message to notify user
- save dmesg and param bson copy to microsd
- run param dump to show full contents of bson
2021-12-06 09:37:08 -05:00
Daniel Agar
674b92df18
parameters: sleep 10 ms before retrying a failed import/export
2021-12-06 09:37:08 -05:00
Daniel Agar
7bfebf5289
parameters: add param dump to read and decode bson to console
2021-12-06 09:37:08 -05:00
Daniel Agar
7560d45c61
parameters: import tolerate unhanlded BSON types
2021-12-06 09:37:08 -05:00
Daniel Agar
9db5bc0755
px4_mtd: increase retries, wait inbetween, try decreasing frequency
2021-12-06 09:37:08 -05:00
Daniel Agar
1af068179e
parameters: tinybson print errors and count imported types
2021-12-06 09:37:08 -05:00
Silvan Fuhrer
ba1526896d
Navigator: VTOL: remove generate_waypoint_from_heading()
...
The FW Position controller sets the wp to be tracked during a
VTOL front transition, the coordinates sp set here weren't used.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-06 16:30:59 +03:00
Matthias Grob
10ceea2fe6
geo: refactoring on comments and usage
2021-12-06 14:30:14 +01:00
Thomas Debrunner
8db7a6225b
geo: Moved the map_projection_* functions and state into a self-contained C++ class
2021-12-06 14:30:14 +01:00
Daniel Agar
fe23718e2c
drivers/gps: require valid device to start
2021-12-06 08:44:50 +01:00
Daniel Agar
3160e7a3cd
Jenkins: run calib_udelay on test rack
2021-12-05 19:42:10 -05:00
PX4 BuildBot
01192e3c37
Update submodule simulation-ignition to latest Sun Dec 5 12:38:56 UTC 2021
...
- simulation-ignition in PX4/Firmware (4e3d944f58 ): https://github.com/PX4/px4-simulation-ignition/commit/0ea4dbe2c3dac84f5927a59b1caf5e5561cf942e
- simulation-ignition current upstream: https://github.com/PX4/px4-simulation-ignition/commit/483193d9b8b89211c3b970c735b4fbb5f724b63a
- Changes: https://github.com/PX4/px4-simulation-ignition/compare/0ea4dbe2c3dac84f5927a59b1caf5e5561cf942e...483193d9b8b89211c3b970c735b4fbb5f724b63a
483193d 2021-11-27 JaeyoungLim - Merge pull request #2 from PX4/pr-upstream-merge
4f3fd67 2021-11-27 Jaeyoung-Lim - Merge remote-tracking branch 'origin/master' into pr-upstream-merge
bd96d89 2021-11-27 Jaeyoung-Lim - Use mavlink develop dialect
bba86d6 2021-11-27 Jaeyoung-Lim - Fix firmware build test on github actions
e78ad94 2021-09-04 Jaeyoung-Lim - Update Readme
63ac33c 2021-09-03 Jaeyoung-Lim - Rename world path to accomodate different models
794a8dc 2021-07-12 Jaeyoung-Lim - Add ignition gazebo firmware build test
2021-12-05 19:23:55 -05:00
Daniel Agar
58421f2edc
Update submodule GPS drivers to latest Fri Dec 3 12:38:58 UTC 2021
...
- GPSDrivers in PX4/Firmware (3e0d06c65167c0bd79c193ea75ca5c7959053ff7): https://github.com/PX4/PX4-GPSDrivers/commit/bd72eb6794e8fb4f2ed3e47311a14c2cec69f60b
- GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/d6940d9c8ccb8ab3273c677097a29d46903021ff
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/bd72eb6794e8fb4f2ed3e47311a14c2cec69f60b...d6940d9c8ccb8ab3273c677097a29d46903021ff
d6940d9 2021-12-02 alexklimaj - Update F9P moving base with direct UART2 connection
eb0cb58 2021-11-25 sebastian - always using groundspeed for vel_m_s in ubx driver
0408160 2021-11-18 alexklimaj - Remove extra UART1 baudrate set
2021-12-05 19:23:07 -05:00
Daniel Agar
f63a7642d6
NuttX debug helper improvements
...
- use NuttX gdb script for nxthreads and thread backtrace
- update jlink_gdb_backtrace and jlink_debug_gdb helper targets to use
NuttX gdb script
- Debug/PX4 fix "perf" divide by zero
- Debug/PX4 add "dmesg"
2021-12-05 19:18:56 -05:00
Daniel Agar
10f2564ae8
systemcmds/tests: dataman test use proper signed type for dm_read() return
2021-12-05 18:08:54 -05:00
Daniel Agar
713350930d
boards: px4_fmu-v5 add test variant
2021-12-05 18:08:54 -05:00
Daniel Agar
37c1598f38
boards: cubepilot_cubeorange enable calib_udelay and run on test rack
2021-12-05 14:50:03 -05:00
Daniel Agar
7d515e3d58
boards: cubepilot_cubeorange lower cpu clock 480 -> 400 MHz to reduce temperature
2021-12-05 14:50:03 -05:00
PX4BuildBot
aae794965a
[AUTO COMMIT] update change indication
2021-12-05 11:03:58 -05:00
PX4 BuildBot
4478877820
Update world_magnetic_model to latest Sun Dec 5 11:14:12 UTC 2021
2021-12-05 11:03:58 -05:00
Matthias Grob
4e3d944f58
mixer_module: typo con(s)tructor
2021-12-03 07:40:23 +01:00
Julian Oes
accbdbf129
DEBUG: get some mavsdk_test_runner.py output
2021-12-02 11:40:26 -05:00
Julian Oes
7c0165ea0c
ROMFS: avoid setting none params
2021-12-02 11:40:26 -05:00
Julian Oes
f537b30c86
init.d-posix: exit on error
...
This fixes a case where the px4 startup is not stopped when the
px4 process is killled using -SIGKILL against the px4 deamon.
In that case, the currently executing command/client is killed
and properly shutting down with result -1, however, the next command
is started anyway.
This means that the next time we try to run the simulation we get a
"PX4 daemon already running for instance 0" error and PX4 doesn't start
properly.
By adding exit on error, we properly exit in the case where the startup
script gets stopped/killed.
2021-12-02 11:40:26 -05:00
Julian Oes
c15d3f7cfa
mavsdk_tests: retry gz model spawn command
...
This should help when gzserver does not respond yet and we end up
without a model and hence can't connect later and time out.
This change also required a fix to prevent the tester to hang on
terminating all runners. By using poll instead of only read we can
prevent that and actually properly join the logger thread.
2021-12-02 11:40:26 -05:00
Daniel Agar
2190f66096
sensors/vehicle_magnetometer: add SENS_MAG_AUTOCAL to enable initial auto cal
2021-12-01 20:24:56 -05:00
Daniel Agar
8fbf79527f
magnetometer allow setting initial calibration from bias if available and stable
2021-12-01 20:24:56 -05:00
Daniel Agar
b7efd4f947
ekf2: selector treat combined test ratio > 1 as a warning
...
* ekf2: selector treat combined test ratio > 1 as a warning
* ekf2: wait for 1s of constant warning to trigger an instance switch
Co-authored-by: bresch <brescianimathieu@gmail.com >
2021-12-01 20:22:34 -05:00
Matthias Grob
89892d0d17
px4io: discover PWM_MAIN_TRIMx parameters right away
2021-12-01 20:21:26 -05:00
Julian Oes
a9b9362fea
commander: handle system broadcast commands
...
This changes the command handling logic to accept commands which are
targeted at any system, signaled by target_system set to 0.
2021-12-01 20:17:35 -05:00
Daniel Agar
a2064cceff
boards: enable early MPU reset on any board potentially not using the PX4 bootloader
2021-12-01 20:13:41 -05:00
Peter van der Perk
36ba8cc6dd
UAVCANv1 update FMU-V5 config
2021-12-01 09:29:15 -05:00
Peter van der Perk
ce10dd90e7
Remove ucannode_gps_demo since it's superseded by uavcan_v1
2021-12-01 09:29:15 -05:00
Peter van der Perk
ce909b23b1
UAVCANv1 Node implementation work, PNP, Registers and uORB publisher
2021-12-01 09:29:15 -05:00
Jukka Laitinen
79aa8ee587
src/drivers/sw_crypto: Fix a function call argument type mismatch
...
Fix one function call argument from unsigned -> size_t
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-01 09:28:02 -05:00
Jukka Laitinen
9c94e4c5ef
crypto: define XMALLOC & XFREE for sw_crypto
...
Use the same memory allocation in sw_crypto driver as what is used in
src/lib/crypto libraries
In addition, in nuttx protected build, allocate all memory from kernel heap
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-01 09:28:02 -05:00
Jukka Laitinen
a537925c3c
Fix a build error with crypto variants
...
There was an error that PX4_CRYPTO was cached accross variants, if it was
defined just for one variant.
This synchronizes the caching of BOARD_CRYPTO with other similar BOARD_ flags;
it is set as INTERNAL and "1" when enabled.
Also remove handling of BOARD_KEYSTORE; it is not used anywhere after
changing the crypto under src/drivers. If a separate keystore driver
is required, it is just selected as any other driver in px4board
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-12-01 09:28:02 -05:00
alexklimaj
2571860ff8
Prevent uavcannode from republishing RTCM data received over uavcan
2021-12-01 09:27:11 -05:00
David Lechner
a29820bdf8
gps: fix compiling on mac
...
This fixes the following compile error on Mac:
src/drivers/gps/gps.cpp:562:23: fatal error: use of undeclared identifier 'B921600'
case 921600: speed = B921600; break;
^
2021-12-01 09:25:40 -05:00
alexklimaj
bfd5a90a5d
UAVCAN Moving Baseline Working
...
Set uavcan publisher priorities
Switch to ardupilot rtcm message and add heading accuracy
2021-11-30 15:59:08 -05:00
Matthias Grob
b59db7dac2
rtl_params: change default and max rtl time margin
2021-11-30 19:46:22 +01:00
Matthias Grob
55dfbdc6a6
Commander: fix remaining flight time user messaging
2021-11-30 19:46:22 +01:00
David Jablonski
4f88c200ec
vmount: fix gimbal_manager_status
2021-11-30 19:35:22 +01:00
Thomas
9345f68a93
reapply PR 18614 to refactored FlightTaskAuto
2021-11-30 14:52:16 +01:00
Beat Küng
cbd6e735ad
fix console_buffer: avoid potential deadlock when using dmesg over MAVLink shell
...
dmesg was locking the console buffer, then writing to stdout (a pipe in
the case of the MAVLink shell).
This might block, waiting for mavlink to read from the pipe. If however
mavlink tries to write to the console at that time, the lock is already
taken.
This patch avoids nested locking by using a separate buffer.
2021-11-30 08:49:52 -05:00
Julian Oes
01db98fccf
vmount: fix RC pitch input scale
...
When scaling manual input, we should only use pitch -90 to +90 instead
of -180 to 180 degrees which leads to weird behavior as it gets passed
on by a quaternion.
2021-11-30 07:50:20 +01:00
David Sidrane
76585409fa
durandal rev 1 has bmi088->icm20602
2021-11-29 21:59:30 -05:00
benjinne
38e7f814d5
mro h7 boards add rtps px4board files
2021-11-29 21:50:32 -05:00
Daniel Agar
e348425279
Jenkins: hardware perform board reset immediately after flashing
2021-11-29 21:49:35 -05:00
Daniel Agar
bc7001ba49
NuttX apps with [REJECTED] mkfatfs DMA memory change
2021-11-29 21:49:35 -05:00
David Sidrane
df1c94dd4e
px4_fmu-v5_debug:Increase stack size
2021-11-29 16:01:08 -05:00
David Sidrane
ade7315e9b
sd_bench:Missing free
2021-11-29 16:01:08 -05:00
Jukka Laitinen
c2cbab1e98
Improve stub_keystore configuration
...
It is possible to either set the keyfile locations in board configuration or
with the same environment variables as before.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-29 11:09:51 -05:00
Jukka Laitinen
929820136a
Move sw_crypto and stub_keystore under src/drivers
...
This is more logical place for the "backend" implementation than
directly under platform.
This also allows making other implementations as "real" drivers, as well as proper configuration via Kconfigs
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-29 11:09:51 -05:00
Daniel Agar
9b7c8c8a8b
boards: px4_fmu-v6x_default enable ethernet by default with NuttX optimizations
2021-11-29 09:08:42 -05:00
Daniel Agar
b9152dc4d0
boards: px4_fmu-v5x_default increase ETH pktsize to max and enable tcp delayed ack
2021-11-29 09:08:42 -05:00
Daniel Agar
bb562a6d10
mavlink: unify find_broadcast_address logic
...
- remove NuttX special handling
2021-11-29 09:08:42 -05:00
Daniel Agar
0459b73520
boards: px4_fmu-v5x enable mavlink ethernet by default
2021-11-29 09:08:42 -05:00
PX4 BuildBot
2870b5bbb1
Update submodule sitl_gazebo to latest Sat Nov 27 12:38:16 UTC 2021
...
- sitl_gazebo in PX4/Firmware (d0c931353b047cfe6340b11866c814aa0d43fd34): https://github.com/PX4/PX4-SITL_gazebo/commit/60d6844e17919e8d57aafb3a0c25064df920cfc3
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/ffb87ef4a312564cf91791bd5a9d683aacd085a6
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/60d6844e17919e8d57aafb3a0c25064df920cfc3...ffb87ef4a312564cf91791bd5a9d683aacd085a6
ffb87ef 2021-11-24 Thomas Stastny - sync baro and diff pres calculations in airspeed and baro plugins
a1d9dfa 2021-11-23 Bearixal - Windy World: Fixed Naming of Parameter according to wind_plugin.cpp and added missing ones. (#830 )
71d8a41 2021-11-17 Jaeyoung-Lim - Remove unused configs in windyworld
2021-11-27 11:14:32 -05:00
PX4 BuildBot
5440802aae
Update submodule libcanard to latest Sat Nov 27 12:38:19 UTC 2021
...
- libcanard in PX4/Firmware (748cbbe79a4f91f472207b8d12e1d01e486a82ab): https://github.com/UAVCAN/libcanard/commit/2a116170285fb47fcaae150ad21c2ccde0756a5f
- libcanard current upstream: https://github.com/UAVCAN/libcanard/commit/2d449453fc8c4060f276c6dc585d4e1e5bf4fd52
- Changes: https://github.com/UAVCAN/libcanard/compare/2a116170285fb47fcaae150ad21c2ccde0756a5f...2d449453fc8c4060f276c6dc585d4e1e5bf4fd52
2d44945 2021-09-18 Kalyan Sriram - Fix sonarcloud issues (#181 )
d64f82f 2021-09-13 Kalyan Sriram - WIP: Migrate to Github Actions (#174 )
2021-11-27 11:11:29 -05:00
David Sidrane
e507563911
uvify_core nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
23c73d4e0b
px4_fmu-v6x nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
51b55533af
px4_fmu-v6u nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
b8bdf7e1c4
px4_fmu-v5x nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
3504541ebd
px4_fmu-v5x base_phy_DP83848C:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
60229c28a8
px4_fmu-v5 uavcanv1:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
01681d6b47
px4_fmu-v5 stackcheck:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
32c2160137
px4_fmu-v5 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
cf36435ed3
px4_fmu-v5 debug:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
a6bc41ef75
px4_fmu-v5 cryptotest:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
0951b9b1e7
px4_fmu-v4pro nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
e957ebac56
px4_fmu-v4 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
c3ae713ec1
px4_fmu-v3 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
394b431364
px4_fmu-v2 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
bddee78412
nxp_fmurt1062-v1 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
fa3027537c
nxp_fmuk66-v3 socketcan:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
38f017b12f
nxp_fmuk66-v3 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
3b6a5dbac3
nxp_fmuk66-e socketcan:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
661512cefe
nxp_fmuk66-e nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
afeb0db666
mro_x21 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
8294b9431a
mro_x21-777 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
55dceae672
mro_pixracerpro nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
861145fcdc
mro_ctrl-zero-h7 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
4f4ada90b1
mro_ctrl-zero-h7-oem nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
1999003cf4
mro_ctrl-zero-f7 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
1179603437
mro_ctrl-zero-f7-oem nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
5fd321ec43
modalai_fc-v2 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
9a9eb35ea8
modalai_fc-v1 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
b7c3d560d3
holybro_pix32v5 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
0bc377ecd3
holybro_kakutef7 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
ddc73b4647
holybro_durandal-v1 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
6921b04600
holybro_can-gps-v1 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
84175eacff
freefly_can-rtk-gps nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
ed473a5ebe
cubepilot_cubeyellow nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
c82e0e0531
cubepilot_cubeorange test:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
6e1500a7de
cubepilot_cubeorange nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
8172a561ca
cuav_x7pro nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
947162f998
cuav_nora nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
63bedd8e4a
cuav_can-gps-v1 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
d30431527c
atl_mantis-edu nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
f59a517be2
ark_can-rtk-gps nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
a3832d3981
ark_can-gps nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
c06e6ffaf7
ark_can-flow nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
8ae0c9aadd
airmind_mindpx-v2 nsh:Remove CONFIG_RAMTRON_WRITEWAIT
2021-11-26 19:27:29 -05:00
David Sidrane
7393a68e28
NuttX with ramtron and BCH backports
2021-11-26 19:27:29 -05:00
Julian Oes
7ddf43b443
mavlink_ftp: fix tests on Nuttx
...
On Nuttx we have an additional check whether the directory is accessible
to check if we are trying to write to storage that is not on the SD
card. This returns the FileProtected error whereas on Linux this just
ends up being a FileNotFound.
The ifdefs around this issue are not pretty but the alternatives of
either removing the tests for /bogus folders, or removing the additional
check on the NuttX side don't seem better either.
2021-11-26 15:50:28 -05:00
Julian Oes
7c90b06628
mavlink_ftp: fix tests after implementation fix
...
In commit 462b572172 the reading operation
on the PX4 side was changed to only read as many bytes as requested
rather than however many fit in the payload data.
This caused the unit tests to fail which this commit here aims to fix.
What is confusing about MAVLink FTP is that there is a size field which
generally signals how many bytes of the payload data are used/set.
However, in the case of a read requst, the size field is used to
indicate how many bytes should be read. The payload data is empty in
that case though.
This case was, from how I understand it, not implemented/tested in the
unit tests and now failed. In order to implement it I had to change a
few things:
- Change _setup_ftp_msg and _send_receive_msg so that the params contain
a data length rather than the size field. The size field itself needs
to be set outside of these methods using payload->size.
- Since we test files smaller, equal, and bigger than one payload data
length, I implemented that we send multiple read requests until we
have the whole file and not just the first part.
- Additionally, I saw a lot of uninitialized warnings in valgrind, and
got rid of them by adding a few zero initializations.
2021-11-26 15:50:28 -05:00
Silvan Fuhrer
42845d6c6e
SITL configs VTOL/plane: improve SITL tuning a bit
...
remvoe some tecs params from configs that acutally lead to worse performance than defaults
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-26 09:24:23 -05:00
Silvan Fuhrer
3a9eef658c
Commander: remove preflight check for transition switch
...
This check enforced setting a VTOL transition switch if an RC as used on a VTOL.
It comes from a time when the only way to transtion was through the RC switch,
whereas now we have also a mavlink message in place for it, so enforcing it is
no longer needed.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-26 11:37:40 +01:00
Daniel Agar
fc1aaa58b2
sensors/vehicle_angular_velocity: fallback sensor selection improvements
...
- avoid unnecessary filter reset on parameter update
- additional minor optimizations (precomputing dt inverse, etc)
- moving filter reset check and dynamic notch filter update checks out of the update loops
- this were necessary previously when the scale factor wasn't applied prior to filtering the otherwise raw data
2021-11-25 22:44:05 -05:00
PX4 BuildBot
2dffb04d61
Update submodule libevents to latest Fri Nov 26 00:39:17 UTC 2021
...
- libevents in PX4/Firmware (239f1c4eadc57f12b43b57d704bb80bc07a07841): https://github.com/mavlink/libevents/commit/5fd19be22dcbeaccb8afeba146f3a7c931a9b5fb
- libevents current upstream: https://github.com/mavlink/libevents/commit/6329c909a7b16bb6f97c94cbb598815635b94982
- Changes: https://github.com/mavlink/libevents/compare/5fd19be22dcbeaccb8afeba146f3a7c931a9b5fb...6329c909a7b16bb6f97c94cbb598815635b94982
6329c90 2021-11-16 Beat Küng - python: pylint fixes
6251f65 2021-11-16 Beat Küng - events_generated.h.jinja: add '_max' field to generated enums
2021-11-25 21:37:59 -05:00
PX4 BuildBot
ffc52cc2fc
Update submodule mavlink to latest Fri Nov 26 00:39:19 UTC 2021
...
- mavlink in PX4/Firmware (2328402f99b8f8931e4148d033e0b9361407d485): https://github.com/mavlink/mavlink/commit/5309ba449a3dc6d7ad84fa7ebeb6deee040e4a04
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/28163a3b39ae6787e7f1fae9e23feef32506a1c4
- Changes: https://github.com/mavlink/mavlink/compare/5309ba449a3dc6d7ad84fa7ebeb6deee040e4a04...28163a3b39ae6787e7f1fae9e23feef32506a1c4
28163a3b 2021-11-25 Julian Oes - dev: add new message for component capability (#1724 )
5534f76b 2021-11-24 olliw42 - adding some missing MAV_TYPEs (#1679 )
2021-11-25 21:37:14 -05:00
Daniel Agar
51da169ccb
cmake: nuttx apps build depend .c and .h files
2021-11-25 17:24:23 -05:00
Daniel Agar
bf3f7da0a2
Jenkins: hardware restore tests file
2021-11-25 13:11:45 -05:00
Daniel Agar
7d985ec7c5
NuttX with Backports for SD fixes
2021-11-25 13:11:45 -05:00
Daniel Agar
c049c26ac5
ROMFS: rcS attempt to format SD if .format file exists
2021-11-25 13:11:45 -05:00
Daniel Agar
585fa12209
Jenkins HIL improve SD testing
2021-11-25 13:11:45 -05:00
David Sidrane
58a9bf0b2e
sd_bench:Add verify and keep options
2021-11-25 13:11:45 -05:00
Thomas Stastny
8defbc8829
update correct airsp scale param string in ekf2
2021-11-25 11:01:04 -05:00
Matthias Grob
c5fb68b7a1
Commander: force disabling the arm stick gesture when arm switch is in use
2021-11-25 07:56:35 +01:00
David Sidrane
e76dda545c
hardfault_log:Fix formatting
2021-11-24 15:00:38 -05:00
Sander Swart
462b572172
Fixed mavlink_ftp read
...
Instead of always reading the max data length, it now properly respects the requested amount of bytes (as per documentation)
2021-11-24 17:51:29 +01:00
David Sidrane
8e3ee9f6cd
omnibus_f4sd:Fit in Flash added No Help
2021-11-24 09:46:23 -05:00
David Sidrane
b1b948f4bc
modalai_fc-v2:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
6327953fe9
modalai_fc-v1:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
83885b0304
cuav_x7pro:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
48b617ee5e
cuav_nora:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
2fb615d7e2
holybro_kakutef7:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
04df95436d
holybro_pix32v5:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
c4ccde51df
holybro_durandal-v1:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
daa1d76909
spracing_h7extreme:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
1922310404
matek_h743-slim:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
5b30d1cd41
av_x-v1:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
d30ef0cac8
atl_mantis-edu:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
511e87f966
mro_ctrl-zero-f7-oem:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
2799a7f436
mro_x21-777:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
5ff96fc77e
mro_ctrl-zero-h7-oem:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
a097cb11cd
mro_pixracerpro:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
0d203deb34
mro_ctrl-zero-f7:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
376e78b801
mro_ctrl-zero-h7:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
bbe0ed8646
cubepilot_cubeyellow:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
e34aacd520
cubepilot_cubeorange:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
228a0ac5ed
px4_fmu-v6u:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
3f67ece322
px4_fmu-v5:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
53b579a79d
px4_fmu-v5x:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
c391d6793c
px4_fmu-v6x:Set CONFIG_MKFATFS_BUFFER_ALIGMENT=32
2021-11-24 09:46:23 -05:00
David Sidrane
3cf901b29c
NuttX Apps with backport CONFIG_MKFATFS_BUFFER_ALIGMENT
2021-11-24 09:46:23 -05:00
Matthias Grob
ea3b99e964
navigator: Remove deprecated RangeRTL unit tests
2021-11-24 14:10:24 +01:00
Matthias Grob
c522a8b15a
Compute RTL time and react if lower than flight time
...
- Compute RTL time also during RTL
- Calculate correct altitude when finding destination
2021-11-24 14:10:24 +01:00
Matthias Grob
5489005e0b
Commander: call battery_status_check on update instead of early return
2021-11-24 14:10:24 +01:00
Beat Küng
5bec3004c3
omnibus/f4sd: disable RGBLED to reduce flash
2021-11-24 11:41:33 +01:00
Jukka Laitinen
5dbbddb13f
EKF2: Use _distance_sensor_subs vector directly
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-24 09:11:45 +01:00
Jukka Laitinen
b66270f8a8
Inline uORBDeviceNode::copy for performance improvement
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-24 09:11:45 +01:00
Jukka Laitinen
3f884c5d24
Inline deviceNodeExists and getDeviceNode in uORB DeviceMaster
...
This gives a small performance improvement
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-24 09:11:45 +01:00
Jukka Laitinen
d9498ade32
EKF2: Allocate distance sensor subscriptions as member variables
...
Just create the subscriptions and keep them, instead of
re-creating them continuously
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-24 09:11:45 +01:00
Jukka Laitinen
bb307cd462
Fix comparing orb_metadata in uORB::DeviceNode::publish
...
Don't compare pointers to metadata, but the metadata contents.
In protected/kernel build there are two sets of metadata, on on kernel
side and another in user side. Thus the comparison of pointers would just
always fail. Compare orb_id instead
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-24 09:11:45 +01:00
Jukka Laitinen
0b9505453d
Clean up interfaces towards uORB
...
Proxy all calls to the DeviceNode through Manager;
- This hides the DeviceNode from publishers and subscribers
- Manager can be made an interface class between user and kernel spaces in protected build
- This doesn't increase code size or harm the performance on flat build
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-24 09:11:45 +01:00
Beat Küng
99d3b2a4e4
omnibus/f4sd: disable modules to reduce flash
2021-11-23 12:40:22 -05:00
Beat Küng
db2a1e5fee
px4/fmu-v2: disable modules to reduce flash
2021-11-23 12:40:22 -05:00
Beat Küng
950767f1af
holybro/kakutefy: disable modules to reduce flash
2021-11-23 12:40:22 -05:00
Beat Küng
4c03def6e9
boards: add CONTROL_ALLOCATOR + ACTUATOR_TEST
2021-11-23 12:40:22 -05:00
Beat Küng
312d84ca23
metadata: run json schema validation for actuators + parameter metadata
2021-11-23 12:40:22 -05:00
Beat Küng
2809dd8944
control_allocator: remove min/max/scale params
2021-11-23 12:40:22 -05:00
Beat Küng
b29d9db7f1
control_allocator: limit status publication rate to 200Hz
...
Reduces CPU load by ~3.5% on F4 @2khz.
And compute getAllocatedControl as needed (~1.5% CPU reduction)
2021-11-23 12:40:22 -05:00
Beat Küng
93a54ee63d
metadata: fix generic param metadata generation
...
Adds the module.yaml params that was previously split into a separate file.
2021-11-23 12:40:22 -05:00
Beat Küng
bcba3dfe52
control_allocator,angular_velocity_controller: run on rate_ctrl wq
2021-11-23 12:40:22 -05:00
Beat Küng
a0e43bca96
msg: remove unused vehicle_actuator_setpoint topic
2021-11-23 12:40:22 -05:00
Beat Küng
52a2ef34fd
mixer_module: add THR_MDL_FAC for SYS_CTRL_ALLOC=1
2021-11-23 12:40:22 -05:00
Beat Küng
357a16aca6
pwm_out_sim: split module.yaml into HIL+SIM files
2021-11-23 12:40:22 -05:00
Beat Küng
b94c5db55d
component_information: add actuators json generation & CI deployment
2021-11-23 12:40:22 -05:00
Beat Küng
70b1b19902
uavcan: add configuration parameter to actuator metadata
2021-11-23 12:40:22 -05:00
Beat Küng
19b89e1d35
output_functions: add notes to camera trigger + capture & exclude from testing
2021-11-23 12:40:22 -05:00
Beat Küng
4346ac4a37
control_allocator: add mixer metadata
2021-11-23 12:40:22 -05:00
Beat Küng
282d35bbf0
esc_calibration: handle SYS_CTRL_ALLOC==1
2021-11-23 12:40:22 -05:00
Beat Küng
490a2cd7ae
dshot: handle VEHICLE_CMD_CONFIGURE_ACTUATOR
2021-11-23 12:40:22 -05:00
Beat Küng
21699935e8
vehicle_command: add VEHICLE_CMD_ACTUATOR_TEST and VEHICLE_CMD_CONFIGURE_ACTUATOR
2021-11-23 12:40:22 -05:00
Beat Küng
6fdcc43ea8
mixer_module: add testing for SYS_CTRL_ALLOC=1 with actuator_test cmd+uorb msg
2021-11-23 12:40:22 -05:00
Beat Küng
36296794c8
module config: add generate_actuators_metadata.py script
2021-11-23 12:40:22 -05:00
Beat Küng
36d9635518
output_functions.yaml: allow single-instance entry with 'start' but no 'count'
...
for other additional data
2021-11-23 12:40:22 -05:00
Beat Küng
5d6e785a4b
mixer_module: remove unneeded test_motor_s force init
2021-11-23 12:40:22 -05:00
Beat Küng
f99c2617ad
control_allocator: add module.yaml, add CA_MC_R_COUNT param & update defaults
2021-11-23 12:40:22 -05:00
Beat Küng
dbc889a2ae
rc.mc_apps: remove 'param set MPC_USE_HTE 0' for control allocation
...
this is working now
2021-11-23 12:40:22 -05:00
Beat Küng
2ff6baa250
actuator params: use module_name as prefix to channel label
2021-11-23 12:40:22 -05:00
Beat Küng
6537f480b1
module.yaml: make long param description optional
...
Some params are very simple and don't need more.
2021-11-23 12:40:22 -05:00
Daniel Agar
1b7f4b6003
Jenkins HIL test loading all airframes
2021-11-23 12:38:41 -05:00
Matthias Grob
0153c870d2
Commander: make sure yaw airmode is not possible while arm gesture is enabled
...
It's unsafe to arm with the gesture when yaw airmode is enabled
because e.g. in Stabilized mode that results in a high yawrate setpoint
that the drone tries to follow even with zero thrust
because of the airmode.
It was handled before by checking the arm switch parameter because that
used to disable the stick arm gesture.
See 24dc316973
2021-11-23 16:03:46 +01:00
Matthias Grob
572890f8c0
ManualControl: add parameter to disable arm/disarm stick gesture
2021-11-23 16:03:46 +01:00
Matthias Grob
468022abba
ManualControl: correct arm hysteresis parameter name
2021-11-23 16:03:46 +01:00
Matthias Grob
c84b1c6566
ManualControl: ignore unassigned mode slots
...
They were resulting in a message
"Switching to Unkown is currently not available".
2021-11-23 16:03:46 +01:00
Jaeyoung-Lim
af7fa63480
Remove kconfig-frontends installation from setup.sh
2021-11-23 15:17:00 +01:00
Silvan Fuhrer
e596607e2e
minor comments update
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-23 14:48:51 +01:00
Daniel Agar
7ff72304b4
sensors/vehicle_imu: improve disabled sensor handling
...
- remove regular callback scheduling when sensor is disabled, register if re-enabled
2021-11-22 21:10:35 -05:00
Daniel Agar
3140bf167c
NuttX submodule update with work_usrthread.c fixes
2021-11-22 17:41:49 -05:00
Daniel Agar
1c6b1f7554
pwm_out: parameter failure error messages
2021-11-22 11:27:45 -05:00
Daniel Agar
c95dbfd7ac
boards: px4_fmu-v5_debug disable debug fs errors
2021-11-22 11:27:45 -05:00
Daniel Agar
c2cbf74351
vscode: cmake variants add px4_fmu-v5_debug for convenient debugging
2021-11-22 11:27:45 -05:00
Daniel Agar
577d926639
commander: improve angular velocity validity and message
2021-11-22 11:27:45 -05:00
Daniel Agar
f058cbd0e0
boards: px4_fmu-v5_debug disable CONFIG_DEBUG_I2C
2021-11-22 11:27:45 -05:00
Daniel Agar
25846f48c4
boards: px4_fmu-v2/v3 use SPI bus power off rather than full reset
2021-11-22 11:27:45 -05:00
Daniel Agar
c4de9f67a1
Jenkins: HIL add simple reboot script that fails on any ERROR
2021-11-22 11:27:45 -05:00
PX4 BuildBot
643002bd86
Update submodule sitl_gazebo to latest Mon Nov 22 12:39:01 UTC 2021
...
- sitl_gazebo in PX4/Firmware (c73028bb1b ): https://github.com/PX4/PX4-SITL_gazebo/commit/607aa4d990ff20b4f8a3a714043d116cf191f8b6
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/60d6844e17919e8d57aafb3a0c25064df920cfc3
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/607aa4d990ff20b4f8a3a714043d116cf191f8b6...60d6844e17919e8d57aafb3a0c25064df920cfc3
60d6844 2021-11-16 wangwwno1 - Format: Remove extra spaces
e233c6d 2021-11-16 wangwwno1 - Enhance: fuse accel rotation
e8a7f89 2021-11-16 wangwwno1 - Fix: convert accel frame to local NED
2021-11-22 09:12:23 -05:00
PX4 BuildBot
88d9ade4d7
Update submodule mavlink to latest Mon Nov 22 12:39:21 UTC 2021
...
- mavlink in PX4/Firmware (0e4e8162407a12dc09c8d17635c60d4036b81bc7): https://github.com/mavlink/mavlink/commit/c3a4b52eb1ac6e8053d64a6a8b6ade887d4fa2d2
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/5309ba449a3dc6d7ad84fa7ebeb6deee040e4a04
- Changes: https://github.com/mavlink/mavlink/compare/c3a4b52eb1ac6e8053d64a6a8b6ade887d4fa2d2...5309ba449a3dc6d7ad84fa7ebeb6deee040e4a04
5309ba44 2021-11-18 Hamish Willee - Remove backticks - these do not render as a style so not helpful (#1745 )
9cac0e5a 2021-11-17 David Jablonski - docs: catch more hyperlinks (#1744 )
ea9349b5 2021-11-16 David Jablonski - common: add SET_FOCUS_TYPE_AUTO (#1741 )
2021-11-22 09:08:50 -05:00
Daniel Agar
8fc3b05491
mavlink: param_get proper type to silence errors
2021-11-22 09:08:38 -05:00
Daniel Agar
cbb743c64d
parameters: param type checking use PX4_ERR and enable in PX4_SITL
2021-11-22 09:08:25 -05:00
Beat Küng
7faaad79d0
generate_params.py: add PWM_AUX_* for boards w/o IO and >8 channels
2021-11-22 09:07:23 -05:00
Igor Mišić
c73028bb1b
iridiumsbd: discard all pending data for flow control enabled
2021-11-22 11:46:15 +01:00
Daniel Agar
7653bd1757
cmake fix NuttX config import for 0 values
2021-11-21 12:33:29 -05:00
wangwwno1
7a1a4ea7a6
Format fix & Remove redundant lines
2021-11-20 16:13:46 +01:00
wangwwno1
51ce8306ee
Remove redundant code out of hil_lpos
2021-11-20 16:13:46 +01:00
wangwwno1
b2c5919d29
Update src/modules/simulator/simulator_mavlink.cpp
...
Co-authored-by: JaeyoungLim <jalim@ethz.ch >
2021-11-20 16:13:46 +01:00
wangwwno1
160fec5f25
Update simulator_mavlink.cpp
2021-11-20 16:13:46 +01:00
wangwwno1
6e2060ddb6
Add accel to vehicle_local_position_groundtruth
...
Related Issue: #18527
According to [this doc](https://github.com/mavlink/c_library_v2/blob/92b1a43468e8737da2d4cc1e72304e6443dcfdd3/common/mavlink_msg_hil_state_quaternion.h#L102 ), the *acc value are mili-Gee, so multiply the value with `CONSTANT_ONE_G/1000.0f` would get the acceleration in `m/s`.
2021-11-20 16:13:46 +01:00
Daniel Agar
505f963dd0
mavlink: receiver fix SENS_FLOW_ROT type
2021-11-19 21:08:04 -05:00
Max Elfgen
7f5fa3d1f7
Using RTPS as a label resulted in the PX4 instance crashing. Removing the label fixed the problem.
2021-11-19 20:30:46 +01:00
Matthias Grob
f912ee2c8b
Commander: send out parachute MAVLink command when kill switch engaged
2021-11-19 17:15:04 +01:00
Matthias Grob
3193b554ca
Add optional preflight check for healthy MAVLink parachute system
2021-11-19 17:15:04 +01:00
Matthias Grob
43c529f294
Add MAVLink parachute system heartbeat detection
2021-11-19 17:15:04 +01:00
Thomas Debrunner
fb54324f56
gyro-fft: Disable asm-operand-widths warning on apple silicon. The warning is caused by unused functions only. As with compiling for x86, the functions containing assembly never get used, but since the apple silicon is also an ARM target, they trigger a warning.
2021-11-19 09:14:11 -05:00
Daniel Agar
24090b724c
cmake: px4_add_module improve unity build dependencies to avoid unnecessary work
2021-11-19 09:13:07 -05:00
Matthias Grob
4c6621f6cf
Commander: Allow arming a rover with the throttle stick in the middle
2021-11-19 10:10:32 +01:00
Jani Paalijarvi
02336acd61
Improve SPI bus implementation
...
Make possible to define chip-select pin for internal SPI.
By defining chip-select pin, it's possible to start specific SPI device only.
This allows to have several same type of sensors on the same bus with different orientation.
2021-11-19 07:47:18 +01:00
Matthias Grob
35d4986ea7
FlightTasks: remove updateFinalize() concept because it got obsolete
2021-11-18 19:12:44 -05:00
Matthias Grob
9eac0edbc0
FlightTaskAuto: remove generateSetpoints function, replace by implementation
2021-11-18 19:12:44 -05:00
Matthias Grob
ece8fdddec
FlightTaskAuto: simplify early setpoint preparation based on triplet type
2021-11-18 19:12:44 -05:00
dagar
9646b49b60
[AUTO COMMIT] update change indication
2021-11-18 13:58:53 -05:00
Daniel Agar
bffd88ad81
ekf2: don't inhibit accel bias when not in air
2021-11-18 13:58:53 -05:00
Daniel Agar
f3472385da
sensors/vehicle_imu: fix accel/gyro learned bias calibration updates
...
- fix confusion between estimated bias and calibration offset when
saving after each flight
- when the stable bias estiamte is retrieved during flight it's
immediately converted to a sensor offset and saved
- fixes https://github.com/PX4/PX4-Autopilot/issues/18658
2021-11-18 10:00:26 -05:00
bresch
fc155bc57e
Ekf2Selector: declare filter unhealthy when high test ratio
...
Request a switch to another instance when the combined test ratio is too high.
2021-11-18 13:29:01 +01:00
bresch
43fb076828
AngularAcceleration: explicitly disable filter when cutoff <= 0
2021-11-18 09:25:47 +01:00
bresch
4a14a8bc7f
AutoLineSV: Always publish a valid yaw setpoint
...
In MPC_YAW_MODE 3 (along trajectory), the flight task is asked to
produce a yaw setpoint. If the previous yaw value was NAN (e.g.: during
early takeoff), the setpoint should then be reset to the current
estimate.
2021-11-16 18:09:37 -05:00
bresch
f751dd2242
FlightTask: set yaw_setpoint to NAN when yaw should not be controlled
2021-11-16 18:09:37 -05:00
bresch
2213343240
ft altitude: use longerThan to save a sqrt operation
2021-11-16 18:09:37 -05:00
bresch
394fa953b8
EKF: get status on yaw alignement in flight
...
1s after the in air mag reset is performed, the final yaw alignment is
complete and the yaw estimate can be used for yaw control.
2021-11-16 18:09:37 -05:00
Matthias Grob
2a5751233a
FlightTasks: remove unused StraightLine library
...
It was meant as an example for an easy to use interface of a
motion primitive with a minimal implementation. But the implementation
is much worse than the jerk optimized trajectory. We rather
work on making it easier to use. #18390 was a first step towards that.
2021-11-16 18:08:27 -05:00
Daniel Agar
e062f4fcf0
mavlink: ORBIT_EXECUTION_STATUS stream limit to 2 instances
2021-11-16 17:10:13 -05:00
Alessandro Simovic
7090e634cc
mission_block: always accept yaw in MC takeoff
2021-11-16 12:35:16 -05:00
Beat Küng
0622cb8857
mavlink_ftp: disallow writes outside of /fs/microsd under NuttX
...
As these files are kept in RAM, it could just fill up the RAM.
2021-11-16 12:34:16 -05:00
Daniel Agar
4e8c234a55
ekf2: only save mag declination if changed
2021-11-16 12:33:48 -05:00
Daniel Agar
96bf3aa5d0
matrix: apply PX4 astyle
2021-11-16 12:30:51 -05:00
Daniel Agar
ab07f5300b
lib/matrix: delete unused and add testing to PX4
2021-11-16 12:27:14 -05:00
Daniel Agar
4a3d64f1d7
consume PX4/Matrix repository and preserve history
2021-11-16 12:24:19 -05:00
Daniel Agar
38516f7e9c
delete matrix submodule
2021-11-16 12:20:57 -05:00
Matthias Grob
b36dbf8de4
Remove AutoLineSmoothVel, merged into Auto
2021-11-16 10:08:47 +01:00
Matthias Grob
179b1cdf56
FlightTaskAuto: merge activate(), reActivate() and update() from FlightTaskAutoLineSmoothVel
2021-11-16 10:08:47 +01:00
Matthias Grob
51ebb0f294
FlightTaskAuto: move in helper methods from FlightTaskAutoLineSmoothVel
2021-11-16 10:08:47 +01:00
Matthias Grob
aa376c5824
FlightTaskAuto: move in parameters from FlightTaskAutoLineSmoothVel
2021-11-16 10:08:47 +01:00
Matthias Grob
50e13f132f
FlightTaskAuto: move in members from FlightTaskAutoLineSmoothVel
2021-11-16 10:08:47 +01:00
Matthias Grob
33e349d71e
FlightTask: remove unused _time
2021-11-16 10:08:47 +01:00
PX4 BuildBot
4a66c8c4c4
Update submodule sitl_gazebo to latest Tue Nov 16 00:39:15 UTC 2021
...
- sitl_gazebo in PX4/Firmware (f5d9b01f5c ): https://github.com/PX4/PX4-SITL_gazebo/commit/1c8c9197103e746a21f2d2d2c844dd2f7e2b036b
- sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/607aa4d990ff20b4f8a3a714043d116cf191f8b6
- Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/1c8c9197103e746a21f2d2d2c844dd2f7e2b036b...607aa4d990ff20b4f8a3a714043d116cf191f8b6
607aa4d 2021-11-15 Alexander Funke - Wind Plugin: Fixed typo in windGustVelocityMean. Closes #825 , fixes #812 Fixed the typo in windGustVeloctiyMean to windGustVelocityMean, so that the parameter in the world file can be correctly read and the mean gust velocity properly set to the parameter's value.
2021-11-15 23:13:43 -05:00
PX4 BuildBot
bfcd251a54
Update submodule mavlink to latest Tue Nov 16 00:39:28 UTC 2021
...
- mavlink in PX4/Firmware (2615146a0770ea416aa24dce70bd61845e45b939): https://github.com/mavlink/mavlink/commit/0a728aa8dcea5023b26d0df9f25ba5b2a14a71cd
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/c3a4b52eb1ac6e8053d64a6a8b6ade887d4fa2d2
- Changes: https://github.com/mavlink/mavlink/compare/0a728aa8dcea5023b26d0df9f25ba5b2a14a71cd...c3a4b52eb1ac6e8053d64a6a8b6ade887d4fa2d2
c3a4b52e 2021-11-14 olliw42 - use [value:] invalid attribute style (#1742 )
5f353d79 2021-11-15 Hamish Willee - fix invalid attribute for arrays where first element sets as invalid (#1740 )
b354af1c 2021-11-11 Beat Küng - add actuator test and configuration commands (#1738 )
a8401492 2021-11-11 Beat Küng - Component information: add actuators (#1729 )
2021-11-15 23:13:02 -05:00
Daniel Agar
f5d9b01f5c
NuttX build in place
...
- cmake NuttX build wrapper compile in place instead of copying source tree to build directory
- slightly faster skipping necessary copying (depending on system)
- allows debugging in place
- easier to work directly in NuttX following official documentation
- simplifies overall build which should make it easier to resolve any remaining NuttX dependency issues in the build system
- the downside is switching back and forth between different builds always require rebuilding NuttX, but I think this is worth the improved developer experience
- also no longer builds px4io and bootloader in every single build, for most users these rarely change and we're wasting a lot of build time
2021-11-15 18:47:38 -05:00
Daniel Agar
7b7b7acd36
i2c_spi_buses: respect CONFIG_I2C and CONFIG_SPI
...
- bmp280, dps310, and ms5611 barometers support boards without I2C
2021-11-15 15:57:33 -05:00
Daniel Agar
eade2915c1
cleanup old parameter translation
2021-11-15 10:01:22 -05:00
Matthias Grob
91c48606ee
battery_status: clearly define and handle zero remaining flight time
2021-11-15 15:44:02 +01:00
Matthias Grob
73287e8e8c
battery: compute remaining flight time
2021-11-15 15:44:02 +01:00
Matthias Grob
54f2e91775
battery_status: report remaining flight time in seconds
...
This allows more accurate reporting and is compliant with the
MAVLink interface.
2021-11-15 15:44:02 +01:00
Beat Küng
4ba84d56c9
logger: introduce optional topics
...
The current practice of adding topics to the default set isn't scalable,
as it affects all setups.
By making sure topics are advertised on init, logger can just discard
topics that don't exist. This does not work for all topics, so topics are
specifically marked as optional. It can be extended to more topics later
on though.
This reduces the list of topics by ~35 on a pixracer configured as quad,
and reduces RAM usage by ~1KB.
2021-11-15 09:02:03 -05:00
Daniel Agar
177fe4bade
logger: log write file allow single retry on write failure
2021-11-13 20:32:29 +01:00
alexklimaj
333629ce37
Update Broadcom AFBR to v1.3.5 API
2021-11-13 12:05:08 -05:00
RomanBapst
439400f76e
commander: don't ack gimbal commands
...
- this leads to an unnecessary amount of acks which can in turn overflow
the orb queue
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-13 11:59:28 -05:00
Daniel Agar
3cb286abc8
gyro_calibration: reset on any sensor timeout
2021-11-13 10:15:25 -05:00
Daniel Agar
29b9e46664
mavlink_tests: add correct mavlink_c_generate dependency
2021-11-12 13:43:32 -05:00
kevindsp
17ad7071c3
fix the quaternion normalization issue
...
Be course of the numerical computing error . The normalization of the quaternion can't always equal to 1 precisely. It could occasionally trigger the error"attitude estimate no longer valid". So enlarge the threshold to 1e-6f. That keeps it silence.
2021-11-12 16:31:40 +01:00
Daniel Agar
6a60fba96d
boards: holybro_kakutef7_default remove systemcmds/ver to save flash
2021-11-11 11:17:15 -05:00
Daniel Agar
0ec3f0d2cb
mathlib: LowPassFilter2p update cutoff freq min to match NotchFilter
...
- numerically the cutoff frequency not being smaller than 1% of the
sample frequency is probably a better choice, but we're mostly filtering
16 bit data now stored in 32 bit float
2021-11-11 11:17:15 -05:00
Daniel Agar
0d171384b3
update IMU_GYRO_DNF_BW default 8->15 Hz
...
- dshot telemetry feedback can be quite slow (~2 Hz), so I think a
larger default value here makes sense
2021-11-11 11:17:15 -05:00
Daniel Agar
452f15e985
IMU_GYRO_DNF_EN remove from developer category
2021-11-11 11:17:15 -05:00
Daniel Agar
0e2ecdc59a
sensors/vehicle_angular_velocity: perf counter naming consistentcy
2021-11-11 11:17:15 -05:00
Daniel Agar
c60a9e2981
sensors/vehicle_angular_velocity: avoid unnecessary ESC notch filter resets
2021-11-11 11:17:15 -05:00
Daniel Agar
78436e706c
mathlib: NotchFilter add optimized parameter update if only notch frequency changes
2021-11-11 11:17:15 -05:00
Daniel Agar
edce30c6de
sensors/vehicle_angular_velocity: fix ESC RPM notch filter update
2021-11-11 11:17:15 -05:00
Daniel Agar
376b72fb2f
sensors/vehicle_angular_velocity: add new parameter for ESC RPM notch filter BW
2021-11-11 11:17:15 -05:00
Viktor Vladic
02709fcfab
Fixes for MPU6000 and MatekH743-slim board
...
- MPU6000: Added 10us delay for R/W of slow registers
- Board: Fixed DRDY pin from PB1 to PB2
2021-11-11 08:40:41 -05:00
Beat Küng
fdf8461452
ver: print PX4_BOARD_LABEL for 'ver all'
2021-11-11 08:38:42 -05:00
Matthias Grob
dbacdedad1
Remove FlightTaskAutoMapper, merged into AutoLineSmoothVel
2021-11-11 09:14:49 +01:00
Matthias Grob
a94c61b896
FlightTaskAutoMapper: move parameters into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
59a395f6a0
FlightTaskAutoMapper: move remaining members into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
f5183348a6
FlightTaskAutoMapper: move remaining methods into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
0211ef3ba1
FlightTaskAutoMapper: move update() into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
1cef2ad196
FlightTaskAutoMapper: merge activate() into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
wsolichin
e9d50b853a
Adding MAVLink message stream of GPS_RTCM_DATA
2021-11-10 21:15:01 -05:00
David Lechner
d61f5d3d7b
mavlink: fix forwarding to target id >= 128
...
The _MAV_PAYLOAD macro casts the value to a char*. Some compilers treat
char as signed, so we were getting negative system and component ids
if the id was >= 128. This caused later comparisons to fail which
resulted in messages not being forwarded.
2021-11-10 21:14:21 -05:00
Daniel Agar
374d44f38f
mavlink: tests add git_mavlink_v2 dependency to avoid build race
2021-11-10 14:06:40 -05:00
PX4 BuildBot
e0a9ceb2cb
Update submodule mavlink to latest Wed Nov 10 12:39:06 UTC 2021
...
- mavlink in PX4/Firmware (74a33bad350857b6a7dcfe2a6745e8283baa2ce4): https://github.com/mavlink/mavlink/commit/3718ee300bef7a8e7a25314e25e03c11d9f0b180
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/0a728aa8dcea5023b26d0df9f25ba5b2a14a71cd
- Changes: https://github.com/mavlink/mavlink/compare/3718ee300bef7a8e7a25314e25e03c11d9f0b180...0a728aa8dcea5023b26d0df9f25ba5b2a14a71cd
0a728aa8 2021-11-10 Julian Oes - common: request multiple CAMERA_IMAGE_CAPTURED (#1735 )
2021-11-10 14:00:28 -05:00
Daniel Agar
5e3701a365
Tools/check_submodules.sh: perform submodule sync again after first update to reach nested submodules
2021-11-10 13:52:51 -05:00
Jukka Laitinen
be1023f5e9
smbus_sbs: Define linker language for a header-only library
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-10 09:27:21 -05:00
Jukka Laitinen
d02a10b20f
Remove src/lib/drivers/accelerometer and gyroscope linking to drivers__device
...
These are pure uORB publishers, they don't link to drivers__device.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-10 09:26:36 -05:00
Matthias Grob
dd05cb3496
FlightTaskManualPosition: simplify optical flow limiting logic
2021-11-09 21:47:06 -05:00
Claudio Micheli
10e329ce9e
mc_pos_control: correct MPC_XY_CRUISE description
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2021-11-09 21:47:06 -05:00
Matthias Grob
7ec8dd9d23
vehicle_constraints: remove deprecated speed_xy constraint
2021-11-09 21:47:06 -05:00
Jukka Laitinen
356de6ccf1
Factor cdc_acm_init away from px4_init
...
In protected build, this needs to go to user-space initialization as it
calls apps (sercon) and launches mavlink.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-09 21:28:28 -05:00
Jukka Laitinen
39c0c68167
print_load: Remove reference to CONFIG_MAX_TASKS
...
This is already removed from nuttx, and in posix the size of s->last_times
can be just checked with sizeof()
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-09 21:25:10 -05:00
Jukka Laitinen
9299a5c3f6
hrt: Add interface functions for latency counters
...
Add interface functions for fetching latency buckets and counters and use
those in perf_counter.cpp. This cleans up the usage of perf counters, when variables defined in hrt_drv are not referenced directly from perf.
This also enables implementing kernel-userspace interface for those for
nuttx protected/kernel build.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-09 21:24:25 -05:00
Jukka Laitinen
da51177382
Don't link sensors module to drivers__device
...
sensors module only works on uORB, it doesn't link to drivers__device
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2021-11-09 12:18:49 -05:00
Matthias Grob
ab9b9b1eac
boards: Add manual_control module to newly added boards
2021-11-09 16:36:42 +01:00
bresch
d47f9f155a
MC mixer: replace multirotor_motor_limits by control_allocator_status
...
CA: fix saturation computation
Since the CA matrix is normalized, the same scale applied to be used when using the effectiveness matrix
MCRateControl: use control_allocator_status to get saturation info
2021-11-09 10:35:10 -05:00
Jaeyoung-Lim
dd83ef1813
Fix fw position controller takeoff
...
This was introduced by a rebase
2021-11-09 10:30:28 -05:00
Matthias Grob
00905973c7
boards/kakutef7: remove dmesg to save flash
2021-11-09 16:05:25 +01:00
Matthias Grob
4aa0756d08
ManualControlSelector: correct parameter for any source according to documentation
2021-11-09 16:05:25 +01:00
Matthias Grob
fabf865411
Use backwards compatible manual_control_setpoint instead of manual_control_input
2021-11-09 16:05:25 +01:00
Matthias Grob
423aadcc4f
ManualControl: fix RC override
2021-11-09 16:05:25 +01:00
Matthias Grob
7e4a079e09
Commander: report when RC selected mode is not available
2021-11-09 16:05:25 +01:00
Matthias Grob
a593a51f05
Commander: fix mode initialization with RC
2021-11-09 16:05:25 +01:00
Matthias Grob
9f17f3b0f3
ManualControl: correct source for RC mode switches without mode slot
2021-11-09 16:05:25 +01:00
Matthias Grob
21739c6937
MulticopterRateControl: Add event for landing gear retraction when landed
2021-11-09 16:05:25 +01:00
Matthias Grob
2b29df06fd
ManualControl: avoid scheduling based on unchosen input
2021-11-09 16:05:25 +01:00
Matthias Grob
48869ed03e
ManualControl: Simplify check if switches updated
2021-11-09 16:05:25 +01:00
Matthias Grob
38ab7e6ab9
Commander: separate function for action request execution
2021-11-09 16:05:25 +01:00
Matthias Grob
820ba07d4b
Fix landing gear processing
2021-11-09 16:05:25 +01:00
Matthias Grob
0a02d8e774
Commander: handle denying disarm when not landed centrally
2021-11-09 16:05:25 +01:00
Matthias Grob
af54ac7cdb
ManualControl: remove unused variables and renaming
2021-11-09 16:05:25 +01:00
Matthias Grob
e73e6a490d
ManualControl: separate function for stick arming
2021-11-09 16:05:25 +01:00
Matthias Grob
a349dae760
Use action_request to command RC VTOL transitions
2021-11-09 16:05:25 +01:00
Matthias Grob
dcd26bd2b8
Commander: fix "Manual control lost" showing double in QGC
...
because of the missing tab in the deprecated message.
2021-11-09 16:05:25 +01:00
Matthias Grob
956997eb1e
Replace arm_request and mode_request with combined action_request
...
Which saves flash space, log size and is extensible to handle e.g.
the VTOL transition and future actions.
2021-11-09 16:05:25 +01:00
Matthias Grob
052e29267d
Use mode_request for RC mode switching
2021-11-09 16:05:25 +01:00
Matthias Grob
f8e4846851
Use arm_request for manual killing
2021-11-09 16:05:25 +01:00
Matthias Grob
af607e3040
Use separate arm_request instead of vehicle_command for RC arming
2021-11-09 16:05:25 +01:00
Matthias Grob
c4473bdab7
ManualControl: clean up arm/disarm gesture
2021-11-09 16:05:25 +01:00
Matthias Grob
48ed350b25
ManualControlSelector: simplification refactoring
...
- clang tidy did't like {bool} == true in a condition
- setpoint_from_input() got small enough ot just put in line
2021-11-09 16:05:25 +01:00
Matthias Grob
cc2ec09659
ManualControl: fix arm button logic during testing
...
The latching logic has to be different than for the arm switch
this difference got lost in the rewrite of the old obfuscated
arming trigger logic.
2021-11-09 16:05:25 +01:00
Matthias Grob
0901b73f50
ManualControlSelector: rename functions and validate chosen inputs all the time
2021-11-09 16:05:25 +01:00
Matthias Grob
28a29ad050
ManualControlSelector: revamp logic to switch when configuration is changed
2021-11-09 16:05:25 +01:00
Matthias Grob
05946ff0c6
mavlink_receiver: remove unused start_helper declaration
2021-11-09 16:05:25 +01:00
Matthias Grob
7a2ef4a917
Commander: don't publish RC_IN_MODE to vehicle_status
...
This just contains the content of the parameter which
is redundant and results in multiple sources of truth.
2021-11-09 16:05:25 +01:00
Matthias Grob
fff2de43a5
commander_params: update description based on ManualControlSelector
2021-11-09 16:05:25 +01:00
Matthias Grob
396bab52ad
ManualControlSelector: refactor selection to chose based on a single condition
2021-11-09 16:05:25 +01:00
Matthias Grob
1bd786c71a
ManualControlSelector: don't invalidate existing setpoint with other invalid input
2021-11-09 16:05:25 +01:00
Matthias Grob
e15f6b27f2
ManualControlSelector: copy manual_control_input struct instead of each individual field
2021-11-09 16:05:25 +01:00
Matthias Grob
63ddb050ef
ManualControlSelector: refactor timeout calculation to be consistent
2021-11-09 16:05:25 +01:00
Matthias Grob
2528e8c572
ManualControl: correct calculation of dt in seconds
2021-11-09 16:05:25 +01:00
Matthias Grob
12bb2de175
state_machine_helper: rever explicitly handling unavaialble mission
...
It was already handled by the existing condition.
2021-11-09 16:05:25 +01:00
Matthias Grob
4dc165efd0
Commander: don't retry to reach the desired_main_state if we reached it
2021-11-09 16:05:25 +01:00
Matthias Grob
d48302c841
Commander: send out manual control lost event
2021-11-09 16:05:25 +01:00
Matthias Grob
93bed7f670
vehicle_command: shorten arming action/origin enum names
2021-11-09 16:05:25 +01:00
Matthias Grob
709c909929
commander_params: correct RC override description
2021-11-09 16:05:25 +01:00
Julian Oes
b3a5072de5
commander/manual_control: use msg enum for params
...
Instead of using a private enum class we should define the enum in the
vehicle_command message and then use it consistently.
2021-11-09 16:05:25 +01:00
Julian Oes
f1b1068824
commander: remove unused mode/main_state methods
...
With the previous changes these seem no longer required.
2021-11-09 16:05:25 +01:00
Julian Oes
42af44700b
mc_rate_control: always allow landing gear control
...
Except of course when landed and we try to put it up.
2021-11-09 16:05:25 +01:00
Julian Oes
486a4b0118
mavlink: reduce calls to hrt_absolute_time
2021-11-09 16:05:25 +01:00
Julian Oes
454aa611ae
manual_control: add missing 7
2021-11-09 16:05:25 +01:00
Julian Oes
2c0fc686a7
manual_control: don't accept outdated input
2021-11-09 16:05:25 +01:00
Julian Oes
4d00a56230
manual_control: method can be static
2021-11-09 16:05:25 +01:00
Julian Oes
6027398459
manual_control: handle invalid rc_in_mode
2021-11-09 16:05:25 +01:00
Julian Oes
50cca204d8
manual_control: add check for instance
2021-11-09 16:05:25 +01:00
Julian Oes
963d15eacc
manual_control: use correct sysid/compid
2021-11-09 16:05:25 +01:00
Julian Oes
cfdb53a4d8
manual_control: don't switch gear on first init
...
This will ignore the first transition from NONE to something.
This matches the behaviour that existed before.
2021-11-09 16:05:25 +01:00
Julian Oes
60de330f18
manual_control: add hysteresis for arm button back
2021-11-09 16:05:25 +01:00
Julian Oes
75209a7552
manual_control: address review comments
2021-11-09 16:05:25 +01:00
Matthias Grob
942eb23248
ManualControlSelector: remove commented stick difference filter draft
2021-11-09 16:05:25 +01:00
Matthias Grob
11a46d3d27
ManualControlSelectorTest: add constantly outdated samples case
...
Reviewing the code I saw this case arising from the order things
get checked.
2021-11-09 16:05:25 +01:00
Julian Oes
39282a795f
manual_control: fix tests
2021-11-09 16:05:25 +01:00
Julian Oes
53bd254502
commander: add valid check
...
Better checking once too much than once too little.
2021-11-09 16:05:25 +01:00
Julian Oes
efd8757fda
manual_control: handle NAN
2021-11-09 16:05:25 +01:00
Julian Oes
374c9f38a7
manual_control: use constrain() instead
2021-11-09 16:05:25 +01:00
Julian Oes
2a41ade223
manual_control: update first, get diff after
...
Not sure why I had this the wrong way round.
2021-11-09 16:05:25 +01:00
Julian Oes
d0fea93d72
manual_control: add reset to diff
...
This should prevent triggering user override right after RC re-appears.
2021-11-09 16:05:25 +01:00
Julian Oes
93c505b163
commander: force arming is not an option from RC
2021-11-09 16:05:25 +01:00
Julian Oes
4a5ef1c81e
ROMFS: whitespace
2021-11-09 16:05:25 +01:00
Julian Oes
6a6b8d49fc
msg: re-use manual_control_input in setpoint
...
This way we avoid duplication between manual_control_input and
manual_control_setpoint.
2021-11-09 16:05:25 +01:00
Julian Oes
baf81abbab
msg: whitespace only
2021-11-09 16:05:25 +01:00
Julian Oes
14cfad74bf
manual_control: remove leftover debug statements
2021-11-09 16:05:25 +01:00
Julian Oes
5ae76bdc17
commander: fix potentially wrong user message
2021-11-09 16:05:25 +01:00
Julian Oes
bd0c1014d9
manual_control: support arming button
...
The arming button required some refactoring in order to support to
toggle arm/disarm using the vehicle_command. Otherwise manual_control
would have to subscribe to the arming topic and we would spread out the
logic again, and risk race conditions.
2021-11-09 16:05:25 +01:00
Julian Oes
9cbfa2ca95
manual_control: ORBIT and PRECLAND not supported
...
ORBIT and PRECLAND are not actually possible on the flight mode switch.
2021-11-09 16:05:25 +01:00
Julian Oes
2e9edfcd89
commander: only override according to param
...
This got lost in the refactor earlier.
2021-11-09 16:05:25 +01:00
Julian Oes
56b2b81600
manual_control: use filter to check user override
...
Instead of only looking at the diff between two RC samples to decide
whether a user wants to override, we now look at the filtered diff over
one second. This should be more robust to RC sent at various or varying
rates.
2021-11-09 16:05:25 +01:00
Julian Oes
97d01f200e
commander: move manual_control and switches out
...
This moves the remaining handling of the manual control stuff out
of commander. All communication between manual control now goes through
vehicle commands, and the landing gear topic.
2021-11-09 16:05:25 +01:00
Julian Oes
e49b596edc
commander: add desired main state
...
This is an intermediate solution to carry forward the initial state of
the mode slot. Basically, it allows that we start up in Stabilized but
switch to POSCTL as soon we have the required GPS.
2021-11-09 16:05:25 +01:00
Julian Oes
b6af068f25
commander: always reset posvel validity
...
I assume reseting posvel validity is ok for any case, not just all cases
except manual, acro, stabilized.
2021-11-09 16:05:25 +01:00
Julian Oes
52563264e6
commander: move valid mission check inside
...
I think it makes more sense to move this check inside of
main_state_transition.
2021-11-09 16:05:25 +01:00
Julian Oes
916ffef04c
manual_control: send initial mode in the beginning
...
In order for commander to know the desired mode we need to send the
initial position of the mode slot.
2021-11-09 16:05:25 +01:00
Julian Oes
a91fa7f3c1
commander: only move to POSCTL when armed
...
I don't think we want to switch to POSCTL when the sticks are moved when
armed.
2021-11-09 16:05:25 +01:00
Julian Oes
66b069e788
commander: move main_state_transition out
...
This is a first step to having a desired main state.
2021-11-09 16:05:25 +01:00
Julian Oes
e2e908d0fc
mavlink: remove unused methods
2021-11-09 16:05:25 +01:00
Julian Oes
97aa06cc19
commander: move switch handling to manual_control
2021-11-09 16:05:25 +01:00
Julian Oes
08e58a44e9
Fix style
2021-11-09 16:05:25 +01:00
Julian Oes
71d6aa913d
manual_control: starting to implement switches
2021-11-09 16:05:25 +01:00
Julian Oes
ac121c676a
commander: check for valid flag for manual_control
2021-11-09 16:05:25 +01:00
Julian Oes
cda6524421
manual_control: move override detection
...
This also removes the option to ignore throttle for the override
detection as it's not really required anymore.
2021-11-09 16:05:25 +01:00
Julian Oes
1c15cc11d8
manual_control: implement (dis)arming via command
2021-11-09 16:05:25 +01:00
Julian Oes
8876af9150
manual_control: add instance to selector
...
This instance is then used to schedule the callback for the
subscription.
2021-11-09 16:05:25 +01:00
Julian Oes
14eb656a59
rc_update: use snake_case for namespace name
2021-11-09 16:05:25 +01:00
Julian Oes
6e8ccf6a45
rc_update: rename update method
...
This reflects better what it actually does.
2021-11-09 16:05:25 +01:00
Julian Oes
723db8bf2a
manual_control: add selector class [WIP]
...
This adds a selector class with unit tests.
The idea is to have a valid flag in manual_control_septoint and set that
according to the selection and/or timeout of manual_control_inputs.
2021-11-09 16:05:25 +01:00
Julian Oes
eeb7682fd9
ROMFS: start manual_control for SITL
2021-11-09 16:05:25 +01:00
Daniel Agar
2d816e0b3e
[WIP] manual_control selector hacks
2021-11-09 16:05:25 +01:00
Daniel Agar
e18cf3da3e
sensors/vehicle_imu: use WelfordMean for online mean and variance
2021-11-09 15:19:35 +01:00
Daniel Agar
a8c3bcca32
boards: disable CONFIG_STM32H7_SPI_DMATHRESHOLD
2021-11-08 19:20:47 -05:00
Daniel Agar
cb34ff1292
posix-configs/SITL/init/test/test_imu_filtering enable gyro dynamic notch filtering by default
2021-11-08 19:14:32 -05:00
Daniel Agar
e0d9ccdc18
sensors/vehicle_angular_velocity: small FFT notch update simplification
2021-11-08 19:14:32 -05:00
Daniel Agar
47afab62e7
gyro_fft: limit noise floor to configured range (IMU_GYRO_FFT_MIN/MAX)
2021-11-08 19:14:32 -05:00
Daniel Agar
dd3e0b723a
gyro_fft: add IMU_GYRO_FFT_SNR parameter
2021-11-08 19:14:32 -05:00
Matthias Grob
6fab6242db
setup/python requirements: add future module
...
which is a requirement for MAVLink header generation.
Found on Ubuntu 20.04 Python 3.
2021-11-08 17:05:30 +01:00
Silvan Fuhrer
b216cddf49
state_machine_helper: add place holder in array nav_state_names for removed LANDGPSFAIL mode
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-08 13:42:55 +01:00
JaeyoungLim
031f7f831b
Fixedwing Pos Control: Handle vehicle transition waypoints outside controllers ( #18503 )
...
* Handle VTOL transition waypoints outside FW auto control modes
2021-11-08 11:21:08 +01:00
Daniel Agar
66ab7e50df
github actions increase NuttX compile ccache limit slightly
2021-11-07 20:37:58 -05:00
Daniel Agar
3b68f8e510
Tools/check_submodules.sh revert attempted submodule improvements
...
- this wasn't helping break out of submodule issues
2021-11-07 20:36:47 -05:00
Daniel Agar
4627f5514e
boards: holybro_kakutef7_default disable load_mon to save flash
2021-11-07 20:36:47 -05:00
Jaeyoung-Lim
6a2ebfc0cc
Handle setpoint types properly for fixedwing position control
...
Handle setpoint types properly for fixedwing position control
2021-11-07 19:21:00 -05:00
Daniel Agar
f43adaeeb5
Tools/check_submodules.sh disable parallel jobs
...
- this is already run separately for each submodule (potentially in parallel)
2021-11-07 18:12:30 -05:00
Silvan Fuhrer
dbd9b88bea
FW position controller: only allow switching to AUTO_ALTITDUE or AUTO_CLIMBRATE if pos_sp_curr_valid
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-07 23:31:21 +01:00
Daniel Agar
2f8cb5a1c2
mavlink: initial support for MAG_CAL_REPORT stream
2021-11-07 16:03:34 -05:00
Daniel Agar
24b00317b5
Tools/check_submodules.sh attempt update before sync to handle changes
2021-11-07 16:00:13 -05:00
Viktor Vladic
5b3e1a2347
boards: add MatekH743-slim support
2021-11-07 15:39:50 -05:00
JaeyoungLim
cda7c6ceaa
Enable offboard actuator setpoints
2021-11-07 15:38:42 -05:00
Guilherme Lawless
47a191489e
cmake: sitl_gazebo build use memory information from the system to estimate the parallel jobs
...
Using cmake_host_system_information, grabs AVAILABLE_PHYSICAL_MEMORY and adds another job for every 1.5GB of available memory.
This is tested on a single system with 16 logical cores and 16GB RAM (~11.5GB available, reported correctly by cmake).
2021-11-07 15:37:48 -05:00
Daniel Agar
68026eadeb
save significant IMU bias changes learned by the EKF
...
* ekf2: make publishing of learned accel biases more robust
* ekf2: reset accel bias if calibration updated
* msg: add separate accel and gyro calibration counters
* ekf2: use separate accel and gyro calibration counters
* ekf2: rework logic to reset biases when calibration counters increment
* sensors: add saving of learned accel biases
* ekf2: generalized saving accel/gyro/mag in flight sensor calibration
* boards: holybro kakutef7 disable systemcmds/perf and systemcmds/top to save flash
Co-authored-by: Paul Riseborough <gncsolns@gmail.com >
2021-11-07 15:34:27 -05:00
Jacob Crabill
5969508fa7
mavlink: cmake generate mavlink headers at build time
...
- mavlink/mavlink is now directly included as a submodule instead of the generated mavlink/c_library_v2
- this also switches to mavlink development.xml by default
2021-11-05 23:01:38 -04:00
Julian Oes
88489ae8bd
mavlink: Check target for mavlink shell
...
The SERIAL_CONTROL MAVLink message now contains a target_system and
target_component field that we should check.
Without this we might be answering to a command on the network that is
meant for another system.
2021-11-05 23:48:44 +01:00
David Sidrane
96101a9c11
NuttX backports of imxrt dcache fixes to support WB & USB
2021-11-05 13:50:02 -04:00
David Sidrane
af6bedaded
nxp_fmurt1062:Needs pwm_out
2021-11-05 13:50:02 -04:00
David Sidrane
ff43923567
nxp_fmurt1062-v1:Use Write Back Dcache
2021-11-05 13:50:02 -04:00
David Sidrane
dedad87e82
nxp_fmurt1062-v1:Force no no-unaligned-access
...
This results in a load saving (no dcache) of 16.82% at a cost
of 0.03% Flash, .07% XIP Flash and .45% SRAM
Forced Alighment
With: -mno-unaligned-access
Memory region Used Size Region Size %age Used
flash: 606568 B 7 MB 8.26%
flashxip: 622920 B 1 MB 59.41%
sram: 640848 B 856 KB 73.11%
itcm: 0 GB 0 GB
dtcm: 0 GB 128 KB 0.00%
PID COMMAND CP
0 Idle Task 87640 20.047 204/ 748 0 ( 0) READY 3
1 hpwork 0 0.000 332/ 1784 249 (249) w:sig 3
2 lpwork 26 0.008 780/ 1616 50 ( 50) w:sig 4
3 init 0 0.000 1980/ 2928 100 (100) w:sem 3
4 wq:manager 0 0.000 508/ 1256 255 (255) w:sem 4
327 navigator 910 0.204 1124/ 1832 105 (105) READY 6
23 wq:lp_default 3479 0.795 1252/ 1920 205 (205) READY 4
30 wq:hp_default 23554 5.415 1332/ 1904 237 (237) READY 4
47 dataman 0 0.000 820/ 1208 90 ( 90) w:sem 4
57 wq:I2C1 26849 6.190 1060/ 2336 246 (246) w:sem 4
60 wq:I2C2 24045 5.440 732/ 2336 245 (245) w:sem 4
86 wq:SPI1 47127 10.804 1352/ 2336 253 (253) w:sem 4
91 wq:I2C3 1935 0.436 980/ 2336 244 (244) w:sem 4
101 wq:SPI3 6932 1.585 1028/ 2336 251 (251) w:sem 4
237 wq:nav_and_controllers 16743 3.832 1236/ 2240 242 (242) w:sem 4
248 wq:rate_ctrl 9008 2.074 1572/ 1952 255 (255) w:sem 4
250 wq:INS0 37182 8.450 4372/ 6000 241 (241) w:sem 4
264 commander 29395 6.732 1260/ 3224 140 (140) READY 5
287 mavlink_if0 60513 13.828 1876/ 2728 100 (100) READY 4
294 mavlink_rcv_if0 5946 1.387 1292/ 4560 175 (175) READY 4
307 wq:UART5 3345 0.770 844/ 1632 229 (229) READY 4
370 log_writer_file 0 0.000 372/ 1176 60 ( 60) w:sem 3
369 logger 2121 0.484 2468/ 3648 230 (230) READY 3
393 top 37523 8.641 3060/ 4080 237 (237) RUN 3
Processes: 24 total, 10 running, 14 sleeping
CPU usage: 77.08% tasks, 2.87% sched, 20.05% idle
DMA Memory: 5120 total, 1024 used 1024 peak
Uptime: 441.946s total, 87.640s idle
Allow Un-Alighment
With Out: -mno-unaligned-access
Memory region Used Size Region Size %age Used
flash: 604008 B 7 MB 8.23% 8.26% +0.03
flashxip: 622240 B 1 MB 59.34% 59.41% +0.07
sram: 636752 B 856 KB 72.64% 73.11% +0.45
itcm: 0 GB 0 GB
dtcm: 0 GB 128 KB 0.00% 0.00%
PID COMMAND CPU(ms) CPU(%) USED/STACK PRIO(BASE) STATE FD
0 Idle Task 2418 3.190 264/ 748 0 ( 0) READY 3
1 hpwork 0 0.000 332/ 1784 249 (249) w:sig 3
2 lpwork 12 0.004 852/ 1616 50 ( 50) w:sig 3
3 init 0 0.000 1932/ 2928 100 (100) w:sem 3
4 wq:manager 0 0.000 548/ 1256 255 (255) w:sem 4
327 navigator 22 0.203 1052/ 1832 105 (105) READY 6
23 wq:lp_default 83 0.743 1252/ 1920 205 (205) READY 4
30 wq:hp_default 637 5.886 1332/ 1904 237 (237) READY 4
47 dataman 0 0.000 820/ 1208 90 ( 90) w:sem 4
57 wq:I2C1 162 1.063 1060/ 2336 246 (246) w:sem 4
60 wq:I2C2 98 0.500 732/ 2336 245 (245) w:sem 4
86 wq:SPI1 1166 10.771 1352/ 2336 253 (253) w:sem 4
91 wq:I2C3 48 0.437 1060/ 2336 244 (244) w:sem 4
101 wq:SPI3 178 1.653 1028/ 2336 251 (251) w:sem 4
237 wq:nav_and_controllers 410 3.781 1324/ 2240 242 (242) w:sem 4
248 wq:rate_ctrl 222 2.050 1572/ 1952 255 (255) w:sem 4
250 wq:INS0 940 8.691 4372/ 6000 241 (241) w:sem 4
264 commander 753 6.475 1472/ 3224 140 (140) READY 5.03
287 mavlink_if0 1440 13.973 1780/ 2728 100 (100) READY 4
294 mavlink_rcv_if0 139 1.304 1276/ 4560 175 (175) READY 4
307 wq:UART5 83 0.785 828/ 1632 229 (229) READY 4
370 log_writer_file 0 0.000 372/ 1176 60 ( 60) w:sem 3
369 logger 54 0.493 2468/ 3648 230 (230) READY 3
393 top 1053 10.015 3060/ 4080 237 (237) RUN 3
396 mavlink_rcv_if1 166 1.608 1380/ 4560 175 (175) READY 4
395 mavlink_if1 2167 23.459 1812/ 2824 100 (100) READY 4
Processes: 26 total, 12 running, 14 sleeping
CPU usage: 93.90% tasks, 2.91% sched, 3.19% idle 77.08% tasks, 2.87% sched, 20.05% idle -16.82%
DMA Memory: 5120 total, 1024 used 1024 peak
Uptime: 18.242s total, 2.419s idle
2021-11-05 13:50:02 -04:00
David Sidrane
4225193456
nxp_fmurt1062-v1:Proper USB HS config
2021-11-05 13:50:02 -04:00
David Sidrane
e2b4e435a9
Build system:Board level control of no-unaligned-access
2021-11-05 13:50:02 -04:00
David Sidrane
af9f8f08c6
NuttX PX4 build - capture log in VERBOSE=True|1
2021-11-05 13:50:02 -04:00
David Sidrane
d4c2476699
nxp_fmurt1062-v1:init Fix Spelling
2021-11-05 13:50:02 -04:00
David Sidrane
46b208ba21
nxp_fmurt1062-v1:init Define ret indepenent of enabled IP Blocks
2021-11-05 13:50:02 -04:00
David Sidrane
29eb27632a
nxpfmurt1062-v1:Add USB dev
2021-11-05 13:50:02 -04:00
RomanBapst
56cf77a74c
addressed review comments
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
RomanBapst
e36e527488
fixed wrong path
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
Roman Bapst
d58d13b2e8
APX4-1617: Fix manual climb rate in TECS ( #1463 )
...
* tecs: workaround for the fact that vel smoothing lib uses a DOWN coordinate system
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
RomanBapst
7cb99f521c
moved ManualVelocitySmoothing to motion_planning lib
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
RomanBapst
924298e9c3
addressed review comments
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
RomanBapst
0ac3077bdc
tecs: use trajectory generation library to compute height rate setpoint
...
- added ability to specify maximum acceleration constraint for height rate setpoint
- added support for locking altitude setpoint when in height rate control
mode and height rate input is zero
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
RomanBapst
6e75b7cffd
FixedWingPositionControl: push altitude setpoint locking into TECS
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
Beat Küng
296db60a58
camera_capture: use output functions for pin configuration if SYS_CTRL_ALLOC==1
2021-11-05 12:36:04 -04:00
Beat Küng
6d993a9301
camera_trigger: use output functions for pin configuration if SYS_CTRL_ALLOC==1
2021-11-05 12:36:04 -04:00
Silvan Fuhrer
f492fa9d3a
fix typo
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
RomanBapst
514cf12c57
addressed review comments
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
3bd114bf9f
RTL: if vehicle is a VTOL in hover, always consider all safe landing points
...
Unless there is already a mission landing in progress,
in that case stay on the mission landing if RTL_TYPE
isn't set to closest.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
1163a52c17
Navigator: remove unnecessary (duplicated) info messages for RTL
...
There is already (a more precise) info message on RTL activation.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
f4f9b8ebf2
RTL: replace deny_mission_landing logic by getDestinationTypeMissionLanding()
...
The rtl instance decides on destination of RTL, and Navigator then switches to
mission mode if required.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
ab08bbdb58
RTL: improve RTL info message
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
775a1eb4b6
RTL: remove unused function and non-informative comments
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
dd987c08a5
RTL: rename enum names for RTLType
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
a012f01dbc
Navigator: clean up get_rtl_type()
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
8dc6d5f208
RTL: set destination type to mission landing also in MC
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Daniel Agar
9c15be22d6
mc_autotune_attitude_control: add new MC_AT_EN parameter to enable
...
- only enabled by default on boards that aren't memory constrained
2021-11-05 09:52:07 -04:00
bresch
1e94512719
FD: use flags union instead of bitmask
2021-11-05 09:45:52 -04:00
bresch
3f1025fb1e
FD: add dedicated topic to log more internal states
...
log imbalanced propeller check metric
add failure_detector_status message
2021-11-05 09:45:52 -04:00
bresch
b8ed457371
Commander: trigger failsafe action if imbalanced propeller detected
2021-11-05 09:45:52 -04:00
bresch
5dfb8e594a
FD: add imbalanced propeller check
2021-11-05 09:45:52 -04:00
bresch
bf2fb70d67
vehicleIMU: compute and log accel variance
2021-11-05 09:45:52 -04:00
Silvan Fuhrer
f02786d112
Navigator/Commander: make GPS failsafe consitent: switch to Descend also for FW and VTOL
...
- remove GPS failsafe mode
- for VTOL: transition to hover in Descend (unless NAV_FORCE_VT is not set)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 12:09:39 +03:00
Silvan Fuhrer
b77487d69c
Fixed-wing Position controller: add modes for auto altitude and auto descend
...
- bit of clean up
- add GPS failsafe mode auto_altitude, that will keep current altitude with a fixed-bank angle
for some time, then switches to auto_descend that will descend with constant sink rate
of 0.5m/s
- params controlling GPS failsafe are not FW params: NAV_GPSF_R --> FW_GPSF_R and
NAV_GPSF_LT --> FW_GPSF_LT
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 12:09:39 +03:00
Daniel Agar
c73a1b4c68
update UAVCAN-v0 dsdl to DroneCAN
2021-11-04 21:36:13 -04:00
Daniel Agar
67437396f1
mpu6000: add USER_CTRL I2C_MST_EN bit to checked registers
2021-11-04 21:22:14 -04:00
Daniel Agar
8fbb241c2e
mpu6000: add gyro/accel self test bits to checked registers
2021-11-04 21:22:14 -04:00
Daniel Agar
bffcdd6fad
boards: modalai_fc-v2 fix bootloader board type
2021-11-04 15:43:29 -04:00
Matthias Grob
f55590ce78
FlightTaskOrbit: remove duplicate newlines
2021-11-03 17:37:52 +01:00
Matthias Grob
6cea707330
FlightTaskOrbit: increase acceptance radius from 1 to 2m
...
to avoid reaproaching when tracking is not perfect while
acc/deccelerating by stick.
2021-11-03 17:37:52 +01:00
Matthias Grob
eda9dce033
FlightTaskOrbit: fix direction change via MAVLink command
2021-11-03 17:37:52 +01:00
Thomas Debrunner
d450afead6
FlightTaskOrbit: Direct orbit approach with slowdown at intersection point
2021-11-03 17:37:52 +01:00
Thomas Debrunner
0d0b87e193
Update src/modules/flight_mode_manager/tasks/Orbit/FlightTaskOrbit.cpp
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2021-11-03 17:37:52 +01:00
Thomas Debrunner
9bd46be124
Orbit: Switch to PositionSmoothing library.
...
This also fixes the bug with altitude not follows and smoothes orbit approach trajectory
2021-11-03 17:37:52 +01:00
Vatsal Asitkumar Joshi
ea1ae73526
Support for Raspberry PI RP2040 MCU ( #18083 )
2021-11-03 12:14:30 -04:00
bresch
d03bf42f60
slice: add min and max functions
2021-10-07 09:19:28 -04:00
Beat Küng
007a7f78ae
CI: switch to github actions
2021-09-03 12:07:26 +02:00
Beat Küng
c96f0a48b6
test: update gtest to v1.11.0
2021-09-03 12:07:26 +02:00
Beat Küng
7c1860f286
geninv(): pass result as argument
...
depending on usage, this reduces stack usage a bit.
2021-09-03 12:07:26 +02:00
Beat Küng
dc7f119b99
geninv(): improve runtime performance and reduce stack usage
...
- use associativity of matrix operations to reduce size of temporary
matrices and number of multiplications in the M <= N case
- minimize the number of temporary matrices required
2021-09-03 12:07:26 +02:00
romain-chiap
3d1c9b988d
quaternion exponential ( #164 )
2021-08-04 19:04:57 -04:00
Daniel Agar
b8568a89db
Euler: improve quaternion constructor
2021-04-14 22:56:03 -04:00
Daniel Agar
1d0e7f1ca1
Matrix: use naive per element copy instead of memcpy call
2021-04-14 15:44:18 -04:00
Daniel Agar
1344ce06fd
Euler: simplify DCM constructor
...
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2021-04-14 15:40:24 -04:00
Daniel Agar
3679f7fd51
add double precision alias declarations and remove typedefs
2021-02-11 12:40:54 -05:00
Julian Kent
977cf52322
Ignore debug line in code coverage
2021-01-22 17:30:00 +01:00
Julian Kent
4837316f9b
Fix small inconsistencies and compiler warnings
2021-01-22 17:30:00 +01:00
Julian Kent
d540ca5de2
Coerce default epsilon values to Type
2021-01-13 10:17:09 +01:00
Julian Kent
054f8b12f4
Use a single inverse implementation for a single matrix size
2021-01-05 09:02:09 +01:00
Julian Kent
15e54ceda1
Rework rank-detection tolerance in pseudoinverse
2020-12-18 12:07:19 +01:00
Julian Kent
d9a5e3dec2
Add test for new cutoff threshold
2020-12-18 12:07:19 +01:00
JacobCrabill
ea43303c1c
test/vector3: Add test for scalar +/- operators
2020-12-17 18:05:46 +01:00
JacobCrabill
158409abce
Vector3f: Add operator+/- for scalars
2020-12-17 18:05:46 +01:00
Mitchell-Lee-93
a504b6e881
precision of tol for float has been changed
2020-11-04 10:00:55 +01:00
Julian Oes
ce6b10b99a
Fix clang-tidy warnings
...
This comes from PX4 CI.
2020-08-27 17:42:42 +02:00
Kamil Ritz
13f092a30f
sparse quadratic form
2020-08-26 19:45:05 +02:00
Julian Oes
3a5bfb2bd1
matrix: inline to prevent multiple definitions ( #147 )
...
Without inline we get multiple definitions during linking.
2020-08-25 12:58:04 +02:00
Julian Oes
e101edc0e7
Matrix: fix warning if M == N ( #146 )
...
This fixes the warning appearing with GCC 10.2:
../../src/lib/matrix/matrix/Matrix.hpp:481:34: error: logical ‘and’ of equal expressions [-Werror=logical-op]
481 | for (size_t i = 0; i < M && i < N; i++) {
|
I would prefered something with if constexpr but we don't have that yet
in because we're using C++14.
2020-08-24 14:19:43 +02:00
Morten Fyhn Amundsen
cd8ad1584c
Make wrap() work with integer types ( #145 )
...
* Make wrap() work with integers
2020-08-24 10:49:12 +02:00
kamilritz
25c0455348
comply with Firmware style requirements
2020-08-10 10:13:40 +02:00
kritz
f981cea2ae
add possibility to iterate over SparseVector data at runtime ( #143 )
2020-08-09 09:44:49 +02:00
kamilritz
e714a28c83
use size_t instead of int in sparseVector
2020-08-07 19:45:02 +02:00
kritz
18699416b0
SparseVector ( #140 )
...
* Add SparseVector
temp
* Add gtest
* Some reworking of the sparse concept
* Change type of M from int to size_t
* Add const modifier
* Add needed declaration for accessing elements of _indices
* Add norm_squared, norm, longerThan
* Add test for all sparse vector functions
* Add missing const to slice's norm_squared, norm and longerThan
* Construction from Vector<M> and carray[N]
* try to fix ci
Co-authored-by: Julian Kent <julian@auterion.com >
2020-08-07 18:44:48 +02:00
kamilritz
6ed5dbc2db
Construct Vector from Slice<1,M> alias row()
2020-08-06 16:15:05 +02:00
Matthias Grob
a126be0882
attitude test: refactoring to avoid identity quaternion confusion
2020-07-20 18:44:08 +02:00
Matthias Grob
572bafb01f
Quaternion: use template type for division by two
2020-07-20 18:44:08 +02:00
Matthias Grob
242b38ee9e
Quaternion: remove deprecated axis_angle conversions
2020-07-20 18:44:08 +02:00
Matthias Grob
7a3009f7a3
Remove asserts for unsigned integer >= 0
...
GCC 10 gives a warning
"comparison of unsigned expression in ‘>= 0’ is always true"
for these asserts since checking if an unsigned integer cannot
be negative and hence the statement gets droped.
2020-07-20 15:10:49 +02:00
Matthias Grob
0fd99c59f1
Switch operator() to return a const reference
2020-07-17 10:43:34 +02:00
kamilritz
8a59b463f2
Quaternion: Use template type instead of single hardcoded type
2020-07-17 10:37:18 +02:00
Julian Kent
9a30828a0a
Add explicit matrix + scalar test
2020-06-30 10:37:10 -04:00
Julian Kent
f3cf615023
Do += -= and scalar *= /= in place
2020-06-30 10:37:10 -04:00
kamilritz
f529358e9a
Add missing const modifier
2020-06-28 14:24:49 +02:00
kamilritz
674bd99f3b
Add operator* and operator/ for slice with type
2020-06-12 11:34:09 +02:00
Nicolas MARTIN
38b3acce96
fix conjugate_inversed comment
2020-06-11 16:17:28 +02:00
Matthias Grob
2bee0d078c
Quaternion: refactor multiplication to matrix multiplication style
...
Most often the multiplication in convention descriptions and papers is
described in matrix multiplication style like this:
q · p := Q(q)p
Q(q) :=
[q0 −q1 −q2 −q3]
[q1 q0 −q3 q2]
[q2 q3 q0 −q1]
[q3 −q2 q1 q0]
I'm just rearanging the terms such that it's easily comparable with
these definitions additional to it being clearly described by
documenting we use the hamilton convention.
2020-05-06 13:17:02 +02:00
kamilritz
d613055462
Add more assignment operators for slices
2020-04-07 09:12:17 +02:00
Matthias Grob
976ada411b
Matrix: min max comments and test style
2020-03-23 09:46:07 +01:00
Matthias Grob
fa7153ecfb
Matrix: omit min max nan case with same result
...
I observed this during review in
https://github.com/PX4/Matrix/pull/105/files#r348386226
2020-03-23 09:46:07 +01:00
Matthias Grob
a32892926c
Matrix: capture stdout for print() test
...
I want to switch the print() function back to use printf()
such that it's fully compatible with all (embedded) platforms.
To still test the print function I'm capturing stdout into a file
such that the print() function can stay unchanged and the result of
the printf()s can be evaluated.
2020-03-12 13:24:08 +01:00
Matthias Grob
c6db357c92
Matrix: correct print buffer size prediction
...
Apparently printf of %8.8g can result in
8 significant digits + dot + scientific notation e.g. "e+12" = 14 bytes
2020-03-12 10:08:04 +01:00
Matthias Grob
2cca35c8fe
AxisAngle: call q.imag().norm() for conversion
...
This is important depending on the platform because norm()
calls matrix::squrt() which dispatches correctly to the implementation
for the used type. Otherwise float squrt()s can get calculated as
double.
2020-03-12 07:35:44 +01:00
kritz
4873dc1c1e
Analytic inverse implementation ( #122 )
...
* Add analytic 2x2 matrix inverse
* Add analytical 3x3 matrix inverse
2020-03-04 09:14:04 +01:00
Julian Kent
649c837b6b
Use faster but less accurate average
2020-02-25 15:08:17 +01:00
kamilritz
a37b91c96a
Type cast remaining integer
2020-01-13 12:21:18 +01:00
Lorenz Meier
3b581fb599
Update .travis.yml
...
Bring Ubuntu and Mac OS toolchains to latest.
2020-01-01 15:53:50 +01:00
Lorenz Meier
efa5580a67
Update CMakeLists.txt
...
Remove non-compatible compile option.
2020-01-01 15:53:50 +01:00
Lorenz Meier
20a9e91d44
Fix CMake configuration for coverage tests on Mac OS
2019-12-31 15:54:51 +01:00
kritz
d18be0d0fa
Fix AngleAxis constructors ( #117 )
2019-12-28 17:18:15 -05:00
kritz
e81483a808
Catch quaternion canonical corner cases ( #116 )
2019-12-18 14:12:47 +01:00
kritz
4f3565da94
Add asserts ( #115 )
...
* Add asserts
* Type cast literals
* asserts for indexing vectors
* include assert
* Fix accessing elements outside of slice
2019-12-09 10:21:27 +01:00
kritz
2f6398168d
Add several functions that are useful for coavriance matrices: ( #114 )
...
* uncorrelateCovariance
* uncorrelateCovarianceSetVariance
* makeBlockSymmetric
* makeRowColSymmetric
* isBlockSymmetric
* isRowColSymmetric
2019-12-06 12:03:26 +01:00
kritz
5cbcf6035a
Set Matrix's col amd row to single value ( #113 )
2019-12-05 18:16:14 +01:00
kritz
ef442fab92
Getter function for the diag elements of slice ( #112 )
2019-12-05 11:39:21 +01:00
kritz
de6a2d31ff
Slice assign value ( #111 )
...
* Assign value to slice
* Readme for formatting
2019-12-04 14:33:33 +01:00
Daniel Agar
a8009a36a3
Quaternion multiply inline return
2019-11-29 14:40:11 -05:00
Daniel Agar
dba84236cb
Vector3f cross product directly return result ( #109 )
2019-11-28 10:36:13 +01:00
Matthias Grob
de85dcff97
Vector: switch read only functions to const ( #108 )
2019-11-26 13:46:45 +01:00
Julien Lecoeur
a172c3cdac
Add implementation of pseudo-inverse ( #102 )
...
* Fix compilation error
* Add implementation of pseudo-inverse
The implementation is based on this publication:
Courrieu, P. (2008). Fast Computation of Moore-Penrose Inverse Matrices, 8(2), 25–29. http://arxiv.org/abs/0804.4809
It is a fully templated implementation to guaranty type correctness.
* Add tests for pseudoinverse
* Apply suggestions from code review
Co-Authored-By: Mathieu Bresciani <brescianimathieu@gmail.com >
* Adapt fullRankCholesky tolerance to type
* Add pseudoinverse test with effectiveness matrix
* Fix coverage
* Fix rebase issue
* Fix SquareMatrix test, add null Matrix test
2019-11-18 14:36:30 -08:00
Daniel Agar
cd185c995b
add braces around statements and cleanup formatting ( #107 )
2019-11-13 10:41:38 -08:00
kritz
38e966cea1
Add min, max, constrain function for Matrix ( #105 )
...
* Add min, max, constrain function for Matrix
* Set individual elements to nan in constrain
* Deal with NANs
2019-11-12 18:57:12 +01:00
kritz
93d42947b6
Add test for setting Quaternion to Identity ( #104 )
2019-11-08 17:27:33 +01:00
Julian Kent
9f46483951
Fix GCC-4.8 bug
2019-11-04 11:11:30 -05:00
Julian Kent
445f58d484
Fix weird C preprocessor conflicts ( #101 )
2019-11-01 14:23:35 +01:00
Julian Kent
215203fc6f
Automatic Differentiation 'Dual' Type ( #100 )
...
* Dual numbers initial implementation
* Add test coverage, with partial derivative example
* Add Jacobian test, fix small issues
* Improve test to demonstrate non-square jacobian
* Better naming for collectReals/Derivatives
* Improve comments
* Potential GCC 4.8 bug workaround
* Add fallback workaround for non-IEEE float platforms
2019-10-23 12:07:51 +02:00
Julian Kent
92d1c8761e
More features: longerThan, norm, copyTo and slice on a Slice ( #97 )
...
* Allow slices of slices, add longerThan to Vector/Slice
2019-10-03 13:47:36 +02:00
Matthias Grob
740324cf1e
Make all array constructors explicit ( #99 )
...
* Make all array constructors explicit
to avoid accidental implicit casts like e.g.
Vector3f v = 0;
assigning nullpointer content.
2019-10-03 13:38:51 +02:00
Julian Kent
7b34c1c51d
Enable branch coverage
2019-10-03 08:32:05 +02:00
Matthias Grob
973999a4d3
Fix some template type conversions and style
2019-09-23 10:59:12 +02:00
Matthias Grob
c34e8dc98f
helper: consider matrices with the same NANs and INFINITYs equal
...
to simplify bulk checks when these values are expected
2019-09-18 09:59:50 +02:00
Matthias Grob
bbaa93880b
helper: consider NAN equal to NAN such that vectors can be compared exactly
2019-09-18 09:59:50 +02:00
Matthias Grob
33a629105c
Matrix: add proper print function testing
...
Before the print function was just implicitly called somewhere
and that's why we had 100% line coverage. With this we have actual
testing of the functions.
2019-09-18 09:59:50 +02:00
Matthias Grob
b0b7d7229a
Multiplication test: fix division resulting in NAN
2019-09-18 09:59:50 +02:00
Matthias Grob
3747232724
LeastSquaresSolver: Fix nasty GCC compile optimization error
...
The original implementation with no wrapping on size_t is more readable
but the compiler errors with:
internal compiler error: in trunc_int_for_mode, at explow.c:55
I read up and it's apparently a loop optimization problem.
Inspired by https://stackoverflow.com/a/27224697/6326048
I used a far less readable implementation that works fine and
wrote a comment to explain it.
2019-09-18 09:59:50 +02:00
Matthias Grob
5844b0e46e
Implement one float equality check and use it everywhere
2019-09-18 09:59:50 +02:00
Matthias Grob
1e80807e8e
test: Add uncovered equality checks with NAN and INFINITE
2019-09-18 09:59:50 +02:00
Matthias Grob
a374f37a54
Include helper_functions like all other library components
2019-09-18 09:59:50 +02:00
James Goppert
60c9c99dcc
Fix type for division.
2019-09-17 11:08:00 -04:00
Julian Kent
b4714e2ed2
Don't lose array sizes in copyTo
2019-09-17 15:09:12 +02:00
Julian Kent
51d2f9f0dc
Remove direct access to internal data
2019-09-16 21:58:32 -04:00
Julian Kent
18218c8f9c
Test non-square matrix multiplication ( #91 )
...
* Test non-square matrix multiplication
2019-09-16 17:40:25 +02:00
Julian Kent
b817e8677d
Add helpers based on Slice: row(), col(), xy()
2019-09-16 16:11:08 +02:00
Julian Kent
82d565f4d9
Add support for Slice to Matrix, SquareMatrix, Vector
2019-09-16 16:11:08 +02:00
Julian Kent
af1378cc55
Add Slice class
2019-09-16 16:11:08 +02:00
Julian Kent
15865b741c
Help compiler with name resolution to avoid overload mixups
2019-09-09 11:18:57 -07:00
Julian Kent
03ffd696a6
Replace pow with sqrt
2019-09-09 02:18:10 -07:00
Julian Kent
22bf63cb71
A smaller codesize wrap, since it gets inlined in many places
2019-09-05 22:31:13 +02:00
Matthias Grob
74ace7d1d5
helper test: cover wrap close to limits cases ( #84 )
2019-09-05 18:02:33 +02:00
Tanja Baumann
26fd962cbe
fix bug in matrix wrap function ( #83 )
2019-09-05 11:21:41 +02:00
Julian Kent
4a4309327a
better API comment
...
Co-Authored-By: Julian Oes <julian@oes.ch >
2019-09-05 10:19:47 +02:00
Matthias Grob
31450c407c
Matrix: use existing print() if isEqual test fails
2019-09-05 10:19:47 +02:00
Matthias Grob
938274fce5
helper test: add extensive wrap tests
2019-09-05 10:19:47 +02:00
Matthias Grob
315010bae1
helper_functions: generalize wrap function to any range
2019-09-05 10:19:47 +02:00
Matthias Grob
007c7c58c4
fix math defines to have M_PI and M_TWOPI
2019-09-05 10:19:47 +02:00
Martina Rivizzigno
cc084e0791
matrix: add method to check all values are nan ( #82 )
2019-08-26 19:27:58 +02:00
kritz
84b3da227c
Canonical Quaternion with tests ( #81 )
2019-08-22 15:05:14 +02:00
Matthias Grob
56b069956d
slice test: fix trailing whitespace style
2019-03-08 20:20:08 +01:00
Oskar Weigl
5ccfa74c72
Fix const error
2019-03-08 19:17:40 +00:00
Oskar Weigl
eea6b59973
Implement slice as copy loop
2019-03-08 19:17:40 +00:00
Oskar Weigl
93375fbd3c
Fix copy-paste error
2019-03-08 19:17:40 +00:00
Oskar Weigl
5872bbc28c
Add slicing tests that are not pure row slicing
...
I had a look at the implementation of `slice`, and I found it odd that it doesn't have a copy loop. The current implementation does a raw memcpy of the underlying contiguous row-major data. As far as I can tell, this could only slice along rows. Interestingly, I found that the tests only tested for slicing along rows, so this bug would go unnoticed.
I added some tests that checks slicing along columns also. I have a feeling this would break, and we need to fix the implementation of `slice`. However I could be wrong, and hence I'm submitting these tests first to verify.
2019-03-08 19:17:40 +00:00
TSC21
ec436d5aee
define FLT_EPSILON; be descriptive about upper_right_triangle() method
2019-02-24 17:14:05 +00:00
TSC21
7355a29a2a
tests: use __FLT_EPSILON__ in comparisons
2019-02-24 17:14:05 +00:00
TSC21
7ab2b24e65
tests: urt: refactor
2019-02-24 17:14:05 +00:00
TSC21
4aab44fe01
Travis CI: update MacOS version to use
2019-02-24 17:14:05 +00:00
TSC21
707967d117
add test to .urt()
2019-02-24 17:14:05 +00:00
TSC21
210c76c04b
add test to setNaN()
2019-02-24 17:14:05 +00:00
TSC21
96cb9ab146
add NaN value set for Matrix; add return of URT of a matrix
2019-02-24 17:14:05 +00:00
Daniel Agar
6b0777d815
stdlib_imports cinttypes currently unavailable in NuttX toolchain ( #79 )
2019-01-21 09:12:36 -05:00
Matthias Grob
18fba8221c
quaternion: improve comments
2018-12-16 20:16:38 +01:00
Matthias Grob
a4f39c0f89
quaternion: reuse existing dot product
2018-12-16 20:16:38 +01:00
Matthias Grob
9c0acfba36
Matrix: remove unsafe copyToRaw method
...
It used a pointer and could therefore not do correct type checking
for index out of bound or struct memebr order.
Has to be considered unsafe and bad practise.
We should switch to arrays as representation for vectors
inside the messages instead of foo_x, foo_y, foo_z fields.
2018-11-20 16:39:44 +00:00
Beat Küng
0d3bff5e00
Vector2: add explicit constructor for Vector3
...
Initialize from the first 2 elements.
2018-10-01 10:17:16 +02:00
Beat Küng
807472bfd7
README: document how to run tests
2018-10-01 10:17:16 +02:00
Bart Slinger
30d5a79432
testing float/double with Type template
2018-09-18 09:39:17 +02:00
Bart Slinger
707e288019
explicit casting
2018-09-18 09:39:17 +02:00
Bart Slinger
480c5f1f8e
static assert M>=N. floats to Type, arguments as const reference
2018-09-18 09:39:17 +02:00
Bart Slinger
7495794386
test zero divisions
2018-09-18 09:39:17 +02:00
Bart Slinger
3f2d3cf58d
fix a div/0 condition
2018-09-18 09:39:17 +02:00
Bart Slinger
983a3f0212
use Matrix and Vector class for A and tau
2018-09-18 09:39:17 +02:00
Bart Slinger
98b8e2d43b
formatting
2018-09-18 09:39:17 +02:00
Bart Slinger
0009328257
least squares solver for MxN matrices using QR householder algorithm
2018-09-18 09:39:17 +02:00
Daniel Agar
dc3af80977
constructors use array size rather than pointers
2018-08-31 08:11:02 +02:00
Daniel Agar
f1bee775a0
use default constructors and skip unnecessary initialization
2018-08-31 08:11:02 +02:00
Daniel Agar
1bcf48bd82
Quaternion from_dcm don't pass by value
2018-08-30 12:07:48 -04:00
Roman Bapst
b815fc97c4
replace quiet_NaN() with INFINITY ( #70 )
...
- solves undefined symbols for QURT
Signed-off-by: Roman <bapstroman@gmail.com >
2018-06-12 12:24:51 -04:00
Daniel Agar
03a3e3ad46
helper_functions add wrap_2pi
2018-06-10 10:56:45 +02:00
Daniel Agar
abc8f82d49
travis-ci add codecov.io ( #69 )
2018-06-09 21:08:56 -04:00
Daniel Agar
21d47424c6
Quaternion mark const helpers const
2018-04-01 17:02:20 -04:00
James Goppert
e7c95fa027
Fix README/cmake format.
2018-03-28 00:11:03 -04:00
James Goppert
d142ac234c
Fix coverage and bug in matrix equal test.
2018-03-28 00:09:01 -04:00
Daniel Agar
50446a55c8
Matrix add == and != operators
2018-03-27 15:05:22 -04:00
Daniel Agar
61af508755
helper_functions include required px4_defines header
2018-03-19 02:24:38 -04:00
Daniel Agar
41a1cc7583
LICENSE minor changes to template
2017-12-05 10:56:04 -05:00
Matthias Grob
f835d39017
Quaternion/Vector: Small refactor for review: put more comments, switched type conversions, took out default destination vector because confusing
2017-12-04 15:34:13 +01:00
Matthias Grob
af2610ec04
Test: added check for quaternion vector to vector rotation constructor
...
including all the parallel vector corner cases
2017-12-04 15:34:13 +01:00
Matthias Grob
84cd7483ae
Quaternion: added constructor which generates the shortest rotation that maps one vector to another
...
including tedious corner case handling for parallel vectors with 180 degree rotations
2017-12-04 15:34:13 +01:00
Matthias Grob
d513c94f85
Test: added check for Vector.norm_squared()
2017-12-04 15:34:13 +01:00
Matthias Grob
5130da206a
Vector: added norm_squared() because sometimes you can safe the sqrt operation
2017-12-04 15:34:13 +01:00
Matthias Grob
41ad2bdea5
Matrix: added copyToRaw method to allow copying to a pointer
...
because most uORB messages still contain all components of a vector one by one after each other
2017-11-17 09:30:56 +01:00
Matthias Grob
308a6c91cb
Test: added copyTo tests for Vector3, Quaternion and Matrix including clolumn-major order
2017-11-16 04:42:54 +01:00
Matthias Grob
1dffd5930b
Matrix: add copyTo copying data to an array and copyToColumnMajor which does the same but with column-major order
...
same functionality explicitly for quaternions can be deleted
2017-11-16 04:42:54 +01:00
Matthias Grob
3bd94fcd6f
Test vector: structured & commented, added normalize and unit_or_zero tests, removed duplicate data preparation
2017-11-06 17:58:52 +01:00
Matthias Grob
9e59691e43
Vector: Additional normalization with check for zero norm because it occurs so many times in applications
2017-11-06 17:58:52 +01:00
Matthias Grob
f4243160e2
Quaternion: changed comments because of typos and unclear inconsistent indexing
2017-10-17 17:37:23 +02:00
Matthias Grob
d259ab2108
Test: add Quaternion rotate() test that catches non-commutating rotations
2017-10-17 17:37:23 +02:00
Matthias Grob
ee2219b836
Quaternion: replace conversion in rotate() with AxisAngle call
2017-10-17 17:37:23 +02:00
Matthias Grob
b241cf5c95
Quaternion: Adjusted rotate() to the Hamilton convention (which we switched to)
...
Note: This error was not caught by a test because the test included only trivial cases which do not explore non-commuting quaternions.
2017-10-17 17:37:23 +02:00
Matthias Grob
6b1fea76d0
Quaternion: added and adjusted comments to further explain conjugation and derivative functionality
2017-10-17 17:37:23 +02:00
Matthias Grob
0527471a52
Matrix: adjust buffer size calculation to account for additional characters
...
Note: If the buffer is too small there's no memory corruption because of the snprintf limit but part of the output gets missing.
2017-10-17 17:37:23 +02:00
Matthias Grob
0a772f59dd
Quaternion: added direct efficient body z-axis calculation with test
2017-09-26 11:20:56 +02:00
Matthias Grob
976461eb0f
Dcm: more efficient conversion from quaternion, extend reuse of multiplications
2017-09-26 11:20:56 +02:00
Matthias Grob
baf54ad29f
quaternion: correcting comments
...
^(-1) went missing and some phrase was inprecise
2017-09-25 12:18:10 +01:00
James Goppert
e595ebb9a7
Switch to Hamilton quaternions and add Cholesky decomposition.
2017-08-31 11:09:20 +02:00
Nate Weibley
471e96ff6f
Provide const dataptr access
2017-03-23 20:22:45 -07:00
Nate Weibley
2ad3ec46b9
Mark simple min, max, abs methods as const
2017-03-23 20:22:45 -07:00
Nate Weibley
66e1b406b8
Remove artifical need to virtualize dtors
2017-03-23 20:22:45 -07:00
Pavel Kirienko
499b897e5f
Style fix
2017-03-17 12:18:39 -04:00
Pavel Kirienko
99b44c0242
NuttX math lib workaround
2017-03-17 12:18:39 -04:00
Pavel Kirienko
8dbe4a7531
NuttX workaround
2017-03-17 12:18:39 -04:00
Pavel Kirienko
23def31d21
Fixed stdlib imports
2017-03-17 12:18:39 -04:00
Pavel Kirienko
e09cf12e2e
Removed all uses of C library from tests
2017-03-17 12:18:39 -04:00
Pavel Kirienko
9ebf5f89db
Removed all use of C library from the matrix namespace
2017-03-17 12:18:39 -04:00
Pavel Kirienko
552dad40a1
Fixed inclusions in matrix/
2017-03-17 12:18:39 -04:00
Pavel Kirienko
b74749fb61
Un-poisoned fabs
2017-03-17 12:18:39 -04:00
Pavel Kirienko
8af7b8c130
Poisoned the C library identifiers
2017-03-17 12:18:39 -04:00
Daniel Agar
cf924956d7
test vector3 using matrix::isEqual
2017-02-24 20:47:41 -05:00
Daniel Agar
d81ddb0f37
travis-ci only check formatting once
2017-02-24 20:47:41 -05:00
Daniel Agar
de3517a5c7
cmake add asan and ubsan
2017-02-24 20:47:41 -05:00
Daniel Agar
cfa68c2196
clang-tidy trivial cleanup
2017-02-24 20:47:41 -05:00
Daniel Agar
5f2f6f0308
rename cmake "Profile" to "Coverage" and add builds
2017-02-24 20:47:41 -05:00
Daniel Agar
fb87165051
cmake add check
2017-02-24 20:47:41 -05:00
Daniel Agar
f00edc9442
update to astyle 2.06 and fix formatting
2017-02-24 20:47:41 -05:00
Daniel Agar
68c7cc5bfd
Quaternion add copyTo
2017-02-24 20:47:41 -05:00
Daniel Agar
e2211c5867
QuRT use __builtin_isfinite
2017-02-15 19:30:19 -05:00
Lorenz Meier
2283e6946a
Matrix inversion: Ensure that null check is done against the same type
2017-02-04 10:42:10 +01:00
James Goppert
843be9418b
Rename isfinite to is_finite to avoid name conflicts.
2017-02-03 18:15:43 -05:00
James Goppert
63aea23f9e
Add cholesky decomp, Closes #30 , and dynamic print buf
2017-02-03 17:54:16 -05:00
James Goppert
a154e14439
Fix coverage for inverse.
2017-02-03 17:24:15 -05:00
James Goppert
db6dfeafbe
Add helper_functions include for inverse and in general header
2017-02-03 16:56:33 -05:00
James Goppert
230e84702a
Fix unit test, create matrix isfinite.
2017-02-03 16:25:55 -05:00
Siddharth Bharat Purohit
7e3eff7b2d
remove unnecessary duplicate matrices from inverse
2017-02-03 16:12:17 -05:00
Matthias Grob
47c0a93140
Quaternion: added tests for the corner cases of Dcm to quaternion conversion
2016-12-14 18:25:06 +01:00
Matthias Grob
2f4427a923
Quaternion: Implemented the largest pivot element method for conversion from Dcm to Quaternion to avoid numerical problems
2016-12-14 17:55:05 +01:00
Matthias Grob
bb1a321639
Changed Dcm to inherit from SquareMatrix because it is square and we can use the trace method
2016-12-14 17:42:45 +01:00
James Goppert
7eff04742c
Fix for zero check on quat from dcm ctor.
2016-12-13 10:21:55 -05:00
James Goppert
74a120f554
Handle some divide by zero edge cases on init.
2016-11-30 01:27:48 -05:00
James Goppert
945edbc58c
Ensure direction is always defined for axis angle.
2016-11-30 00:40:55 -05:00
James Goppert
8a94f0f8ac
Fix axis angle fabsf usage.
2016-11-28 10:43:29 -05:00
James Goppert
bf69be7f17
Fix formatting.
2016-11-22 10:07:08 -05:00
James Goppert
f3e478cbff
Fix matrix inverse pivotting logic.
2016-11-22 10:04:45 -05:00
James Goppert
34fccdd680
add renormalize method ( #32 )
2016-11-02 12:10:30 -04:00
James Goppert
db4374882b
Fix attitude tests.
2016-08-18 16:54:43 -04:00
James Goppert
3aeb099249
Revert "Use Hamilton quaternion definition."
...
This reverts commit 19554c4470 .
2016-08-18 16:51:00 -04:00
James Goppert
4653626d92
Format.
2016-08-16 19:04:23 -04:00
James Goppert
0eb8aa0c0b
Support more of mathlib function for easier swap in px4.
2016-08-16 19:03:54 -04:00
James Goppert
558777f34c
Fix formatting.
2016-08-16 12:43:42 -04:00
James Goppert
262a715d90
Fix some when building in px4.
2016-08-16 12:37:41 -04:00
James Goppert
4be23552c5
Bump version.
2016-08-16 12:13:26 -04:00
James Goppert
9af58f7e08
Coverage fix.
2016-08-16 12:00:37 -04:00
James Goppert
6197515a51
Fix shadow warnings.
2016-08-16 11:50:46 -04:00
James Goppert
f02fb37265
Add Testing to git ignore.
2016-08-16 11:40:14 -04:00
James Goppert
37b00b0880
Added check or consistency of dcm and quaternion product.
2016-08-16 11:37:45 -04:00
James Goppert
1a87564b85
Added dcm quat prod consistency check.
2016-08-16 11:33:56 -04:00
James Goppert
4f13809420
Added axis angle accessors, removed == operator.
2016-08-16 11:05:01 -04:00
James Goppert
19554c4470
Use Hamilton quaternion definition.
2016-08-16 03:59:06 -04:00
James Goppert
e6a6b4680c
Use quaternion multiplaction for quaternion derivative.
2016-08-16 01:03:23 -04:00
James Goppert
c563c41cd4
Fix cmake version.
2016-07-06 01:56:24 -04:00
James Goppert
cbb7e06a1f
Replace float with Type in kalman.
2016-07-06 01:39:06 -04:00
James Goppert
9353e4cb64
Fix bugs in axis angle.
2016-07-06 01:37:50 -04:00
James Goppert
7b7297b674
Fix for ctor comments on axis angle.
2016-07-05 21:30:22 -04:00
James Goppert
fdf00d163c
Small fix to README.
2016-07-05 21:27:42 -04:00
James Goppert
0b1bed6b00
Added deprecation warnings in source code.
2016-07-05 21:16:17 -04:00
James Goppert
b78e124b73
Fix for README.
2016-07-05 21:08:12 -04:00
James Goppert
298e037f3a
Added AxisAngle to README.
2016-07-05 21:06:48 -04:00
James Goppert
0f41af271a
Added axis angle attitude representation. ( #25 )
2016-07-05 20:59:42 -04:00
James Goppert
3320d57f63
Fix format.sh user message.
2016-07-05 17:13:41 -04:00
Beat Küng
42eadb2656
format.sh: better inform the user what to do on style issues ( #24 )
2016-07-05 17:09:25 -04:00
Beat Küng
b1f76782f6
Euler, Quaternion: fix compiler errors for GCC 6.1.1 ( #23 )
...
* Euler, Quaternion: fix compiler errors for GCC 6.1.1
GCC output:
error: implicit conversion from ‘float’ to ‘double’ to match other operand
of binary expression [-Werror=double-promotion]
* astyle: fix formatting for Euler.hpp & Quaternion.hpp
2016-07-05 17:00:35 -04:00
Roman Bapst
3c87ae78ff
added two more examples to the README
2016-05-25 15:24:35 +02:00
Roman
eeb595d1db
applied formatting
2016-05-17 08:27:35 +02:00
Roman
f4e2b21608
- better description for quaternion class
...
- revert conversion functions to constructor
2016-05-16 09:21:44 +02:00
Andreas Bircher
81eacb0cfa
removing body and intertial frame expressions and establishing consistency
2016-05-15 18:42:21 +02:00
Roman
4a405e7f60
make it clear that we are using right hand rotation convention
2016-05-15 18:42:21 +02:00
Roman
10c1b49bde
fix typo
2016-05-15 18:42:21 +02:00
Roman
1033e145a5
fix some typos and better explanation of quaternion ordering
2016-05-15 18:42:21 +02:00
Roman
2b3bdb523d
better description for quaternion class
2016-05-15 18:42:21 +02:00
Roman
3152d3d6cf
better function descriptions for rotation classes:
...
- do not talk specifically about body or earth frame, just use frame 1 and frame 2
2016-05-15 18:42:21 +02:00
Andreas Bircher
e3a1d67444
adding detailed comments on rotation classes
2016-05-15 18:42:21 +02:00
Andreas Bircher
af2e6d952e
correcting comments
2016-05-15 18:42:21 +02:00
Andreas Bircher
34e6e2a941
refactoring rotation classes and adding initial description
2016-05-15 18:42:21 +02:00
jaredkw
3509329f30
Define M_PI float, change logical and to &&
2016-05-11 18:35:05 -04:00
James Goppert
4d33092bcb
Removed lcov testing from travis.
2016-05-09 12:19:26 -04:00
James Goppert
dd8ff8db12
Made coverage html output optional.
2016-05-09 12:13:00 -04:00
James Goppert
061609322a
Added command line output for coverage.
2016-05-09 12:01:20 -04:00
James Goppert
32ad3989f2
Fix lcov install on travis.
2016-05-09 11:55:45 -04:00
James Goppert
f4902fafb9
Added lcov package for coverage test.
2016-05-09 11:53:18 -04:00
James Goppert
155202f6b0
Found a few coverage gaps with local coverage testing.
2016-05-09 11:49:45 -04:00
James Goppert
6efa3c1cb5
Added make coverage to travis.
2016-05-09 11:34:26 -04:00
James Goppert
3f77991388
Merge branch 'MaEtUgR-maetugr-fix2'
2016-05-09 11:24:55 -04:00
James Goppert
8b7eae3b4a
Merge branch 'maetugr-fix2' of https://github.com/MaEtUgR/Matrix into MaEtUgR-maetugr-fix2
2016-05-09 11:24:28 -04:00
James Goppert
bd8420fcf6
Added example of assignment to already created object.
2016-05-09 11:12:06 -04:00
MaEtUgR
b2eb4d13d8
Matrix.setCol off by one bug fixed
...
The Column Vector you are copying from, only has one Column and it is indexed by 0 not 1.
I also completed the unit test stub that would have found this bug.
2016-05-05 13:18:51 +02:00
Matthias Grob
65679fbcbb
Features and fixes
...
* added the trace function for a SquareMatrix
* added Vector3.hat() and it's counterpart Dcm.vee()
for skewsymskew symmetric matrix operations in relation to the cross product
see https://en.wikipedia.org/wiki/Hat_operator
* Matrix::write_string produced runtime errors when I used it in PX4 posix simulation, i simplified it
* a Matrix3f is a SquareMatrix
* added tests for SquareMatrix.trace, Vector3.hat and Dcm.vee
* added a test for quaternion initialisation from array
* preventing buffer overflows in Matrix.write_string method
2016-04-28 15:16:36 -04:00
James Goppert
07fba8322a
Fix for effective cpp.
2016-03-18 20:56:41 -04:00
James Goppert
711b57d2d4
Added unit function that returns normalized vector.
2016-03-15 18:09:48 -04:00
James Goppert
0e14e11183
Added support for attitude_estimator_q functions.
2016-03-15 06:35:13 -04:00
James Goppert
6c04605531
Added conversion for scalar to vector.
2016-02-26 06:10:09 -05:00
James Goppert
2d27cd79d3
Added scalar to matrix conversion.
2016-02-26 05:56:21 -05:00
James Goppert
6974f97b1c
Added scalar const conversion operator.
2016-02-26 05:47:24 -05:00
James Goppert
7b969094cb
Fix for scalar type.
2016-02-26 05:33:16 -05:00
James Goppert
3917ef1992
Merge branch 'master' of github.com:PX4/Matrix
2016-02-26 03:39:28 -05:00
James Goppert
15865897d5
Added pow.
2016-02-26 03:39:04 -05:00
James Goppert
dd30028823
Merge pull request #14 from mcsauder/master
...
Matrix index correction to allow non-square matrices to evaluate properly.
2016-02-25 16:36:14 -05:00
mcsauder
46c83a8c18
Correct a few indexing copy/paste errors that likely previously only functioned properly on square matrices.
2016-02-25 18:51:28 -07:00
James Goppert
95e3d7d6ce
Added set function.
2016-02-16 14:54:15 -05:00
James Goppert
5a01e6c939
Added slice function for matrix.
2016-02-16 12:22:08 -05:00
James Goppert
1ae114b3d2
Improved rk4 integration to allow longer time interval than 1 step.
2016-02-16 10:53:12 -05:00
James Goppert
ce30542dba
Fix output for unit test.
2016-01-25 13:54:13 -05:00
James Goppert
1778ac199c
Fixed euler wrapping.
2016-01-25 13:40:51 -05:00
James Goppert
a92d5c1338
Removed unneeded headers.
2016-01-24 02:44:25 -05:00
James Goppert
e639a3612f
Fix typo.
2016-01-24 02:30:54 -05:00
James Goppert
d8e397c010
Merge pull request #10 from PX4/euler_fix
...
fix euler calculation
2016-01-24 01:52:40 -05:00
James Goppert
5aef810e7c
Fixed euler angles.
2016-01-24 01:50:34 -05:00
James Goppert
6e6033a1af
Merge branch 'master' into euler_fix
2016-01-24 00:41:12 -05:00
James Goppert
b98ac75452
Formatting.
2016-01-24 00:39:59 -05:00
James Goppert
ffbe58ca10
Added better roundtrip euler test.
2016-01-24 00:39:21 -05:00
James Goppert
b9bfadb0cc
Fix for travis.
2016-01-24 00:00:22 -05:00
James Goppert
faee66273b
Turned back on testing flag.
2016-01-23 23:58:43 -05:00
James Goppert
20a1f902b1
Merge branch 'master' into euler_fix
...
Conflicts:
.travis.yml
test/attitude.cpp
2016-01-23 23:56:35 -05:00
James Goppert
cc2804d6a6
Merge pull request #13 from PX4/testing
...
Testing
2016-01-23 23:38:13 -05:00
James Goppert
0969b0ae56
Removed uncessary print.
2016-01-23 23:35:44 -05:00
James Goppert
d761bd3721
Fixed formatting. Made traivs more verbose.
2016-01-23 23:33:25 -05:00
James Goppert
38211e1aff
Fix testing mechanism.
2016-01-23 23:26:26 -05:00
Lorenz Meier
6009709986
Merge pull request #11 from PX4/dspal_fix
...
Added dspal_math.h for missing constants
2016-01-21 23:23:41 +01:00
Mark Charlebois
306f0ac25d
Added dspal_math.h for missing constants
...
Signed-off-by: Mark Charlebois <charlebm@gmail.com >
2016-01-21 12:45:07 -08:00
Lorenz Meier
48a3288753
Fix QuRT build
2016-01-18 13:39:46 -08:00
James Goppert
fa31c61f2c
Fix for euler.
2016-01-14 15:24:37 -05:00
Roman Bapst
a22a47fe15
fix euler calculation
...
Conflicts:
matrix/Euler.hpp
2016-01-14 15:51:28 +01:00
Lorenz Meier
1d9d8e6f9b
Use a slight ifdef hack to let things default to C++11 for most platforms
2016-01-12 12:14:53 +01:00
Lorenz Meier
187830164d
Fix cast
2016-01-12 11:50:21 +01:00
James Goppert
67c8c8b331
Cast to float for isfinite.
2016-01-12 01:35:33 -06:00
James Goppert
f1968f51d6
Fixed coverage issues.
2016-01-12 01:28:48 -06:00
James Goppert
a90484362f
Merge pull request #8 from PX4/cast_fix
...
added missing cast
2016-01-12 01:09:56 -06:00
Roman
4034c916c7
added missing cast
2016-01-12 07:51:52 +01:00
James Goppert
cc800454d2
Formatting.
2016-01-11 22:05:34 -06:00
James Goppert
684a6b626d
Merge branch 'quaternion'
...
Conflicts:
test/attitude.cpp
2016-01-11 21:59:28 -06:00
James Goppert
0e48d2596c
Merge pull request #6 from thomasgubler/pr1
...
scalar multiplication; std::cout support
2016-01-11 21:47:51 -06:00
Thomas Gubler
45e6012818
matrix scalar pre multiplication and general scalar multiplication for
...
quaternions
2015-12-26 13:15:39 +01:00
Thomas Gubler
99ac532746
remove unnecessary ;
2015-12-26 12:07:12 +01:00
Thomas Gubler
d999923a35
support for std::cout
2015-12-26 12:07:12 +01:00
Roman
cc1658db15
fixed wrong type conversion
2015-12-22 11:23:18 +01:00
Roman Bapst
c3c6a0a9df
fix euler calculation
2015-12-20 06:06:56 +01:00
Roman
10b395a782
added more quaternion methods
2015-12-19 09:47:03 +01:00
jgoppert
9cd6ac3dd9
Fixed coverage.
2015-11-14 09:04:38 -05:00
jgoppert
dc0eb16880
Fixed integration test.
2015-11-14 09:01:09 -05:00
jgoppert
f2c0669c0d
Changed rk4 to use generic matrix interface.
2015-11-14 08:55:34 -05:00
jgoppert
b9924820e1
Work on kalman filter interface.
2015-11-12 16:41:07 -05:00
jgoppert
0a110a1b02
Fixed integration test.
2015-11-12 15:15:31 -05:00
jgoppert
aa3a086cda
Work on rk4 interface.
2015-11-12 15:13:17 -05:00
jgoppert
7656385ea1
Changed rk4 signature.
2015-11-12 10:19:30 -05:00
jgoppert
606eb1dc2b
Added attitude classes to README.
2015-11-12 10:09:54 -05:00
jgoppert
a334cecfa7
Forced function instantiation for coverage testing.
2015-11-12 10:07:09 -05:00
jgoppert
410bbc4c71
Added more to README.
2015-11-12 09:51:11 -05:00
jgoppert
c29c44b450
Added more testing to instantiate some missing templates.
2015-11-12 09:44:30 -05:00
James Goppert
6a351ac050
Merge pull request #1 from PX4/coverage_filter
...
Changed root dir for coverage.
2015-11-12 01:32:08 -05:00
jgoppert
e724ae4078
Set include dir.
2015-11-12 01:29:47 -05:00
jgoppert
8054180e89
Changed root dir for coverage.
2015-11-12 01:27:27 -05:00
jgoppert
10b89a2594
Switching coverage upload mechanism.
2015-11-12 01:22:40 -05:00
jgoppert
787606b6b8
Formatting.
2015-11-11 23:33:26 -05:00
jgoppert
42f2e60b24
Added runge kutta integration.
2015-11-11 23:31:43 -05:00
jgoppert
2c7a375e3d
Fixed kalman correct test.
2015-11-09 19:58:00 -05:00
jgoppert
e972a0a111
Made kalman filter correction function usable.
2015-11-09 19:55:20 -05:00
jgoppert
222a97e73f
Merge ../Firmware/src/lib/matrix
2015-11-08 12:08:52 -05:00
jgoppert
5c573b075f
Fixes for nuttx.
2015-11-08 12:08:19 -05:00
jgoppert
400a9caa47
Merge ../Firmware/src/lib/matrix
2015-11-07 14:27:41 -05:00
jgoppert
9b995e19f3
Added vector2.
2015-11-07 14:27:12 -05:00
jgoppert
1f72309520
Added some docs.
2015-11-07 12:17:45 -05:00
jgoppert
835cdd2f91
README fix.
2015-11-07 12:03:10 -05:00
jgoppert
3a2c3bdae1
README formatting.
2015-11-07 12:00:21 -05:00
jgoppert
9884a4c423
Improved README.
2015-11-07 11:59:30 -05:00
jgoppert
f621f68fe1
Changed license holder to development team.
2015-11-07 11:55:24 -05:00
jgoppert
ace2751715
Badge fix.
2015-11-07 11:29:08 -05:00
Lorenz Meier
f6e8cdd970
First attempt at enabling coveralls
2015-11-07 17:17:37 +01:00
jgoppert
b9e1ccfe00
Merge branch 'master' of github.com:PX4/Matrix
2015-11-07 11:08:33 -05:00
jgoppert
1fb0f33eb4
Removed old references to matrix.hpp.
2015-11-07 11:08:17 -05:00
Lorenz Meier
4058e32f73
Fix include path
2015-11-07 17:06:07 +01:00
Lorenz Meier
222e42f934
Re-add convenience header
2015-11-07 09:43:28 +01:00
Lorenz Meier
6abd2f782a
Re-add Matrix.hpp
2015-11-07 09:42:33 +01:00
Lorenz Meier
713aee154b
Remove both versions of matrix / Matrix
2015-11-07 09:41:38 +01:00
jgoppert
a2696fcee4
Fix for isfinite.
2015-11-06 21:09:34 -05:00
jgoppert
7abbdcd88f
License fix.
2015-11-05 20:27:03 -05:00
jgoppert
32839006f3
Implemented vector 3 cross product.
2015-11-05 20:22:17 -05:00
jgoppert
5b5cfcfeca
Added more vector ctors.
2015-11-05 19:37:31 -05:00
jgoppert
44768fad35
Added vector data ctor.
2015-11-05 19:32:28 -05:00
jgoppert
cefe7b3e80
Cleaned up header includes.
2015-11-05 19:25:44 -05:00
jgoppert
b06c557a2a
Comment fix.
2015-11-05 18:16:07 -05:00
jgoppert
c70994e6a5
Formatting.
2015-11-05 18:10:06 -05:00
jgoppert
4a6369cee5
More coverage testing.
2015-11-05 18:07:05 -05:00
jgoppert
550108cf1d
More testing.
2015-11-05 17:29:57 -05:00
jgoppert
75399fb15e
Cleanup of printing.
2015-11-05 17:13:03 -05:00
jgoppert
455cb58ebf
New tests.
2015-11-05 17:03:22 -05:00
jgoppert
6ff42b7b31
Added some more vectors tests.
2015-11-05 16:59:59 -05:00
jgoppert
7136e5b7d1
More work on gimbal lock case.
2015-11-05 16:54:19 -05:00
jgoppert
d01e0a1038
Formatting.
2015-11-05 15:44:54 -05:00
jgoppert
00a0b36836
Moved inverse outside of matrix definition.
2015-11-05 15:43:36 -05:00
jgoppert
5566b3dc77
expm testing and fixes.
2015-11-05 15:39:41 -05:00
jgoppert
5517532c90
Fixed coveralls build.
2015-11-05 13:37:14 -05:00
jgoppert
6aa8a72651
Renamed coverage option.
2015-11-05 13:34:49 -05:00
jgoppert
31821a44aa
Fixed formatting script.
2015-11-05 13:33:35 -05:00
jgoppert
9af1604daa
Formatting.
2015-11-05 12:45:53 -05:00
jgoppert
537c683d58
More cleanup.
2015-11-05 12:34:14 -05:00
jgoppert
fd64e7e93a
More testing and cleanup.
2015-11-05 12:28:39 -05:00
jgoppert
9d88b0d573
Fix for gcc 4.6
2015-11-05 11:29:18 -05:00
jgoppert
bb6b375390
Travis fix.
2015-11-05 11:25:47 -05:00
jgoppert
5b0ea675c3
Fixed float in square matrix.
2015-11-05 11:23:54 -05:00
jgoppert
cbe8b4ef6f
Travis fix.
2015-11-05 11:21:48 -05:00
jgoppert
b8dc262582
Formatting.
2015-11-05 11:18:33 -05:00
jgoppert
0062cbcbe2
Added more warnings, and fixed issues.
2015-11-05 11:17:54 -05:00
jgoppert
6ba15eeaa0
Formatting.
2015-11-05 10:51:53 -05:00
jgoppert
7c4b2c590e
Update for travis.
2015-11-05 10:46:22 -05:00
jgoppert
f7b1c63b86
Work on testing.
2015-11-05 10:44:21 -05:00
jgoppert
a703c8169e
Working on formatting.
2015-11-04 23:19:20 -05:00
jgoppert
f23bed6823
Explicity disabled sudo.
2015-11-04 22:54:39 -05:00
jgoppert
3fc5ec9751
Tried apt addon.
2015-11-04 22:53:45 -05:00
jgoppert
04f24310b5
Added astyle install to travis.
2015-11-04 22:51:25 -05:00
jgoppert
b818774f6a
Work on format testing.
2015-11-04 22:48:13 -05:00
jgoppert
eddc55827a
More filter testing.
2015-11-04 20:58:56 -05:00
jgoppert
76cf91c5fd
Work on filter.
2015-11-04 20:56:44 -05:00
jgoppert
52956e360a
Added filtering test.
2015-11-04 20:43:22 -05:00
jgoppert
b2e9e1e3c7
Added kalman filter.
2015-11-04 18:58:29 -05:00
jgoppert
7ec13f6282
Updated pdf.
2015-11-04 12:22:07 -05:00
jgoppert
18f80462b7
Got coverage working for templates.
2015-11-04 12:11:32 -05:00
jgoppert
bf6de4b710
Updated travis.
2015-11-04 11:39:49 -05:00
jgoppert
9e37b99d76
Added local coverage tools.
2015-11-04 11:38:55 -05:00
jgoppert
edc356d0db
Added coverage flag.
2015-11-04 11:02:09 -05:00
jgoppert
4bf4611087
Work on coverage.
2015-11-04 10:54:46 -05:00
jgoppert
abd0ef0143
Removed test files from coverage.
2015-11-04 03:39:35 -05:00
jgoppert
88def6b54e
Made instantiation actual test program.
2015-11-04 03:37:33 -05:00
jgoppert
3477ff2adb
Added coverage to build.
2015-11-04 03:29:01 -05:00
jgoppert
6458c0477e
Working on coverage for templates.
2015-11-04 03:16:41 -05:00
jgoppert
ea66d09a8e
Added coverage source.
2015-11-04 03:11:45 -05:00
jgoppert
9b90f223a4
Updated token.
2015-11-04 02:51:42 -05:00
jgoppert
ce719a0fe2
Added cov sources.
2015-11-04 02:29:07 -05:00
jgoppert
8f0448eb91
Coverage fix.
2015-11-04 01:58:48 -05:00
jgoppert
35edae200f
Badge placement.
2015-11-04 01:54:14 -05:00
jgoppert
edd23778ca
Added coverage.
2015-11-04 01:52:19 -05:00
jgoppert
b1ee027f64
Working on coverage.
2015-11-04 01:50:30 -05:00
jgoppert
12713105b8
Fixed quaternion unit test.
2015-11-04 00:48:59 -05:00
jgoppert
c84e934909
Updated vector class.
2015-11-04 00:37:00 -05:00
jgoppert
89851a85c0
Added badge.
2015-11-03 20:31:47 -05:00
jgoppert
33e0272447
Travis fix.
2015-11-03 20:31:10 -05:00
jgoppert
7470134559
Fixed filename.
2015-11-03 20:29:34 -05:00
jgoppert
ad03429ae9
Added readme.
2015-11-03 20:28:48 -05:00
jgoppert
49035ed6a9
Added mode lines for vi.
2015-11-03 20:26:42 -05:00
jgoppert
b842f8d8a5
Added travis.
2015-11-03 20:17:34 -05:00
jgoppert
5369904d27
Fixed default.
2015-11-03 19:50:09 -05:00
jgoppert
a36ff9f1e5
Formatting and added Scalar.
2015-11-03 19:38:31 -05:00
jgoppert
76e86cf937
Initial commit.
2015-11-03 14:46:54 -05:00