A Humble Request for Software Versions

I am actually fairly new here, but I am one of those people who follow the threads eagerly looking for the next software release with bug fixes and feature updates.   To be sure, so far I've had some great success with my APM2 Bixler FPV drone.  Right now I am a little uncertain whether I should attempt to fly with the current software version I have installed, and it seems that this answer SHOULD be a lot simpler to find out than it is currently. 

Right now I have a lot of time and money in my build (as everyone else) and I would like just a little more confidence that there is nothing in the current software that could cause a critical failure.  I'm not looking for guarantees, just some sort of warning that installing that last version of firmware MAY be a bad idea. 

I work with critical software systems, and I was just wondering the following:

1) Why isn't there two versions of software being developed for the APM's?  I would like to see a "stable" version that only addresses bug fixes and an "enhanced" version that's adds functionality and features to the code.   I understand there are complexities with such a system, but I hate to loose elevator control when I'm just looking for a fix to a GPS lock problem.  If I have all the features that I want, is it possible to simply get bug fixes without the additional risk of an additional feature?

2) Can someone in development someone spend the time to update the Wiki with version information?  I know there is a change log in Google code, but it would be so nice to see a chart of my version of firmware, what features were added with the next version, what bugs affect that version, and are those versions recommended or should I get the hell off.   I don't expect to get historical here, but if someone could start sometime it would be great.

3) Is there some sort of alert system for those how have certain versions of code, that those versions are potentially unsafe?  What about an entry in the main DIY Drones page indicating the latest stable release?  I realize that this may be pointless without first implementing "beta" and "stable" software versions, but I would feel better if there was something to indicate my firmware version was fine.

4) I personally would like to see an easy way to choose a legacy software version and install it via Mission Planner without learning the intricacies for Arduino reprogramming.  Heck for that matter, I would LOVE to see version, warning, and bug information from Mission Planner itself.   Let the user decide the level of risk to their setup and decide if certain bugs apply to them.

I KNOW that many of these strategies are complicated to implement and they will take time to do.  I guess this is more of a request than anything else - and I would like to see this project take it to the next level.   If DIYDrones is truly over 20k members then that means there is over 10 million dollars of flight hardware that depends on APM's at a single moment.  I think we all have pride in our builds, it would be a nice addition to let us manage our own risk.

Thanks to the community, and thanks for letting me share my thoughts.

P.S. - Oh BTW I'm currently running 2.60... : )

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

Join diydrones

Email me when people reply –


  • Hi,

    I've been thinking along the same lines and didn't want to raise it because I was feeling bad about asking for more work of those dev volunteers. But in principle I think having a "stable" and an "experimental" line of releases shouldn't cause more work for the actual programmers than just maintaining tags in the code I believe. This could be done similarly to the way the linux kernel (used to?) be developed. For example: version X.Y for even version numbers Y are the stable releases and for every stable release Y there is an unstable release Y+1, which may one day become the next stable release Y+2.

    Basically any new feature would be first introduced into an unstable release. Once this has passed the test of time (and actually real flying time by users who like to use the greatest latest) it can become a candidate for the next stable release.

    That being said, software development for these embedded devices seems to be quite different from classical computers, which may crash but rarely fall on someone's head while doing so :-)

  • 3D Robotics

    1) There is. Public code (in the Mission Planner) is stable. Trunk code (in Git) is development.

    2) There is. It's on the Wiki Project News page.

    3) See above

This reply was deleted.