Background
FliteTest was recently in the Bay Area and had a siiiick meetup. I'd never been to a flying event before -- it was awesome. Met lots of cool folks who taught me how to fly safely with other people, thanks Nathan2 from Oakland!
Inspired by FliteTest, these are my DIY 3D "Go FPV" goggles. They have much higher resolution, depending on your phone, than Fatsharks and are waaaay cheaper as well. What is the resolution of these goggles you ask? Using my Nexus 5, which runs at 445 PPI 1080p IPS, that's 1920x1080 pixels. The screen is split between both eyes, so each eye gets 960x1080. Plus, if you have 2 cameras, they're capable of realtime 3D video. Awesome!
Parts
The physical goggles are just Google Cardboard with a Boscam RC805 Video Receiver (I use this Boscam TS351 transmitter) velcroed on and hooked up to an analog to digital converter (ADC) that speaks the UVC protocol. You'll need a USB OTG cable to hook up the ADC to your phone. This cable and the other cables big and bulky, so I soldered on my own shorter, lighter cables, including a custom made OTG cable. I also soldered in a JST connector, so I could plug a lipo straight into the Reciever, which can take up to ~16v safely.
Components
My goggles don't look like cardboard, even though they are, because I made them out of a box that had printing on it. I think it was a box for a kitchen item. It had a nice plastic feel, which I hope will keep some of the moisture away from the cardboard.
Goggles
Instead of using cardboard, I suggest you pay around $20 for a nice pair of pre-built goggles like the VR Box or BlitzWolf BW-VR3.
I'm a big fan of the slightly larger, slightly more comfortable Blitzwolf goggles. They have a nice leather-esque pad around the eyes. The phone flips down instead of slides out of the side. This makes it a little easier to change settings on your phone and it makes connecting the USB cable a bit easier:
Here are the VR Box goggles, which are a little bit smaller and lighter, but a little lower quality:
Performance
The UVC encoder makes the video receiver look like a USB web cam to a computer or phone. Doing some testing I found that my 8 core MacBook Pro actually had more lag time than my Android Phone. Speaking of lag time, I got lots of comments that it was probably laggy. There is a feature in the app that can record the received signal. When this is running there is about 0.5sec lag time... too much to fly comfortably. However, with recording turned off (you could run a second setup that records, with another phone) there is no noticable lag. Pretty awesome.
Here's some raw video, the bigger video is from the recording on the Xiaomi Yi Go Pro Clone and the smaller video with the OSD overlay is recorded from my goggles:
Phone and Power Considerations
I've verified this works with a Nexus 5 or a Nexus 7 and it should work with most devices on Android Version 4.4 or greater. If you don't know if your phone has a UVC driver, you could download the Go FPV app (see below for directions, you'll have to join the beta test group as well), build or buy an OTG cable and try plugging in a USB webcam. Most USB webcams speak UVC, so it should work. If that doesn't work try it with the UVC Capture Card and see if that works.
The only requirement is that your phone has a UVC driver. Most phones with Android 4.4 and higher should include this driver. Try Googling for your phone first, then to test if it is going to work, install the app and plug in a USB webcam or other UVC device via an USB OTG cable. If the app starts up (it should ask you for permission when the device is plugged in), you're good to go!
Before you take off, you'll want to make sure your phone has a full battery and you've disabled notifications, just incase you get a call during flight. You could even turn on airplane mode (how appropriately named), just to be safe.
As for power, the phone has to power the ADC, and this drains my battery pretty fast. I plan to re-wiring my OTG cable at some point to power the ADC via the lipo, hopefully giving me a bit more time on my phone battery, which I don't think can be charged via the OTG cable. Let me know if you know of a way to make this work.
Here's the standard OTG cable schematic, notice sense it grounded. That's all that makes an OTG cable different than the free-floating sense pin on a non-otg cable
And here is a hand drawn schematic of a powered OTG cable (or hub)
Build Your Own
You'll need:
To click Become A Tester on this page
Install My Go FPV App from the Google Play store (It's free!)
Google Cardboard. Download the free plans here
A video receiver for your favorite frequency such as a Boscam RC805 Video Receiver
- Get a transmitter too, like this Ts5828 600mw Video Transmitter
-
- note: an EASYCAP will NOT work, since it (probably) doesn't speak UVC. I've tried one and at least mine did not work.
An Android phone with a UVC driver like the Nexus 5 or Nexus 7
Let me know how it goes! Post below or shoot me an email.
You'll notice I've wired together all the components, but this isn't strictly necessary. Simply plug in the UVC capture stick via the OTG cable and then plug the video out from your video reciever into the capture stick. Plug a battery into your reciever and you're good to go!
Without the phone, total cost is about $25.
Happy Flying!