AlceOSD - Graphical OSD for APM/PX4



Due to the limitations of minimosd, for some time that I've been working on developing a new OSD for APM/PX4.

As of today, AlceOSD 0v3 is available for sale at:

Firmware available at:

Documentation is available at (WIP):

The firmware is open source project so all kind of contributors are welcome!

Let me know your thoughts and new ideas for the OSD!

Latest flight (hw 0v2):

First flight (hw 0v1):

Batch of the first 10 prototype boards:


Assembled board (2.5 x 5.0 cm, 6 grams weight):


E-mail me when people leave their comments –

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

Join diydrones


  • I'd vote for just C. C++ for embedded systems feels cumbersome unless it is complex. Because the OSD simply receives the MAVLink/UAVtalk messages, things are fairly straightforward. My two cents.

  • Elios, great ideas. The radar is definitively on the road. AlceOSD has a lot of flash memory and implementing all that should be a matter of "just" coding it.

    That playUAV board is also new to me, but it seems to be a mix of the crappy max7456 chip (same as minimosd) plus some rendering by the cpu.

    I also plan to add support for UAVtalk (openpilot) but as for DJI can it will have someone to code it as I don't own one.

  • Looks very interesting. I just found playUAV OSD, also.

  • 2 ideas are needed to be implemented: 
    We have a gimbal with unlimited rotation, a Pixhawk, MinimOSD with Top view RADAR mod, and a Storm32 BGC. MinimOSD with Top View Radar RADAR mod displays a plane icon that shows the position and orientation of plane and it is awesome. We should have it on the AlceOSD

    The most frustrating thing with unlimited rotation gimbal is you don't know which direction the camera is pointing and it is very confusing. 
    Storm32 BGC latest firmware by OlliW includes gimbal attitude roll/yaw/pitch in MavLink messages. We can use this (especially the yaw and pitch) to display a small camera icon or arrow to show where the gimbal (and the camera view) is pointing. This idea is very simple but will help everyone who faces this issue and there are many of us out there. Attached are some pictures of how it might look like, just a suggestion.
  • Developer

    Intriguing. :)

    Well I can only guess ..My hunch is you are clocking SPI Ram to drive the display?

    As for the C v C++ debate.. . Unfortunately C++ got me hooked 20 years ago ... but as any C programmer knows.. C++ is only good for code bloat ;)

    Anyway will follow this with interest. it certainly looks very good!



  • I like pure C :)

    The RAM is "big thing" in my OSD design since I don't think anyone has done it before (at least that I know of).

    I'll be publishing more details as soon as I can... like I said, it's going to be completely open source.

  • Developer

    Some would say no C++ is an advantage !  But yeah it would need to be gcc4.7 to be useful.. no matter

    Anyway  I'm interested in your RAM useage. I remember seeing somewhere that you are doing an interlaced display but I can't see a likely dsPIC33 with more than 48K Ram on board which doesnt seem enough. (I'm assuming a double buffered display) Are you using external RAM for the display buffers? OTOH Quad SPI is nice to have!



  • HI Andi,

    It's using a dsPIC33EP512xx504 but it's also 100% compatible with the 256Kb flash version. Microchip gcc is based on 4.5.1 but no C++ as far as I know.

  • Developer

    Hi again Luis,

    You say you are using a 16 bit dsPIC. Care to say which one? You must have a good amount of RAM on it at least to get interlaced display?

    I might try to get my API working on your hardware. Does the Microchip version of GCC compile C++11 . Do you know what gcc version it is based on?



  • Hi Elios,

    Please leave them here:

    There is a topic called "Wishlist" where some people already left some ideas.

    Based on that topic I'm filling up a development plan here:



This reply was deleted.