Help with Multiwii multicopter electronics - RC Groups
Thread Tools
May 19, 2012, 08:13 AM
Registered User

Help with Multiwii multicopter electronics

Hi all,

I’m starting with Multicopters and I’m pretty lost. I’ve got a lot of doubts about the electronic aspects, there are a lot of things that I don’t understand. I would appreciate any help.

My first doubt: I’ve seen out there that many of the Multicopter developers use Arduino and the Multiwii software. But here I get lost. Am I able to use whichever chip I want – having enough pins, of course – and then using Multiwii software (which is the one I’m interested in) or do I have to use chips that are specifically for using Multiwii? Can I use, for example, PICAXE and Multiwii?

Another thing I don’t get is the whole bussiness about the PID. I know that they are values to controle the roll, pitch, yaw and so on. I’ve downloaded the Multiwii PID and it is this: (shown in the attach). But my question is: If I use the PID for adjusting the values, then what does the programme do? Is it “connected” to the PID application, or the PID is just a thing to test my values in the graph and then I have to change the values in the programme?

Thanks in advantatge and I apologize for my bad English (and for my newbie questions).
Last edited by h_e_c; May 19, 2012 at 01:23 PM.
Sign up now
to remove ads between posts
May 19, 2012, 09:46 AM
DJI Support - 107 Certified
Tahoe Ed's Avatar
h_e_c. Welcome to the sport. MK is short for MikroKopter and is made in Germany. I think that you are referring to the MultiWii controllers. Unless you have a solid background in playing with code, I would not advise a MultiWii as your first project. I have one of Goofy's Arduino Mega boards and Jussi's 9DOF sensor boards. I tried to like this for like a year. I finally got frustrated and put it in a baggie for later use. The code is an open source work in progress. They will eventually get there but their are so many options now that I think it will be relegated to the experimental crowd. In my opinion get a DJI Naza controller. Set up is easy and you won't be dealing with PID's etc. Good luck.
May 19, 2012, 11:13 AM
Registered User
First, thanks for answering, Tahoe Ed.

Sorry, I thought that MK standed for Multicopter. Referring to your advice, I've been programming with C++ for a long time and, although I'm not and expert, my knowledge about programming has served me well. I want to use Multiwii, that's already decided because I'm on the final project for Batchillerato (I think it is the same as A levels in England), and I want to do the most part of it that I can do on my own.

My basic doubts are about in which microcontrolers would the Multiwii programme work, and why do we have the PID multiwii programme I shown on the first message, because I don't understand how does it work that: Is it just for testing your PID looking at the graph or do I have to use it in the programme, or download it in the microcontroler, or something else? That was my main question, sorry because I think I did not express myself well. Could you help me with that point?

Thanks again.
May 19, 2012, 11:20 AM
DJI Support - 107 Certified
Tahoe Ed's Avatar
Here are a couple of references for you:
May 19, 2012, 11:49 AM
Registered User
It has been ported to other micros but sounds like you may want to stick with the arduino platform which is atmel avr based. A blank atmel does not have the arduino bootloader on it. Everything you need is on the site and their thread here. The arduino software package programs the firmware onto the chip and the multiwii GUI reads out the settings and writes new settings to the controller by clicking on read/write buttons. The controller needs to be connected to do this of course. PID is the type of control loop software it uses and the PID settings are adjusted for stability of each craft. The default settings work fine for many.
May 19, 2012, 12:33 PM
Registered User
Thanks both for answering.

Referring to Tahoe Ed's links, I've been already looking at that. Thanks anyway for posting it. I will struggle a little bit more with it if I decide to work with Arduino.

To pug398, I really don't get it all about what you say. I deduct from your comment that my changes in the Multiwii PID program will be automatically changed into the board, where I've first put my Multiwii code. Am I right?

And about the other microcontrollers supporting Multiwii, how many are there? It is possible, with a medium knowledge in programming, to make a bootloader for a chip that hasn't got it? I'm specially interested in using PICAXE, because my teacher will appreciate it more and then I won't have to pay the microcontroller (they will supply me with them). Has anyone developed a bootloader for that? Do you think it's possible to do it? (because PICAXE has to use an interprete BASIC stamp to an EEPROM, and therefore the speeds are slower. There is, though, the option to put a 32MHz clock speed, but I think it will absorve lots of other things only in favor of that.) Will the GUI program work in other environments different to the Arduino one? Or is the GUI only working for Arduino?

Thanks again.
Last edited by h_e_c; May 19, 2012 at 02:07 PM.
May 19, 2012, 06:33 PM
DJI Support - 107 Certified
Tahoe Ed's Avatar
I would look at the code. Can you port that to PICAXE? That is your real question. As far as the controllers, most are ATMEL based but there are a few others. Timecop has a Naze 32 controller that uses MultiWii. You might want to email him and see if he can help answer your more technical questions.
May 19, 2012, 07:35 PM
Registered User
Originally Posted by Tahoe Ed
I would look at the code. Can you port that to PICAXE? That is your real question. As far as the controllers, most are ATMEL based but there are a few others. Timecop has a Naze 32 controller that uses MultiWii. You might want to email him and see if he can help answer your more technical questions.
Thanks for answering, Tahoe Ed.

