Here’s the BoM and some details for the components I’m using for the OhMini quadcopters. The big expense is getting all the basic support gear including radios and charger and cables/adapters, but once you have all that you don’t need to buy it again for each multirotor you build. In my case all this stuff is about $160. The quad itself less RX is about $100. I’m using a $18 RX but for this simple quad there are cheaper available, even one for $6. It just has to be compatible with the TX.
Pics of the OhMini Quad and OhMini H-Quad and my nephew’s first time flying a quadcopter. Here’s my fourth flight of the OhMini with an onboard camera.
OhMini H-Quad components for one quadcopter
HobbyKing USA
4 $7.64 Speed Controller
4 $9.88 Motor
1 $7.32 2s Battery
Multirotorsuperstore
1 $17.99 Flight Controller (Or the Acro Naze32 which I now recommend, with Baseflight firmware)
1pkg $4.00 CW Propellers (4 in a pkg, so each pkg has 2 spares)
1pkg $4.00 CCW Propellers
1 $0.99 Velcro Strap (can get these almost anywhere)
1 3D Printed Frame OhMini Quad or OhMini HQuad (I strongly recommend the H)
Here is a version of the OhMini H that should work with motors needing 16×19 hole spacing and here is a version for naze32 hole spacing.
~20 small zipties
Total $97.06 (at the time I first did this, prices change.)
Radio and support equipment, one-time buy items and usable for multiple multirotors
HobbyKing USA
1 $24.07 Battery Charger
HobbyKing International
1 $50.22 Remote Control (I highly recommend also getting a USBASP programmer and flashing the 9XR with OpenTX firmware)
1 $29.99 Transmitter Module (The Orange works fine, but I now use the FrSky DJT instead since it has telemetry)
1 $17.99 Receiver (If using a FrSky TX I like the D4R RX)
1 $14.95 3s Battery (batt for TX)
1 $5.78 FTDI cable (for connecting the FC via USB) (not needed if you choose a Naze32 FC instead of Multiwii)
1 $1.95 JST Cable (for charging batts with the Accucel6 charger)
1 $8.98 Power Supply (for powering the charger from 120VAC)
1 $1.98 Voltage Alarm (connect to batt to alert you when it gets low)
1pkg $0.83 JST Connectors (handy for making battery harnesses)
1pkg $2.39 Foam Pads (handy for mounting the FC to a frame)
Total $159.13 for controller/radio/charger/misc (At the time I first wrote this. Prices change.)
I recommend getting two of the 2s 1300 batts so you can change in the field to fly longer, and also getting extra props. Get each color in both CW and CCW so front props can be same color. I also recommend getting 1 or 2 spare motors if you can afford it, to have spares on hand.
Old info in italics, I now recommend using a Naze32 flight controller but here’s the original info for historical reasons:
The Multiwii Lite flight controller (FC) is a good basic board, but for a bit more I recommend the SE instead of the Lite. The SE has a Mag and Baro to play with additional flight modes but HK sells it for too much. The HK boards also come with FTDI though so you don’t need to buy one separately.
The Multiwii Lite at HK Flight Controller Lite
The Multiwii SE at HK Flight Controller SE
I got my SE for a much better price here. These FCs are 8 bit and work absolutely fine. For something smaller with more features and 32bit processors, I recommend Naze32 boards which run Baseflight. They don’t cost much more and are compatible with MultiWii protocol and GUI, plus have other tolls that I think are even better, like a configurator that runs in Chrome. The Acro Naze32 is a good replacement for a Multiwii Lite and the regular Naze32 is a good replacement for a SE.
As far as I can tell there is no MultiWii app available for IOS so getting a bluetooth dongle may be useless. You can run the multiwiiconf gui setup app on a mac though. I use Android and there are free apps for configuring the firmware via bluetooth.
A cheaper RX with 6 channels and (I think) no failsafe mode is Receiver but if flying only close LoS without interference is fine, and the FC has it’s own failsafe mode I think. A more expensive RX that has 4 channel ports but 8 channels in PPM mode is the FrSky D4R-II.
If you do want to flash OpenTX on the controller, you’ll need any AVR ISP programmer like USBASP they are common and the same as used for arduinos.
Lots of places sell heatshrink, I have a lot of different sizes on hand for general projects so haven’t had to order any in a long time but it’s handy for removing the plastic case on the RX and heatshrinking it for protection to reduce size and weight. Also, the motors come with 2mm bullet connectors and heatshrink but you have to solder them yourself. You don’t have to use them, you can just solder all the wires directly. You do need to do basic soldering to make a wiring harness with the ESCs. All the ESCs are wired parallel to a battery connector, and the motors are soldered either directly to the ESCs or to bullet connectors.
The Turnigy 9XR Mode2 Controller from HK has double the RAM of other sources, 128MB instead of 64MB which is nice for flashing it with the latest OpenTX. You don’t have to replace the stock firmware but OpenTX is much better. It does require an ISP programmer though like a USBASP. OpenTX is at http://code.google.com/p/opentx/ I never used the stock firmware so I have no idea how to configure it, the first thing I did was flash mine with OpenTX. 🙂
A Turnigy 9X is an older model than comes out cheaper because it has an internal RF module and usually comes with one receiver. However, it also requires some modification to flash it with OpenTX. If you have good soldering skills and researching the mods (they are not very hard) you can save perhaps $30 or more with a 9X instead of 9XR. Or you can buy a solderless mod kit that brings the cost up to about the same as the 9XR.
This BoM tries to be as low cost as possible without compromising too much. If you can spend a little more, I recommend swapping the orangeRX modules for FrSky modules, the DJT or XJT for TX and a D4R-II for RX. The next improvement I would recommend is swapping the 1811 motors from something higher quality, perhaps these motors or similar 5-6A close to 3000kv. The 1811 work fine but are cheaply made. People report problem with the mount set screws coming loose and off-balance prop adapters but in most cases are able to use them ok.
The multiwii 2.2 firmware and config app can be downloaded from multiwii.com. It also has the MultiWiiConf app that connects to the board for telemetry and configuration. The Baseflight firmware for Naze32 works with the Multiwii GUI and also has a configurator available in Google’s Chrome Extensions, just add the extension in the browser.
I’m told that recent version of Multiwii need a some config file changes for the sensor orientation on the Lite board. If you have pitch and roll sensor directions reversed, try these lines in that section:
#define FORCE_ACC_ORIENTATION(X, Y, Z) {imu.accADC[ROLL] = -X; imu.accADC[PITCH] = -Y; imu.accADC[YAW] = Z;
#define FORCE_GYRO_ORIENTATION(X, Y, Z) {imu.gyroADC[ROLL] = Y; imu.gyroADC[PITCH] = -X; imu.gyroADC[YAW] = -Z;}
I am comfortable flashing firmware, and to get the most out of some of these components it’s really necessary. For example, to configure the MultiWii firmware for your quad configuration, sensors, and feature options you need to edit a configuration file and compile then flash the firmware to the flight controller board. This can all be done using the Arduino IDE, so if you are familiar with using Arduinos or flashing Reprap firmware to 3D Printer electronics like RAMPS or RAMBO this should all be very familiar to you. If you have never configured and flashed firmware to an embedded device before there will be some learning curve, but fortunately pretty much all the Arduino tutorials out there apply just the same. You can think of the Remote Control as an Arduino running an OpenTX sketch, and the MultiWii Lite Flight Controller as an Arduino running the MultiWii sketch. Even many ESCs are mega8 chips running a speed controller sketch, so all the same methods generally apply.
Assembly Details and Tips:
Mount the FC board to the center of the frame using an adhesive foam pad for the OhMini Quad, or using zipties through the corner holes on the OhMini H-Quad. Make sure the arrow on the board points forward.
Mount the motors using zipties, pay attention to where the wires come out.
Solder a JST connector to all 4 ESC battery wires in parallel. All the Red+ go to battery Red+ and Black- to battery Black-. This is a simple battery harness so all 4 ESCs get power direct from the battery.
Each ESC has a BEC onboard, which provides 5v to the 3pin connector and provides power for the FC and everything connected to it. Each BEC provides more than enough power to run everything and there can (in theory) be problems if all 4 of them are providing power to the FC, so remove the center (red) pin from 3 of the connectors and fold it back and heatshrink it to keep it out of the way. Mine looks like this. The one ESC with the power pin in place will power everything.
My receiver was mounted inside a plastic case, which makes it larger and heavier. I popped apart the case and removed the receiver and heatshrinked the whole thing to protect it, this makes it a lot easier to fit between the FC and battery on the H-Quad.
Mount the receiver (RX) under the FC using zipties on the H-Quad, or ziptie it somewhere convenient on the Quad.
Solder bullet connectors on the motor wires and ESC wires, female on the ESC and male on the motor. Or if you are not using connectors, solder and heatshrink the wires directly. Keep in mind that to change the direction of the motor if needed you will need to swap two of the wires, so don’t heatshrink until after testing if you don’t use bullet connectors. If you do use bullet connectors, heatshrink then to prevent shorts as in my pics.
Mount the ESCs on the arms or frame using zipties so the wires are convenient, the battery connector is near where the the battery will be, and so the four 3pin connectors can reach the D3/D9/D10/D11 pins on the FC board.
Mount the battery using the velcro strap so it reaches the ESC harness connector and so that the quad balances ok at the center of the frame.
Connect the ESC 3pin connectors frontleft/frontright/rearright/rearleft ESC 3pin connectors to D3/D10/D9/D11 pins on the FC, black pin is GND and white pin is S. The motor order and prop direction is shown here.
Before you can use a RX with your TX, it needs to go through a binding process. This binds the RX to the TX so it listens to your TX and nobody elses. It’s similar to pairing a bluetooth device but simpler. Your RX comes with a binding conenctor, which has a wire betwee nthe outer pins, just follow the directions for binding that come with your radio. Mine just needed me to hold down the bind button on the TX while powering on, then powering down and removing the bind plug from the RX.
Connect the RX channels to the FC. The order of the channels depends on your remote setup. Throttle is usually on channel 3, and a common scheme is RETA, Rudder/Elevator/Throttle/Aileron. Mine happens to be set up AETR so I had to flip channel 1 and 4 from the usual on mine. Only one channel needs all three wires, I use the throttle connector for that. All the other channels only need a wire on the signal pin. I also recommend connecting an additional wire from channel 5 to D7 on the FC, this can be used to toggle different flight modes using a switch on your remote. I set up my OpenTX preset to use a 3POS switch on channel 5 to toggle between ANGLE/ACRO/HORIZON modes in multiwii. Angle mode (Also called stable or level mode) prevents extreme tilt and goes into autolevel when you are hands off on the stick. Acro mode does not autolevel and will let you flip. Horizon mode is a blend of the two, the closer to center the stick is, the closer to ANGLE mode, and the more you move the stick the more ACRO it is. All of these modes will need some trimming and calibration to suit your own style.
This info in italics is for the 8-bit MultiWii boards. The Naze32 boards have a configurator app that runs in Chrome and makes flashing firmware and configuring options much easier.
You need to set options in the MultiWii config.h file for your quad. I couldn’t just select the board type for mine in MultiWii 2.2, I had to select the sensor type individually. I have a sample config.h for the MultiWii Lite 1.0 board here. You can copy this to your MultiWii code folder and flash using the Arduino IDE using a FTDI cable.
The ESCs need to be calibrated to know where the MIN and MAX levels are. This can be done by bypassing the FC and plugging each ESC directly into the RX on the throttle channel and powering up with the throttle on full, then after the ESC beeps the motor moving the stick to minimum and waiting for the next beep, then powering off. But I think it’s better to calibrate using the FC, plus it can do all 4 motors at the same time. There is a line in the MultiWii config.h file to uncomment and reflash the FC (make sure the battery is connected) it will calibrate all 4 motors, turn them on, then turn them off. Then recomment that line and reflash. Look at the end of config.h for “#define ESC_CALIB_CANNOT_FLY” This is not only easier but also calibrates using the actual signal levels the FC will be using so should be more accurate.
Once you have the MultiWii firmware flashed, you can run the MultiWiiConf program and select the serial port and connect using the FTDI cable. Once it’s connected, press the START button to start telemetry going. You should be able to move the quad and see the attitude change in the program. You don’t need the battery connected for this unless you want to run the motors. Make sure PROPS ARE OFF when you are testing stuff for safety. When you move the stick on the remote you should see the bar move for that channel. If you have the channel mixed up, switch connectors between the RX and FC to make them correct. Once you have all channels working properly and ranging from 1000-2000, you can plug in the battery and try arming the motors. Move the throttle to minimum and yaw to full right, this is the left stick in the lower right corner. After a moment the motors should start and respond to the throttle. To disarm, move the stick to bottom left, minimum throttle and full left yaw. The motors should stop. If something doesn’t work right you have some troubleshooting to do.
MultiWiiConf is very helpful for showing clearly what is happening on the channels and activated, plus you can define PID rates and switch actions. There are good tutorials and info on the web and youtube. All these components work together, so how you set up your remote affects how you set up your FC. You will want to read the FAQs for the products you use.
If you are not familiar with Lithium Polymer (LiPoly) batteries, do some research online about RC LiPoly terminology and how they need to be handled and charged. They can be very dangerous if not handled properly, but they are what has made electric RC flight like this possible. LiPoly batteries will be damaged if overcharged or allowed to discharge too much. It’s important to have a proper charger that can do balance charging and know how to use it, and to have telemetry or a voltage alarm to monitor the battery voltage while flying to know when to stop before causing damage.