Commit Graph
48581 Commits
Author SHA1 Message Date
Daniel Agar 3ba97297d5 tests simple timing microbenchmark 2018-07-01 09:25:22 +00:00
Daniel Agar 02d4405a62 c++11 default destructors 2018-06-30 19:55:08 -04:00
Daniel Agar c39ac93ca8 device integrator cleanup initialization 2018-06-30 19:55:08 -04:00
Daniel Agar 33a71c929d Update submodule mavlink v2.0 to latest Fri Jun 29 21:33:36 EDT 2018 (#9814)
- mavlink v2.0 in PX4/Firmware (16d67ed179): https://github.com/mavlink/c_library_v2/commit/f5c0ba684659fbc6c6c5f8777bd30e0b3c32fdef
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/e550f4124bc331848aad3d691b27ec941a94c1e5
    - Changes: https://github.com/mavlink/c_library_v2/compare/f5c0ba684659fbc6c6c5f8777bd30e0b3c32fdef...e550f4124bc331848aad3d691b27ec941a94c1e5

    e550f41 2018-06-29 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/9e9398d5d1d8d1eab689086b73b1258b595969bb
4fae56b 2018-06-27 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/174fc3aad7ce26be66979051261bfd1e5e2dde1e
2018-06-30 19:47:00 -04:00
Daniel Agar 114ae4116a geo get_bearing_to_next_waypoint() small optimization 2018-06-30 21:30:35 +00:00
Daniel Agar aaaf67f9c3 cmake don't automatically enable ccache if already enabled 2018-06-30 19:59:00 +00:00
Daniel Agar 73f825e4b3 cmake toolchain enable double fpu for cortex-m7 2018-06-30 19:57:51 +00:00
Daniel Agar b26c2d62b8 geo get_distance_to_arc remove double promotion 2018-06-30 10:09:10 -04:00
Giovanni Carbone 16d67ed179 frsky_telemetry improved com port init (fix #9783), minor refactor (#9798)
* frsky_telemetry added support for hw flow control com port and minor improvements

* DTYPE tested OK. Return 0 for unix compatibility, whitespace removed. Full test start - status- stop - start -status OK
2018-06-29 21:41:53 +00:00
acfloria 17df184953 Fix sending first High Latency message 2018-06-29 16:49:30 +00:00
acfloria ca1f7a4a19 Reenable the MissionManager for the Iridium mavlink instance
The MissionManager handles the MAVLINK_MSG_ID_MISSION_SET_CURRENT command which should also be supported for SatCom.
2018-06-29 16:49:30 +00:00
acfloria 8825bbed29 Increase the stack size for the IridiumSBD driver 2018-06-29 16:49:30 +00:00
Paul Riseborough a04468ba9f ekf2: Fix EKF preflight check fail false positives
Uses a relaxed yaw innovation check threshold for fixed wing vehicle that can recover from larger yaw errors after takeoff.
Replaces the peak hold with decay filtering applied to the magnetic yaw innovations with a conventional lowpass filter. This prevents mag heading innovation transients caused by preflight handling from failing the check, but catches persistent errors. Sign swapping of innovations due to angle wrapping is not a problem due to the way that innovations are calculated inside the EKF, so a simple LPF sufficient.
2018-06-29 16:36:38 +00:00
Julian Oes 6ff9fd2209 calibration: remove warning message
The calibration warning was only used in the ESC calibration and in all
cases it actually meant that the calibration failed. In order to keep
the API as small as possible, I've deprecated the warning string and
converted the warning messages to failed messages.
2018-06-29 16:07:32 +00:00
Philipp Oettershagen b3959fab2f TECS: Do not even calculate integrator state if integrator gain is zero 2018-06-29 15:55:46 +00:00
Philipp Oettershagen ccfba49971 TECS: Set the integrator output to zero if the gain is zero. Otherwise (e.g. after a climbout) it can happen that the integrator stays at a large constant value and thus distrubs the control loop 2018-06-29 15:55:46 +00:00
Florian Achermann 02116c0a80 mavlink: Indicate if the instance did not start correctly (#9744) 2018-06-29 10:11:27 -04:00
Thomas Stastny 8551d2eb9d mission feasibility: add small tolerance to fw landing slope alt 2018-06-29 12:10:53 +00:00
Julian Oes 193993c54f px_uploader: fix typo and Python 3 issue 2018-06-29 08:46:45 +00:00
Julian Oes b0ec64efe8 px_uploader: fixed a couple small PEP8 warnings 2018-06-29 08:46:45 +00:00
Julian Oes 48edf9b65e px_uploader: remove commented out line 2018-06-29 08:46:45 +00:00
Mark Sauder d3c169b1e0 Fix whitespaces in PreflightCheck.cpp, tilt_quad.aux.mix, and tilt_quad.main.mix 2018-06-28 20:20:32 -04:00
Julian Oes 4e43cc3518 px_uploader.py fix flashing issue (#9792)
This fixes a problem where the pyserial write call gets stuck.
It happens on a specific Fedora 28 system with internal USB ports as
well as USB hubs.
It is not clear why the problem is resolved but it is clearly
reproducible that with a timeout of 0, the write can get stuck and with
a timeout > 0 it works every time.

The exception added as part of this commit makes sense but has never
been triggered in my testing.
2018-06-28 20:18:22 -04:00
Daniel Agar 96f47d4772 EKF2 add perf counters (#9795) 2018-06-28 17:28:03 -04:00
Daniel Agar 7efdec1469 cmake nuttx skip upload helper without cdcacm 2018-06-28 19:35:36 +00:00
Daniel Agar ed95dced0f cmake nuttx upload use vendor and product string 2018-06-28 19:35:36 +00:00
Daniel Agar e78b9a063f px_uploader cleanup status messages and print used percentage 2018-06-28 19:35:36 +00:00
MaEtUgR 6a06417096 rpi_rc_in: replace chinese comments with english ones 2018-06-28 15:33:24 +02:00
PX4 Jenkins dee5635f79 Update submodule sitl_gazebo to latest Wed Jun 27 21:26:29 EDT 2018
- sitl_gazebo in PX4/Firmware (18abeb1118): https://github.com/PX4/sitl_gazebo/commit/3c7d18d0a52657106a3a7190c54006ed6b442071
    - sitl_gazebo current upstream: https://github.com/PX4/sitl_gazebo/commit/fcee53fc4c6ef734204fd74eeed2db5b767027ad
    - Changes: https://github.com/PX4/sitl_gazebo/compare/3c7d18d0a52657106a3a7190c54006ed6b442071...fcee53fc4c6ef734204fd74eeed2db5b767027ad

    fcee53f 2018-06-22 TSC21 - vision: by default, do not send ODOMETRY Mavlink msgs
2018-06-28 07:11:10 +00:00
PX4 Jenkins 18abeb1118 PX4-NuttX/nuttx branch test: px4_firmware_nuttx-7.22+
NuttX:
 - https://github.com/PX4-NuttX/nuttx/tree/px4_firmware_nuttx-7.22+
 - https://github.com/PX4-NuttX/nuttx/commit/d5c12b24fa5349791220ce44a46b96f345ec77c1

Changes from PX4-NuttX/nuttx (https://github.com/PX4-NuttX/nuttx/commit/f57752b6f16f54bd50188024475657c6a7a1604c) in current PX4/master (bb8e653469)
https://github.com/PX4-NuttX/nuttx/compare/f57752b6f16f54bd50188024475657c6a7a1604c...d5c12b24fa5349791220ce44a46b96f345ec77c1

d5c12b2 (HEAD, origin/px4_firmware_nuttx-7.22+, origin/HEAD, px4_firmware_nuttx-7.22+) [BACKPORT] stm32f7:I2C reset Configure I2C pins as GPIO output

Apps:
 - https://github.com/PX4-NuttX/apps/tree/px4_firmware_nuttx-7.22+
 - https://github.com/PX4-NuttX/apps/commit/36806ba3d84c0fa07ed86857d4c92a997b7cd194

Changes from PX4-NuttX/apps (https://github.com/PX4-NuttX/apps/commit/36806ba3d84c0fa07ed86857d4c92a997b7cd194) in current PX4/master (bb8e653469)
https://github.com/PX4-NuttX/apps/compare/36806ba3d84c0fa07ed86857d4c92a997b7cd194...36806ba3d84c0fa07ed86857d4c92a997b7cd194
2018-06-27 20:21:02 -04:00
Pavel Kirienko c044630390 Merge pull request #138 from thirtytwobits/feature/issue100
Issue #100 remove auto_ptr and c++03 support.
2018-06-27 17:43:11 +03:00
Beat Küng bb8e653469 mc_att_control: keep integral enabled based on land detector
Previously the rate controller disabled updating the integral below 20%
throttle. This is not ideal for several reasons:
- some racers already hover with 20% throttle.
- for acro it is important to always keep the integral enabled, it has a
  noticeable effect on flight performance.
2018-06-27 09:11:23 +00:00
Beat Küng bf1c11a33c commander: move comment to the right place
It's now the same way as in the ARM logic further down.
2018-06-27 10:41:21 +02:00
Beat Küng 02fc68a53e commander arming: disable stick (dis-)arming when arming switch/button is used
A reason for using switch arming in the first place is that you cannot
accidentally disarm in-air with the sticks during acrobatic flights.

It also adds a low-throttle arming requirement for switch arming.
2018-06-27 10:41:21 +02:00
Beat Küng db2b010630 commander arming: add a grace period of 5 seconds to allow re-arming w/o preflight checks
This changes the arming logic such that the preflight checks don't need
to be satisfied if arming happens < 5 seconds after the last disarming.
This allows to recover from accidental in-air disarming.
2018-06-27 10:41:21 +02:00
Beat Küng 8c3cf0167c commander arming_state_transition: respect fRunPreArmChecks properly
if fRunPreArmChecks was set to false, there were still cases where the
preflight checks could be called. This fixes that.

arming_state_transition() with fRunPreArmChecks=false is only called
when entering & leaving preflight calibration mode.
All other places use fRunPreArmChecks=true, which means there is no change
for these.
2018-06-27 10:41:21 +02:00
Beat Küng 469b5f98e2 commander Preflight::preflightCheck: transition condition_system_sensors_initialized only to true
- this matches the logic in arming_state_transition()
- if Commander::preflight_check was run in armed state and the checks
  failed, disarming was not possible anymore
  (because disarming checks for condition_system_sensors_initialized).
  That is currently not the case, but the existing logic is way too fragile.

Alternative solution: check if armed in Preflight::preflightCheck, and
only transition to false if disarmed (but also respect the re-arming
grace period).
2018-06-27 10:41:21 +02:00
Daniel Agar 9eae8e7c5b Update submodule libuavcan to latest Wed Jun 27 01:27:03 UTC 2018 (#9779)
- libuavcan in PX4/Firmware (fab974fde713b9de0ece1b85239d9dc52622052e): https://github.com/UAVCAN/libuavcan/commit/231b221b64265db4e98f86e53721316f9e17e143
    - libuavcan current upstream: https://github.com/UAVCAN/libuavcan/commit/dfcdf22eda16ff06847976fd6c7f40671fc92eb5
    - Changes: https://github.com/UAVCAN/libuavcan/compare/231b221b64265db4e98f86e53721316f9e17e143...dfcdf22eda16ff06847976fd6c7f40671fc92eb5

    dfcdf22 2018-06-26 Pavel Kirienko - Merge pull request #142 from thirtytwobits/feature/issue141
529a376 2018-06-21 Dixon, Scott - Issue #141 Add Vagrantfile to automate dev environment
2018-06-27 00:09:19 -04:00
Dixon, Scott 4750a50099 Issue #100 remove auto_ptr and c++03 support.
Problem:
auto_ptr is deprecated.

Solution:
use unique_ptr which is only available in c++11 and newer.
Also fix how unit tests are run as part of the build to keep them from being
deleted when they fail.

Testing:
Unit tests on linux run.
2018-06-26 20:56:53 -07:00
Pavel Kirienko dfcdf22eda Merge pull request #142 from thirtytwobits/feature/issue141
Issue #141 Add Vagrantfile to automate dev environment
2018-06-26 23:39:27 +03:00
Dixon, Scott 529a376bb5 Issue #141 Add Vagrantfile to automate dev environment
Problem:
There is no automated way to setup a build environment.

Solution:
Use Vagrant to pull an Ubuntu image and install the same
prerequisites used on Travis.

Testing:
Full build on my macintosh.
2018-06-26 10:27:36 -07:00
Beat Küng 0ac1ef12c7 gpssim: unadvertise gps topics 2018-06-26 15:51:17 +02:00
Nuno Marques bb19c2bc8b Jenkins: add LPE CI test (#9762) 2018-06-26 01:15:13 -04:00
PX4 Jenkins a5d5d5e38e Update submodule nuttx to latest Mon Jun 25 21:26:34 EDT 2018
- nuttx in PX4/Firmware (537fe886015be0ccb6b691a8a2802fb29d17c410): https://github.com/PX4-NuttX/nuttx/commit/63775322bf25adb406594f8e610122fe0cef2f7a
    - nuttx current upstream: https://github.com/PX4-NuttX/nuttx/commit/f57752b6f16f54bd50188024475657c6a7a1604c
    - Changes: https://github.com/PX4-NuttX/nuttx/compare/63775322bf25adb406594f8e610122fe0cef2f7a...f57752b6f16f54bd50188024475657c6a7a1604c

    f57752b 2018-06-25 Daniel Agar - Merged in dagar/nuttx/pr-fixCompileError (pull request #660)
2018-06-26 06:42:42 +02:00
Beat Küng ddde968a6f mavlink: allow resetting streams to their default via 'mavlink stream' command 2018-06-25 12:19:56 +02:00
Beat Küng ec15fc333b mavlink: add 'mavlink status streams' command
Displays all enabled streams and their configured rates.
Example output:
instance #1:
        Name                Rate Config (current) [Hz] Message Size (if active) [B]
        HEARTBEAT                       1.00 (1.000)    21
        STATUSTEXT                     20.00 (6.320)
        COMMAND_LONG                  unlimited
        ALTITUDE                        1.00 (0.316)
        ATTITUDE                       25.00 (7.900)    40
        ATTITUDE_TARGET                10.00 (3.160)    49
        ESTIMATOR_STATUS                1.00 (0.316)    44
        EXTENDED_SYS_STATE              1.00 (0.316)    14
        GLOBAL_POSITION_INT            10.00 (3.160)    40
        GPS_RAW_INT                     1.00 (0.316)    62
        HOME_POSITION                   0.50 (0.158)
        RC_CHANNELS                     5.00 (1.580)
        SERVO_OUTPUT_RAW_0              1.00 (0.316)    49
        SYS_STATUS                      5.00 (1.580)    43
        SYSTEM_TIME                     1.00 (0.316)    24
        VFR_HUD                        25.00 (7.900)    32
        WIND_COV                        2.00 (0.632)
2018-06-25 12:19:56 +02:00
Beat Küng 84841236cb mavlink: allow resetting mavlink streams to default via MAV_CMD_SET_MESSAGE_INTERVAL
This implementation does not need more resources.
It's not super efficient in terms of runtime, but it's also not something
that is called often.
2018-06-25 12:19:56 +02:00
Beat Küng 333fd9cf45 mavlink: improve status output
- add datarate
- add UDP remote port
- add partner IP
2018-06-25 12:19:56 +02:00
Beat Küng f59412ba65 mavlink: only enable HIL_ACTUATOR_CONTROLS in hil if link has enough bandwidth
Plus correct return value.
Iridium links are below that.
2018-06-25 12:19:56 +02:00
Beat Küng 4553992760 mavlink: refactor get_client_source_address() to return a reference instead of a pointer 2018-06-25 12:19:56 +02:00