Commit Graph

21592 Commits

Author SHA1 Message Date
Julian Oes f36f85010c simulator: fix casting warning on Windows 2018-12-22 10:32:18 +01:00
Julian Oes 393a665424 DriverFramework: update submodule
Fixes the unit test on macOS.
2018-12-22 10:32:18 +01:00
Julian Oes e046a6255f DriverFramework: update submodule
This brings a couple more build fixes.
2018-12-22 10:32:18 +01:00
Julian Oes e41518a08b platforms: clean up various build/linking issues
This makes sure lockstep is only built for SITL builds and fixes the
existing builds.
2018-12-22 10:32:18 +01:00
Julian Oes 23264fe579 kinetis: add missing include 2018-12-22 10:32:18 +01:00
Julian Oes 8cbe26c6f6 platforms: fix linking issues for NuttX build 2018-12-22 10:32:18 +01:00
Julian Oes a193e4117c drv_hrt: update signature of ts_to_abstime 2018-12-22 10:32:18 +01:00
Julian Oes d75389b2e4 platforms: consolidate latency_buckets
These symbols were duplicated all over the place.
2018-12-22 10:32:18 +01:00
Julian Oes b13600ed1a platforms: remove TODO
It turns out Mac OS X v10.11.6 (El Capitan) is still covered by security
updates at this time, so not end-of-lifed, so we might as well keep
these legacy things.
2018-12-22 10:32:18 +01:00
Julian Oes 22b584b3b4 simulator: fix TCP connection init on macOS
When `connect()` fails, the state of the socket is unspecified and we
need to close the it and create it again.

It turns out retrying connect worked on Linux but it didn't on macOS.
2018-12-22 10:32:18 +01:00
Julian Oes b2f1a59164 DriverFramework: update submodule
This fixes the build on macOS.
2018-12-22 10:32:18 +01:00
Julian Oes 6ed6941aba DriverFramework: update submodule
This fixes the SITL speedup for macOS.
2018-12-22 10:32:18 +01:00
Julian Oes 546f89aee7 lockstep_scheduler: update submodule 2018-12-22 10:32:18 +01:00
Julian Oes 876d4ebd76 posix: remove appalling errno hack 2018-12-22 10:32:18 +01:00
Julian Oes 66e7b4d578 posix: remove random lies 2018-12-22 10:32:18 +01:00
Julian Oes 11b7411bf8 platforms: cleaned up defines 2018-12-22 10:32:18 +01:00
Julian Oes 107606e757 simulator: set device_ids when publishing directly
Without setting the device_id, the preflight checks fail because the
calibration is not found.
2018-12-22 10:32:18 +01:00
Julian Oes 843033d530 platforms: remove unused function 2018-12-22 10:32:18 +01:00
Julian Oes 6d7fb232dd simulator: added TCP, general cleanup, lockstep
This adds the option to connect over UDP or TCP for mavlink to the
SITL simulator.

Also, this includes a bunch of general cleanup and refactoring of the
simulator interface code. For instance sending of mavlink messages was
put into separate functions and unneccessary comments were removed.

Also, this now sets the timestamp sent by the SITL simulator in the
HIL_SENSOR message in order to enable lockstep.
2018-12-22 10:32:18 +01:00
Julian Oes cf39fdd37b simulator: use usual type of timestamp 2018-12-22 10:32:18 +01:00
Julian Oes 9b7857315c sensors: handle timeout 2018-12-22 10:32:18 +01:00
Julian Oes 22bd06e5d5 mc_pos_control: don't do orb_check on polled topic
When we poll on vehicle_local_position we shouldn't do yet another
orb_check but copy it first up.
2018-12-22 10:32:18 +01:00
Julian Oes 0e04d3e9a9 commander: remove lying comment 2018-12-22 10:32:18 +01:00
Julian Oes e36e0b6ad0 posix: print warning before backtrace 2018-12-22 10:32:18 +01:00
Julian Oes 4ef0d74ea3 platforms: remove old lockstep functionality
These functions won't be used any longer with the new implementation.
2018-12-22 10:32:18 +01:00
Julian Oes 14642edfda gps/devices: updated submodule 2018-12-22 10:32:18 +01:00
Julian Oes cc7cae4e7f DriverFramework: updated submodule
This fixes a race/lockup happening in the DriverFramework scheduler.
2018-12-22 10:32:18 +01:00
Julian Oes a7e93bc2da simulator: removed leftover (wrong) comment 2018-12-22 10:32:18 +01:00
Julian Oes 09595a1de9 dataman: left FIXME comment
We shouldn't be using module here.
2018-12-22 10:32:18 +01:00
Julian Oes 3f508c99fd parameters: commented out strange usleep 2018-12-22 10:32:18 +01:00
Julian Oes da9029274c pwm_out_sim: always publish actuators
This is required so that the SITL simulator receives a feedback from
PX4.
2018-12-22 10:32:18 +01:00
Julian Oes d1514cd667 POSIX: add defines system clock calls 2018-12-22 10:32:18 +01:00
Julian Oes 98ae0186e9 px4_sem: use px4_sem on all POSIX system
This uses the "fake" px4_sem based on mutex and condition_variable on
all POSIX system, not just macOS and Cygwin. This means that we can
change px4_sem_timedwait under the hood and inject the simulated time.
2018-12-22 10:32:18 +01:00
Julian Oes 3e6e1f5c2b POSIX: use lockstep_scheduler to fake time
This integrates the lockstep_scheduler, so that the system time is set
by the mavlink HIL_SENSOR message.

