Quadcopter controller

Hello everybody!

I want to build very cheap quadcopter (max. 200 USD) and I thought it's very much cheaper if I use arduino nano, not ardupilot. This site: http://dronesandrovs.wordpress.com/2012/11/24/how-to-control-a-brushless-motor-esc-with-arduino/ tells I can control ESC with normal arduino like arduino nano if I use servo library. So I want to ask you can I really control ESC in quadcopter with arduino nano and is it more difficult to use arduino nano than ardupilot. I know that there is gps and accellometer etc in ardupilot, but I think they are not required.

Thank you for help! Regards Elias

can I really control ESC in quadcopter with arduino nano


is it more difficult to use arduino nano than ardupilot.

Since the Ardupilot includes all the hardware and software it is likely that starting with a bare nano and no software will be more difficult.

Some people use http://www.multiwii.com/ It runs on atmega328p and it works. Search for "multiwii flight controller" on ebay - a lot of 328p based controllers there..

Definitely check out multiwii.Works very well (I fly a quadcopter with multiwii). Has basic flight features as well as more advanced stuff like GPS support. All you have to do is connect the correct sensors to the correct ports as shown here: http://www.rcgroups.com/forums/showthread.php?t=1340771

Have a look at this page:


They have readmade controllers (all arduino based) with gyros, accelerometers, etc already made up for much less than you could do it yourself.

They also have the code, which you could modify yourself, or you can write your own from scratch.

If you start with a basic Arduino, by the time you add accelerometer, gyro, etc., you'll end up with something that weighs a lot more and costs more than one of the cheaper all-in-ones such as the ones that HobbyKing.com carry.

Hi Elias,

You can control the ESCs using the receiver via Arduino. Check out this link https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=8&ved=0CFgQFjAH&url=http%3A%2F%2Frcarduino.blogspot.com%2F2012%2F04%2Fhow-to-read-multiple-rc-channels-draft.html&ei=srgJUpK4BsXv0gWIiYCgBw&usg=AFQjCNFHRDRwVBw1oqcIh22lU8OMPT4XNg&bvm=bv.50500085,d.d2k&cad=rja

I’ve taken the code from the above link to read the throttle, aileron, elevator, etc. signals from the receiver and then passed the appropriate PWM signals (using the Servo library) to the ESCs to control the motors. I can confirm that this is all doable with some effort and highly recommend it if you want to learn things like interrupts, PWM control, etc. You can also purchase the 10 dof sensor stick from hobbyking.com for just $30 (http://www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=26913)…with this sensor stick you will get 3 axis accelerometer and gyro, etc. using which you can try some PID algorithms to stabilize your quadcopter! If you have the time and are brave enough (!) you can even try to write a Kalman filter code to get the most optimal orientation of the quadcopter given that the angle calculated from the gyro tends to drift and the angle calculated from the accelerometer suffers from errors when the quadcopter is accelerating + errors due to measurement noise, etc (I’m trying to write such a code currently).

If you have receiver and transmitter pair, you can get the other parts (motors, propellors, esc, quadcopter frame, arduino, sensor stick, lipo) for < $250 if you buy from a website like hobbyking.com where the prices are quite low (located in India, I find this website most convenient for me but there may be some other website that is better suited for your location).

Sorry for the late reply and hope that you find my suggestions useful!