28794 Commits

Author SHA1 Message Date
Beat Küng
64f29fdff8 Tools/sitl_gazebo: update submodule
Includes https://github.com/PX4/sitl_gazebo/pull/283
2019-02-19 08:43:42 +01:00
stmoon
460c16cd7a add mavlink_tcp_port for multiple uav simultation 2019-02-19 08:12:12 +01:00
Hamish Willee
4dc1503122 Fix link to EKF tuning page 2019-02-19 08:05:39 +01:00
mcsauder
a6d186dfed Rename Tunes::get_next_tune() to Tunes::get_next_note(). 2019-02-19 08:00:11 +01:00
Julian Oes
18f7ee2d50 jMAVSim: update submodule, use -lockstep CLI arg
This updates the jMAVSim submodule which includes a fix for HITL.
In order to fix HITL, a CLI argument `-lockstep` was required to enable
lockstep. This has now been added to the command in jmavsim_run.sh.
2019-02-18 20:25:50 +00:00
mcsauder
d6dc5a7302 Rename MB12XX_MAX_RANGEFINDERS to RANGE_FINDER_MAX_SENSORS. 2019-02-18 13:07:47 -05:00
Julian Oes
4dea79b2d6 sensors: prevent double orb_copy of gyro topic
By using the uORB::Subscription API we use a separate subscription
rather than `orb_copy` on the existing file descriptor used in
sensors through `px4_poll`.

This fixes a very peculiar problem that we observed in SITL in CI for
fixedwing. The events were as follows:

1. `sensors` does `px4_poll` on the gyro topic (as normal), and gets
   the latest sample using `orb_copy`.
2. A parameter update happens when the mag is initialized and triggers
   `VotedSensorsUpdate::parameters_update()` where `orb_copy` happens
   before the main loop in `sensors` has started a `px4_poll`.
3. `sensors` now does the `px4_poll`, however waits indefinitely because
   it has already copied the latest sample.
   Also, the `px4_poll` will never time out because in lockstep the
   simulator waits for the next actuator control message which it never
   gets and therefore it never sends the next sensor message with a new
   timestamp to advance the time.

