Why there isn't a standard hardware architecture supported?

Since the very beginning of my journey with ardupilot (long journey…) i wondered how better and more solid it would be if the hardware would be standard and hw manufacturers would comply to it and not the other way around.
Since the dev power is rather low, wouldn’t it be better to just tell manufacturer how to build hardware and develop on it?
I keep on reading of different problems arising only on some boards and not on others and devs running to patch this and that board.
Probably i do not see the problems in such an approach and would like to know what other users think about it.
I am not saying to have just one manufacturer, what i mean is have a standard to wich comply to avoid continuos board related problems.

This is not by any mean a polemic post, i just want to understand what i don’t get and where would be an error to standardize the hardware.



1 Like

Part of it is that the flight controllers aren’t made w/ any specific firmware in mind. They are made for whatever. (PX4, Betaflight, ArduPilot, etc). And then the software decides to adopt it or not.
Ardupilot could choose to only support the boards they are involved in developing, but luckily that’s not the case. People are interested in supporting other boards, and put in the effort.

Take a look at how many flight controllers are supported by BetaFlight as opposed to the number that are supported by DJI, Eagle Tree, Tarot or other name brands.

Next compare the price of an Eagle Tree Vector or a DJI N3 system to a Pixhawk 1 system.

By using Open Source firmware, designers/manufacturers can focus on being innovative, and innovation is the key ingredient to staying viable in a fast paced arena. Not having to support a code development department has a very positive impact on the financial bottom line.

By the same token, not having to purchase licenses for the GCS software and flight stack firmware helps keep end user costs down.

So, why take a win-win situation and and turn it into a footnote about what not to do?


Ok understand the point, thanks. I guess the long list of board specific problems is a side effect we have live with.

What hardware innovation? We are basicly using same hardware as 5 years ago, they just keep adding multiple imu and internal compasses.
We are still using i2c, serial and pwm, same as 5 years ago, canbus is slowly starting now…doesn’t look like much of an hardware innovation :slight_smile:
Only real hardware innovation in the last 5 years was the gps, from series 6 up to F9 RTK, it is miles ahead of what used to be 5 years ago, and that comes from a single company :slight_smile:

1 Like

Well build something better then…

I was just answering to your statement about innovations by hardware manufacturers.
I don’t see any, i only see a lot of little companies making fast bucks on someone else great code.

Actually i think it is quite the opposite, we are loosing on a lot of new technology trying to keep compatibility to too many boards.

It is only my toughts, probably wrong, but that is why i wrote the post, to understand other points of view and see what others think.

I’ve seen that mentioned a few times, but I disagree. I personally love the work over the past couple years to support the small betaflight boards. But I know when we were first starting to use them, several people were saying something similar, like why is the limited development time being put in to support those little boards.
I see at least two good responses… One is that supporting other hardware opens the door to more people. And, the people who were putting in the effort to support the small boards wouldn’t have otherwise been coding for something else… They aren’t interested in other areas of the code, so it is only a benefit. Nothing was lost.

And finally, I agree with you that hardware has not been very innovative lately. But, I think if it were left to only the ardupilot team to come up with new hardware ideas, it would be even worse. We’d be using big bulky flight controllers without built in OSD’s and other essentials for years to come.

The ardupilot world is pretty big. From serious work to wild fun. From huge vehicles that can carry people, to little 2" prop racers, and all the working vehicles and FPV vehicles, etc, etc. I don’t think there is one single market to design the ‘perfect’ flight controller for, which would have a large enough market share to make it worth the effort.

Ok understand and now have a better idea on why little boards are supported, thanks.

For the hardware side maybe something in the middle could be done, something like give directives on how to implement stuff like esc telemetry so that manufacturers would comply and we would not have 10 different esc telemetry languages. Lets call them directives :slight_smile:

1 Like

I think its also important to remember that supporting a wide range of hardware, both sensor quality and types shows up bugs and errors that may be over looked otherwise. Putting up with bad sensors makes the good sensors more robust in challenging environments.

I was just referring to boards. External sensors, the more supported the better.

It is probably also important to consider that there is not a fixed amount of dev time. Devs might work on adding support for a new board because they have one and they want to make a cool thing with it. That same dev might not be interested in working on the ‘standard’ hardware.

Understood that point also Wicked brought it up, didn’t think of it

I do completely understand your frustration in this area. But the hardware manufacturers each want to lock you in to their ecosystem and come up w/ their own.
We could be years ahead if people would agree on standards. And the same can be said for every technology. Computers, storage media, telephony, etc, etc…

I think Ardupilot is big enough to tell manufacturers to comply to some standard on esc telemetry for example if they want their esc to run on AP at full potential, otherwise can still use pwm but with its limitations (esc telemetry is just an example).

I sort of doubt it, but don’t know.
It would be very interesting to see details about market share of drones or rc vehicles and which software they are running. My guess would be DJI, then a couple random toy drone manufacturers, then betaflight, then maybe ardupilot. But I have nothing to base that off of other than reading forum posts and seeing what people out in the world are flying.
I’m assuming there are still more hobbyists than professionals, and that the majority of professionals (and hobbyists) are buying DJI these days.

Thanks for your point of view :slight_smile:

You have raised some valid arguments and I personally came from wireless electronics world and I do see a whole bunch of hardware design issues to name just few.

The Ardupilot development team (Hats off) one of the best open source community out there when it comes to open source platform support. Thats why i love supporting Ardupilot developers.

The hardware design on the other hand as you said, its all about quick bucks, no standards on Interface type, Its a rats nest by the time you are done configuring things. No serious thought process has been put in place. On the good side you can buy an FC for 70 dollars…

The challenge of open source is that one company may invest the time and dollars on re design and standards but someone else cheat you out later. “Apple comment removed”

Its a double edge sword.

Who knows we might design one. I started a conversation on this topic last year but now due to FAA (cashing on a 300 million cash cow) trying to mandate Remote Id on all FC, our internal talk is on hold till the dust settles on Remote Id issue.

A Omnibus 35 dollar FC is just going to be 35 dollar FC and Hobbyist will have to deal with it.

1st point, sorry, but BS. Apple invented nothing. Stole its original OS, just like MS did, and osx is just unix. I had portable MP3 players years before the ipod. I had a smart phone years before the iphone. The one thing apple did invent KILLED innovation, which is the device rental scheme… They invented (or at least got people to accept) this “you don’t really own it, you just use what we give you” mentality which completely killed the old open tech world. Before apple, I could install anything I wanted on any device I owned. After apple, everything is locked to the corporation and you’re breaking contracts by using your device as you like.

2nd point, yes, and I’m very happy it’s an option.

–Not worth replying w/ another off topic post, but the way I see it, apple is truely the enemy of open source. Their entire corporate culture is We own it, We make the decisions, We tell you what is best, We control what you use. It’s a nightmare. Even MS is more open than apple.
And if you want to get in to the real history of it, MS has bailed Apple out multiple times in its history. From helping them code their original OS, to a huge cash gift to try to keep them afloat when they were having trouble in the early 90’s. There’s just no reason or place for this apple fan boy stuff in an open source arena. They don’t deserve praise.

1 Like

You took it literally :slight_smile: it was just used as an example how one cheats the other or vise versa.

I am a big fan of open source so I am with you on all subjects.

p.s. i better remove apple comment, looks like it hit a nerve.