Adding extra functions to MinimOSD

I have started to add functions to MinimOsd code.

At first i did it for myself only. Added many functions i thought i need. Then opened this thread.

after a while, Pedro and later Miguel came, and things started to happen fast. :D

They have optimised the code and added even more things to it.

They have worked hard on CT, and it became a great tool!

Thank you Bough! :)

By now MinimOSD-Extra got a pretty advanced OSD.

Here it is in action:


- Changeable unit measurement (US, metric)

- Airspeed

- Home alt

- Battery Percent

- Battery used mah

- Current Draw

- Time From Startup (cleared at takeoff to show exact flight time)

- OSD Menu

- Variometer

- Wind horizontal speed and direction, and also the average wind speed of the last few minutes. 

- OSD on/off

- Switchable secound screen

- WP distance

- WP heading

- Crosstrack error

- Warning messages for Lost GPS fix, Stall, Overspeed, battery volt, battery Percent, RSSI

- Efficiency, glide distance & thermic notifier. 3 in one panel

- OSD Brightness

- HAM Call Sign

- After flight summary

- Trip distance

- Temperature

- Smoothened horizon

- Real heading


- Vertical speed

This functions can be turned on and off, and placed on different screens now, by the Config. tool.

Also RSSI, switching mode and channel and unit measurement, Stall speed warning, Overspeed warning, Battery warning volt, Battery percent warning, RSSI warning,  can be set in new Config Tool.

We built in a new way of setting video standards. Now OSD does not guessing anymore :). You can set it fixed from CT. It is in "Video Mode" menu.

Here is how it looks: (This video is a bit outdated, sorry. I will make a new one soon.)

The MinimOSD-Extra project is here: Link

This project is the developing version of the official Arducam OSD located here: Link

The latest stable version is: 2.2

The latest version can be downloaded from here: MinimOSD-Extra R800

Username: MinimOSD_Extra

Password: Top_Secret

CT is included. (The FW for Plane, Copter, Character upload and the character file is in the "FW & Char" directory inside CT directory)

We are sharing it to see videos you make using it! :)


