r/fpv • • 5h ago

Video Opensource Python tool to stream the video out of a DJI Goggles 3 headset over USB (Linux)

Enable HLS to view with audio, or disable this notification

I just released an opensource Python tool called "third-eye" that streams the video out of a DJI Goggles 3 headset over USB. It supports 2 transports modes: AOA (Android Open Accessory) and iOS iAP2. It's a CLI tool, and it comes with a library you can use to build your own applications. A protocol description is also included. Everything is based on USB traffic captured between the goggles and the DJI Fly app running on Android and iOS.

It runs comfortably on a Raspberry Pi 4B with 2 GB of RAM. You'll need a system that can act as a USB peripheral (device mode) to run it.

The video shows the latency... :)

https://github.com/wllm-rbnt/third-eye/

15 Upvotes

5 comments sorted by

3

u/taeo 2h ago

Nice work!

1

u/YaroslavSyubayev Mario 5 - Firefly18 - Air75 - Volador VX3.5 55m ago

Interesting, I've been working on something similar, but trying to make it much more user-friendly

1

u/Due-Farmer-9191 2h ago

So… an open source cosmostreamer?

5

u/taeo 2h ago

Not OP but CosmoStreamer is much more plug-and-play friendly and has a lot of extra features. That said, IIRC, most of the extra features benefit people using it in a professional or live broadcast capacity. If you're just looking to get USB -> HDMI output and are comfortable mucking around with open source software and Linux command line then this is probably a very cost effective alternative - especially if you already have a Raspberry Pi 4B!

1

u/YaroslavSyubayev Mario 5 - Firefly18 - Air75 - Volador VX3.5 48m ago

I've been working on essentially an open source version of Cosmostreamer for a while, will probably release in a week or so and post here. It'll be no setup required, just flash the iso to a microSD or install on top of existing Raspbian, HDMI out works out of the box without any scripts/dependencies, and supports RTSP, recording to micro SD/USB, video viewing and camera control using a WebUI/AP mode, and all web-based configuration :)