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:

Added:

- 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

- RSSI

- 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! :)

Enjoy

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

Join diydrones

Email me when people reply –

Replies

  • Hey,

    Help needed!  Just finished updating my quad to Arducopter 3.1 rc7 and now my OSD is not displayed on my video feed.  Previously I was running 3.0.1 and the OSD was working perfectly.  I have checked the SR0 and SR3 parameters to match what the wiki says but still nothing.  I have also tried it with telemetry and without.  Has anyone had the same issue and what was the fix?  I would be grateful for any suggestions!

    Regards,  Todd

  • can this work with px4fmu and IO and if it works how can i make it work  please ??

  • I would imagine another OSD chip needs to be used.

  • Can the MinimOSD be modified to have a higher graphic resolution?  I find 30x16 to be quite small.  The OSD644DMDG uses a 64x29 resolution for characters.  This looks a lot cleaner and has better usability to place functions in an already small working area. What would need to be done to make this happen?

  • Great work guys,

    I had a question. I wanted to increase the rate at which the GPS and Magnetomer readings are displayed on screen, in order to make them more precise. I think the GPS we use has a 10Hz update cycle. Can we set the SR3_EXT_STAT to a higher value to get more frequent updates ? 

    Since I have my Telemetry connected with the 3DR radio, will increasing the refresh rates affect that end as well ?

    Thanks ! 

  • Moderator

    Hey guys - I'm sure I have a really simple problem, but for the life of me I can't get around it.  When everything is hooked up the minimOSD will overlay on my video out, but will just say 'waiting for MAVLink heartbeats'.  When trying to talk to my minimOSD via FTDI cable, I constantly get 'unable to talk to bootloader'.  I know I haven't the latest firmware on the OSD, hence why I was trying to update the firmware.

    Can anyone help and shed some light on this so I can start enjoying the OSD? (:

  •  It seems to me that the software RSSI sensing part of the OSD is going on the dark side. It simply took one entire day from me with no results. It was a lot simpler with sensing on some analog pin (plenty of them) rather than channel side (a lot of channel with a lot of functions that I couldn't renounce to/at) 

    So can I use the newest firmware with an old setup interface - I just want to use the no 5 analog sensor for RSSI. simpler, safer.... better????

  • Developer

    I've problem when i try to upload the new character set with version 2.4 R712 (Copter) using "CT Tool for MinimOSD Extra 2.3.2.0 Pre Release r713", always "Error entering font mode - No data", there's a trick for this step? Firmware upload is ok.

  • Hi guys. I have APM 2.5 flashed with Arduplane 2.76 and noticed a small problem.

    2.75 has a flightmode called "Cruise"

    The minimOSD flashed with extra 2..2 does not recognize this mode and does not display cruise when its in the mode.

    Is this a character set problem or a OSD version update required ?

  • Hey all, just found this thread after coming through the RCG thread about changing the Charset.  I'm trying desperately to get this going so I can do some custom screens on my RVJet.

    Running into a basic problem when trying to compile the simple ArduCAM_OSD code in Arduino.  I get this error:  http://d.pr/i/1nwa

    Here is the full error log.  Any ideas as to what I'm doing wrong?  

    Thanks!

    BAC

    C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avr-g++ -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=105 -IC:\Program Files (x86)\Arduino\hardware\arduino\cores\arduino -IC:\Program Files (x86)\Arduino\hardware\arduino\variants\eightanaloginputs -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\AP_Common -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\AP_Math -IC:\Program Files (x86)\Arduino\libraries\EEPROM -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\SimpleTimer -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\GCS_MAVLink -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\MemoryFree C:\Users\Pablo\AppData\Local\Temp\build3728646305818958860.tmp\ArduCam_Max7456.cpp -o C:\Users\Pablo\AppData\Local\Temp\build3728646305818958860.tmp\ArduCam_Max7456.cpp.o  C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avr-g++ -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=105 -IC:\Program Files (x86)\Arduino\hardware\arduino\cores\arduino -IC:\Program Files (x86)\Arduino\hardware\arduino\variants\eightanaloginputs -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\AP_Common -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\AP_Math -IC:\Program Files (x86)\Arduino\libraries\EEPROM -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\SimpleTimer -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\GCS_MAVLink -I\\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\MemoryFree C:\Users\Pablo\AppData\Local\Temp\build3728646305818958860.tmp\ArduCAM_OSD.cpp -o C:\Users\Pablo\AppData\Local\Temp\build3728646305818958860.tmp\ArduCAM_OSD.cpp.o  In file included from ArduCAM_OSD.ino:81: /OSD_Vars.h:88: warning: this decimal constant is unsigned only in ISO C90 OSD_Panels.ino:250:27: warning: character constant too long for its type ArduCAM_OSD.ino: In function 'void __vector_18()': ArduCAM_OSD.ino:95: warning: comparison between signed and unsigned integer expressions Font.ino: In function 'void uploadFont()': Font:20: error: no matching function for call to 'FastSerial::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) Font:87: error: no matching function for call to 'FastSerial::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panLogo()': OSD_Panels:15: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panDistance(int, int)': OSD_Panels.ino:178: warning: format '%5.2f' expects type 'double', but argument 4 has type 'float' OSD_Panels.ino:180: warning: format '%5.0f' expects type 'double', but argument 4 has type 'float' OSD_Panels.ino: In function 'void panFdata()': OSD_Panels.ino:195: warning: format '%5.0f' expects type 'double', but argument 8 has type 'float' OSD_Panels.ino:195: warning: format '%5.0f' expects type 'double', but argument 11 has type 'float' OSD_Panels.ino:195: warning: format '%5.0f' expects type 'double', but argument 26 has type 'float' OSD_Panels.ino: In function 'void panTemp(int, int)': OSD_Panels.ino:210: warning: format '%5.1f' expects type 'double', but argument 3 has type 'float' OSD_Panels.ino: In function 'void panEff(int, int)': OSD_Panels.ino:231: warning: format '%4.0f' expects type 'double', but argument 4 has type 'float' OSD_Panels:233: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino:251: warning: format '%4.0f' expects type 'double', but argument 4 has type 'float' OSD_Panels:255: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels:257: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panAlt(int, int)': OSD_Panels:555: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panHomeAlt(int, int)': OSD_Panels:587: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panVel(int, int)': OSD_Panels:604: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panAirSpeed(int, int)': OSD_Panels:621: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panWarn(int, int)': OSD_Panels.ino:672: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:671: warning: suggest explicit braces to avoid ambiguous 'else' OSD_Panels.ino:678: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:677: warning: suggest explicit braces to avoid ambiguous 'else' OSD_Panels.ino:684: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:683: warning: suggest explicit braces to avoid ambiguous 'else' OSD_Panels.ino:690: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:689: warning: suggest explicit braces to avoid ambiguous 'else' OSD_Panels.ino:696: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:695: warning: suggest explicit braces to avoid ambiguous 'else' OSD_Panels.ino:702: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino: In function 'void panBatteryPercent(int, int)': OSD_Panels.ino:753: warning: format '%4.0f' expects type 'double', but argument 4 has type 'float' OSD_Panels.ino: In function 'void panHomeDis(int, int)': OSD_Panels.ino:796: warning: format '%5.2f' expects type 'double', but argument 4 has type 'float' OSD_Panels.ino:798: warning: format '%5.0f' expects type 'double', but argument 4 has type 'float' OSD_Panels.ino: In function 'void panHorizon(int, int)': OSD_Panels:828: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panWPDis(int, int)': OSD_Panels.ino:1065: warning: format '%4.0f' expects type 'double', but argument 6 has type 'float' OSD_Panels:1067: error: no matching function for call to 'OSD::printf_P(prog_char_t*)' \\vmware-host\Shared Folders\Desktop\Arducam_OSD\libraries\FastSerial/BetterStream.h:28: note: candidates are: void BetterStream::printf_P(const char*, ...) OSD_Panels.ino: In function 'void panFlightMode(int, int)': OSD_Panels.ino:1097: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1098: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1099: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1100: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1101: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1102: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1103: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1104: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1105: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1106: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1107: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1108: warning: deprecated conversion from string constant to 'char*' OSD_Panels.ino:1109: warning: deprecated conversion from string constant to 'char*' /OSD_Vars.h: At global scope: /OSD_Vars.h:49: warning: 'check_warning' defined but not used /OSD_Vars.h:92: warning: 'warning_found' defined but not used /OSD_Vars.h:127: warning: 'osd_windspeedz' defined but not used /OSD_Vars.h:162: warning: 'convertt' defined but not used

This reply was deleted.

Activity