You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • 100KM

    I think I'm using the wrong charset... On die config tool I see the symbols AS and GS, but on the actual OSD output, I see FWA and FWB. I've loaded Latest_Charset.mcm, but it still shows wrong. Help? Thanks.

  • Hello, my battery volages are shown different in minmosd-extra as compared to mission planner.

    if mission planner is showing 12.4v , the minimosd will show around 10.3.  this is the problem.. any solution?


  • Hi, Gabor!

    I downloaded your current MinimOsd-Extra_Pre release_Beta.

    And it compiles to 30.704 Bytes of 30.720 Bytes. I am not able to implement anything in 16 Bytes. But i have got an idea. I worked on the I2C code of the EOS Bandi external GPS solution and found out that the interrupt driven serial routines from the multiwii project could save you 1KB!! I stripped them down from the multiwii and implemented them into the I2C code. Maybe it is possible to get rid of that fastserial stuff and do it more byte efficient without loosing any functionality. What do you think, shall i give it a try?


    Kraut Rob

  • Just checked the the survey.

    Not many responses, but it already cleared a few things.

    Thank you all who filled it in! ;)

    I will keep it going for a while.

    Also someone wrote that he wants OSD brightness. 

    I had a problem with brightbness also, as my videogoogles have automatic brightness controll. When OSD was on Than it made video dark. So we had to find a way to make OSD darker. 

    This is already done. We have spent 2 days on it with Pedro because of a logical bug. There is 4 step. You can find it in CT. ;)




  • Gabor, I am a newb trying to wrap my head around the code, and think I just need some quick answers to get going. I wanted to start by tweaking the panels. To crop the sign and first 3 digits of the GPS coordinates, would it work if I just replace the 11's with 7's like this?

    void panGPS(int first_col, int first_line){
        osd.setPanel(first_col, first_line);
        osd.printf("%c%11.6f|%c%11.6f", 0x83, (double)osd_lat, 0x84, (double)osd_lon);

    Changed to...

    void panGPS(int first_col, int first_line){
        osd.setPanel(first_col, first_line);
        osd.printf("%c%7.6f|%c%7.6f", 0x83, (double)osd_lat, 0x84, (double)osd_lon);

    That extra space (11 instead of 10) is to pad between the sign and Lat/Lon symbols right?

    Also, if I want to eliminate an icon, I know I can edit the charset file. However if I want to make that empty space available I must do that in the code (also make room for more code). If I wanted to do this, for example removing "LAT" and "LON" symbols from the GPS coordinate display, would it go something like this?

    osd.printf("%c%11.6f|%c%11.6f", 0x83, (double)osd_lat, 0x84, (double)osd_lon);   

    Changed to this...

    osd.printf("%11.6f|%11.6f", (double)osd_lat, (double)osd_lon);

    Also to get a feel of the syntax... "%c" declares a symbol, "%X.Y" declares a string with X total digits and Y digits after the decimal (where the mavlink message is a string of span <=X), and "|" declares a carriage return? I went with Arduino 1.0.1 (Nano...328) for osd work because I read that's what others are using. Should I use 1.0.3 instead? I heard it results in smaller hex's, but not sure if it works with the "arducam" sketch.

    I know you're not paid to educate the community on code. So please tell me to buzz off and read some more books if I'm way off base. Thanks! ;)

  • What about adding a bigger (more storage) Atmel to the MiniOSD ? - replacing it should not be too huge a task even for those without proper soldering equipment. - and some hot air equpment can even be home-made (see youtube)

    the "major" version should have "all" features, and parts be skipped when compiling for original minimOSD devices.

    That would be better/cleaner solution that multiple separate projects.

  • Just made a survey.

    I'm curious. :)


  • Gabor,

    Someone called Crashpilot1000 modified your code a little bit to support FrSky RSSI using a pin on the MinimOSD board itself. Is it possible to incorporate that feature into this branch too? See bottom of this page:

  • Hi Gabor,

    Why can't I compile it by myself with arduino IDE (1.0.3) to a appropriate size. The hex I've compiled is about 30k - the Atmega328 only has 28k - so what could be the clue?!



    PS: thanks for the great little project!

  • I would prefer if we could turn off the icons next to the data. Most of them just take up space and the meaning of the data is obvious based on the units or the position we choose to place them. Ideally, the icons and the units would be optional.

    How hard would this be?

This reply was deleted.


DIY Robocars via Twitter
RT @donkey_car: Human-scale Donkey Car! Hope this makes it to a @diyrobocars race
DIY Robocars via Twitter
DIY Robocars via Twitter
Jun 16
DIY Robocars via Twitter
RT @GrantEMoe: I won my first @diyrobocars @donkey_car virtual race! Many thanks to @chr1sa @EllerbachMaxime @tawnkramer and everyone who m…
Jun 13
DIY Robocars via Twitter
RT @gclue_akira: JetRacerで自動走行したコースを、InstantNeRFで再構築。データセットは別々に収集 #jetracer #instantNeRT
Jun 13
DIY Robocars via Twitter
RT @SmallpixelCar: SPC 3.0 Now the motor also works. This car is doable. I just need to design a deck to mount my compute and sensors. http…
Jun 13
DIY Robocars via Twitter
RT @SmallpixelCar: My new car SPC 3.0.
Jun 7
DIY Robocars via Twitter
RT @SmallpixelCar: High speed at @diyrobocars thanks @EdwardM26321707 for sharing the video
Jun 7
DIY Robocars via Twitter
RT @SmallpixelCar: Today at @RAMS_RC_Club for @diyrobocars. Used @emlid RTK GPS and @adafruit @BoschGlobal IMU. Lap time 28s…
May 28
DIY Robocars via Twitter
May 15
DIY Robocars via Twitter
May 14
DIY Robocars via Twitter
May 13
DIY Robocars via Twitter
RT @f1tenth: Say hi to our newest #F1TENTH creation for @ieee_ras_icra next week in Philly. It’s going to be huge! 😎 🔥 @AutowareFdn @PennEn…
May 13
DIY Robocars via Twitter
May 11
DIY Robocars via Twitter
May 8
DIY Robocars via Twitter
RT @SmallpixelCar: Noticed my car zigzagged in last run. It turned out to be the grass stuck in the wheel and made the odometry less accura…
May 8