M30 is available now
DJI Dock will be next year at the earliest
DJI Dock is
The Anafi 4k and Anafi Thermal are now end of lifed, you may be able to find them on ebay ($500)
Anafi USA is a Blue UAS drone for the US military and first responders, thermal camera, approx. $7k
Anafi USA comes in a few flavors, USA, USA Gov and USA mil
Anafi Ai is the new mantis like drone we can see here, it’s $4k
DJI Dock is
Embed your code on the drone with Air SDK
Create mobile apps with Ground SDK
Customize open-source GCS with OpenFlight (iOS)
Use state-of-the-art drone simulation tool with Sphinx
Develop python scripts with Olympe
Process video and metadata with PDrAW
Air SDK is for the new Anafi AI, we’ll cover that in a future talk
Ground SDK is a Ground Control Station (GCS) framework for mobile devices. It allows developers to create a mobile application, controlling the drone directly from the mobile device. All the aircraft features (control, video, settings) are accessible through an easy-to-use and fully documented API.
Open-source ground control station
For the first time, we are open-sourcing our ground control station application. OpenFlight is the open-source core of our famous FreeFlight 7 application. As a developer, you can focus on adding your features and immediately get a professional-looking result in your app.
Parrot Sphinx is a state-of-the-art drone simulation tool for Parrot drones. Parrot Sphinx relies on cutting-edge and industry-standard components (Gazebo and Unreal Engine) for photorealistic render and accurate simulation.
PDrAW is an advanced video viewer for Parrot drones media. The viewer supportsstreamed (RTSP) and recorded (MP4) videos.PDrAW also handles the embedded video metadata. Those are publicly accessible and documented, allowing advanced processing of aerial videos. Use Python to control drones
Olympe is a Ground Control Station (GCS) python framework. It allows developers to interact with the simulation environment Sphinx. Olympe can also control physical drones from a remote computer, using the controller radio.
Sphinx runs on a linux box, needs to be pretty beefy but not much different from what Windows 11 requires
Not sure how to create our own environments yet but I could see how this would be useful for testing object detection
PLAY VIDEO
DEMO – all encompassing, same as DJI
Everything is up on a public repo which you can find at https://github.com/godfreynolan/GroundSdkKotlinTutorials
We tried to add a step by step readme to help you recreate the apps - SHOW
Didn’t get to everyone just yet
Step by step walkthrough in the tutorial
The demo is written in Java, does a whole lot of things – telemetry, video, pictures, head up display
Like the DJI demo it can be a bit daunting as your first intro
We cloned the original sample in the Parrot repo
And added a step by step walkthrough which you can find in the second link
WHY 3 LINKS?
The tutorial below demonstrates how to import the Parrot Ground SDK into a new Android project and implement basic video streaming and flight features (take off and land). Similar steps can be taken for integrating the SDK into an existing application.
The Hello Drone tutorial does a pretty good job of putting it all together too.
https://developer.parrot.com/docs/groundsdk-android-samples/
GO TO THE README AND SHOW THE CONTENTS
This tutorial is designed for you to gain a basic understanding of the Parrot Ground Sdk. It will implement the FPV view and two basic camera functionalities: Take Photo and Record video.
ActiveState: sample code to display the active state of a camera
CameraMode: sample code to display and change the camera mode (photo capture or video recording)
StartStop: sample code to manage a button to start/stop photo capture and video recording
WhiteBalanceTemperature: sample code to display and change custom white balance temperature
Ok, so in this example we’re recreating the DJI media manager using the Parrot SDK
In this tutorial, you will learn how to use several important groundsdk device peripherals, classes, and interfaces to interact with the media stored on the drone's SD card including MediaStore, StreamServer, MediaDownloader, MediaDeleter, MediaStoreWiper, StreamServer and MediaDestination. By the end of this tutorial, you will have an app that you can use to preview photos, play videos, download or delete files and so on.
In order for our app to manage photos and videos, the drone must first have media existing on its SD Card. Fortunately, by using Parrot's FreeFlight 6 app or the Camera groundsdk tutorial app, you can easily capture media on the drone.
In this code we’re getting an instance of the drone's MediaStore which we use to monitor the media content on the drone's SD card. Every time there is a change to the media contents of the SD card, the indexing state, number of photos, and number of videos on the SD card will be sent to sharedViewModel. The HomeFragment will observe these values and use them to update its UI.
On each MediaStore update, a list of the media items from the drone's SD card is obtained and saved to mediaItemList. We then use the fetchThumbnailOf() function to obtain the thumbnail image of each media item in the media list as a Bitmap and send it to thumbnailObserverRef. The thumbnailObserverRef will then send these images to sharedViewModel where HomeFragment will be able to observe the images and use them to update its recycler view UI.
In this example, you implement the automated mission feature.
We locate ourselves in the map, set a number of waypoints, set the altitude and then fly the drone.
PLAY THE VIDEO
mavlink
PDrAW (pronounced like the name Pedro) is a viewer for videos produced by Parrot drones (Anafi). It supports both streamed (RTP/RTSP) and recorded (MP4) videos.
PDrAW on the Anafi is an interface for creating a heads up display on the video or photos, it can be either real time or you can post process the video. This is interesting if you want to do any Augmented Reality type apps. For example painting the screen with information from a third party API such as a real estate API to pull related info to the GPS co-ordinates. This example is pulling telemetry data from the drone and painting the screen with it. Unfortunately the Anafi version is version is a low level OpenGL interface written in C++, the new Anafi Ai will allow you to do this using protobufs, so I’m hoping that’s a lot easier to work with.
Here is a graph of PDrAW’s video pipeline:
This activity allows the application to connect to a drone.
It displays the connection state, the video stream and reads the drone quaternion from frame metadataV3 received from the overlayer.
Quaternion is shown by x, y, z and w
Quaternion is shown by x, y, z and w
So this is just a very simple version of the Pedro example we had earlier.
displays the connection state and the thermal video stream
As well as showing how to use different thermal palettes.
Quaternion is shown by x, y, z and w
So this is just a very simple version of the Pedro example we had earlier.