Thread Tools
Feb 01, 2010, 12:05 AM
Registered User
FalconFour's Avatar
Thread OP
Idea

Digital FPV link, considering designing video/telem/OSD system, need input


edit: Since we like our long threads here, changed the title to better reflect the direction of the thread.

Hey all... first post here, been lurking a bit after seeing JettPilot's friggin' awesome F-16 model and bike... I mean, wow. Effing amazing, all around. With that said...

I'm a major computer geek, you give me any task to do, and I can probably do it with a computer. In the RC aircraft world, I see a lot of sweet flight videos, but they all suffer from one common flaw: analog video connections. Grainy, staticy video that almost always cuts out at least once in every video. Clearly it's not using a digital signal.

Now, my friend and I got thinking about how to use his sweet new slim HD camcorder on the plane for live video, instead of "fly it around for a bit, land, then watch the beautiful HD scene on a PC". I got running a few ideas, like HDMI out from camcorder -> HDMI capture card on PicoITX embedded PC -> WiFi to access point on the ground -> view on laptop in realtime. Didn't quite pan out because there doesn't seem to be any HDMI USB capture adapters available. But we thought... isn't there a solution for this already? Surely someone has to have made a digital connection already, right?

I mean, in a digital signal, metadata can be added to a video stream. That means the OSD can be generated at the client-end, and only raw data needs to be gathered by an onboard data device and sent with the video. That saves power and would even allow you to see an OSD if the plane goes out of range. Lots of advantages to a digital signal here.

That said, does this actually exist? If not... would there be a huge demand for me to geek up and start working on designing such an interface?
Last edited by FalconFour; Feb 01, 2010 at 01:42 AM. Reason: Changed category, thread title, to something more appropriate
Sign up now
to remove ads between posts
Feb 01, 2010, 12:09 AM
my karma ranover my dogma
galaxiex's Avatar
Only if there can be essentially ZERO latency.

It's hard to pilot FPV with ANY delay in the video signal.
Things happen too fast while flying.

It's gonna be hard to beat the immediacy of an analog signal.....
Feb 01, 2010, 12:14 AM
Registered User
FalconFour's Avatar
Thread OP
That may be a challenge, for sure. But with the miracles of UDP transmission it should be possible to get a 1- or 2-frame (1/30 or 1/15 sec) delay. Clearly the encoder would need a moment to process the full frame before transmitting

I'd been doing a little searching here after posting (backwards, I know...) and I'd found a few HD video "solutions" with digital connections, but we're talking pro video systems in the $10k+ range. It almost seems like, indeed, there is no digital video solution as of yet. Maybe... just maybe... it's time to take things into the new decade in style?

edit: Other advantages... let's see here. Error detection & correction would mean a clearer signal for longer range, with no more static (maybe just glitchy/dropped frames at the edge of the range) or "blue screen", also no fiddling with RF settings to get a good picture... Resolution independent, so an HD signal can finally be used on both ends, or just a regular SDTV signal...
Last edited by FalconFour; Feb 01, 2010 at 12:22 AM.
Feb 01, 2010, 12:19 AM
my karma ranover my dogma
galaxiex's Avatar
If you can do it at a reasonable price... I will be all over it like flies on a turd....
Feb 01, 2010, 12:27 AM
Registered User
FalconFour's Avatar
Thread OP
Hardware wise, I think it would be relatively inexpensive compared to other "HD digital" systems. Since I'm a hardcore PC guy, not a hardcore electronics guy, it'd primarily consist of off-the-shelf PC parts - I'm looking at a PicoITX platform. Those seem to go online for about $230 for the hardware base, CPU included. The rest of the hardware, though, still would need to be figured out.

$230 is a steep starting price tag in my eyes already, though. I don't have a heck of a lot of experience with RC planes, let alone pricing (I still don't have my own plane), so I don't know... for such a system, is that entering "ouch..." territory, considering maybe ~$100 extra in needed peripherals to complete it?

edit: May be able to shave off about $90 from the board by going NanoITX if size isn't that big an issue...

