21393 Commits

Author SHA1 Message Date
Daniel Agar
f8241f144c hmc5883: cleanup device interface on destruction 2020-08-14 09:25:47 +02:00
Beat Küng
ba5d7773f8
mavlink_timesync: print sender comp id for 'RTT too high for timesync' msg (#15539)
helps with debugging
2020-08-13 10:58:25 +02:00
Daniel Agar
0bb5f2c2af
uavcan: libuavcan submodule remove redundant libuavcan_drivers 2020-08-12 15:34:10 -04:00
Thies Lennart Alff
d7d8aa9b64
uuv_att_control: removed redundant code, switched to new uORB API 2020-08-12 13:16:28 -04:00
Daniel Agar
942eb83184 sensors: keep legacy params active (BAT_V_DIV/BAT_A_PER_V) for QGC SITL
- fixes https://github.com/PX4/Firmware/issues/15505
2020-08-12 11:57:34 -04:00
Daniel Agar
f19a20dc43 commander: preflight power check ignore module count if USB connected
- this check isn't relevent during bench testing
2020-08-12 11:48:38 -04:00
RomanBapst
355e3ea986 vtol_type: use correct pwm device path in init function
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2020-08-12 08:55:23 +02:00
RomanBapst
01535a726a vtol_type: reset quadchute filter states if TECS is not running
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2020-08-12 08:55:23 +02:00
SalimTerryLi
49e83b6ae4
load_mon: add linux support 2020-08-11 18:33:44 -04:00
kritz
9d962cdfbc
Pr update matrix (#15520)
* Update submodule Matrix

* replace deprecated matrix functions

* update submodule ECL

* Update Matrix submodule

* Use absolute value of loiter radius

* Update ECL submodule
2020-08-11 10:08:41 +02:00
Claudio Micheli
75ab105605 cm8jl65: avoid flooding console with errors if errno is EAGAIN
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2020-08-11 08:14:47 +02:00
Daniel Agar
b7f9ff6747 mc_att_control: don't use auto for primitive types
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2020-08-10 14:07:42 -04:00
Daniel Agar
0781fdd813 mc_att_control: don't store vehicle_status copy 2020-08-10 14:07:42 -04:00
Daniel Agar
8c42c38650 mc_att_control: don't store full vehicle_land_detected copy 2020-08-10 14:07:42 -04:00
Daniel Agar
41a1675c53 AttitudeControl: only normalize attitude setpoint once on update 2020-08-10 14:07:42 -04:00
Daniel Agar
1c42d12491 mc_att_control: don't keep att copy and avoid unnecessary Quatf construction and copies 2020-08-10 14:07:42 -04:00
Daniel Agar
5e739f66d6 mc_att_control: inline control attitude call and rate publication
- this makes it clear that we didn't need to keep local copies of the rate setpoint
2020-08-10 14:07:42 -04:00
Daniel Agar
14f734ac15 mc_pos_control: use local position timestamp for dt 2020-08-10 10:51:52 -04:00
Daniel Agar
c5eb084236 mc_rate_control: use angular velocity timestamp for dt 2020-08-10 10:51:52 -04:00
Daniel Agar
45ee16d236 mc_att_control: use attitude timestamp for dt 2020-08-10 10:51:52 -04:00
Daniel Agar
9992bd05db fw_att_control: pass time through from run 2020-08-10 10:51:52 -04:00
Daniel Agar
560c22e612 fw_pos_control_l1: pass time through from run 2020-08-10 10:51:52 -04:00
Daniel Agar
97fc1db768 vehicle_local_position: rename yaw -> heading and add reset logic
- vehicle_global_position yaw removed (redundant)
2020-08-10 11:42:03 +02:00
bresch
33fb9d0c62 Commander: update home position yaw in case of EKF yaw reset
This makes sure the drone lands in the correct orientation
during RTL even if the initial yaw at takeoff was wrong.
2020-08-10 11:42:03 +02:00
bresch
0ad3ddd864 Tko ramp: fix takeoff issue with large tko ramp time
Because the velocity starts with a positive value (down) to ramp-up
slowly the motors, the position setpoint (integral) was going down into
the ground, canceling the input of the velocity controller during the
early takeoff phase.
Instead of a smooth ramp, the behavior was a delay followed by a quick
takeoff or a land detection.
Setting the current altitude setpoint with the current altitude during
this phase avoids the canceling effect and creates a takeoff purely
velocity-based.
2020-08-10 10:39:56 +02:00
Daniel Leonard Robinson
fa4818e467
vehicles: add new vehicle type: Airship (#14862)
Co-authored-by: Anton Erasmus <anton@flycloudline.com>
Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2020-08-10 08:52:51 +02:00
Daniel Agar
454433c2ef mpu9250: mag relax scheduling and checks 2020-08-09 14:24:49 -04:00
Daniel Agar
3002e74b4f
mavlink: publish telemetry_status per instance with all HEARTBEATS from the same system
- one telemetry_status publication per mavlink instance
 - each telemetry_status has an array of HEARTBEATS
2020-08-07 12:23:52 -04:00
Thies Lennart Alff
f950fe8a38
uuv_att_control: added bodyrate setpoint to the geometric controller
* added bodyrate setpoint to the geometric controller
* started switching to new uORB API
2020-08-06 10:40:44 -04:00
Beat Küng
bc9be2d040 frsky_telemetry: add support for inverted single-wire S.Port on F7 2020-08-06 00:08:23 -04:00
Daniel Agar
3345bf39b8 cdev: remove unnecessary virtuals and increase opt level
- poll, poll_notify, register_class_devname, unregister_class_devname aren't virtual
 - increase max optimization level on platforms that aren't flash constrained (MAX_CUSTOM_OPT_LEVEL)
2020-08-05 19:07:32 -04:00
JacobCrabill
b164174037 uavcan: stm32h7: Fix improper loopback handling
Fixes #15305
2020-08-05 12:42:27 -04:00
Daniel Agar
de59d6c788 flight_tasks: pass previous setpoint as const reference
- perform setpoint checks in place to simplify and avoid copy
2020-08-05 10:50:15 -04:00
Beat Küng
e28395a58b TRIG_MODE: update description to support 78 2020-08-05 09:02:58 +02:00
Hamish Willee
8c6bb697d8 Update json param field names 2020-08-05 07:35:01 +02:00
Daniel Agar
b6a17a6538
new IntrusiveSortedList container used for uORB, WorkQueues, and WorkItems
- new intrusive linked list container (c++ template) that sorts on insertion
 - primarily for convenience inspecting things in the system like uORB or WorkQueues
 - uorb status or top sorted alphabetically 
 - work_queue status threads sorted by priority, then items sorted alphabetically within each
2020-08-04 11:09:41 -04:00
Beat Küng
dfc2160489 commander: update vehicle_status with at least 2Hz
So we're sure it's logged.
2020-08-04 10:53:20 -04:00
Beat Küng
5f8c6512b3 vehicle_status: add latest arming/disarming reason
Makes it easier to debug.
2020-08-04 10:53:20 -04:00
PX4 BuildBot
201a3a19ff Update submodule ecl to latest Tue Aug 4 12:39:50 UTC 2020
- ecl in PX4/Firmware (78d30efcf77284b21c130fd31061844ee561aa64): 77b11129fa
    - ecl current upstream: 7eb2b08eed
    - Changes: 77b11129fa...7eb2b08eed

    7eb2b08 2020-07-27 kamilritz - Yaw measurement jacobian to Vector4f
15d360f 2020-07-27 kamilritz - saved_mag_ef_cov to Squarematrix2f
7609bc6 2020-07-27 kamilritz - drag innov member variables to Vector2f
960b80e 2020-07-26 kamilritz - Do not update output filter a second time after reset to flow.
2020-08-04 10:47:15 -04:00
Daniel Agar
c40cf9a626
uORB: remove lost message count per DeviceNode
- update 'uorb status' to print basic info for all advertised DeviceNodes
 - report vehicle_command gaps in commander, navigator, mavlink
2020-08-04 10:34:11 -04:00
Beat Küng
316085c154 camera_capture: remove board-specific ifdef 2020-08-04 13:37:40 +02:00
Beat Küng
46208edfac fix camera_trigger: no need to check for '_pins[i] < num_gpios'
_pins[i] >= num_gpios is a valid config.
2020-08-04 13:37:40 +02:00
Beat Küng
002e671d3f fix pwm_out,dshot: set _num_outputs to 5 for mode_pwm5 2020-08-04 13:37:40 +02:00
Beat Küng
78e918ff3a fix pwm_out: respect _num_outputs for calling up_pwm_servo_set()
_num_outputs is set according to the mode_pwmX call, which is required
for camera triggering.
This fixes camera triggering via PWM, as it avoids overwriting the channel.
2020-08-04 13:37:40 +02:00
Silvan Fuhrer
7a71cbb9bf FlightTask Auto: use yaw setpoint from Navigator if disable_weather_vane is true
When disable_weather_vane is true, the vehicle is aligning for the transition waypoint
(VTOL) and thus the yaw setpoint from Navigator should be used.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-08-04 11:45:08 +02:00
Igor Mišić
7eaa48e36f
New board: SP Racing H7 Extreme
Authored-by: igor.misic <igor.misic@rimac@automobili.hr>
2020-08-03 15:32:58 -04:00
Daniel Agar
ba640acfcc
mc_hover_thrust_estimator: validity flag and other small improvements/fixes
- track and publish validity based on hover thrust variance, innovation test ratio, and hysteresis
 - only publish on actual updates or becoming inactive
 - fix dt (previous timestamp wasn't being saved)
 - use local position timestamp (corresponding) to accel data rather than current time to avoid unnecessary timing jitter
 - check local position validity before using
 - mc_hover_thrust_estimator: move from wq:lp_default -> wq:nav_and_controllers to ensure the hover thrust estimator runs after the position controller and uses the same vehicle_local_position data
 - land_detector: check hover thrust estimate validity and adjust low throttle thresholds if hover thrust is available
 - mc_pos_control: only use hover thrust estimate if valid
2020-08-03 10:30:52 -04:00
Hamish Willee
958d5a36ec
params: generate param metadata as MAVLink-compatible JSON component info (#15389) 2020-08-03 12:00:37 +02:00
Daniel Agar
f5f2897486
land_detector: multicopter ground contact fixes, improvements, and cleanup
- if "landed" and "maybe_landed" states are false then both the "hit_ground" and the "low_thrust" condition need to be true in order to detect landing
 - ground contact MC NAN setpoint workaround
 - ground contact additionally check acceleration setpoint
 - schedule with vehicle_local_position updates (most updates require valid local position)
 - don't allow LNDMC_Z_VEL_MAX to exceed MPC_LAND_SPEED
 - ground contact horizontal movement checks default to failed if estimates aren't available
2020-08-02 13:37:23 -04:00
Daniel Agar
63a23957b1
rc/dsm: decode improvements
- always check system field for validity
 - reject any data outside of "servo position" valid range from Spektrum specification
 - properly support XPlus channels (12+)
 - debug message if channel count changes
2020-08-02 12:52:16 -04:00