More examples¶
Every sample are available here
Hello Drone mission¶
The Hello Drone mission is a comprehensive Air SDK mission demonstrating how to:
Use flight supervisor default state machine and import its structure as is
Override some of the default states, in order to insert custom transitions or guidance modes and execute the hello movement into the state machine
Write a guidance mode with a trajectory generation for cameras
Create a native service to access the video (stereo cams) and telemetry APIs, as well as depth calculation to evaluate distance to obstacle
Handle the service process thanks to threads and mutex
Exchange data between the three entities, thanks to the msghub environment
Send commands and receive events thanks to msghub and the protobuf protocole
Video and Photo sample missions¶
The Video and Photo missions demonstrates how to:
create a service to take a photo and record a video with Air SDK library.
Move sample mission¶
The Move mission demonstrates how to:
create a service to move the drone relative to a starting position with Air SDK library. It also shows how to move the drone to a GPS position.
use a configuration file using parrot libconfig
Telemetry sample missions¶
The Telemetry missions demonstrates how to:
create a service that consumes the drone’s Telemetry and print the telemetry values with Air SDK missions logs.
Tracking sample mission¶
The Tracking mission demonstrates how to:
create an Air SDK service to use the visual tracking feature.
Occupancy grid sample mission¶
The Occupancy grid mission demonstrates how to:
create a service to obtain the occupancy grid created by the drone.
Road Runner sample mission¶
The Road Runner mission is a more complete mission sample than the previous examples. This mission uses the front camera and computer vision algorithm to follow a line on a road. The Road Runner mission involves:
a custom Flight supervisor with custom states
a few Guidance modes (overridden and custom modes) in Python and C++
a service to access the Video and Telemetry APIs and compute the trajectory of the drone
Mission UI sample mission¶
The Mission UI missions demonstrates how to:
create a service that consumes the drone’s Telemetry and display them in the side-panel Mission UI. It also add a settings ui view.
Olympe sample mission¶
The Olympe mission demonstrates how to:
create a service that uses the Olympe SDK to control the drone.
User metadata mission¶
The User Metadata mission demonstrates how to:
Create a service that publishes custom user metadata
Attach metadata both to live streams and to recorded tracks
Push metadata periodically (e.g., 30 FPS)
Handle metadata updates through listener callbacks
Implement the same logic in C, C++, and Python
Live resource selector mission¶
The Live Resource Selector mission demonstrates how to:
Create a service that lists available live resources (such as cameras)
Request video streams dynamically from different receivers (default or skycontroller)
Handle live resource updates through a listener interface
Implement the same logic in C, C++, and Python
How to download those examples¶
Create the workspace¶
First, git needs to be installed to clone the sample_xxx mission
repository from https://github.com/Parrot-Developers/airsdk-samples.git. If you
are not familiar with git, you can download the zipped file directly from
the website.
Build and install an Air SDK mission¶
As a reminder, that protocole has been entirely detailed in the Air SDK installation section.