edit edit: Well, this is a find... here's an even smaller system, with lower power consumption, with more of the necessary hardware included, for $270... I might go with a FitPC platform if that price is anywhere approaching "sane" (think maybe $50 extra in other components)...

edit edit edit: Yeah, definitely looking at the Fit-PC2i platform as the base of this project. Add a USB video capture device, and a buttload of custom software... we'll have a PC flying in an RC plane in no time. Also - can you say... flying Arduino?
Last edited by FalconFour; Feb 01, 2010 at 12:52 AM.
Feb 01, 2010, 12:52 AM
Distributed Manufacturing
Quixksilver's Avatar
Hello Falcon, I will be your test dummy for the HD video system.
Feb 01, 2010, 12:56 AM
Registered User
FalconFour's Avatar
Thread OP
Yeah, you would be. Also the only guy I know with an RC plane. Or two. Well, one, since you busted your jet
Feb 01, 2010, 01:39 AM
Registered User
FalconFour's Avatar
Thread OP
Okay, so here's what we've got so far. Info I've got, ideas to implement into this all-inclusive kickass design, and info I'd need to figure out for this to come to life. We're looking at about a ~6+ month timeframe for this thing to even get out of prototyping, if at all... I've got very little free time until I get out of school (I've got a 10am-10pm M-Th schedule). And a (very) rough price tag of about $400 for the computer, link, telemetry, software... pretty much everything plane-side. "Very" rough because quite frankly, I just don't know how existing FPV systems operate, so I may need to incorporate other parts into the design, and shift hardware roles around a bit.

Right now the system is based around three main components. First, the Fit-PC2i system, running at 12v/8 watts, which handles the heavy lifting of video capture, encoding, and transmission via, possibly, an Ad-Hoc Wifi link, depending on range and a few other factors. It'd also handle a few other functions like integrating the telemetry data stream, and who-knows-what-else. The second component, of course, would be the video capture USB adapter, preferably one with a hardware MPEG2 encoder to keep the load off the FitPC's Atom CPU. The third, and possibly most interesting component, would be an Arduino board, that gathers telemetry info from various sensors (possibly third party as well?), receives data from the plane's receiver for controlling the system, and PTZ for the camera setup.

Now, here's where I need more info from people skilled in this area. Particularly in the way these FPV systems are integrated and sold, so I can actually make a usable "product"! First of all, well... how are these systems typically bundled? Do they include a camera? Any sort of special controller add-on, or do they typically use additional outputs from the plane's receiver? Would you be comfortable having no receiving-end hardware (or, perhaps, making it optional), and using a laptop PC (or similar setup) with some software for the receiving end of the video signal? If there was a receiver available, first and foremost, what would you expect to pay for it (in addition to the rough $400)? What outputs are most useful?

Yeah, very much so a "ground up" sort of design here. I've got no pre-existing system bias, no "the way it's always been done" sort of thing going on... but at the same time, I also don't have mistakes to learn from. I hope to make something, in the end, that can go a long way towards resolving issues in existing FPV technologies, and design a whole new system that brings people all that much closer to actually being there with the plane.

Now, if only we could design a decent set of FPV goggles... *curses*
Feb 01, 2010, 02:08 AM
Mums the word.
man2000me's Avatar
How much is everything on the plane side going to weight?
Feb 01, 2010, 02:16 AM
Registered User
FalconFour's Avatar
Thread OP
Hmm, good question. Right now, the FitPC is 370 grams / 13 ounces "with a hard disk", which I won't be using. So it'll be more like 8oz, I'm thinking... hard drives are a good amount of weight that can be happily removed (it'll all be Flash based, so it can take a crash and live to view another day). The Ard board is probably less than half an ounce. Depending on how the camera input goes, the camera input may be a USB adapter of about 1-2oz, or a PTZ USB camera of, very roughly (guessing from photo & experience, no specs given) 8oz. So around a pound, maybe, including camera. Rough guess.

edit: Ard board I'm looking at is "Less than 2 grams", hardly even worth considering for weight

edit edit: Whoa, blow those numbers away. Okay, toss the camera out. I was looking at a general-purpose PTZ USB webcam sort of thing, not something designed for, you know, R/C use. So let's re-run the numbers, taking into account a choice of camera.

