Skip to content

Commit

Permalink
Merge pull request #114 from hamishwillee/master
Browse files Browse the repository at this point in the history
Update master with develop since v0.3.0
  • Loading branch information
hamishwillee authored Apr 30, 2018
2 parents 4f80692 + 516a109 commit 00eaeca
Show file tree
Hide file tree
Showing 72 changed files with 6,547 additions and 1,466 deletions.
28 changes: 28 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
language: ruby
rvm:
- 2.2.2

addons:
apt:
packages:
- libcurl4-openssl-dev # required to avoid SSL errors

install:
- npm install gitbook-cli -g
- gitbook install
- gitbook build
- gem install html-proofer

script:

- htmlproofer ./_book --empty-alt-ignore true --check-external-hash true --http-status-ignore 503 --url-ignore 'https://img.shields.io/badge/discuss-DroneCore-ff69b4.svg,https://grpc.io/'

env:
global:
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true # speeds up installation of html-proofer


## Allow links to fail any time and be displayed as warnings.
matrix:
allow_failures:
- rvm: 2.2.2
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 5 additions & 1 deletion book.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
{
"gitbook": ">= 3.2.2",
"title": "DroneCore Guide",
"title": "DroneCore Guide",
"variables": {
"logo": "./assets/site/dronecore_logo_full.png",
"github_branch": "v0.4.0"
},
"plugins": [
"youtube",
"richquotes",
Expand Down
25 changes: 14 additions & 11 deletions en/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ DroneCore can run on a vehicle-based companion computer or on a ground-based GCS
DroneCore is still in pre-alpha development.
- The core C++ API has been created and is (largely) stable.
- Currently you can only develop in C++.
- [gRPC](https://grpc.io/) is being investigated as a promising technology for writing the cross-platform wrappers.
- [gRPC](https://grpc.io/) is being used to write the cross-platform wrappers.

To use DroneCore you will need to [build the C++ library](contributing/build.md). The [Guide](guide/README.md) explains how to write C++ DroneCore apps. A simple complete example can be found in [Takeoff and Land](examples/takeoff_and_land.md).
To use DroneCore you will need to [build the C++ library](contributing/build.md). The [Guide](guide/README.md) explains how to write C++ DroneCore apps. A number complete examples can be found [here](examples/README.md).


## Library Features
Expand All @@ -38,31 +38,34 @@ The library is:

The main features provided by the simple core API are (in all programing languages):

* Connect to and manage up to 255 vehicles via a UDP network connection (serial and TCP connections are not yet implemented).
* Connect to and manage up to 255 vehicles via a TCP, UDP or serial connection.
* Get information about vehicles (vendor, software versions, product versions etc.)
* Get vehicle telemetry and state information (e.g. battery, GPS, RC connection, flight mode etc.) and set telemetry update rates.
* Send commands to arm, disarm, kill, takeoff, land and return to launch.
* Create and manage missions.
* Control a camera and gimbal both inside and outside of missions.
* Send commands to directly control vehicle movement.

See the [FAQ](getting_started/faq.md) for answers to common questions about the library.


## API Overview

[DroneCore](/api_reference/classdronecore_1_1_drone_core.md) is the main library class. API consumers use [DroneCore](/api_reference/classdronecore_1_1_drone_core.md) to discover and access vehicles ([Device](/api_reference/classdronecore_1_1_device.md) objects), which in turn provide access to all other drone information and control objects (e.g. [Telemetry](/api_reference/classdronecore_1_1_telemetry.md), [Mission](/api_reference/classdronecore_1_1_mission.md) etc.).
[DroneCore](/api_reference/classdronecore_1_1_drone_core.md) is the main library class. API consumers use [DroneCore](/api_reference/classdronecore_1_1_drone_core.md) to discover and access vehicles ([System](/api_reference/classdronecore_1_1_system.md) objects), which in turn provide access to all other drone information and control objects (e.g. [Telemetry](/api_reference/classdronecore_1_1_telemetry.md), [Mission](/api_reference/classdronecore_1_1_mission.md) etc.).

The most important classes are:

- [DroneCore](/api_reference/classdronecore_1_1_drone_core.md): Discover and connect to vehicles ([Device](/api_reference/classdronecore_1_1_device.md)).
- [Device](/api_reference/classdronecore_1_1_device.md): Represents a connected vehicle (e.g. a copter or VTOL drone). It provides access to vehicle information and control through the classes listed below.
- [Info](/api_reference/classdronecore_1_1_info.md): Basic version information about the hardware and/or software of a device.
- [DroneCore](/api_reference/classdronecore_1_1_drone_core.md): Discover and connect to vehicles ([System](/api_reference/classdronecore_1_1_system.md)).
- [System](/api_reference/classdronecore_1_1_system.md): Represents a connected vehicle (e.g. a copter or VTOL drone). It provides access to vehicle information and control through the classes listed below.
- [Info](/api_reference/classdronecore_1_1_info.md): Basic version information about the hardware and/or software of a system.
- [Telemetry](/api_reference/classdronecore_1_1_telemetry.md): Get vehicle telemetry and state information ([Battery](/api_reference/structdronecore_1_1_telemetry_1_1_battery.md), [EulerAngle](/api_reference/structdronecore_1_1_telemetry_1_1_euler_angle.md), [GPSInfo](/api_reference/structdronecore_1_1_telemetry_1_1_g_p_s_info.md), [GroundSpeedNED](/api_reference/structdronecore_1_1_telemetry_1_1_ground_speed_n_e_d.md), [Health](/api_reference/structdronecore_1_1_telemetry_1_1_health.md), [Position](/api_reference/structdronecore_1_1_telemetry_1_1_position.md), [Quaternion](/api_reference/structdronecore_1_1_telemetry_1_1_quaternion.md), [RCStatus](/api_reference/structdronecore_1_1_telemetry_1_1_r_c_status.md)) and set telemetry update rates.
- [Action](/api_reference/classdronecore_1_1_action.md): Simple drone actions including arming, taking off, and landing.
- [Mission](/api_reference/classdronecore_1_1_mission.md): Waypoint mission creation and upload/download. Missions are created from [MissionItem](/api_reference/classdronecore_1_1_mission_item.md) objects.
- [Offboard](/api_reference/classdronecore_1_1_offboard.md): Control a drone with velocity commands.
- [Gimbal](/api_reference/classdronecore_1_1_gimbal.md): Control a gimbal.
- [Camera](/api_reference/classdronecore_1_1_camera.md): Control a camera.
- [FollowMe](/api_reference/classdronecore_1_1_follow_me.md): Drone tracks a position supplied by DroneCore.
- [Logging](/api_reference/classdronecore_1_1_logging.md): Data logging and streaming from the vehicle.
- [include/device_plugin_container.h.in](https://github.com/dronecore/DroneCore/blob/master/include/device_plugin_container.h.in): Auto-generated file that is required for DroneCore plugin development - see [DevicePluginContainer](/api_reference/classdronecore_1_1_device_plugin_container.md).


## Getting Started
Expand All @@ -76,8 +79,8 @@ Developers who want to contribute to the API will need to build the C++ library

This guide contains information and examples showing how to use DroneCore. If you have specific questions that are not answered by the documentation, these can be raised on:

* [Slack DroneCore Channel](https://px4.slack.com/messages/C68J8H32A) (get a [Slack login here](http://slack.px4.io))
* [Discuss board](http://discuss.px4.io/c/dronecore)
* [Slack DroneCore Channel](https://px4.slack.com/messages/C68J8H32A) (get a [Slack login here](http://slack.px4.io))

Use Github for bug reports/enhancement requests:

Expand All @@ -89,10 +92,10 @@ Use Github for bug reports/enhancement requests:

DroneCore welcomes contributions! If you want to help or have suggestions/bug reports [please get in touch with the development team](#getting-help).

The [Contributing](contributing/README.md) section contains everything you need to contribute, including topics about building Dronecore from source code, running our integration and unit tests, and all other aspects of core development.
The [Contributing](contributing/README.md) section contains everything you need to contribute, including topics about building DroneCore from source code, running our integration and unit tests, and all other aspects of core development.


## License

* DroneCore is licensed under the permissive [BSD 3-clause](https://github.com/dronecore/DroneCore/blob/master/LICENSE.md).
* DroneCore is licensed under the permissive [BSD 3-clause](https://github.com/dronecore/DroneCore/blob/{{ book.github_branch }}/LICENSE.md).
* This *DroneCore Developer Documentation* is licensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) license.
35 changes: 29 additions & 6 deletions en/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,30 @@
* [Quick Start](getting_started/README.md)
* [Guide](guide/README.md)
* [Usage/Paradigms](guide/general_usage.md)
* [Connecting to Devices](guide/connections.md)
* [Vehicle Information](guide/device_version.md)
* [Connecting to Systems (Vehicles)](guide/connections.md)
* [Managing Systems](guide/using_plugins.md)
* [System Information](guide/system_information.md)
* [Telemetry](guide/telemetry.md)
* [Taking Off and Landing](guide/taking_off_landing.md)
* [Actions - Take Off, Arm, ...](guide/taking_off_landing.md)
* [Missions](guide/missions.md)
* [Offboard Control](guide/offboard.md)
* [Follow Me](guide/follow_me.md)
* [VTOL Support](guide/vtol.md)
* [Building C++ Apps](guide/toolchain.md)
* [DroneCore Extensions](guide/dronecore_extensions.md)
* [Examples](examples/README.md)
* [Takeoff and Land](examples/takeoff_and_land.md)
* [Fly Mission](examples/fly_mission.md)
* [Fly QGC Plan Mission](examples/fly_mission_qgc_plan.md)
* [Offboard Mode - Velocity Control](examples/offboard_velocity.md)
* [Follow Me Mode](examples/follow_me.md)
* [VTOL Transitions](examples/transition_vtol_fixed_wing.md)
* [API Reference](api_reference/README.md)
* [class DroneCore](api_reference/classdronecore_1_1_drone_core.md)
* [class Device](api_reference/classdronecore_1_1_device.md)
* [class System](api_reference/classdronecore_1_1_system.md)
* [class Info](api_reference/classdronecore_1_1_info.md)
* [struct Version](api_reference/structdronecore_1_1_info_1_1_version.md)
* [struct Product](api_reference/structdronecore_1_1_info_1_1_product.md)
* [class Telemetry](api_reference/classdronecore_1_1_telemetry.md)
* [struct Battery](api_reference/structdronecore_1_1_telemetry_1_1_battery.md)
* [struct EulerAngle](api_reference/structdronecore_1_1_telemetry_1_1_euler_angle.md)
Expand All @@ -34,11 +44,24 @@
* [class Offboard](api_reference/classdronecore_1_1_offboard.md)
* [struct VelocityBodyYawspeed](api_reference/structdronecore_1_1_offboard_1_1_velocity_body_yawspeed.md)
* [struct VelocityNEDYaw](api_reference/structdronecore_1_1_offboard_1_1_velocity_n_e_d_yaw.md)
* [class Gimbal](api_reference/classdronecore_1_1_gimbal.md)
* [class Camera](api_reference/classdronecore_1_1_camera.md)
* [struct CaptureInfo](api_reference/structdronecore_1_1_camera_1_1_capture_info.md)
* [struct Position](api_reference/structdronecore_1_1_camera_1_1_capture_info_1_1_position.md)
* [struct Quaternion](api_reference/structdronecore_1_1_camera_1_1_capture_info_1_1_quaternion.md)
* [struct Status](api_reference/structdronecore_1_1_camera_1_1_status.md)
* [struct VideoStreamInfo](api_reference/structdronecore_1_1_camera_1_1_video_stream_info.md)
* [struct VideoStreamSettings](api_reference/structdronecore_1_1_camera_1_1_video_stream_settings.md)
* [class FollowMe](api_reference/classdronecore_1_1_follow_me.md)
* [struct Config](api_reference/structdronecore_1_1_follow_me_1_1_config.md)
* [struct TargetLocation ](api_reference/structdronecore_1_1_follow_me_1_1_target_location.md)
* [class Logging](api_reference/classdronecore_1_1_logging.md)
* [class DevicePluginContainer](api_reference/classdronecore_1_1_device_plugin_container.md)
* [namespace dronecore (globals)](api_reference/namespacedronecore.md)

* [Contributing](contributing/README.md)
* [Building Source](contributing/build.md)
* [Tests](contributing/test.md)
* [Testing](contributing/test.md)
* [Writing Plugins](contributing/plugins.md)
* [Coding Style](contributing/code_style.md)
* [Plugin/Test Logging](contributing/dev_logging.md)
* [Documentation](contributing/documentation.md)
Expand Down
16 changes: 14 additions & 2 deletions en/api_reference/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# API Reference

* [class DroneCore](classdronecore_1_1_drone_core.md)
* [class Device](classdronecore_1_1_device.md)
* [class System](classdronecore_1_1_system.md)
* [class Info](classdronecore_1_1_info.md)
* [struct Version](structdronecore_1_1_info_1_1_version.md)
* [struct Product](structdronecore_1_1_info_1_1_product.md)
* [class Telemetry](classdronecore_1_1_telemetry.md)
* [struct Battery](structdronecore_1_1_telemetry_1_1_battery.md)
* [struct EulerAngle](structdronecore_1_1_telemetry_1_1_euler_angle.md)
Expand All @@ -19,5 +20,16 @@
* [class Offboard](classdronecore_1_1_offboard.md)
* [struct VelocityBodyYawspeed](structdronecore_1_1_offboard_1_1_velocity_body_yawspeed.md)
* [struct VelocityNEDYaw](structdronecore_1_1_offboard_1_1_velocity_n_e_d_yaw.md)
* [class Gimbal](classdronecore_1_1_gimbal.md)
* [class Camera](classdronecore_1_1_camera.md)
* [struct CaptureInfo](structdronecore_1_1_camera_1_1_capture_info.md)
* [struct Position](structdronecore_1_1_camera_1_1_capture_info_1_1_position.md)
* [struct Quaternion](structdronecore_1_1_camera_1_1_capture_info_1_1_quaternion.md)
* [struct Status](structdronecore_1_1_camera_1_1_status.md)
* [struct VideoStreamInfo](structdronecore_1_1_camera_1_1_video_stream_info.md)
* [struct VideoStreamSettings](structdronecore_1_1_camera_1_1_video_stream_settings.md)
* [class FollowMe](classdronecore_1_1_follow_me.md)
* [struct Config](structdronecore_1_1_follow_me_1_1_config.md)
* [struct TargetLocation ](structdronecore_1_1_follow_me_1_1_target_location.md)
* [class Logging](classdronecore_1_1_logging.md)
* [class DevicePluginContainer](classdronecore_1_1_device_plugin_container.md)
* [namespace dronecore (globals)](namespacedronecore.md)
Loading

0 comments on commit 00eaeca

Please sign in to comment.