Commit Graph

687 Commits

Author SHA1 Message Date
TSC21 5c386a737c make generation of micro-RTPS agent CMakeLists.txt optional 2018-09-21 15:55:17 +02:00
TSC21 93daec43d3 generate_microRTPS_bridge: add option to set preprocessor include paths of fastrtpsgen 2018-09-21 15:55:17 +02:00
TSC21 d708c965ec px_generate_uorb_topic_helper.py: beautify 2018-09-21 15:55:17 +02:00
TSC21 4137517d12 px_generate_uorb_topic_files.py: beautify 2018-09-21 15:55:17 +02:00
TSC21 cafc2f5e61 add Copyright notice 2018-09-21 15:55:17 +02:00
TSC21 9b028e4f6d update copyright notice 2018-09-21 15:55:17 +02:00
TSC21 0bee156e8f remove unneeded condition verfication for the package 2018-09-21 15:55:17 +02:00
TSC21 57f5bb6290 generate_microRTPS_bridge.py: beautify 2018-09-21 15:55:17 +02:00
TSC21 6eda4feb20 use os.path.join() when possible 2018-09-21 15:55:17 +02:00
TSC21 8efb2bbe10 improve ImportError verbosity for yaml 2018-09-21 15:55:17 +02:00
TSC21 43f78705ab add option to set the msg IDL dir 2018-09-21 15:55:17 +02:00
TSC21 e3560795a1 make 'build' dir creation optional 2018-09-21 15:55:17 +02:00
TSC21 f43c581a8c add errno import for fixing script running over python 3 or above 2018-09-21 15:55:17 +02:00
TSC21 2cc6c03a08 change argparse logic for idl generation 2018-09-21 15:55:17 +02:00
TSC21 eedb80f76d remove unnecessary 'nargs=1' from argparse 2018-09-21 15:55:17 +02:00
TSC21 bb835382dd use a yaml file description instead of json; minor improvements and cleanup 2018-09-21 15:55:17 +02:00
TSC21 7d40c4f97e fix templates dir 2018-09-21 15:55:17 +02:00
TSC21 a323073456 load RTPS msg IDs from a JSON file and remove uorb_rtps_message_ids.py 2018-09-21 15:55:17 +02:00
TSC21 943bfbf93f generalize scripts for usage outside the PX4 Firmware dir and with other templates/packages 2018-09-21 15:55:17 +02:00
Roman 96f3feb088 weathervane: get rid of passive strategy
Signed-off-by: Roman <bapstroman@gmail.com>
2018-09-19 08:27:07 +02:00
TSC21 095cdeb4b0 add a local frame of reference field to vehicle_odometry 2018-09-18 09:52:33 +02:00
TSC21 cc73f214d1 add covariance matrices index aliases 2018-09-18 09:52:33 +02:00
TSC21 1d10c5f740 vehicle_odometry: add timestamp field 2018-09-18 09:52:33 +02:00
TSC21 8325724079 general fixes on VIO data access 2018-09-18 09:52:33 +02:00
TSC21 440ebfde02 remove att_pos_mocap uORB topics 2018-09-18 09:52:33 +02:00
TSC21 183a63cce9 purge vehicle_vision_position alias 2018-09-18 09:52:33 +02:00
TSC21 8f23a073a4 ekf2: add vehicle_odometry usage and data validation check; update replay as well 2018-09-18 09:52:33 +02:00
TSC21 939216d6ff add vehicle_odometry msg 2018-09-18 09:52:33 +02:00
Roman e17f0802cc tecs msg: changed flight_path_angle to height rate as clearly we are
looking at height rates

