# Ardupilot on Raspberry Pi

I'm making a quadcopter for the first time and want to be as low cost as possible, and when it comes to flight controllers APM is the best open-source project, and is compatible with Raspberry Pi.

My question is, will it perform as good as of the shelf APMs, if I add GPS, IMUs, and all of the other sensors, the same as in ready-made?

Consider that APM is clone from ebay.

Firstly, you may be confusing ArduPilot/ArduCopter software with the ArduPilot Mega (APM) hardware platform. ArduPilot/ArduCopter is indeed a great piece of software and is still maintained. The ArduPilot Mega (APM) has been discontinued, and as such, has very limited support and development.

Regardless of that, I looked into this whole issue, of which hardware platform to choose, a while back, see Flight Controllers. What you need to remember is that some of the newer, and smaller, FCs are using very fast processors (i.e. STM32F4), which are dedicated to the flight controller, without having to use a portion of their limited processing power/time to deal with unnecessary I/O activities, which could affect the Pi.

For example, the newer processors used in the SP3 Racing F3 and the Naze32 and even the underpowered CC3D running OpenPilot/LibrePilot can be, or feel, more responsive, than a fully loaded Pi running ArduPilot/ArduCopter.

Admittedly the ArduPilot software is very expansive and fully featured, but has, over the years, become rather demanding, so much so that it has outgrown its AVR platform - that is to say, the latest version (3.3.x) will not run on an Arduino Mega (or Uno) (i.e. ArduPilot Mega (APM) 2.6 is no longer supported and which is limited to version 3.2.1), and requires a PixHawk, or one of its derivatives, to provide sufficient processing power for the drone not to fall out of the sky, or even take off.

It depends what you want the software to do. If you need high response speeds (for racing) then maybe the Pi is not the way to go. I you want an all singing and dancing flight controller then a PixHawk might be a better bet. However, the Pi does have its advantages. The question is do you require those advantages?

Finally, you say that the APM you want is from eBay, so (as I have already stated above) that will be a APM 2.6, or if you are unlucky, or cheap, APM 2.5. This will not run that latest version of ArduPilot/ArduCopter, but probably perfectly adequate for a starter quadcopter. However, if you want all of the latest ArduPilot/ArduCopter software, then a PixHawk, or clone thereof, is going to last you longer, and provide much better performance, but cost twice as much (\$40 vs \$20).

Also, if you use the Pi and then have to buy all of the additional sensors separately, then it will cost [much] more than if you had bought a fully featured Naze32 Full (not just 10DOF) Revision 6.

If you want to save money, get a CC3D or a Naze32 and run LibrePilot. You can always upgrade at a later point. I, also, wanted an APM, or Arduino based board, but after really looking into it, I realised that it just wasn't worth it anymore, and that the software has outpaced the hardware. Three or four years ago, it probably would have been perfect - now, not so. Likewise, I wanted to use a Pi, but then realised that it would be too slow (i.e. unresponsive) for my requirements. I ended up getting the latest and greatest Naze32, and a SP3 Racing F3. However, I still want to use ArduPilot/ArduCopter, and will do, in a few years, when maybe, probably, an even better platform than the PixHawk will come around...

Disclaimer: Please note that the above is only my opinion, and, as such, others may choose to disagree, or have a completely different take on things.