FitPC: About 230 grams.
Ard board: 2 grams.
USB capture adapter: About 30 grams.

So we're looking at about 262 grams for the basic hardware. Man, I've learned a heck of a lot about R/C planes and FPV stuff today... had no idea such tiny amounts of weight were so important!
Last edited by FalconFour; Feb 01, 2010 at 02:41 AM.
Feb 01, 2010, 02:42 AM
Registered User
Daemon's Avatar
I think you're putting the cart way in front of the horse here talking about
product packaging, and are still making some unsupportable assumptions about
the capabilities of the underlying technology. There's a reason nobody else is
doing anything like this. It's not that nobody wants it. The broadcast industry would
kill to stream wireless HD inexpensively.

This concept is attractive, and I would certainly buy it at your pricepoint (or significantly
higher) but I just do not believe that you're going to be able to keep the
latency down to a usable level for video piloting, whether you use dedicated hardware,
a mini-PC or combination of both. Especially if you start dreaming about HD video.
Uncompressed 720p HD uses 2.6x the bandwidth of one analog SD (480p) channel
and 1080p uses 7x the bandwidth. We don't *have* that much wireless bandwidth
anywhere.

Going digital by itself doesn't solve *anything*. Especially if using UDP which is
by definition an unreliable IP protocol. You only use UDP when it's ok to lose some
streaming packets. If you lose streaming video packets you get either visible noise,
or stuttering or freezing. The only way to improve a realtime video stream digitally is
to add compression and then either use a reliable link (TCP) which requires two way link
adding latency, or to use redundancy, where you send every packet multiple
times per video frame and reassemble it on the receiving side with whatever packets
got through (and still doesn't guarantee that you won't lose some).
But both approaches require compression and that requires a lot of CPU power
and adds latency.

So how much CPU power?
My few years old Pendium D (DualCore) 3.0Ghz box has a PassMark benchmark
score of 800 and it is just *barely* capable of compressing a SD (640x480) video
stream into DiVX or XviD at 1x or realtime speeds.
The Intel Atom Z530 used in the Fit PC2i has a PassMark score of 296.
You do the math on that one.
What about HD?
I've got a brand new Intel Core i7 (Quad core hyperthreaded) running at 3.0Ghz
and the 2.66Ghz version has a PassMark score of 5594. This machine can
render minimally compressed 720p HD video at 45fps. (1.5x realtime).
My old box renders 720p at about 3fps.
1080p, cannot be compressed realtime.
Basically, the only way to do anything approaching true realtime compression
of HD is with pure dedicated compression hardware.

