Commit Graph

23337 Commits

Author SHA1 Message Date
Daniel Agar 333f539900 mavlink: add simple incoming message stats to status 2021-09-27 09:48:00 -04:00
Julian Oes e81214a22f mavlink: avoid double trigger using sequence
By adding the sequence number we can avoid double triggering due to
command retransmissions. This is according to the mavlink spec for
MAV_CMD_IMAGE_START_CAPTURE.
2021-09-25 20:18:07 -04:00
bresch 904ed57aba HTE: decrease sensitivity with speed
VTOL planes are getting lift from the wing when flying in MC mode at
high speed. They (and some other drones) also get extra drag when
climbing and descending at high speed, corrupting the hover thrust
estimate.

To avoid this, two speed thresholds (vertical and horizontal) are defined
above which the sensitivity of the estimator is decreased by linearly
increasing the observation noise.
2021-09-25 20:07:28 -04:00
Beat Küng 1b0bfd6381 dataman: remove nonexisting SYS_RESTART_TYPE param 2021-09-25 19:15:05 -04:00
Daniel Agar 089c962d92 px4io: moving mixing to FMU side
Using mixers on the IO side had a remote benefit of being able to
override all control surfaces with a radio remote on a fixed wing.
This ended up not being used that much and since the original design
10 years ago (2011) we have been able to convince ourselves that the
overall system stability is at a level where this marginal benefit,
which is not present on multicopters, is not worth the hazzle.