Signed-off-by: Roman <bapstroman@gmail.com>
2018-09-17 10:27:08 -04:00
Daniel Agar 55abaaf6ab uORB printf map extend floating point decimal places 2018-09-02 21:13:10 +02:00
Daniel Agar af6098b9ea uORB print_message add device_id pretty print 2018-09-02 21:13:10 +02:00
Daniel Agar 930ac8d4fe Mavlink set telemetry_status type properly for Sik radios
- remove radio_status type since there's no type support in mavlink
2018-09-02 19:48:10 +02:00
PX4 Build Bot e421c254e2 Update submodule genmsg to latest Fri Aug 31 21:30:44 UTC 2018
- genmsg in PX4/Firmware (92b52c56af728741b4ac9f57e583350b0fcd7c3b): a189fc7855
    - genmsg current upstream: 42e3646610
    - Changes: a189fc7855...42e3646610

    42e3646 2018-08-27 Jochen Sprickerhof - Use CATKIN_GLOBAL_ETC_DESTINATION for etc (#79)
2018-08-31 18:51:44 -04:00
Daniel Agar 5207c420c3 generic position controller status/feedback message 2018-08-31 14:43:51 -04:00
Julian Oes f3e576b6f4 commander: remove set but unused HITL flag
This flag does not seem to be used anywhere.
2018-08-30 09:16:02 +02:00
bresch 9be0c97346 Failure Detector - use bitmask field instead of boolean in vehicle_status msg (failure_detector_status) and instead of struct in class 2018-08-28 11:23:25 -04:00
bresch 9a6fef62ab Vehicle_Status_msg - Add attitude_failure flag to vehicle_status message 2018-08-28 11:23:25 -04:00
Daniel Agar 6396e486bd commander cleanup battery failsafe handling 2018-08-21 02:38:51 -04:00
Paul Riseborough f100cd73ef msg: Create message for GPS drift rates
This data is only updated at 5Hz and only required pre-flight.
2018-08-17 10:44:07 +10:00
Daniel Agar 36403e9025 Mavlink expand telemetry_status and split radio_status 2018-08-16 17:32:15 +02:00
TSC21 7c7602873e assert over the type of the 'timestamp' field 2018-08-09 13:40:48 +02:00
TSC21 c10e851251 replace printf with PX4_INFO_RAW 2018-08-09 13:40:48 +02:00
TSC21 c53c035ec6 px_generate_uorb_topic_files: add check and throw error if no timestamp field exists 2018-08-09 13:40:48 +02:00
TSC21 a1ac34d3e7 reformat how the passed time is printed 2018-08-09 13:40:48 +02:00
TSC21 cac84e1424 px_generate_uorb_topic_helper: do not account with the timestamp, so the struct size matches 2018-08-09 13:40:48 +02:00
TSC21 8a8cc26b13 uorb templates: remove redundant timestamp field 2018-08-09 13:40:48 +02:00
TSC21 86baa6a90a beautify some identation 2018-08-09 13:40:48 +02:00
TSC21 e932030d88 add timestamp field to uORB msgs; sync timestamp whenever possible 2018-08-09 13:40:48 +02:00
acfloria 21ebcdc0ae Publish the satcom subsystem health 2018-08-08 21:13:56 +02:00
Beat Küng f1dc8f8f48 listener: use PX4_INFO_RAW instead of printf
Ensures that clients will get the output of the listener.
2018-08-08 21:09:39 +02:00
Julian Oes 0c5c741b1a add posix shell
squashed & rebased version, not including:
- listener changes
- src/firmware renaming

Commits:

tag_to_version.py: fix Python3 error

subprocess.communicate returns bytes instead of a str which is not the
same for Python3. Therefore, we need to decode the bytes.

cmake: remove folder src/firmware

The folder src/firmware was not intuitive. Why would the binaries for
SITL be inside a src and why even inside a src/firmware folder. Also,
the rootfs was put there which made it even more confusing.

The CMakeLists.txt files are moved into cmake/ and get now called from
the main CMakeLists.txt.

qshell: support for return value

Instead of just sending commands, qshell will now also wait until
the command has finished on QURT and sent back a return value. This will
allow all modules on the DSP side to be spawned from the Linux side
meaning that we only need one config/startup file instead of two.

adb_upload: create folders before pushing

Previously the script failed if the folder on the destination was not
already existing. This therefore makes pushing easier.

posix: spawn PX4 modules in bash

This adds the possibility to spawn PX4 modules out of bash. Basically,
the main executable can now be started as a server/daemon or as a
client.
The server replaces the existing functionality of the main exe with
the pxh shell, however, it also opens a pipe that clients can talk to.

Clients can run or spawn PX4 modules or commands by connecting to the
server over the pipe. They clients will get the stdout and return value
of their commands via a client specific pipe back.

This work will allow to start all modules using a bash script similar to
the way it is done in NuttX where the NuttShell scripts the startup
scripts and starts the modules.

SITL: use new client shell in SITL

This is a first step to use the new shell capabilities for SITL.
The new startup bash script rcS merges (and therefore replaces) the two
existing scripts rcS_gazebo_iris and rcS_jmavsim_iris.

More cleanup will be necessary for the rest of the SITL startup scripts.

Snapdragon: use new shell to start all modules

Instead of different mainapp.config and px4.config files, we can now use
a unified rcS bash script which starts all the modules based on
parameters, mainly the SYS_AUTOSTART param.

Snapdragon: fix the airframe description

pxh: argv needs to end with a nullptr

The comment was wrong that argv needs an additional 0 termination.
Instead it needs a nullptr at the end.

px4_posix_tasks: variable cleanup

The px4_task_spawn_cmd function got a cleanup while debugging, however,
no functional changes.

Snapdragon: move some drivers to 4100 config

These drivers are supported by the community, so they go into the 4100
config.

Snapdragon: update 210qc platform

px4_daemon: use doxygen comments

apps.h_in: fix string printf: use .c_str()

px4_daemon: \b -> \n in printf

px4_daemon: handle error in generate_uuid (close the file on error)

posix main: some clarifications in comment (it's the symlinks not the script aliases)

cmake: remove new install command again

This one was probably wrong and untested. Installing needs revisiting.

POSIX: remove argument USES_TERMINAL

POSIX: copy init and mixer files for SITL

Instead of using non-working install commands, the mixer and startup
files are now copied as part of the build in cmake.

adb_upload.sh: remove leftover commented printf

POSIX main: just the pointer instead of memmove

POSIX main: remove chroot

chroot is removed because it hasn't been used anywhere and seems
untested.

px4_daemon: remove client pipe when cleaning up

px4_daemon: fail if the client pipe already exists

The client pipe is supposed to be specific (by UUID), so the path
shouldn't exist already.

history: limit the number of history entries

This is a protection to avoid filling the memory if we are entering a
lot of commands (e.g. auto-generated).

px4_daemon: add a threadsafe map and use it

px4_daemon: whitespace

px4_daemon: fix client parsing

Sometimes the client ends up reading more than one packet in one read.
The parsing is not made for this and would require a (ring)buffer for
it.

The solution of this commit just reads as much as needed from the pipe
which avoids having to do buffering and parsing.

posix: changes sitl_run.sh and main.cpp cleanup

This changes the paths in sitl_run.sh quite a bit to allow the px4
binary to run in the rootfs directory which should make it convenient
and very close to the NuttX variant.

Also main.cpp got a big cleanup after the big rebase with some
conflicts. Quite some functionality was removed but it has yet to be
seen if it needs to be re-added.

px4_log: cleanup log levels, now they make sense

Before DEBUG and INFO log levels where inverted which didn't make much
sense in my eyes.

dataman: fix path for bash shell

logger: fix paths for bash shell

mavlink: fix paths for bash shell

param: fix path for bash shell

inav: fix paths for bash shell

sdlog2: fix paths for bash shell

ROMFS: add forgotten mixer to list

SITL init: more models, more options

- Support for different models using the unified startup
script rcS.
- Support to choose the estimator by setting the environment variable
  PX4_ESTIMATOR.
- Support to choose the logger by setting the environment variable
  PX4_LOGGER.

rcS: fix string comparison

listener: use template file

Instead of having all of the C++ code inside the Python file it is
nicer to have a separate template file with the C++ headers, etc.

px4_log: add PX4_INFO_RAW for raw printfs

This allows to do custom formatting but is still transported over
sockets to clients.

topic_listener: use PX4_INFO_RAW instead of printf

commander: use PX4_INFO_RAW for status

listener: rewrite to classes and factory

posix: fix some argument warnings

generate_listener.py: by accident changed shebang

listener: big refactor of the generator

Hopefully this makes it easier to read and change in the future.

rcS: manually take over rebase changes

listener: remove leftover try

listener: properly clean up topic instance

rcS: take over some vehicle specific changes

posix-configs: vehicle specifics to separate files

posix-configs: remove leftover lines

uORBDevices: new PX4_INFO_RAW instead of printf

px4_log: just use printf on NuttX

listener: use less binary space, strip on NuttX

generate_listener.py: remove commented code

cmake: fix syntax error from merge

px4_daemon: fixes after rebase of apps.h/cpp fix

px4_daemon: namespace missing

posix: only create stub for fsync on QURT

unitests: reduce dependencies of param test

This makes the unit test compile and link again after the bash changes.

QURT: some compile fixes after a rebase

SITL: arg change for sitl_run.sh to use rcS_test

This allows to use a custom startup file for testing.

SITL: add the folder test_data

SITL: implement shutdown command as systemcmd

The shutdown command needs to be a proper systemcmd, otherwise the alias
and symlink generation doesn't work and we end up calling shutdown of
the host computer which is to be avoided.

px4fmu_test: same IO_pass mixer as px4fmu_default

px4fmu_test: use normal quad x mixer

There is no good reason to use a specific test mixer, except more cmake
code around it. Therefore just use the same mixer as default, and at
some point px4fmu_test and px4fmu_default can get merged

POSIX: cleanup, dir and symlink fixes

This cleans up the logic behind the symlinking and creating directories.

POSIX: correct arg order in usage info

tests: fix paths for SITL tests

POSIX: printf fix

sitl_run.sh: try to make this run on Mac as well

cmake: try to make jenkins happier

Path cleanup, the bin is no longer in src/firmware

POSIX: fix symlink logic

SITL: prefix all exported env variables

cmake: fix path for ROS tests

integrationtests: fix log path

launch: try to make tets with ROS working again

px4_defines: fix after wrong merge deconflicting

px4_defines: get paths for POSIX correct

cmake: fix cmake arguments

This was fine with cmake 3.6 but did not work with cmake 3.2.2

cmake: use cp instead of cmake -E copy

cmake -E copy does not support copying multiple files with versions <
3.5. Therefore, just use cp for now.

ROMFS: fix build error after rebase

cmake: fix paths in configs

launch: use `spawn_model` again

cmake: various fixes after big rebase

param: path fixes after rebase

posix platform: fixes after rebase

test_mixer: fix screwed up rebase
2018-08-08 21:09:39 +02:00
Daniel Agar d04aef65d0 estimator_status reduce size of n_states 2018-08-03 17:42:48 -04:00
Daniel Agar 2bf90574ed estimator_status separate LPE only flags and comment 2018-08-03 17:42:48 -04:00
Daniel Agar da68ea0d11 estimator_status delete unused nan_flags 2018-08-03 17:42:48 -04:00
TSC21 ca42483794 update msgs fields from camelCase to snake_case so rosidl_generate_interfaces() is able to generate code for ROS IDL files 2018-07-30 21:40:28 +02:00
Daniel Agar cc96e5ec5e sensor messages remove unused fields and improve comments 2018-07-29 21:04:21 +02:00
Beat Küng 6e24bbbaaf fmu: add CRSF RC and Telemetry support
- Telemetry is only enabled on omnibus, since on Pixhawk it seems we cannot
  write to the RC UART due to how the board is wired
- For the Telemetry the UART needs to be opened RW
2018-07-28 15:23:09 +02:00
MaEtUgR 5dae404fb2 vehicle_commands: add VEHICLE_CMD_DO_ORBIT 2018-07-24 15:03:53 +02:00
Paul Riseborough fc65939f0e ekf2: Add support for use of multiple GPS receivers (#9765) 2018-07-22 12:18:30 -04:00
Dennis Mannhart eb7139bc56 FlightTaskManualAltitude: respect maximum altitude if there is a valid distance sensor 2018-07-20 09:26:18 +02:00
Dennis Mannhart 80775d588b vehicle constraints: minimum distance to ground. currently used when distance sensor
is available
2018-07-20 09:26:18 +02:00
Dennis Mannhart 547cdc051c FlightTask: apply gear switch depending on task 2018-07-20 09:26:18 +02:00
Dennis Mannhart cdb723e54c vehicle_constraints: landing gear up boolean 2018-07-20 09:26:18 +02:00
Dennis Mannhart 9f11f1afcf vehicle constraint message: fix range comment 2018-07-20 09:26:18 +02:00
Dennis Mannhart 0f4be12646 msg: first draft of vehicle_constraints message 2018-07-20 09:26:18 +02:00
Philipp Oettershagen da2fbf60b5 distance sensors: Improve variable naming / description 2018-07-16 21:59:04 +10:00
Philipp Oettershagen 35bde5c9fc LL40LS: Implement driver-specific filtering based on the datasheet and experiments 2018-07-16 21:59:04 +10:00
Beat Küng 43c2970fb9 vehicle_gps_position: add heading field 2018-07-16 12:18:37 +02:00
Beat Küng 5ae1c658a9 Revert "Add heading to true north to GPS report"
This reverts commit 89e49166fa.
2018-07-16 12:18:37 +02:00
Daniel Agar 50ae8c9c6f airspeed.msg update incorrect comments 2018-07-16 01:09:19 -04:00
Daniel Agar 3b580514ae delete unused airspeed.true_airspeed_unfiltered_m_s 2018-07-16 01:09:19 -04:00
Lorenz Meier 89e49166fa Add heading to true north to GPS report
This is used by multi-antenna RTK systems.
2018-07-15 20:34:31 +02:00
Daniel Agar c199ca5193 msg generated print support boolean 2018-07-15 20:33:16 +02:00
Nuno Marques 83fd5a5fd1 Update micro-CDR to latest and fix API usage (#9651)
* uorb_microcdr: msg.cpp.template: update API for how the buffer length is obtained
* micrortps_bridge: CMakeLists: temporarily deactivate check endianness option
2018-07-12 18:04:15 -04:00
Martina e7cf2c5675 remove unused trajectory_bezier message 2018-07-12 16:36:11 -04:00
Martina 00bc70a49c trajectory_waypoint: refactor to contain information about one of the 5
points of the trajectory
2018-07-12 16:36:11 -04:00
Martina c15f2e45d6 add vehicle_trajectory_waypoint message 2018-07-12 16:36:11 -04:00
Martina f3a7886fbf trajectory_bezier: remove yaw_speed define 2018-07-12 16:36:11 -04:00
Martina c9fcc6b7d5 trajectory_waypoint: add comment to explain the use of the two topics
trajectory_waypoint and trajectory_waypoint_desired
2018-07-12 16:36:11 -04:00
Martina 35cf00dd5e trajectory message: change sp to wp 2018-07-12 16:36:11 -04:00
Martina c84e651edd trajectory_waypoint: add defines for point size and number of points 2018-07-12 16:36:11 -04:00
Martina 6e7f1d249e bezier: fix index description 2018-07-12 16:36:11 -04:00
Martina e59a29197e replace obstacle_avoidance message with trajectory_waypoint and trajectory_bezier 2018-07-12 16:36:11 -04:00
ChristophTobler 82e0547f6e add first draft of the avoidance msg 2018-07-12 16:36:11 -04:00
Thomas Stastny 8a7919bcb6 fw att+pos ctrl: use enum for flaps configs 2018-07-11 08:08:13 +02:00
Thomas Stastny 0c3399433d fw att+pos ctrl: add takeoff flaps setting 2018-07-11 08:08:13 +02:00
Alessandro Simovic c0db004294 rc_loss_alarm: Added basic functionality 2018-07-05 14:17:55 +02:00
Philipp Oettershagen 7a82c777b2 LandDetector FW: Fix param min/max values and descriptions as well as some variable names which were wrong/outdated (#9708) 2018-06-20 16:13:33 -04:00
Paul Riseborough 4a0b41bbc0
ekf2: Enable use of flow sensors not fitted with gyros (#9703)
* ecl: Update to version allowing use of flow sensors without gyros

* msg: Update description for optical_flow

Adds advice for publishing gyro rate integral message when no rate gyro is fitted.
2018-06-20 10:28:58 +10:00
TSC21 518daa4a8d fastrtps: clean up and fix template for client/agent code 2018-06-11 22:54:58 +02:00
Daniel Agar a6883c3a0d uORB generated header use full name in C define 2018-06-11 22:53:38 +02:00
Mohammed Kabir 8299f571c8 msg : add height limits to local position 2018-06-09 13:38:04 +02:00
Mohammed Kabir 230d6c5aa2 msg : add sensor limits to optical flow message 2018-06-09 13:38:04 +02:00
Paul Riseborough e5d428bd65 msg: add definitions for estimator status control mode bit positions 2018-06-09 13:38:04 +02:00
Philipp Oettershagen e4d863b95f Subsystem_info status flags & checks: Separate the functionality to a) set the health flags inside commander and b) to publish them from external modules 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 075009be2f Subsystem_info status flags & checks: 1) Set health flags in commander directly instead of publishing via uORB 2) move publish_subsystem_info into lib/ folder" 2018-06-06 18:54:24 +02:00
Philipp Oettershagen f5847a4a7b Subsystem_info status flags & checks: Switch back to uORB for inter-process communication, handle GPS checks completely inside ekf2, add distance_sensor checks 2018-06-06 18:54:24 +02:00
Philipp Oettershagen 6f1f414b49 Subsystem_info status flags & checks : Initial commit, updating the health flags in a centralized way mostly in commander and the votedSensorsUpdate function. 2018-06-06 18:54:24 +02:00
acfloria d8cf012641 IridiumSBD: Add iridiumsbd_status uorb message 2018-05-27 12:11:35 -04:00
Florian Achermann 84578748f4 Navigator Mission RTL (#8749)
* Add return to land to mission

This method uses the planned mission for rtl. If a landing sequence
is present it will continue the mission and land. If not it will
fly back the mission and loiter/land at the home position.
2018-05-27 12:07:06 -04:00