I agree, I really don’t see Ardupilot being competitive in the smaller quads where the Baseflight, Cleanflight, Raceflight type of controllers are dominate. And the amount of “hype” some of those guys push. but I find it perfectly at home in larger fixed wing craft like Bixlers, Stratosurfers and bigger, as well as some of the medium sized, and up, flying wings. I think there is a pretty big market there, and Ardupilot is more than capable of operating as a FPV flight controller…
As far as configuring it, yes it takes a little more time. Maybe there is a way to use some generic profiles and some tuning sliders to help users tune?
Good points. Is the effort ArduPilot would put into pushing it for racers worth the (likely very little) return? That said, I think there is still an overall marketing void to fill for the hobby market and professional market.
I could be wrong, but the racers are very fickle, and many fall victim to ‘snake oil’ theories of what works and what doesn’t. But I am really talking about the guys who build a Bixler, Skyhunter, Anacondas. the guys looking for running pan/tilt cameras on the canopy, multiple HD cameras, flying long range (relatively speaking). And the guys flying the larger wings, flying tandem, etc…Still don’t see as much market penetration as I thought there would be.
Maybe the partial solution is to recruit a profile club builder group who donate profiles for very common stock builds. People are always asking for this. The definition of the build must include every component and the build should be such that it is easily reproducible with commonly available components. Ardupilot creates the template that the builders group members use to construct a profile.
Then a new Wizard system with Mission Planner that starts with the build profile list. If you build to the exact spec of the build wizard profile you should be able to have a reasonable maiden with no tuning.
[quote=“Rusty_Jones, post:1, topic:25383, full:true”]one of the shortcomings of Ardupilot is its reputation for being a “tinkerer’s” flight controller.[/quote]well, a honest opinion: I think that this is about correct, that it is tinker-ish.
Pl, don’t get me wrong, I’m not saying this with any negativity, or that this would make it non-professional in it’s performance, it has it’s advantages, but I think that this is what it is.
The number and character of parameters would be one example. For many one really needs to dig deep to properly use them. If it just would be few, OK, but with that many. And the number and complexity of their nature increases. Sure, there are efforts to lessen the efforts, but they often are not very effective. E.g. compass calibration. The layout screen is confusing. Too often it doesn’t finish, and needs to be done several times, for reasons not always clear, which makes one play with different confidence levels. The proper dance is not described well and quite a bit of a mystery. Or getting it’s orientation right then it’s non default. And so on. It’s not anywhere near like that you do a simple e.g. figure8 dance once and quick and are all done. Or why exactly is it that the motors are irregularly numbered with 1,2,… but also regularly with A,B,…? Tuning. No, don’t let’s start talking about this, would take too long. And so on and forth.
I do not think that you will come by this “shortcoming” with just some better vocal or visual efforts, or belittlement like “takes a little bit more effort”.
I too, btw, think that you shouldn’t try to be everyone’s darling. You just don’t appear to have the resources for that. E.g. you want to be the professional autopilot, yet largely rely on hobby-ish buses, while professional one like CAN see slow if no progress. I just recently stumbled about some talks/presentations of 2014, which left me with an impression that CAN was more important then than now. (choosing this example obviously has a personal subtext, sorry ;)). You want to be the safe autopilot, and support plenty of magnetometers, but don’t make any good use of them. Some better focus, and ideally with a clearer communication of the road map, would help - you and us - a lot, IMHO.
I think cost is not the biggest issue (when we talk about 100$-ish). If an ArduPilot would bring clear advantages over other flight controllers folks would use it. (I rather would like to have B/C/R/XFlight running on my pixes than vice versa ;))
So I’ve been using ardupilot with quads for a few years now. Took a while with a lot of perseverance, learning how to solder, how basic electronics work, how to interface different components, how to superglue/cabletie things together, how to program micro-controllers, how to load and configure ardupilot, tweak settings, calibrate sensors etc etc, and eventually got quads flying.
I got a very simple beginners plane for christmas (nano talon). Took me about 30 minutes to put it together (2 minutes), hook up the radio (5 minutes) and pluck up the courage to launch it (23 minutes), with it’s $5 onboard controller. Had a few nose dives into the ground (nose heavy, I didn’t know about CoG) but eventually got it flying great. Then, I took about a week to fit a pixhawk and Here GPS unit and teensy telemetry system, wire it all up, and then sit and go through the extensive arduplane documentation to configure it. Even with several years experience of arducopter it took me quite a while to configure and calibrate everything, balance CoG, test, test and test again, make sure everything is exactly working how the documentation says. Took it to the field, crash, crash, crash and end up with a plane in small pieces.
I’ve no doubt it’s a great system, but boy is it hard for new folks to get into.
I would completely agree with this, it’s a waste of time to go into the racing arena. It’s a very specific niche market and full of people who think they know a lot more than they do, and are obsessed with fantasy technical data which often bears little relation to reality. I would guess it would also be very difficult for a generalised system like Ardupilot to compete with highly specific, dedicated, narrowly tuned controllers for a specific purpose.
From my point of view, the main problem is that Ardupilot has not moved with how the market and environment has evolved, it is too inward looking at the central flight controller. The flight controller only makes up a small part of a modern UAV - you also need good hardware - telemetry, controllers, frames, planes, onboard computers, cameras, gimbals and in particular integration of all those parts, something which is massively lacking. It’s really, really hard to buy a plane or a copter that a normal hobbyist, prosumer or professional can plug in and get flying, with Ardupilot at the centre. From the software side you need easily integrated onboard computers, mapping software, computer vision frameworks, digital FPV, HUDs, AR, obstacle avoidance, gesture recognition, visual tracking, visual navigation, object detection, modern GCS, good analysis tools etc etc, which again are sorely lacking from a plug and play point of view. You can do some of these elements, to a limited degree, if you try really really hard.
In the meantime, DJI has killed it with, let’s face it, pretty darn amazing products. The technology and capabilities in the new mavic air is astounding for the size and price. It’s light years ahead of anything in this environment. And their prosumer and professional offerings are very, very good now. At the bottom end there are a million cheap indoor copters which are quite capable and robust. Racers are… racers. There are more and more high-end autopilots and integrated solutions. I think that’s why there’s been a very noticeable drop off in interest and participation around Arducopter - there’s just less and less need for it as it becomes relatively harder to buy and implement day by day. At the same time px4 seems to be investing in laying the ground work for the more serious/academic work with uorb/rtsp/VIO etc and with it’s licensing is much more attractive to OEMs. So Ardupilot is getting squeezed on all sides into more and more narrow niche market, without really knowing what that niche is.
IMHO, there needs to be a much bigger effort with the community and partners to form the wider ecosystem around the flight controller, so that it’s much easier for people to get into and stay with Ardupilot. There needs to be much more off the shelf RTF copters, planes and other hardware that you can program and/or add cameras/sensors to, without spending a month with a soldering iron, scissors and glue. There needs to be modern controllers with clear telemetry displays for safety and navigation, not stuck on these huge old-school rc controllers from the 1970s. There needs to be onboard computer frameworks that are useful and easy to program, visual frameworks with examples that people can get into and do funky things with, ready to go mapping system that people can use for surveys, and community effort to get what are now expected functions such as digital FPV, obstacle avoidance, gesture recognition and object tracking with cheap off the shelf hardware. There needs to be some kind of community evolutionary effort to get some of these things going without continuously re-inventing the basic wheel and going no further. I say this as someone who has tried really, really, really, really hard for a couple of years to do a lot of this stuff, and got absolutely nowhere.
As a few examples of what I mean:
This is a great hardware example of a nicely built simple quad with well integrated flight controller, onboard computer, cameras and gps. Unfortunately it’s too expensive, runs PX4 and the onboard OS is hostile to developers who actually want to develop, but it’s still a really good example from the hardware side of things.
This is a perfect example: Ardupilot (I assume? maybe it’s px4), beautifully integrated airframe and front camera, battery and payload, VTOL airplane, ready to go for a decent price. We need more options like this! Even as a poor hobbyist/technologist, for the time and frustration it would have saved me it’s worth paying the price. VTOL is an amazing innovation that is blurring the lines between planes and copters and their use cases and Arduplane is leading the way, but needs hardware solutions like this to make it available to everyone.
There’s been quite a bit of controversial discussion around this lately, but it’s a really really good example of the community and commercial offerings doing something well. There are both open source and commercial products that give fantastic telemetry support on popular frsky controllers like the Taranis. The commercial offerings from the likes of C&T allow someone to buy something off the shelf, plug it in and get a professional level solution with no soldering, cable ties or programming. Regardless of what the opensource die-hards think of that (and I’m one of them!), it’s absolutely invaluable for the wider Ardupilot community to have something like this. We need more solutions like this for other problems!
Sadly missing from here would be the most basic and required function of all - digital FPV with integrated telemetry/hud. It’s amazing that there is no good opensource or particularly a commercial solution available.
Ardupilot has an awful lot going for it - incredibly bright developers, a very mature and capable flight controller, a really great community, and commercial partners. I really hope that it continues to flourish and can adapt to the changing world before it gets pushed into obscurity.
Wow, that turned into much more of an essay than I was expecting. Congrats if you’ve got this far reading.
Fnoop, In your comment is the example of the apples to oranges problem Ardupilot faces. You compare a DIY plane that you add a Ardupilot flight controller into and a RTF vendor DJI who gets to design systems from the ground up. The Ardupilot project is a flight controller that is it. Given that they don’t design systems it is amazing that you can adapt the Ardupilot FC to almost any platform on land, air or sea.
DJI on the other hand designs a single product and gets to integrate every component to be optimized to work together. It is much easier to produce a great flying product when the mechnical components are perfectly balanced and designed to work together.
Yes it would be nice to have a more integrated system with Ardupilot but remember it is a small, poorly funded group of volunteers for the most part. Given the resources it has produced some incredible products.
I for one would say that staying relevant with an explosion of new large corporate players is going to be hard. I also think that Ardupilot should shift focus to making the Ardupilot system more reliable and more well documented. I don’t think we can keep up with the minions working for DJI but that means we need to focus the resources we have.
That is one reason I have been lobbying so much for CANbus support. It could revitalize Ardupilot because I believe it would soon change the playing field around Ardupliot. Vendors who make products would have one standard cable and connector simplifying the whole ecosystem. The wiring of a build would no longer take huge amounts of time just hacking cables together. The builds would be simpler and more reliable. The real-time diagnostics would be improved.
To get all these benefits Ardupilot just has to nail down some decisions on the support of third party products integrating into Ardupilot via CANbus.
I built an example quad and it has three connections to the flight controller for a completely working quad. Just three.
That’s kind of my point - I’m having to compare a DIY plane because that’s pretty much as close as I could get to an off the shelf experience with Arduplane. I tried to find absolutely the easiest way in, and that’s what was recommended to me.
I don’t think I’m comparing apples to oranges, I’m comparing apples to … pears? (ok terrible analogy). I think a better analogy would be comparing Apple to Windows, Android or Linux. DJI have clearly modelled themselves after Apple - very nicely designed, totally vertically integrated, totally proprietary products. Windows and Linux on the other hand are not vertically aligned, they chose to produce the core software and then encourage others to integrate around that. But without the vendor and community support, they would be nowhere. I see Ardupilot as a bit like Linux - it’s an opensource core product with a strong community that has the potential to take over the world. Linux in a lot of ways eventually crushed or at least rose up against the DJI-like opposition of Windows and Apple, in a lot of ways.
Ardupilot isn’t doing that, yet. Why? License? Focus? Partners? Hardware vendors?
Absolutely, unfortunately a CANbus proposal was just turned down the other way, and there doesn’t seem to have been much (visible, to the outside) support from the devs. CAN support would be a great investment for the future, and would greatly ease integration and bring all sorts of technical benefits.
Love the cleanliness of your quad, that’s exactly what this community needs is advances like that!
Regarding the VESC proposal, the reasoning to decline such an old proposal was not so much about UAVCan or not (which VESC hasn’t).
We do have some very valid work being developed by the community (such as the great work @mike and @olliw42 have been doing) on the area of UAVCan, but also some commercial partners that are actively developing new UAVCan peripherals.
I really would like to see development and adoption to go faster, but…
Linux was started by a single guy in his bedroom, and is now by far the widest spread and most used operating system on the planet, and is likely only just beginning it’s true success. IBM’s huge investment in in Linux didn’t fund Linux directly - they invested huge amounts of money in themselves to use Linux in order to transform themselves into a services company, which has been incredibly successful. And in doing so, they have contributed significantly to Linux in terms of code contributions, legal protection, but most importantly they officially supported their entire world class leading computing systems on Linux, giving Linux a major inroad into datacentres and corporates the world over.
Linux has a lot of similarities to Ardupilot. It is a core, a kernel, not a complete product, but Linux has recognised the need for and embraced other hardware and software in order to make entire, world-class, world-leading products which have not only competed with regular commercial (Microsoft) and vertically integrated (Apple) products, they have in a lot of areas beaten them.
This is in stark contrast to the drone/UAV environment, which is moving rapidly more towards the Apple model (DJI) by the day, at the expense of open systems.
I knew nothing about Ardupilot when I got into quadcopters.I knew what I didn’t want though and so bought something similar but different.This happened to have an APM based flight controller which was dumbed down and set up for a beginner.A Cheerson CX-20 (Quanum Nova) to be precise.It fell out of the sky on it’s maiden.That started me off being a tinkerer and got me into Arducopter and Mission Planner to make it fly right.It was a slightly crappy version of the major player’s stuff but I now have around a dozen copters up to 960 hexacopters (and an X8 on the way).
I’ve also got a SkyViper and feel this is the way to introduce people to Arducopter.More entry level/intermediate copters from more manufacturers that can be flown as is with the ability open it up to full customisation when required.Tridge did a lovely job on the SkyViper.Let him loose on the world.
Probably the best way to attract folk is to state - Not DJ Anything.You’re only ever going to attract those that don’t want one of those on principal.Or tinkerers.
Thanks for the comments above. A few of thoughts of my own:
The comparisons to Linux are interesting because I often describe ArduPilot’s long term aim to be the “linux of autopilots”. This means we aim for ArduPilot to be reliable, flexibile, open and very widely used. Tridge often says he wants ArduPilot to be able to fly anything.
Re a “Road Map”. I think we will come up with an updated one at next week’s developer conference. James Pattison will be leading this discussion. We need to keep in mind that ArduPilot moves in the direction that the individual developers push it in (perhaps with guidance from their sponsor) so the roadmap will largely be a consolidated summary of their individual plans.
@fnoop’s comments about how today’s UAV systems are much more than the flight code are absolutely true. The weakness in the camera/gimbal and high quality video streaming is well known. We have APSync and Maverick but I don’t think either is competitive for live video yet and we should probably do more work on our APIs (ROS, etc)
It’s probably not totally accurate to say the developers are largely volunteers - it is perhaps true in terms of headcount but most of the commits come from funded developers.
the key to success is largely (but not completely) a function the investment of time and money. So a discussion of strategy needs to focus on how to increase this. I.e. how do we attract more developers (professional and/or hobbyist)?
the focus on RTF vehicles is a good one. Personally I’m actively looking for some companies to make low-cost RTF airplanes, rover and boats as a way to introduce ardupilot to a wider audience. I.e. doing what Tridge did with SkyViper.
One last thing, is that we sometimes get into discussions about strategy and come up with a lot of ideas which is great but remember we also need someone to actually implement those ideas. The core devs are already working very hard so we really need to widen the efforts to include more people.
I mostly use Ardupilot for “fun” in the freetime. That means FPV in my case. I have played around with betaflight, librepilot, iNav and other stuff like that. The only advantage i saw was the integrated OSD and powermodule, nothing else more. The flight handling of this boards is not that good and in some cases the tuning is as “difficult” as Ardupilot, to be honest. Especially when it comes to the “thousands” (i don’t really understand why there are so many boards, just make things cahotic to me) of little boards available on the market and what firmware/setups to run on them.
Furthermore MinimOSD quality is nothing less compared to betaflight/iNav.
Here an example of FPV with a large heli (8kg):
Here another example of bit more “acro” and some fpv autorotations:
It is not even possible to set up helos on the small “racer” boards.
What people refer to as ‘Linux’ wasn’t really started by a single guy in a bedroom. 90% of the work that makes up a Linux distro had already been completed by the GNU project and the Free Software Foundation. The port of Unix that brought it all together came more or less last. Maybe there’s a lesson there for Ardupilot or maybe not.
But Randy does that not also suggest that with limited funds Ardupilot can not be all things to all people? It means the vision statement is critical to having a focus and getting something valuable done. It is completely understandable that funding tends to drive the direction but it is a very fast moving technology and if there is no vision Ardupilot could take a wrong turn down a deadend and get lost. The project has accomplished so much to this point it would be a shame to lose the momentum it has built.
I would also note that the use of GIT is a major impediment to attracting more developers, at the hobbyist level, who could add significant features. I don’t know what the solution is because I am sure there are plenty of reasons the professionals want to use GIT but it should be acknowledged that the steep learning curve to master GIT can be too high for the average participant to invest in for a small submission to Ardupilot or the average DIY’er to test code. There appear to be a lot of people that can not get over the GIT curve and it takes a high level developer to coach them which is not a good use of developer time.
I had an manager once that used the analogy of all the team pulling on the same end of the wagon. If you don’t the wagon goes nowhere. When you have a composite of 20 different interests and purposes driven by separate funding it is difficult to do but I think it is worth taking the time to say what are our top ten goals? How does that compare to where the rest of the industry is going? What features should be we looking at that are not on our radar now?
Thanks for all the time you spend helping folks here on the forum in addition to all your other work.
I certainly think ArduPilot has a vision but I also agree we should write down a list of the top 10 things we want to do. I hope/expect we will come out with this as part of the developer “un-conference” this weekend.
Git is indeed tough for people not familiar with it. I certainly struggled when I first started using it although now i think it’s really great. We could improve documentation on how to do the basics with Git but it isn’t practical for us to move to another merge software. I think Git has pretty much become the standard.
I must say this discussion (and others) are clarifying my personal plans for 2018.
Additional thoughts to go along with the conversation…
A mission/vision statement would be great - I think that should come first and foremost. It would be nice if individual goals/lists tied directly to that vision.
Maybe this is more of an organizational thought, but it seems to me like the dev’s are the do-and-know-it-alls. You are great at what you do!! It seems to me like the dev’s run the show (and maybe the manufacturers), and I guess from a technical standpoint it makes sense. Maybe that’s why ardupilot has been seen as a “tinkerer’s” flight controller.
If the project/vision includes more than just code and technology development, then maybe other people could help in other areas (like making up-to-date videos, offering dedicated support, marketing, etc). There have to be at least a few people that would like to dedicate time to helping ardupilot, but they can’t code, and so they’re not recognized as a “dev.” How can they get officially involved? I’m not saying that the ardupilot team should drop the terms “dev team” and “developers un-conference,” but as it stands it seems like the project is mostly up to the smart coding people and businesses at the top, and us individual users don’t have a say. I get that the “un-conference” is meant to dispel some of the top-down thoughts, however I’ve never heard that it’s open or seen how to attend. It seems just a little private.
You guys have been great in the past, and I hope to see the community-driven project continue. And thank you for not being like dronecode…
In summary: I would like to see the team attract individuals with other skills to help grow the project - not just “devs.”