Hello guys!
I'm very happy to tell you that the MinimOSD is now in stock in the DIY Drones store!
And more: It goes with a nice customized CharSet and an open source OSD firmware already flashed! ;)
The firmware is Arduino compatible and it uses the original APM MAVLink messages to bring out with some nice features.
Here you can see the Artificial Horizon being tested on HIL side by side with the XPlane AH gauge.
Let me talk a bit more about the firmware that goes flashed on the board:
The current open sourced OSD implementation is part of the ArduCAM OSD project which has support from all the DIYD Dev Team.
The requested APM MAVLink messages are grabbed, translated and it's displayed pretty fast.
But... why it supposed to be fast?
Firstly, the OSD class descends from BetterStream from Mike Smith, which turns it able to format and print better than the Arduino's avr-libc variant does.
Second, the CharSet was rearranged to match the ASCII table. It eliminates the need for a "translation" layer.
There is also a smart way to write individual panels with less SPI transactions (that is conventionally used only to write the full screen at once).
The MAVLink parsing uses a reduced number of buffers, which fits better m328p's resources.
Those things above improves considerably the OSD job.
Our friend Jani already wrote the EEPROM routines to make it configurable. So, it has the base for an external configuration tool.
There is much more work to be done for adding functions and improve it.
We're pretty sure that it will be improved a lot in the hands of the awesome DIYD comunity.
Well, let's talk about features:
MinimOSD is able to work attached to the ArduPilot telemetry port in two modes:
1 - as master i.e. requesting rates of all required messages from APM (both TX and RX from OSD board are connected);
2 - as "sniffer" i.e. just listening to all the messages requested from the GCS (only TX from OSD board is connected).
The firmware auto-detects PAL or NTSC and adjusts the panels.
Until now it has this panels:
*Based on spherical coords with geographic distortion corrected;
The hard work continues... but, the fun is already granted, of course!
Grab yours right now and happy flights! ;)
That sounds a good plan Sandro. Rest up and recover mate, we need you here fit and well! Looking forward to the next revision. Thanks
Comment by Andke on May 9, 2012 at 11:19pm Err, why should we lag back and use old Arduino ? - this creates problems when working on newer projects at the same time. one "conflicting return type" should be rather easy to fix ?
@Andke, I'm not experienced enough to be working on two projects at once, so it wasn't really an issue for me, but I get your point. Other issues arise in the 023 > 1.0 at a depth of coding I don't understand such as:
virtual void write(uint8_t);
errors unless it's replaced with
virtual size_t write(uint8_t);
There are changes in wiring.h as well. Again, all this is beyond my knowledge base, and I wasn't trying to convince you that 023 was the only answer, just that it was working for me. Would be interested if you do sort out a patch that allows a successful compile on 1.0.
Cheers mate.
Comment by Andke on May 10, 2012 at 5:31am Thanks - yep, you solved one problem, more spawned:
In file included from ArduCAM_OSD.cpp:77:0:
ArduCam_Max7456.h:97:40: error: two or more data types in declaration of ‘write’
ArduCAM_OSD.cpp:138:5: error: cannot declare variable ‘osd’ to be of abstract type ‘OSD’
ArduCam_Max7456.h:78:1: note: because the following virtual functions are pure within ‘OSD’:
/usr/share/arduino/hardware/arduino/cores/arduino/Print.h:48:20: note: virtual size_t Print::write(uint8_t)
I will try to solve it, I hope the authors are ready to move ahead too.
Maybe not the best place to put this, but as I know a few of you here want/need RSSI I thought you may fine this useful. It's a quick and nasty hack to get an RSSI indication on screen while we wait for the upgrade, although it doesn't use MAVlink or the Minim.
If you grab one of these OSD's from Hobbyking, identify the 1k voltage divider on the BATT2 input, remove it and plug your RSSI output into it. I have done this with Dragonlink, and get a voltage display from around 20v with RSSI is high (~3.2v on DL) down to about 7v displayed when RSSI is at failsafe (~.9v). As this OSD works in parallel with the video signal, it should be easy to tie in to your current video systems. You must power the unit with a voltage no less than 2s and no higher than 4s on the BATT1 input. The little OSD unit allows you to shift the on-screen text to may different places on the screen, so you can just set it up to a clear bit of screen when Minim is running. Cheap and nasty solution to get you RSSI until the next release, hope you find it useful.
Comment by airmamaf on May 17, 2012 at 7:11am For those interested, I made a Firmware and a version of OSD_Config.exe that handle RSSI panels, and of course it's working (tested with turnigy 9x receiver).
http://diydrones.com/profiles/blogs/display-rssi-with-arducam-osd
I cannot see Flight Mode in my minimOSD screen, but I can see it in the configuration panel. Did I miss something?
I use minimOSD 1.0
@airmamaf
Excellent mate, thank you.
Comment by Chris Kreuzer on May 21, 2012 at 2:09am Any updates planned for minimOSD next time????
Im waiting for mAh and kmh and ARMED DISARMED and something against the charset BUG
Comment by airmamaf on May 21, 2012 at 3:35am What is the charset BUG you have ?
Season Two of the Trust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.51 members
24 members
691 members
185 members
130 members
© 2013 Created by Chris Anderson.
Powered by

You need to be a member of DIY Drones to add comments!
Join DIY Drones