HUD for FPV Situation Awareness - was Re: Re: MFD Autopilot

Started by skyscraper, July 10, 2014, 10:15:45 AM

Previous topic - Next topic

skyscraper

Quote from: Brucey on September 04, 2014, 04:51:25 PM
Cool, looking forward to being a guinea pig!

Would be my pleasure. Will prob take a while..I think Ive got the OSD  tech sorted.. now just got to figure out what to draw on display and how to hook several GCS together. Think I may need someone with networking experience to sort that!

Anyway since I hope it'll be a cool project some day, I decided to start a thread on OSD's section.

regards
Andy

iPeel

Shirley an I2C bus is the way to go with that Andy? You could try to do something with wireless but yet another transmission on 2.4G?

skyscraper

Quote from: iPeel on September 05, 2014, 09:35:45 AM
Shirley an I2C bus is the way to go with that Andy? You could try to do something with wireless but yet another transmission on 2.4G?

I'm currently thinking .. wired Ethernet. Its fast, good cable length, scaleable, got addressing protocol all set up and all the stuff (hub, wiring) is pretty cheap and plug and play.

Whats not to like  :)

regards
Andy


iPeel

Other than the fact you'd need a hub unless you're using old skool coaxial Ethernet with T pieces. You'll then need a layer 3 stack on top of that like SPX or MTP.

i2C already has node addressing built in and all runs on the same three wire bus. If you looked at what MyFlyDream uses you could make it compatible with that.

skyscraper

Quote from: iPeel on September 05, 2014, 10:43:55 AM
Other than the fact you'd need a hub unless you're using old skool coaxial Ethernet with T pieces. You'll then need a layer 3 stack on top of that like SPX or MTP.

i2C already has node addressing built in and all runs on the same three wire bus. If you looked at what MyFlyDream uses you could make it compatible with that.

I would love to make compat with MFD .. Have they helpfully provided info on the protocols they use? IOW are they interested in opening up their system. I havent asked but I would guess not! :laugh:

Not sure what the attraction of I2C is? I've used it and its fine for wiring up an eeprom to your mcu, but pants for much else IME.. Dont see a problem with Ethernet. hub's are cheap as chips

regards
Andy


CurryKitten

I don't want to disrupt you guys from your interesting cabling talk, but what about the OSD layout for seeing other people.  When first discussed I immediately thought of Elite (we're all old enough to remember elite yes) so as a very basic mock up, something along the lines of



So in the above example, I'm the circle in the middle, and the line is my home arrow, we can see iPeel above me to the left moving away, and Brucey also to the left below me travelling fast (length of arrow) and looks like he'll pass below me.  Andy, you're just hanging out close there, so maybe we'll crash. What did you have in mind to represent other people in the sky ?

iPeel

OK Mr. Fussypants.

Another option is to use wireless with cheap bluetooth adapters, class 2 and 3 devices are very low power and that would present itself as a serial protocol. MyFlyDream offer these so I guess that's what they recommend for linking multiple units. The manual only talks of linking two units though, I'm not sure now many they support but given the fact you can configure your name means support for more than one buddy.

There's talk of a MyFlyDream protocol but no documentation I can find on it, it could be MavLink of course because they talk about downloading Mission Planner. I'll know more once I start dabbling with mine.


iPeel

Glad to see you've learned to keep your distance Wayne!

This is what you apparently see on the HUD of the AAT Driver:




skyscraper

#23
Quote from: CurryKitten on September 05, 2014, 11:42:07 AM
I don't want to disrupt you guys from your interesting cabling talk, but what about the OSD layout for seeing other people.  When first discussed I immediately thought of Elite (we're all old enough to remember elite yes) so as a very basic mock up, something along the lines of



So in the above example, I'm the circle in the middle, and the line is my home arrow, we can see iPeel above me to the left moving away, and Brucey also to the left below me travelling fast (length of arrow) and looks like he'll pass below me.  Andy, you're just hanging out close there, so maybe we'll crash. What did you have in mind to represent other people in the sky ?

Looking pretty good Wayne! Looks quite intuitive, which is ideal. ( I hadnt given it too much thought but that looks like a good start)  Will have to get a bit more of the APIi done so you can draw some lines and circles. Then see how it translates to a more limited screen resolution.( Currently 288 x 320) though I can may be able to get up to EDIT 450 640 pixels to a line and 576 vertical (interlaced). I guess the display needs to be as basic as possible. Elite is a good benchmark. Just wish I had my old BBC micro 3D graphics programming book to hand!

