Getting Anafi USA live video and telemetry without rewriting FreeFlight 6

I’m using Anafi USA with Skycontroller 3 and would like to stream the drone video feed and telemetry to a device running a heavily locked down version of Windows. This should happen live as the drone is being flown by a pilot. I would prefer not having to write a FreeFlight 6 replacement to accomplish this, but would like to instead leave the operating of the drone to FreeFlight 6 and simply get the data I want. I understand that the telemetry is embedded in the RTSP stream. Reading the forums I have tried the following solutions:

  1. Connect the Skycontroller 3 with a USB cable to the Windows device and listen to the RTSP stream. This works in normal Windows, but you need to install a driver, which is not possible in this case.
  2. Connect over wifi to the Anafi USA itself and listen to its RTSP(?) stream. According to forum posts the drone only allows one client so this would be fighting with FreeFlight 6 for access to the stream.
  3. Create a simple Android app that runs as a service in the background and reads the telemetry and video from the GroundSDK. It appears that when FreeFlight 6 is launched the background app stops receiving updates from the SDK.
  4. Create a simple Android app that runs alongside FreeFlight 6 and listens locally to the RTSP stream that Skycontroller 3 pushes via USB. This could then be forwarded over wifi to the Windows device. I tried listening to localhost on the Android device with an RTSP player off of Play Store to test this, without success.

Are there any other options for getting the video feed and telemetry while the drone is being piloted with FreeFlight 6? Or maybe one of the above options can be made to work?


  1. Indeed a driver is required in that case, and this would not work to use a phone with FF6 at the same time.
  2. You are right, only one stream client at a time is allowed on the drone, which is not the case on the SkyController where a streaming proxy runs; the proxy is client to the drone but can be server to multiple clients, meaning the stream can be forwarded to both FF6 and other clients.
  3. There can only be one app/service at a time using the SkyController as a USB accessory, so this is not the way to go.
  4. This would not work either as the USB link with the SkyController is not a network interface.

There is a solution if you are using FF6 on Android: you can use a USB hub + USB-Ethernet adapter (example) on the SkyController and connect to both an Android phone running FF6 and a network. For example if you connect directly to a Windows PC through Ethernet, the SkyController has a DHCP server and the streaming proxy can be accessed with rtsp://

If you are using FF6 on iOS, there is no such solution as iOS phone switch the USB role to host.

This topic was automatically closed after 30 days. New replies are no longer allowed.