Co-authored-by: Beat Küng <beat-kueng@gmx.net>
Co-authored-by: Daniel Agar <daniel@agar.ca>
2021-09-25 19:15:05 -04:00
David Sidrane f01cab3be1 px4io:Ensure proper lifecycle of registration of cdev 2021-09-24 19:01:54 -04:00
Igor Mišić 9ad0e5b357 mavlink_receiver: updated sens flow parameters to be dynamically handle 2021-09-23 09:23:22 +02:00
Beat Küng e73172b537 hrt: remove hrt_elapsed_time_atomic
There's no protection on posix
2021-09-23 09:23:08 +02:00
Beat Küng 6f902e54f9 mavlink: correctly lock radio status
- hrt_elapsed_time_atomic is not atomic on posix
- other fields like _radio_status_mult need protection as well
2021-09-23 09:23:08 +02:00
Beat Küng 0bfb1a983b px4iofirmware: avoid using hrt_elapsed_time_atomic
It's only ever read and written in controls_tick() after startup
2021-09-23 09:23:08 +02:00
Igor Mišić 682db4b8ac dshot: timeout if commands are not processed 2021-09-23 09:22:49 +02:00
bresch e53d2907d7 AutoSmoothVel: adjust controller constraints in emergency braking
When engaging auto mode at high vertical speed, we don't want to cut the velocity
trajectory setpoint in order to create a smooth deceleration.
2021-09-23 09:22:32 +02:00
bresch 316e0dfeb5 AutoLineSmoothVel: add emergency braking mode
Currently only for the Z axis. If the current downward velocity is more
than twice the maximum allowed value, the emergency braking mode is
activated. In this mode, a higher vertical acceleration and jerk is used
until the vehicle stops moving.
2021-09-23 09:22:32 +02:00
Igor Mišić 92696b589f sdp3x: stop continuous measurement while reconfig 2021-09-23 09:22:09 +02:00
Igor Mišić 3a148bc777 camera_trigger: remove camera trigger secondary
camera_trigger: publish trigger when capture feedback is not enabled
2021-09-23 09:21:56 +02:00
Thomas Debrunner 43ece74fa0 ina238: Do not expose raw adc config to user, make specific to ina238 2021-09-22 10:02:17 +02:00
Thomas Debrunner b8d0bb44c4 ina23X: Support for ina23X power monitors 2021-09-22 10:02:17 +02:00
Julian Oes faca2b17d0 camera_trigger: only get param if available 2021-09-17 12:23:30 +02:00
Daniel Agar 7af5a33ff3 commander: don't play failsafe tune if disarmed 2021-09-16 09:17:00 -04:00
Thomas Stauber 2b80a6958a fix disable airspeed check with negative ASPD_FS_INTEG (#18186)
* fix disable airspeed check with negative ASPD_FS_INTEG

* improve logic when nav velocity data is not good

* simplify logic. Reset integrator state when the check is not run.
2021-09-14 12:13:56 +02:00
Matthias Grob e7a90bf367 PositionControl: correct horizontal margin calculation
It was using the already reduced vertical thrust to do
the horizontal limitation resulting in no margin.
2021-09-14 10:57:38 +02:00
Matthias Grob d1f1e02afb Refactor mode button changes 2021-09-14 09:52:32 +02:00
Claudio Micheli 05d40f40d4 Handle rc toggle mode buttons to initialize flight modes
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-09-14 09:52:32 +02:00
Claudio Micheli c50daae4a3 rc_update: introduce support for toggle buttons via RC channels
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-09-14 09:52:32 +02:00
Daniel Agar e6552370ab imu/invensense: adjust scheduling dynamically if not using data ready interrupt 2021-09-12 17:34:35 -04:00
Claudio Micheli fa4fc5f347 esc_report: change esc_temperature field to allow negative values
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-09-11 15:14:49 -04:00
David Jablonski 7d7200cf2f Added yaw to CMD_DO_SET_HOME 2021-09-11 15:14:01 -04:00
Hamish Willee ce206d992b RC_FAILS_THR and RC_MAP_FAILSAFE improve parameter description 2021-09-11 15:12:54 -04:00
bresch f09b34007e CA: reload CA matrix to newly created CA class properly
Also remove the dependency of ActuatorEffectivenessMultirotor
to param update uORB topic; the CA module
sends a "force" parameter when needed
2021-09-11 15:07:49 -04:00
bresch cf5917d188 control_allocator: restructure param update
recompute effectiveness on param change
clear update at the end
2021-09-11 15:07:49 -04:00
David Jablonski 9d974062d0 replay: improved logging for format mismatchs 2021-09-11 14:37:52 -04:00
Beat Küng 1a743e1117 collision_prevention: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng 5b70fd4a1d airspeed_selector: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng 5fb16e4395 fw_pos_control_l1: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng 0a1ae37c1a logger: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng 38eca0c64b logger: start session & log index at 100
To avoid leading zeros, as the events interface does not support that (yet)
2021-09-11 14:08:41 -04:00
Beat Küng b31276a4f5 mavlink: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng 90940c3672 mc_pos_control: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng 79a0edafb5 vehicle_air_data: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng a8cc2f9ef6 vehicle_imu: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng acb73fde14 vehicle_magnetometer: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng f8dc915789 vtol_att_control: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng 1f73294ad7 navigator: switch to events 2021-09-11 14:08:41 -04:00
Beat Küng 5ac43e7236 commander: switch to events 2021-09-11 14:08:41 -04:00
Daniel Agar 8866215d1d sensors/vehicle_imu: add protections for bad sensor data
- check for inconsistent timestamps, zero samples, and numerical issues in online mean
2021-09-11 13:04:46 -04:00
Beat Küng ae8733c2d4 pwm_input: remove 'test' command and use 'status' instead 2021-09-08 16:10:24 -04:00
Beat Küng f1aafe83b3 pwm_out: cleanup, remove _output_mask & only update owned channels
_pwm_mask reflects the actually owned channels.
2021-09-08 16:10:24 -04:00
Beat Küng a8e75d174c boards: remove BOARD_HAS_PWM and use DIRECT_PWM_OUTPUT_CHANNELS 2021-09-08 16:10:24 -04:00
Beat Küng 1ee423e3c8 pwm_out, dshot: remove mode_* handling and capture ioctl's
They now use all unused pins, whereas camera_capture, camera_trigger and
pwm_input modules start before to reserve their pins.
2021-09-08 16:10:24 -04:00
Beat Küng 062dd28f4d camera_capture: use up_input_capture_set directly
It reserves the channel and pwm_out will not use it
2021-09-08 16:10:24 -04:00