Neil. Interesting..  It's certainly good to have the MFD one to compare with! Overall Wayne's is interesting as it gives an immediate visual rather than having to translate numbers in ya brain!

Looks like its going to be an intense project!  :)

regards
Andy

iPeel

Quote from: skyscraper on September 05, 2014, 12:52:44 PM
Neil. Interesting..  It's certainly good to have the MFD one to compare with! Overall Wayne's is interesting as it gives an immediate visual rather than having to translate numbers in ya brain!

For certain it's the best option if you are able to overlay the exact position of another plane in the right place on screen. I've seen glimpses of the DJI OSD overlaying the home location quite faithfully, but that's onboard where it has access to fast updates from the accelerometers to know what the attitude of the craft is, even then you need to know what the viewing angle of the onboard camera is and it's aspect ratio.

If you can work out the maths to do that and get regular updates from the accelerometer as well as the Lat/Long down to the ground station then that would be one hell of a feature!

Another, easier to implement possibility would be to project a 360 degree view in the bottom corner with you in the middle and icons positioned around you to identify the location of each of the other pilots, you could change the icon to identify their height in relation to you?

skyscraper

Quote from: iPeel on September 05, 2014, 01:37:12 PM
Quote from: skyscraper on September 05, 2014, 12:52:44 PM
Neil. Interesting..  It's certainly good to have the MFD one to compare with! Overall Wayne's is interesting as it gives an immediate visual rather than having to translate numbers in ya brain!

For certain it's the best option if you are able to overlay the exact position of another plane in the right place on screen. I've seen glimpses of the DJI OSD overlaying the home location quite faithfully, but that's onboard where it has access to fast updates from the accelerometers to know what the attitude of the craft is, even then you need to know what the viewing angle of the onboard camera is and it's aspect ratio.

If you can work out the maths to do that and get regular updates from the accelerometer as well as the Lat/Long down to the ground station then that would be one hell of a feature!

Another, easier to implement possibility would be to project a 360 degree view in the bottom corner with you in the middle and icons positioned around you to identify the location of each of the other pilots, you could change the icon to identify their height in relation to you?

Well, the maths is done and doable( though not by me, but I should be able to incorporate an existing AHRS calc), even by the 16 Mhz 8 bit Atmega, as shown by the APM. 

getting data to gcs fast is the biggetst hurdle and even there one could compensate for lag in the calcs

Anyway the basics devices are sorted, now just a question of putting them together.  I am pretty sure with stm32f4 that computing power isnt an issue, but if it is...

http://blogs.nvidia.com/blog/2014/05/01/power-to-people/  :laugh:

regards
Andy

skyscraper

Have been doing a bit of thinking about this and I am now pretty convinced that giving GCS/tracker an Ethernet port is the way to go. Even if its not useful for this project, it would be useful to be able to connect to a network. wired or wireless... http://en.wikipedia.org/wiki/Internet_of_Things
The ever helpful stm32f4 has the hardware for an Ethernet connection on board, just need an external PHY ic , which apparently isnt that pricey... http://andybrown.me.uk/wk/2012/09/01/ethernet-phy-stm32f107/.

The great thing about Ethernet is its so ubiquitous everything is dirt cheap!

and then there is software, but there seems to be quite a few embedded libs around for that...
http://en.wikipedia.org/wiki/UIP_%28micro_IP%29

And finally, it would be good for me to get more up to speed on network related stuff anyway!

regards
Andy

skyscraper

Just had an interesting thought on this.

The rssi style tracker can be used for tracking your plane pretty accurately using antennas. Also you can get the Boscam 32 ch tx which can detect signal on many channel. Scan a tracker around and it can find direction to all signal on all channels.

Get two trackers some distance apart, triangulate the results and you have the location of the signals on each frequency you are scanning.

Another thought. Use a 459 Mhz transceiver ( e.g OpenLRS system) in the plane, purely for sending and receiving info about the positions of it and other planes direct one to another. OpenLRS is good since its a transceiver. Only tricky issue is designing a protocol that deals with collisions , or maybe a master on the ground ( or in the air) that requests transmission by a particular aircraft next, which can be read by all the others in the area..

regards
Andy