HobbyKing.com New Products Flash Sale
Reply
Thread Tools
Old Sep 28, 2011, 12:53 PM
Just another user
Dennis Frie's Avatar
Denmark, Capital Region of Denmark, Naerum
Joined Feb 2011
1,081 Posts
Quote:
Originally Posted by thnilsen View Post
My order has been sitting in the Oslo letter sorting facility since yesterday. Hopefully it will find its way due west to Bergen by Saturday for me to test over the weekend.

I hate the Norwegian state postal service sometimes - its always so slow when one is waiting for that exciting package

Thomas
Sounds good
And yes, waiting is always a bitch :P
Unfortunately my recorder is broken, but hopefully I will receive a new one soon and be able to show a few clips of the software in action.
Dennis Frie is online now Find More Posts by Dennis Frie
Last edited by Dennis Frie; Sep 28, 2011 at 04:26 PM.
Reply With Quote
Sign up now
to remove ads between posts
Old Sep 28, 2011, 08:53 PM
Registered User
Australia
Joined Mar 2010
156 Posts
Quote:
Originally Posted by rimshotcopter View Post
I am also working on integrating I2C communications, maybe we can collaborate.
So it looks like I'm not the only one. I want to connect to this.
Are you looking to use the wire arduino library?
android78 is offline Find More Posts by android78
Reply With Quote
Old Sep 29, 2011, 06:46 AM
Registered User
Sleurhutje's Avatar
Netherlands
Joined Sep 2008
144 Posts
Quote:
Originally Posted by rimshotcopter View Post
I am also working on integrating I2C communications, maybe we can collaborate.
I found a good website as a starting point. I've noticed that my graphical LCD also uses a ATmega 168 piggy-back to interface from IC to the LCD parallel port.
Sleurhutje is offline Find More Posts by Sleurhutje
Reply With Quote
Old Sep 29, 2011, 07:01 AM
Registered User
Australia
Joined Mar 2010
156 Posts
Quote:
Originally Posted by Sleurhutje View Post
I found a good website as a starting point. I've noticed that my graphical LCD also uses a ATmega 168 piggy-back to interface from IC to the LCD parallel port.
So you're looking at interfacing to I2C display, not sensors? I'm looking at the I2c Sensors. It looks like the board I'm looking at already has THIS THREAD and they have arduino code in that. This can probably be adapted for any other I2C sensor though. Looks like multiwii is a good place to start.
android78 is offline Find More Posts by android78
Reply With Quote
Old Sep 29, 2011, 07:33 AM
Just another user
Dennis Frie's Avatar
Denmark, Capital Region of Denmark, Naerum
Joined Feb 2011
1,081 Posts
I just checked the datasheet, the analog comparator interrupt priority is higher than twi, so you should be able to use interrupt-driven I2C communication without "disturbing" the OSD-text. Just be aware that 1 videoline - so if you have to to read every bit it might limit the I2C speed a bit.
Dennis Frie is online now Find More Posts by Dennis Frie
Last edited by Dennis Frie; Sep 29, 2011 at 07:50 AM.
Reply With Quote
Old Sep 29, 2011, 07:46 AM
Registered User
Sleurhutje's Avatar
Netherlands
Joined Sep 2008
144 Posts
Quote:
Originally Posted by android78 View Post
So you're looking at interfacing to I2C display, not sensors? I'm looking at the I2c Sensors. It looks like the board I'm looking at already has THIS THREAD and they have arduino code in that. This can probably be adapted for any other I2C sensor though. Looks like multiwii is a good place to start.
It doesn't matter if you're interfacing multiple Arduino's with eachother of just add sensors. As long as you have only one master controller (there is a way to support multiple bus masters but there's no reason to do so). IC allows you to add any compatible device to the bus.