This means that the speed factor is removed and the speed is entirely
given by the simulator.
2018-12-22 10:32:18 +01:00
Julian Oes f0ce300744 platforms: move latency_buckets to perf.c 2018-12-22 10:32:18 +01:00
Julian Oes 6466e690fe DriverFramework: update submodule 2018-12-22 10:32:18 +01:00
Julian Oes 4af0c939ec lockstep_scheduler: update submodule 2018-12-22 10:32:18 +01:00
Julian Oes 5ff3c40179 Added lockstep_scheduler as submodule
This is just an intermediate step until we can copy the sources over.
2018-12-22 10:32:18 +01:00
Julian Oes db6de38b19 Work in progress to support a speed factor in SITL
These contains some rough changes trying to get SITL to speed up by a
SPEED_FACTOR.

This platform time code probably requires some more thought and refactor
but this gets a demo at 4x working.
2018-12-22 10:32:18 +01:00
Julian Oes d70b0f1c8c Replace sleep with px4_sleep
This is another step to isolate time from the system.
2018-12-22 10:32:18 +01:00
Julian Oes 3f695870a4 Replace usleep in GpsDrivers 2018-12-22 10:32:18 +01:00
Julian Oes 5b9dea5604 Replacing usleep with px4_usleep
This is a step towards isolating time from the system.
2018-12-22 10:32:18 +01:00
Julian Oes e485885344 platforms: remove unused Rate class 2018-12-22 10:32:18 +01:00
PX4 Build Bot 582658f2e0 Update submodule matrix to latest Sat Dec 22 00:38:42 UTC 2018
- matrix in PX4/Firmware (3e5d66580520e5ae64555c5fc9252c6c661389e3): https://github.com/PX4/Matrix/commit/9c0acfba36a928b7b002eea3a9dca54a5a0c1250
    - matrix current upstream: https://github.com/PX4/Matrix/commit/18fba8221cc1840964c43f04d8c2aa21857e1b9b
    - Changes: https://github.com/PX4/Matrix/compare/9c0acfba36a928b7b002eea3a9dca54a5a0c1250...18fba8221cc1840964c43f04d8c2aa21857e1b9b

    18fba82 2018-12-16 Matthias Grob - quaternion: improve comments
a4f39c0 2018-12-16 Matthias Grob - quaternion: reuse existing dot product
2018-12-21 23:39:07 -08:00
Daniel Agar 49be26b6cf load_mon improve cpuload calculation and cleanup (#9852) 2018-12-21 22:27:58 -08:00
Alvar Martti 63651da309 FW bug in checking if landing point has been passed
* the bearing difference between the waypoints and aircraft to landing point should be wrap_pi'ed
2018-12-21 10:03:31 -08:00
Nuno Marques cfd1be584e Feature: VIO: add ODOMETRY stream (#11084)
* mavlink_messages: remove LOCAL_POSITION_NED_COV stream

* mavlink_messages.cpp: add ODOMETRY stream

* add MAV_ODOM_LP parameter to activate odometry loopback

* EKF2: add vehicle_odometry publisher

* Replace VISION_POSITION_ESTIMATE loopback with ODOMETRY

* LPE: add vehicle_odometry publisher

* set vehicle_odometry local_frame field

* mavlink_messages.cpp: ODOMETRY frame_id depends on MAV_ODOM_LP
2018-12-21 12:54:04 -05:00
Christian Rauch b3018646d5 check CONFIG_STACK_COLORATION for print_load_nuttx 2018-12-21 05:43:21 -08:00
Christian Rauch a6adc64569 check CONFIG_TASK_NAME_SIZE for print_load_nuttx 2018-12-21 05:43:21 -08:00
Christian Rauch 92117da3a8 check CONFIG_ARCH_MATH_H 2018-12-21 05:43:21 -08:00