Running PDrAW in a VM


I have a Windows 10 computer, and PDrAW is only supported on Linux Ubuntu 18.04 as well as macOS 10.14.4 Mojave. To get around this, I installed VirtualBox, and got an instance of Ubuntu 18.04 running on it as a virtual machine (VM). This has Python 2.7 installed on it. My questions here are: does it matter that I’m running this on a VM instead of having a real Linux system? Does Python 2.7 work fine, or should I have the most recent version of Python (3.8)?

From there, I followed the installation guide in the documentation for PDrAW, installing the necessary packages, cloning the GroundSDK workspace, and building PDrAW in order to run it. There were no issues during installation other than a couple warnings. The first was that they recommend I update the version of Python in the VM from 2.7 to the most recent version. The other was that the repo was on version 2.8 and that I should try to update, but no instructions for that were given. I’m not sure how much that matters. Other than those warnings, installation seemed to complete just fine.

After I turned on the drone and connected it to the Sky Controller 3, I followed the user guide on running PDrAW and tried various approaches to get a video playing on my computer. I tried hooking my phone up to the controller and trying to get live streams / recorded videos from the drone onto the computer. I also tried to do this without having my phone connected to the controller. I tried doing this while my computer was connected to my home internet through WiFi as well as to the Anafi drone through WiFi.

None of these worked. The program kept tossing an error that stated “E pdraw_desktop: SDL_GL_SetSwapInterval() failed: -1(That operation is not supported)”. That can be seen in this screenshot: Pasteboard - Uploaded Image. Here, I tried to get a live stream of the camera feed while the drone was connected to the Sky Controller 3. How can I resolve this issue and get the drone connected to my computer so that I can extract the videos, images, and metadata from the drone?

At this point, I’m not sure how I can get this video streaming thing running. My best guess is that the problem lies with the VM, but I’m not sure how I can solve this at the moment.

Disconnect your phone from the Skycontroller3 because you can’t connect two devices simultaneously.
Connect your Skycontroller3 to the PC using its USB Type C port.
Is your VM forwarding the USB devices? Please share a screenshot of your ethernet settings.

1 Like

Thanks for the feedback. At this point in time, I have already found a solution by working through the GroundSDK and using my phone instead, but I’m sure this feedback will help anyone else looking to run PDrAW on a machine that is not natively Linux.

1 Like