In fact, timing for the OSD is pretty critical. So why not interconnect multiple Arduino's for different tasks? E.g. create a IC GPS (they are available but can also be build using a Arduino) and perhaps add some more sensors like the 6DoF or 9DoF from Sparkfun and use a seperate Arduino for AUV/RTH. It also eliminates a single point of failure (point of discussion, it also adds a point of failure).
Sleurhutje is offline Find More Posts by Sleurhutje
Reply With Quote
Old Sep 29, 2011, 03:00 PM
Hamburger
hamburger's Avatar
Joined Jan 2010
869 Posts
Quote:
Originally Posted by Dennis Frie View Post
It should be pretty easy to send the necessary info over serial and just change the serial-reading on the DIY OSD to accept a single string containing all the necessary info from flyduino or whatever
I had put almost exactlz that on my wishlist for future DIY OSD feature set but did not receive any feedback at that time.
Cool to see it happen now (or sometime soon at least). I expect that to become very popular with the multicopter crowd (they tend to attach all kinds of sensors to the existing flight controller and need visual feedback together with their fpv only).
Thanks, Hamburger
hamburger is offline Find More Posts by hamburger
Reply With Quote
Old Sep 29, 2011, 03:14 PM
Registered User
rimshotcopter's Avatar
United States, CA, Los Angeles
Joined Aug 2009
11,707 Posts
Version 2

Ok, Here is a small window update on my progress at hacking Dennis' fantastic work here. I hope I don't make a mess of things.

1. I added Ultrasonic and it works however it is very primitive at the present. Not fully understanding how the characters are written to the screen, I hacked the MAH for testing.

2. I added an I2C port and test compiled I2C code from Alex's MultiWiiCopter. (Not fully implemented) I strongly believe his code is a better option for talking to devices as the master but will require some modification to function as a slave.

Here is a little video of the captured screen with the functional ultrasonic.

ODS - Ultrasonic Hack (0 min 33 sec)


Edited: Here is the isolated I2C code from Alex's MultiWiiCopter. If used, we need to add a references crediting him in the code.
rimshotcopter is offline Find More Posts by rimshotcopter
Last edited by rimshotcopter; Sep 29, 2011 at 03:31 PM.
Reply With Quote
Old Sep 29, 2011, 03:55 PM
Just another user
Dennis Frie's Avatar
Denmark, Capital Region of Denmark, Naerum
Joined Feb 2011
1,081 Posts
Quote:
Originally Posted by hamburger View Post
I had put almost exactlz that on my wishlist for future DIY OSD feature set but did not receive any feedback at that time.
Cool to see it happen now (or sometime soon at least). I expect that to become very popular with the multicopter crowd (they tend to attach all kinds of sensors to the existing flight controller and need visual feedback together with their fpv only).
Thanks, Hamburger
I don't plan to add support for this, at least not right now, as I don't have the necessary hardware etc. But as said, it should be pretty straight forward if you use serial communication - and I don't mind to help out.

If no major bugs is found in code version 0.14 I will consider to make it all configurable with a servo-channel instead. I guess that's next up - unless anyone have some great ideas
Dennis Frie is online now Find More Posts by Dennis Frie
Reply With Quote
Old Sep 29, 2011, 04:09 PM
Registered User
Joined Sep 2010
2,427 Posts
Quote:
Originally Posted by hamburger View Post
I had put almost exactlz that on my wishlist for future DIY OSD feature set but did not receive any feedback at that time.
Cool to see it happen now (or sometime soon at least). I expect that to become very popular with the multicopter crowd (they tend to attach all kinds of sensors to the existing flight controller and need visual feedback together with their fpv only).
Thanks, Hamburger
I was also pointing it out that it would be interested for someone with code knowledge to do it....While you are at it, can you make it also for fixed wing - like using this code: http://www.multiwii.com/forum/viewtopic.php?f=8&t=364 or this: http://www.multiwii.com/forum/viewtopic.php?f=8&t=594

Also I hear there is some gps integration code being made on the multiwii forum,...hope they won't forget on the cheap gps candidates like dealextreme em-411...Also melih at flytron forum is working on some rth code for openlrs, which is also an arduino

Dennis that's a great improvement idea, just how much configuration will there be available via the servo channel?
msev is offline Find More Posts by msev
Reply With Quote
Old Sep 29, 2011, 04:11 PM
Registered User
thnilsen's Avatar
Norway, Hordaland, Os
Joined Nov 2004
387 Posts
The SimpleOSD OPEN board arrived today. Soldered some pins and wired it up.

SimpleOSD Open with DIY OSD Firmware #0.14 (0 min 28 sec)


There's some wobble on the text on this as other have noticed as well. Nothing major, and it even seems to be more pronounced when on a recording.

Just need to get a cable made for the FTDI adapter and then we can start to have a play with it and make it Megapirate copter friendly