If you're going to try to explore this concept then start with what you
*have* (I assume you have a PC that's faster than the PC2i) and see if you're even
in the same general universe as your vision of what you're trying to do. Can you
capture the video realtime? Can you digitize/compress and stream it over a wireless
link in realtime? Can you decompress and convert to analog signal on the other side,
also in realtime?

Then there's the wireless link. We don't use Wifi because it doesn't have the range.
Long range wifi is usually done with two static emplacements with high gain
antennas pointed at each other. We can't do that either.

ian
Feb 01, 2010, 02:58 AM
Registered User
FalconFour's Avatar
Thread OP
Well, that's exactly why I'm looking for input and such. I may be appearing to put the cart way in front of the horse here, but I want to get a good, viable picture of the entire project before I start breaking it down into individual tasks. What's needed, what can be done, stuff like that. So of course, with very little R/C airplane experience, I need to ask some seemingly basic (or, perhaps, way ahead-of-time) questions, like what would generally be included with a system at a certain price point, so I know what components I can work with, stuff like that.

As for implementation, that's all software. I've done things with software on stripped-down hardware that borders on Farbrausch or Elevated class crunching. Now, I'm not much of a desktop programmer, but I'm pretty slick with a script. It just takes a good encoder, at the best possible bitrate over the chosen link type (whatever it ends up being), cutting corners on encoding complexity, to get a good, reliable video. But it may take a whole lot more than I anticipated to make it work properly, with a range longer than a kite. It'll take a lot of work but it's something that really should have been accomplished long ago. Because quite honestly, it's downright insulting that we're using analog connections in 2010. The bandwidth used to transmit the analog video signal could be used, in the same frequency band, at the same bandwidth, to send a crystal-clear HD video signal with as much telemetry data as you can think of. It just takes some software, and a little bit of different thinking. And a hell of a lot of "figuring out how the heck to make it work".

Heck, the whole thing might end up being boiled down to sending a digital signal over the current analog video methods. But that's stuff that gets worked out down the road. Once the project is actually planned out, we can start figuring out these issues and resolving them. But nothing is impossible.

edit: Okay, I couldn't let that one go. No way I'm going to use TCP for this, if we even use a networking protocol at all (which it's starting to look like, not). TCP would cause huge hangs/delays as it waits for a missed packet to time out and be resent. UDP would be much better since the receiving end is more than capable of compensating for lost/corrupt data. I figure you should know this, being the all-knowing naysayer
Last edited by FalconFour; Feb 01, 2010 at 03:07 AM.
Feb 01, 2010, 03:14 AM
Distributed Manufacturing
Quixksilver's Avatar
Quote:
Originally Posted by FalconFour
But nothing is impossible.
And that's why I love the way you think.
Feb 01, 2010, 03:29 AM
I think my wheels fell off.
Thumb_number's Avatar
Not bashing your idea FalconFour, Its guy's like you and the others on here that push this hobbies further, but there are some aspects to analogue that I personally don't want to lose. You mentioned earlier that at the limit of range you would get some pixel breakup or blue screen. Limit of range when you talk digital as I'm sure your aware, is 'digital cliff', all or nothing. With analogue you can get a really good idea when your 'out' before you lose everything.

Don't get me wrong, a HD picture off the plane is great, I love looking at those videos. But producing really cool HD aerial videos is not really in the same boat as FPV. I'd be much more inclined to strap a 100gr 1080p DV recorder with 10Gb of on-board flash drive you made for me, onto the plane for the great pic's, but still fly it around using a well set-up (crappy static filled) analogue downlink.

Just my opinion, you'd sell more 100gr 1080p 10Gb 5v on-board cameras than you would digital downlinks with their own set of limitations.

Good luck whatever you do!

Regards.
Feb 01, 2010, 03:42 AM
Registered User
FalconFour's Avatar
Thread OP
Thanks! Those are some limitations I'm hoping to work around. For example, when we went from analog to digital TV, people were missing that very same thing... image quality to determine signal strength. So they added a signal strength meter. If/when this finally does take off (what pun?), that's the kind of input I'm looking for, to add necessary features to the todo list. Right now I'm already looking at using a different data link method than originally planned (Wifi looks terrible even on paper...), so in whatever method we choose, it'll likely be based on existing analog video specifications.

Also, it's the "blue screen" issue that I'm hoping to resolve. With analog connections, the sync signals are generated by the camera, then sent over an analog RF connection to the receiver. So when the TV gets a bad signal with a moving transmitter (the plane), the TV responds like it's a bad channel, because it loses that sync signal - which, because it's not digital, the receiver can't compensate for, without expensive hardware. With a digital connection, it's designed specifically for a moving transmitter, so there would be no more blue screen, because, well, the receiver knows how to handle cut-outs more gracefully


Quick Reply
Message:

Thread Tools

Similar Threads
Category Thread Thread Starter Forum Replies Last Post
Question Does a kit exist like the eflite ascent? going4speed Parkflyers 12 Oct 27, 2009 12:07 PM
Question Does a Budget FPV Setup Exist? Rocketman1092 FPV Talk 13 Dec 13, 2008 07:10 PM
Question Battery holder for blade cp, does one exist?. Need alternative options slip_stream Micro Helis 7 May 17, 2006 07:56 AM
Mario could not find this link, does it exist? JohnnyB Micro Helis 10 Apr 24, 2004 04:51 AM
LiPo condo - Does one exist? MikeStammer Electric Heli Talk 2 Jul 14, 2003 11:36 AM