I have been able to download the Arducopter program. One weird thing I don't understand is that Arducopters seems to be just a APM2-based program to locate the Multicopter. That is not for adjusting the PID, so I don't think I have to use Arducopter or Ardupirate (since it's basically the same), because I don't need any router nor waypoints. Is it like this? Am I right or I haven't I understanded it well? And, moreover, the Arducopter downloaded does not work, so I think I will leave that aside for now.

Referring to using PICAXE, I will try to contact Timecop as you suggested me. But what is Naze 32? Is it a "blank" microcontroller (like PICAXE) or is it one already including a program or prepared for that?

I've downloaded the Java Multiwii source code, but it seems very short. It is not the source code itself (because it is the 1.9 CUI too), so maybe I've done something wrong. I think that it is probably the GUI source code, not the Multiwii source code. If you know where I can download it, please I would appreciate some link.

Thanks again for your answer (and patience).
May 19, 2012, 07:49 PM
DJI Support - 107 Certified
Tahoe Ed's Avatar
Once you download the code you have to go into to the GUI to set the PID's. There are two steps to the process. First you download the code and then you set it up in the GUI. You need to go back and read the instructions from the beginning. It will make sense eventually. Like I said, I spent a year and a half trying to work it out. Never happened, but I flew with a guy today which is a multiwii user. I may get educated.
May 19, 2012, 07:58 PM
Registered User
Thanks for answering.

No, my question was not that. I was only saying that I had probably entered the GUI (the PC application itself) code, and that that was not portable to PICAXE. That's the main problem now, I can't find where the real Multiwii source code is. If I can take the code of what I put inside the Multiwii then I will translate that. My impression was that the GUI was only for adjusting the values directly with a USB into the Arduino, but the Arduino should first have a program inside. That program inside is the one I want to port to PICAXE.

But I could have interpretated it wrong and could be that the GUI is the same as the Multiwii core. Are you saying that? That's my main doubt now.
May 19, 2012, 09:08 PM
DJI Support - 107 Certified
Tahoe Ed's Avatar
Have you gone here?

I always uploaded the software to my Arduino 22 and then to the controller. I would think that once you put it into Arduino 22 you would be able to save it in the format you needed. I may be wrong since I am not a programmer.
May 19, 2012, 10:03 PM
Registered User
Get the multiwii software package. When you extract it you have the firmware package and the GUI config package. Open the firmware package and use a text editor to open the .pde (or .ino) file and you will see the source which is in a form of C. See what you think about converting it to basic the picaxe runs. You might could write something simple yourself using a picaxe x2 @32mhz with hpwm and analog gyros but still not sure it would be fast enough. Since you can buy complete mini Uno arduino kits with bootloader for $13 and usb to ttl converter for another $7 I do not see why you would bother unless your instructor absolutely wants picaxe. You can explain how you will get plenty of education just figuring out how to make muliwii work
May 20, 2012, 12:09 AM
Registered User
I don't think a PICAXE had enough I/O to run as a flight controller. Unless there are some bigger models I haven't seen.
May 20, 2012, 06:46 AM
Registered User
Thanks all for your answers.

To pug389, I'm afraid that my teacher would prefer a lot PICAXE because he is a fanatic of it so, as my grade depens on him, I think I'll try to do something with that PIC.

I think PICAXE has enough pins, I can take one that has 40 I/O. The thing that really troubles me is the speed, like says pug389. The max. clock speed is 32 MHz, so I think the margin it's very narrow, because it is not the default speed. Its default one is 8 MHz, which in comparison to the Arduino's 16 MHz are very few. That's why I've been wondering to use PICAXEs as ESCs, and then use an Arduino as the core of the whole system. Here the save would be pretty good because a small-meduim PICAXE cost 2 (and it's free for me) instead of the 18 of every ESC. Do you know is this is possible using the Multiwii software in Arduino and then make it translate the signal in PPM to the PICAXEs used as ESCs? I've found a Multiwii raw beta PPM injector, it's called MultiWii_Pre4_HT, so I hope I could use that. Has someone tried already to do something similar?

To Tahoe Ed, I've downloaded the code in your link but I think that Ardupirates is only a GPS positionament (that's what I've understanded, I'm not sure ) so I think that, for the moment, the only thing I need is the Multiwii source code, and now I think it can be easier to plot it to PPM because someone has done a beta for opering with it.

May 20, 2012, 11:50 AM
Registered User
All kinds of neat add ons for a quad you can accomplish with a picaxe. Just don't think its suited to flight control. You can do a brushed speed controller with small picaxe but brushless speed controller is totally different. How about sonar height hold using picaxe?

Thread Tools

Similar Threads
Category Thread Thread Starter Forum Replies Last Post
Complete MK Electronics for sale fpv-tor Aircraft - General - Miscellaneous (FS/W) 11 Apr 13, 2012 10:35 PM
Help! I need help with the electronics of my RC project! jpoopdog Robotics 4 Mar 12, 2012 01:01 AM
Discussion Anyone have DJI AND MK electronics? malcr001 Multirotor Drone Talk 5 Feb 07, 2012 08:36 PM
Discussion Electronics Help With A Super Cub Build Primate Electric Plane Talk 2 Jan 01, 2012 06:04 PM
Help! Help with Electronics in a Guillows Corsair Conversion Glider Squirrel Scale Kit/Scratch Built 10 Dec 12, 2011 11:20 PM