This only happens for fixedwing because there is only one "uORB path"
through the system unlike for multicopter where a gyro sample can get
picked up by either `sensors` or directly `mc_att_control`, so the
system can survive if `sensors` has "drops".
2019-02-18 11:44:07 -05:00
Daniel Agar
2e10bba829 Jenkins SITL restore FW tests 2019-02-18 11:44:07 -05:00
Daniel Agar
344f632443
Jenkins SITL tests coverage temporarily disable process_logdata_ekf.py coverage
- need to update to python3 coverage.py.
2019-02-18 11:40:29 -05:00
David Sidrane
0705d6c807 stm32 drv_io_timer: Prevent glitch on PWM outputs (#11453)
Rate changes were doing an asynchronous register reload via the EGR_UG. This could extend a PWM pulse up to 2X.

This fix removes the asynchronous update. The net effect is the the rate change will occur on the next counter expiration. The worst case is the rate change is delayed by 20 Ms.
2019-02-18 11:08:04 -05:00
JohannesBrand
b01e470ff9
refactor ecl ekf analysis (#11412)
* refactor ekf analysis part 1: move plotting to functions

* add plot_check_flags plot function

* put plots in seperate file

* use object-oriented programming for plotting

* move functions for post processing and pdf report creation to new files

* add in_air_detector and description as a csv file

* refactor metrics and checks into separate functions

* refactor metrics into seperate file, seperate plotting

* ecl-ekf tools: re-structure folder and move results table generation

* ecl-ekf-tool: fix imports and test_results_table

* ecl-ekf tools: bugfix output observer tracking error plot

* ecl-ekf-tools: update batch processing to new api, fix exception handling

* ecl-ekf-tools: use correct in_air_detector

* ecl-ekf-tools: rename csv file containing the bare test results table

* ecl-tools: refactor for improving readability

* ecl-ekf tools: small plotting bugfixes

* ecl-ekf tools: small bugfixes in_air time, on_ground_trans, filenames

* ecl-ekf-tools: fix amber metric bug

* ecl-ekf-tools: remove custom function in inairdetector

* ecl-ekf-tools: remove import of pandas

* ecl-ekf-tools: add python interpreter to the script start

* ecl-ekf-tools pdf_report: fix python interpreter line

* px4-dev-ros-kinetic: update container tag to 2019-02-13

* ecl-ekf-tools python interpreter line: call python3 bin directly

* ecl-ekf-tools: change airtime from namedtuple to class for python 3.5

* ecl-ekf-tools: update docker image px4-dev-ros-kinetic

* ecl-ekf-tools: fix memory leak by correctly closing matplotlib figures
2019-02-18 16:52:02 +01:00
Daniel Agar
77b5c47d7f
STM32F7 disable d-cache as a precaution (#11374)
- see 1259864 Data corruption in a sequence of Write-Through stores and loads
 - if we can be certain this sequence won't occur in PX4 then the d-cache will be re-enabled
2019-02-18 09:43:15 -05:00
Todd Colten
4c21163c78 re-word landing required msg for understandability
changed: "Mission rejected: land start required."
to: "Mission rejected: landing pattern required."

This new message is more clear to the average user.  When using RTL_TYPE = 1, mission feasibility checker adds the requirement of a landing sequence beginning with a MAV_CMD_DO_LAND_START and ending with a MAV_CMD_NAV_LAND with at least 1 other waypoint prior to the land waypoint.  The warning message "Mission rejected: land start required." is a common warning to trigger whenever the mission is blank or the mission is uploaded without a landing pattern.  The wording in this message confusing to the average user as they usually do not know the inner workings of the "landing pattern" that their planning software helps them make (e.g. Qgroundcontrol).  The only users who would know what a "Do_Land_Start" mission item is are advanced users already and this new message should work equally well for them as well as the non-advanced user.
2019-02-18 09:38:59 -05:00
Todd Colten
b23374688b re-word Preflight Fail msg for consistency
changed: "Preflight Fail: Horizontal estimate Pos Error"
to: "Preflight Fail: Horizontal position estimate Error"
2019-02-17 23:44:47 +00:00
Antiheavy
1bcce518b0 Fixed typo in comment. from: EPV to: EPH
The comment description for COM_POS_FS_EPH incorrectly stated "...horizontal position error (EPV)...".  This fixes the acronym to "(EPH)".
2019-02-16 19:37:12 +00:00
Hamish Willee
6302452066 Remove unwanted info option 2019-02-15 10:41:32 +01:00
Hamish Willee
f8c0849ff7 Add module docs for leddar_one 2019-02-15 10:41:32 +01:00
TSC21
57f1f01319 microRTPS_transport: replace printf() with PX4_ERR() 2019-02-15 08:54:58 +00:00
Gabriel Moreno
6bb0046407 urtps: fix UART speed setting to work in Linux
The previous code used the numeric baudrate as the speed argument
for cfsetispeed() and cfsetospeed(). This works in OSX and NuttX,
but is not portable.

This fix introduces a new method to convert baudrate to speed using
constants such as B115200.

Signed-off-by: Gabriel Moreno <gabrielm@cs.cmu.edu>
2019-02-15 08:54:58 +00:00
TSC21
d4570e10f3 Jenkins CI: PX4 ROS msgs stage: properly name the ros1 branch 2019-02-15 08:51:58 +00:00
TSC21
d1182f18ed Jenkins CI: PX4 ROS msgs stage: deploy message definitions to the 'ros1' branch of 'px4_msgs' 2019-02-15 08:51:58 +00:00
bresch
197ddd3e46 mc_pos_control - Publish trajectory setpoint directly after the FlightTask update 2019-02-13 20:56:57 +01:00
bresch
c0dab47554 mc_pos_control - reduce smooth_velocity_takeoff default threshold, set initial takeoff speed to 0 and remove useless else 2019-02-13 20:56:57 +01:00
bresch
e0c48d1d76 PositionControl - use dynamic constraints to saturate velocity controller for now as it is needed for the current smooth takeoff logic. Will be reverted after smooth takeoff refactor 2019-02-13 20:56:57 +01:00
bresch
106f0769fd mc_pos_control - add takeoff_ramp_time zero division guard 2019-02-13 20:56:57 +01:00
bresch
70ddb8049a Traj Smoothing - make format 2019-02-13 20:56:57 +01:00
bresch
3543071eb9 Position Controller - Saturate the controllers using static parameters. Handle saturations in the flight tasks only 2019-02-13 20:56:57 +01:00
bresch
4cace1bbe9 Manual vel smooth - use speed_up and speed_down constraints to limit velocity target of the trajectory generator 2019-02-13 20:56:57 +01:00
bresch
b7c2464cce Manual vel smooth - Use MPC_JERK_MAX only 2019-02-13 20:56:57 +01:00
bresch
1730cd3a69 Velocity Smoothing - Various improvements, cleanup and corner cases fixes 2019-02-13 20:56:57 +01:00
bresch
f1262cbe84 Manual Traj - Avoid velocity jumps due to a modification of the constraints 2019-02-13 20:56:57 +01:00
bresch
57eef6b170 Manual Trajectory - Add Z position lock logic and log complete trajectory 2019-02-13 20:56:57 +01:00
ArkadiuszNiemiec
556ac5547b attitude_estimator_q: fix newline at end of file 2019-02-13 08:51:41 -05:00
ArkadiuszNiemiec
d93c3da172 q_estimator: correctly handle loss of external yaw estimation 2019-02-13 08:51:41 -05:00
ArkadiuszNiemiec
6257037924 Revert "q_estimator: correctly handle loss of external yaw estimation" 2019-02-13 08:51:41 -05:00
Arkadiusz Niemiec
075c836dfb q_estimator: correctly handle loss of external yaw estimation 2019-02-13 08:51:41 -05:00
Hamish Willee
3a34209dc1 Fix error text to: unrecognised command 2019-02-13 09:42:05 +01:00
Hamish Willee
1aaf342e86 Add usage output to command 2019-02-13 09:42:05 +01:00
Hamish Willee
48105ba878 Add module docs for tfmini driver 2019-02-13 09:42:05 +01:00
Hamish Willee
2b20c50659 Add module docs for teraranger 2019-02-13 09:20:07 +01:00
Daniel Agar
8185334994 navigation.h handle mission item structure padding explicitly
- also applies to mission_stats_entry_s, mission_fence_point_s,
   mission_save_point_s
 - -Wpadded warning is disabled by default because the snapdragon
   toolchain doesn't respect the pragma pop
2019-02-13 08:08:01 +01:00
David Sidrane
beff3ae66a deprecate gumstix aerocore - no longer supported by mfg 2019-02-12 20:53:45 -05:00
Daniel Agar
f1d17c9003
camera_capture add to all boards 2019-02-11 14:15:28 -05:00
Daniel Agar
fb7c0376a0
systemlib hysteresis improve field packing and cleanup 2019-02-11 11:57:05 -05:00
Daniel Agar
d7ba8cc3f0
simulator mavlink don't send_controls() until ready (#11426) 2019-02-11 10:50:24 -05:00
Daniel Agar
24d46df577 simulator cleanup initialization 2019-02-11 09:48:02 -05:00
Beat Küng
0acdffad90 fix MPU6000: restore orb priority
Fixes regression from https://github.com/PX4/Firmware/pull/11216.
2019-02-11 12:16:46 +01:00
Mark Sauder
352be14bbe Alphabetizing/standardizing orders in tunes.cpp and tunes.h files
- Remove a constructor overload by adding default values, and disambiguate a few variables by adding verbosity to naming.
2019-02-10 20:31:12 -05:00
David Sidrane
b40f8d52a8 STM32F7 disable d-cache as a precaution (#11374)
- see 1259864 Data corruption in a sequence of Write-Through stores and loads
 - if we can be certain this sequence won't occur in PX4 then the d-cache will be re-enabled
2019-02-10 18:25:16 -05:00
Anna Dai
a2bb826523 fix for AV board mavlink streams 2019-02-10 18:07:44 -05:00