Thomas
thnilsen is offline Find More Posts by thnilsen
Reply With Quote
Old Sep 29, 2011, 06:43 PM
Just another user
Dennis Frie's Avatar
Denmark, Capital Region of Denmark, Naerum
Joined Feb 2011
1,081 Posts
Quote:
Originally Posted by msev View Post
Also I hear there is some gps integration code being made on the multiwii forum,...hope they won't forget on the cheap gps candidates like dealextreme em-411...Also melih at flytron forum is working on some rth code for openlrs, which is also an arduino

Dennis that's a great improvement idea, just how much configuration will there be available via the servo channel?
So far it's just an idea - it will not be implemented right away.

I don't really have any plans for the possible configurations - but all alarms, calibration, video-options (NTSC/PAL) altitude auto zero on/off etc. could in theory be added as a menu.

But right now the priority is to test it to be sure the important errors have been found
Dennis Frie is online now Find More Posts by Dennis Frie
Reply With Quote
Old Sep 29, 2011, 06:48 PM
Just another user
Dennis Frie's Avatar
Denmark, Capital Region of Denmark, Naerum
Joined Feb 2011
1,081 Posts
Quote:
Originally Posted by thnilsen View Post
The SimpleOSD OPEN board arrived today. Soldered some pins and wired it up.

http://www.youtube.com/watch?v=2It8tisyrGg

There's some wobble on the text on this as other have noticed as well. Nothing major, and it even seems to be more pronounced when on a recording.

Just need to get a cable made for the FTDI adapter and then we can start to have a play with it and make it Megapirate copter friendly

Thomas
Nice to see that you have already hooked it up.

It might be possible to minimize the wobbling by using sleep(), but I haven't done any test with this, as I have been getting pretty stable text.
On your video it seems to miss a line now and then - sleep() is not gonna help on that. It might be possible to use a watchdog timer to add 1 to linecount if a line is missed.
Dennis Frie is online now Find More Posts by Dennis Frie
Reply With Quote
Old Sep 29, 2011, 07:15 PM
Registered User
rimshotcopter's Avatar
United States, CA, Los Angeles
Joined Aug 2009
11,707 Posts
Quote:
Originally Posted by Dennis Frie View Post
Nice to see that you have already hooked it up.

It might be possible to minimize the wobbling by using sleep(), but I haven't done any test with this, as I have been getting pretty stable text.
On your video it seems to miss a line now and then - sleep() is not gonna help on that. It might be possible to use a watchdog timer to add 1 to linecount if a line is missed.
This is what I really need to understand better, the loop counter is very time sensitive. I added one more step to the counter and it did not work.
rimshotcopter is offline Find More Posts by rimshotcopter
Reply With Quote
Old Sep 29, 2011, 07:29 PM
Just another user
Dennis Frie's Avatar
Denmark, Capital Region of Denmark, Naerum
Joined Feb 2011
1,081 Posts
Quote:
Originally Posted by rimshotcopter View Post
This is what I really need to understand better, the loop counter is very time sensitive. I added one more step to the counter and it did not work.
Well, the main-loop is actually not that time-critical. It does take quite a lot of processor-power to output the text, but every time it detects a new line it will automatically break the main-loop and run the interrupt. If you put a very time-consuming piece of code in the main-loop it will miss the serial-data making the incoming data useless - but it will still show the OSD-text just fine (but off course the data will not get updated if you miss the serial data).

If you use a 5 hz gps the time-consuming code in the main-loop only needs to be executed 5 times a second. The detect-line interrupt needs to be executed around 15.000 times a second. This is the place where you don't want time-consuming code to be placed. You can test it - try to see how much the text is moved if you use an integer instead of a char. The difference is very clear

What counter did you change?
Dennis Frie is online now Find More Posts by Dennis Frie
Last edited by Dennis Frie; Sep 29, 2011 at 07:36 PM.
Reply With Quote
Reply


Thread Tools

Similar Threads
Category Thread Thread Starter Forum Replies Last Post
Discussion Diy osd karl k FPV Talk 2 May 03, 2011 01:31 AM
Idea New DIY OSD? atari7202 FPV Talk 1 Mar 25, 2011 01:08 AM
Discussion see my own diy OSD video Passion Aerial Photography 7 May 27, 2010 02:28 AM
Discussion REAL homebrew DIY OSD - Check it out! jafoca FPV Talk 8 Jun 29, 2009 07:52 PM
Discussion picoOSD DIY PIC12F683 based OSD in C kbosak FPV Talk 6 Jan 31, 2008 08:47 AM