Hi,
I know there's a lot of confusion out there on the onboard software question and I've been doing a bit of research on my own. Most of the posts I found are from a few years ago and since things seem to change fast I thought I'd try to get an up-to-date version. Just to be clear, the focus is on the onboard flight stack, not the hardware. I also understand that they use the same firmware, this is pretty clear: http://ardupilot.org/dev/docs/learning-ardupilot-introduction.html
So with that out of the way, how does ArduPilot compare to PX4? Objective answers would be appreciated. I would be interested in learning more about: reliability of the software, maturity, features, performance, potential limitations one should be aware of, support and compatibility (hardware and software), community size, main contributors / companies / groups backing the project, how active the project is beyond [1] and [2], and what we can expect in the future.
[1] https://github.com/ArduPilot/ardupilot/graphs/contributors
[2] https://github.com/PX4/Firmware/graphs/contributors
For my use case in particular I would be using a Pixhawk and this would be for a VTOL/quadplane.
Thanks!
Replies
Which one is this?
Also I'm reading here that the Solo uses a "Pixhawk 2" ? I'm confused. Isn't the Pixhawk 2 the cube -- http://www.proficnc.com/?
Is the PX4 autopilot supposed to have (generally speaking) the same functionality of the ArduPilot?
I saw some demos on YouTube, and I got the impression that the PX4 autopilot is just for autonomous vehicles - they have these wonderful examples of obstacles avoidance and optical flow capabilities. Also, I found a drawing of its flight stack and it has all these advanced algorithms in there. So is there a basic version which is autopilot and an advanced one which is full of visual algorithms?
It's more confusing because I see some guys from ArduPilot saying that they have great cooperation with 3DR. But aren't they competitors?!
They don't ArduPilot uses the PX4Firmware (it a middleware layer) on Pixhawk to access the underlying sensor data. They are essentially very different flight stacks and firmware in that respect.
ArduPilot is community focused, but has been commercially developed via funding by 3DR for the last 4-5+ years and is very mature flight stack. It powers the 3DR Solo and many other commercial products. It's an open product and all development benefits the community. This community has helped put 1000s of hours of testing which has made it the reliable platform it is. There are any commercial enterprises doing professional mapping services all using ArduPilot, even 3DRs sitescan uses ArduPilot powered vehicles.
PX4 uses a more permissive licence and has not had the community exposure and testing of ArduPilot. Its a much younger flight stack, but it's middleware and OS layers have greatly benefited from the exposure to ArduPilot being also supported. PX4 is in some consumer drones like AirDog and Hexo+ but it's unclear how close those versions are to the core stack. (Thee's also Fleye, but it's yet to be release. I'm a backer so looking forward to flight testing that)
If you have more questions about AduPilot and it's variants, please come and chat with us at http://discuss.ardupilot.org ArduPilot new community home.
Anybody can help?