The first step of getting MultiWii functioning on your multirotor involves flashing the actual software to the control board. The MultiWii software is completely open source and is getting updated constantly, so it is important to look out for new versions of the software every now and again. The steps below will detail the process of how to download all the files and programs necessary to flash MultiWii to your controller board.
Step 1. You want to first download all the files and programs onto your computer before you begin installing anything.
The first thing to download is the Arduino program. It's essentially a tool that allows you to edit and flash the
MultiWii software to the controller board. The version of the Arduino software is important because it needs to be
current with the MultiWii software. For the latest version of MultiWii, you will need to install Arduino 1.0 available
at the Arduino download page.
Step 2. After you download Arduino, you need to download the MultiWii software that you will be flashing to the controller
board, as well as the Graphical User Interface (the GUI). Both of these files are located in one zip folder. Go to the
MultiWii download page and download the file labeled "MultiWii_2_0.zip." This is the latest stable release of
MultiWii and will be compatible with the Arduino 1.0 program.
Step 3. Once both software files have been downloaded, you need to first install Arduino. Open the Arduino folder you
downloaded, unzip the contents and then click on the file called "arduino.exe" to install the program. Next, go to
the "MultiWii_2_0" zip file you downloaded, unzip its contents and place it on the Desktop so that it is easy to reach
in the next step.
Step 4. Now that you have Arduino installed, you'll want to open the software you'll be flashing onto the controller board.
Begin by opening Arduino. Once open, click on File > Open and a file browser should pop up. You want to
navigate to the MultiWii_2_0 folder on your desktop. Once in the folder, follow this path to get to the software:
MultiWii_2_0 > MultiWii_2_0 > MultiWii_2_0.ino. Make a note that the first two folders in the path are labeled the
exact same name, as is the ".ino" file. Once you get to the ".ino" file, click open and let Arduino load the program.
Once loaded, you should see a screen similar to the image below:
Step 5. Now that you have loaded the program into Arduino, you'll want to make a few tweaks to the software so that it is
compatible with your specific set of hardware. To do this, first click on the "config.h" tab located near the top of
the screen. The config.h section will show you all the configurable parameters that you can adjust in order to make
MultiWii compatible with the hardware on your controller board. I can't give you specifics as to what you must
adjust when configuring MultiWii because everyone has different hardware on their multirotor. However, I can
give you a breakdown of the major parameters in the config.h section and hopefully you can use this to adjust the
settings on your multirotor.
Step 6. The first thing you will need to change is what type of multirotor you have. To select your multirotor, you delete
the two "//" behind whatever you want to select and the color of the text will turn to to black. To deselect
something you simply type two "//" behind whatever you want to deselect and its color will turn back to gray. In
my case, I selected the "QUADX" configuration.
Step 7. The next parameter I usually change is the I2C_SPEED. This is related to how quickly the controller board and the
ESC's talk to each other and I usually choose the "400000L" parameter to work with my ESC's.
Step 8. Next, I scroll down about a quarter of the way and select the type of controller board I have. This is important to
define correctly, because MultiWii needs to know what specific sensors your board has in order to operate at its
best. For my X250 Quadcopter, I choose the "FREEIMUv035_BMP" parameter. I suggest you research your own
board and make sure to select the correct model.
Step 9. Lastly, the final parameter I change is the MOTOR STOP setting. If this is defined (removing the "//") then the
motors will not spin when you arm the board. If it is not defined, then the motors will spin at an idle RPM when
the board is armed. Personally, I don't like anything spinning when I arm my quad, so I define this parameter.
Step 10. Now that all the parameters have been set, it's time to prepare your controller board to connect to the computer.
First, connect the USB to the FTDI connector that comes with your board. (Note: if you have all your ESC's
connected to the board at this time, you will need to connect your LiPo battery to the quad as well in order to
provide it with enough power). Connect the other end of the USB into your computer. Once connected, the
computer should recognize the board and install any necessary drivers. The image below shows my X250
Quadcopter which had a built in FTDI programmer, so the USB slot was on the controller board.
Step 11. After you have connected the USB cable on both ends, LED's should start blinking on the controller board. Going
back to the Arduino program, go to Tools > Board and select your specific board from the list provided. Next, go
to Tools > Serial Port and select the serial port the USB is plugged into. This will vary for everyone and if your
serial port does not show up, then you might have a driver issue. I suggest you consult the MultiWii
troubleshooting guide if that happens.
Step 12. The next thing to do once you have selected your board and the serial port from the drop down menu, is to go to
the top of the Arduino program and click the button that looks like an arrow pointing to the right. This will verify
that the code you are about to flash is good to go, with no errors, and will then upload the code to the board
Step 13. The flashing process will take anywhere from 10-20 seconds. If you have your motors connected at the time, you
will here them beep a few times. Once the code is done uploading, the Arduino program will say "done
uploading." That's it, you've successfully flashed MultiWii onto your controller board! From here, you can close
the Arduino program and then disconnect your controller board from the FTDI programmer.