Multiwii Loaded Arduino Nano Quadcopter Take Off Testing

After the arduino connection testing, all the parts seem working fine (IMU, arduino, receiver, ESC and motor). So the next step is to try to do a take off test. I need to build a flight controller adapter to sit all the electronics on it (IMU, Arduino etc), which can also cut down the number of cables I need to connect the ESCs and receiver. But I wanted to make sure the system works (can take off) before I spent time doing it, so I keep everything on a breadboard to carry out the test.

Issue – Quadcopter flips on take off

But it didn’t work! It just keeps flipping on take off. There were a few things I know which might cause this:

  • Sensor (Gyro + Acc) not calibrated correctly – need to place on a plat and level surface and calibrate first.
  • Sensor Orientation might be wrong? e.g. upside down or wrong way round, you can check this in the GUI.
  • Calibrate ESCs
  • Propellers are not the right size. Generally the manufacturer should recommend the appropriate prop for the motors. You need larger props with fewer cell battery.
  • Make sure the motors are connected in the right order, and props are rotating in the right direction.

To Calibrate ESCs:

its in config.h here is the procedure and please please please pay attention to the first detail

2. open the sketch in arduino IDE, uncomment //#define ESC_CALIB_CANNOT_FLY 
3. upload the sketch to your flight controller.
4. remove the usb/ftdi cable and all power from your flight controller, then attach your battery
5. listen for the beeps stating that calibration is being performed (my beeps several times, plays a chime song, then gets quiet)
6. remove power, then reconnect your ftdi/usb cable
7. open the sketch in arduino, re add the // to #define ESC_CALIB_CANNOT_FLY 
8 reload the sketch as it was prior to the calibration.

you are now complete. 

what did this do? (for anyone reading this who hasn't dealt with ESC's and multiwii long)

this is the best way to make sure that the upper and lower limits of your speed controllers are exactly the same on every motor on your copter. if they are not, the software will have difficulty maintaining stable flight, even when hovering.


I couldn’t find the cause of this problem, so I build the adapter anyway, it might be the sensor is not fixed in position and shakes when motors are rotating. I describe how it’s built here.

Later on I found that when I turn on throttle (only a little so it stays on the ground), the sound from the motors on one side is getting louder even though I am not increasing throttle, and eventually it gets to a point where it flips.

I realized it’s the motors are the wrong way around! so I swapped the diagonal motors around, and everything works as expected.

Some questions during research

Should I connect all BEC Vcc and Gnd together in parallel? 


How to connect ESC and motor (when all the cables have the same color?

It dosent matter what order. If the motor spins the wrong way after your done just swap any two wires and the motor will spin in the other direction.

what the maximum number of channels supported by Multiwii?

Four base channels (throttle, yaw, roll, pitch) and 2 aux (mode and something else).

Two: AUX 1 on “MODE” and AUX 2 on “D8” or “D12”. You have possibility to use PIN8 or PIN12 as the AUX2 RC input. It deactivates in this case the POWER PIN (pin 12) or the BUZZER PIN (pin 8)
For AUX 2 uncomment into config.h one of the two lines:// #define RCAUXPIN8 or //#define RCAUXPIN12


There are still works to do with the PID value tuning.

Here is a video.

6 thoughts on “Multiwii Loaded Arduino Nano Quadcopter Take Off Testing

  1. MRH

    Hi Oscar
    You said about power pin and buzzer.How can i see my battery voltage on The GUI?Do I need special module or sensor for that?How I connect battery to my FC board?

  2. Salman Farsi

    Can you please post or email me the circuit diagram, so I can join all the components in proper way?



Leave a Reply

Your email address will not be published. Required fields are marked *

For prompt technical support, please use our forum I check blog comments weekly.