Super Simple Micro H-Quad


The SSHQuad Micro has all of the same simple and effective features as the larger 250mm SSHQuad PRO, but in an even smaller 170mm micro format. The SSHQuad Micro is designed to accommodate 4” props with many standard components, such as 1306 motors, 30mm flight controllers and 6/12A ESCs. Configured as recommended, a 6:1 thrust to weight ratio can be achieved with a total mass of 165 grams.

Recommended Bill of Materials:

[Qty. 1] SSHQuad 170mm Micro Frame

[Qty. 2] DYS BX1306-3100KV (pair)

[Qty. 1] 12A HV 4in1 ESC (w/ DuPont Cable)

[Qty. 1] Naze 32 Acro (no pins)

[Qty. 1] FrSky D4R-II

[Qty. 1] 450mAh 3S 65~130C NanoTech LiPo

[Qty. 2] APC 4141E Propeller

[Qty. 2] APC 4141EP Propeller

[Qty. 1] M5 Low-profile CW Prop Nut (4)

[Qty. 1] M5 Low-profile CCW Prop Nut (4)

[Qty. 1] M2x8mm Bolt (20)

[Qty. 1] M3 8mm Nylon Spacer (10)

[Qty. 1] M3x20mm Nylon Screw (10)

[Qty. 1] M3 Nylon Nut (10)


The top side of the SSHQuad Mini frame is a flat mounting surface with a high gloss finish. Beneath the frame are four channels for routing wires, mounting landing gear or embedding LEDs. Prior to assembly, a reamer or hobby knife should be used to clear out each mounting hole and ensuring a nearly flat mounting surface for the motors.




Carefully bend the motor wires near the base of the motor and insert the cables through the routing slot at the end of each arm. Using four M2x8mm bolts per motor, secure the motors to each arm and route the wires beneath the arm to the center of the frame. Each motor wire should be cut to approximately 9cm in length to reach the 4in1 ESC. Cut a strip of Velcro and route it through the battery strap slots at the center of the frame.





Solder a cable with battery connector to the solder pads on the bottom of the 4in1 ESC opposite the signal wires. Solder each of the motor wires to the top side of the ESC, crossing the appropriate wires to ensure proper rotation of the motor. If the ESC will later be reprogrammed for reverse operation, the order of the wire connections does not matter. Ensure that ESC outputs label M03 and M02 are located at the front of the frame with the main power on the right side and signals wires to the left when viewed from above. Bolts or standoffs may be used to temporarily secure the ESC while soldering for proper alignment.



The 4in1 ESC must now be reprogrammed with BLHeli firmware if so desired. Connect the 4in1 ESC to a battery for power and the ground and M01 signal wire to a programmer, such as the Turnigy USB Linker. Leave the red 5V BESC wire disconnected from the programmer. Open the BLHeliSuite programming tool and select the Turnigy USB Linker as the programming device. Set the BAUD rate to 9600 and connect to the ESC. Flash the latest version of BLUESERIES 12A MULTI to the ESC. Once complete, reverse the rotation direction of the motor if necessary. Alter the following settings and repeat the process for each ESC by disconnecting the previous signal wire and connecting the next signal wire to the programmer.

4in1 ESC:

M03    M02

M04    M01

M01: standard rotation

M02: reverse rotation

M03: standard rotation

M04: reverse rotation


PWM Frequency/Damped: DAMPED LIGHT (Enable ONESHOT using Cleanflight Configurator)

Motor Timing: HIGH

Temp Protection: ON


Remove the protective cover from the FrSky D4R-II Receiver. The D4R-II should be updated at this point if so desired. After the update is complete, carefully cut each of the pins and remove the black plastic retainer holding the pins together. Desolder each pin an place a jumper between channels 3 & 4 to enable CPPM. Connect three 3cm wires for power, ground and channel 1 (CPPM) to the channel 1 port on the D4R-II. Solder the other end of these cables to the power, ground and CCPM (3) pads on the Naze 32.





Unplug the DuPont cable from the 4in1 ESC and cut the signal wires to approximately 5cm from the connector that plugs into the board. Solder these ends to the Naze 32. Be sure to switch motor wires 3 & 4 as follows.

4in1 ESC:                  Naze 32:

M03    M02      ==>    M04    M02

M04    M01                M03    M01



For FrSky telemetry, remove all but the TX wire from the FrSky provided telemetry cable and shorten the TX wire to approximately 3cm. Solder the TX wire to the telemetry pad on the Naze 32. Cut another 5cm wire from a scrap piece of wire and use it to connect to any pad on the 4in1 ESC shared with the positive battery lead. This wire is then connected to the positive battery pin on the Naze 32 for measurement of the battery voltage.





Place double-sided foam tape on the top and bottom of the D4R-II. Secure the D4R-II between the 4in1 ESC and the Naze 32. Bolt the Naze 32 and 4in1 ESC to the frame using the 8mm M3 nylon spacers, 20mm M3 nylon bolts and M3 nylon nuts. The M3 nuts are placed into the captive slots beneath the frame for ease of assembly and to prevent the nuts from coming loose. Before securing the roll bar to the top of the frame using two zip ties, update and program the flight controller with the Cleanflight user interface. Bolt on the props and you are ready to fly.




AirBooster and JetQuad Development


Last year I began assisting in the development of the AirBooster, a scale jet-powered vertical take-off and landing vehicle funded by FusionFlight. I expressed an interest in the rapid prototyping, design and construction of a functional vehicle utilizing my PX4 Development Kit for Simulink as a basis for the flight control system.

The project was hindered by a lack of funding and the discovery of many inherent flaws in the feasibility and design of the vehicle. This halted any further progress, and I consequently discontinued my voluntary efforts to assist with the project. As a result, I have chosen to document and publish my work on the project in light of the inaccurate content published as part of the FusionFlight JetQuad Kickstarter campaign. I do not agree with the false representation of my work in a campaign aimed to profit from the backing of an underdeveloped technology.


The AB1 is intended to be a scale prototype for a boost-to-orbit jet engine powered launch vehicle. The ultimate AirBooster design calls for the use of afterburning jet engines common to several American military fighter jets. The origins of this idea are nothing new. The basis for the Air Booster comes directly from a recent NASA patent (US8047472) for a reusable air-breathing Ram Booster.

Patent 8047472-7

The initial motivation for such a launch system was the proposed cost savings accrued by the engine’s higher specific impulse, but this oversimplification is flawed in that is assumes a constant specific impulse from ignition at zero velocity up until the final stage separation at high speed. Consequently, these cost savings are negligible at best. However, there is a greater potential for cost savings associated with the reusability and low maintenance of a jet engine. This is precisely the motivation for NASA’s Ram Booster patent.

Designs for reusable rockets, such as the Falcon 9, and alternative launch methods, such as Orbital’s air-launched Pegasus rocket, are much further along in the development cycle and are likely to be far less expensive than the combined investment required to independently fund the design, production and certification of a full-scale jet engine powered launch vehicle. Unlike a conventional rocket where the thrust must be great enough to accelerate the entire mass of the rocket to space, a supporting boost aircraft needs only generate enough thrust equal and opposite to the drag induced upon the vehicle at a velocity necessary to lift the mass of the vehicle. In essence, using an aircraft to boost launch vehicles benefits from the work generated through lift without the need to carry with it the surplus of fuel required to sustain a vertical ground-launched rocket.


A potentially effective solution to the problems with using jet engines for space flight has been proposed by Reaction Engines Ltd, a private company in the United Kingdom developing the SABRE (Synergetic Air-Breathing Rocket Engine).


AirBooster Development:

The original design for the scale AB1 was a vertical stack, much like a rocket with legs. A single jet engine at the base of the frame provided vertical thrust managed by an off-the-shelf engine control unit for model airplanes. The design lacked proper avionics, power and computer systems essential to its stability and control. Due to the “off-the-shelf” nature of the project, there were many black box components incorporated into the original design for which the operational characteristics and responses were unknown and often difficult to characterize.


The initial mathematical models were incomplete, demonstrating it was feasible to maintain stability of the vehicle despite further analysis and tests eventually serving to disprove this. Using a single jet engine, the thrust was exhausted from the nozzle in a vortex. A proper fluid dynamic simulation of the engine would have clearly shown this, but it had been overlooked in the original concept. This vortex induced a significant torque about the vehicle with a magnitude greater than any other counter-torque acting on the body. Therefore, the system was entirely unstable and could not be controlled.

After a series of flight tests and improvements to the mathematical model based on observations from the tests, it was clear that the existing single-engine vehicle would require a complete redesign. Four possible solutions were considered to address these problems:

  • Thrust vectoring the exhaust with stainless steel control surfaces and high-torque servo mechanisms at the cost of increased weight and complexity.
  • Permanently reversing the torque by counteracting the vortex using fixed control surfaces within the exhaust flow at the cost of decreased thrust and efficiency.
  • Increasing the thrust and flow rate of the pneumatic attitude control thrusters at the cost of increased weight and reduced stability.
  • Utilizing multiple engines, much like a quadcopter, at the cost of increased expense and complexity.

For a single-engine design, decreasing the thrust-to-weight ratio was not an option. This ruled out control surfaces and thrust vectoring. The only pneumatic solenoids capable of sustaining the necessary flow rate were much heavier and required a larger supply of air, thereby increasing the weight. Having considered the many design flaws of the original vehicle, the scale prototype of the AirBooster was repurposed towards the design of a miniature jet engine powered aircraft.

JetQuad Concept

The new design for a four engine vehicle was similar in appearance to a quadcopter and named the JetQuad. A miniature jet-powered “drone-like” platform is unique in that it fills a void between small fixed-wing or rotorcraft vehicles and a rocket or cruise missile. Such a vehicle provides substantial acceleration and maneuverability with an adequate payload-bearing capacity in a very small form factor and has potentially far-reaching military applications.


The JetQuad was intended to be a proof of concept vehicle for alternative military applications; however, the preliminary design still requires significant progress to become a reality. Not only would the vehicle require custom-made miniature counter-rotating turbines unavailable in today’s market, but a thrust vectoring system for each engine is absolutely essential for stability and control. Although these modifications to the design may be feasible, they would require an inordinate amount of time and money to independently develop a functional prototype. Without these modifications to the design of the vehicle, the vehicle is inherently unstable and cannot be controlled by pilot or computer control system. A miniature jet turbine simply does not offer adequate control authority to maneuver the aircraft in a controlled manner.

Going forward there are many steps that must be taken to first examine the stability and control of the JetQuad and later implement the proper guidance, navigation and control system required to pilot the vehicle. Using mostly off-the-shelf components, the vehicle itself requires the least attention. Few parts require assembly. However, preliminary models suggest that four jet engines are incapable of providing closed loop stability of an attitude feedback control system. Thrust vectoring control surfaces will allow for a much improved control response unobtainable with pneumatic thrusters. With the incorporation of these components into the vehicle, a complete model of the system must be redeveloped in order to design a viable feedback control system. The aggressive nature of maneuvering such a vehicle demands a precise inertial measurement unit coupled with a global or relative positioning system and advanced estimation algorithms. The feedback controller must then be designed to issue commands to all four engines as well as the eight servo mechanisms (two per engine) required for thrust vectoring. The JetCat ECU will eventually need to be replaced by an in-house design required to improve the control authority of the engine. This is necessary for precision control of the vehicle’s altitude and vertical velocity.

Project Files:

I am publishing these files to be used as a source of reference. I hope they will be useful to someone more qualified to pick up where I have left off. A fully functional prototype of the JetQuad is projected to be several years from completion. Aerospace guidance, navigation, control, modeling and simulation experience is essential.

AirBooster CAD Model

AirBooster Dynamic Model and Simulation

JetQuad CAD Model

Creative Commons License

JetQuad by Adam Polak is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Low-cost Image-assisted Inertial Navigation System for a Micro Air Vehicle


The increasing civilian demand for autonomous aerial vehicle platforms in both hobby and professional markets has resulted in an abundance of inexpensive inertial navigation systems and hardware. Many of these systems lack full autonomy, relying on the pilot’s guidance with the assistance of inertial sensors for feedback and stability. Autonomous systems rely heavily on the use of a global positioning satellite receiver which can be inhibited by satellite signal strength, low update rates and poor positioning accuracy. For precise navigation of a micro air vehicle in locations where GPS signals are unobtainable, such as indoors or throughout a dense urban environment, additional sensors must complement the inertial sensors to provide improved navigation state estimations without the use of a GPS. By creating a system that allows for the rapid development of experimental guidance, navigation and control algorithms on versatile, low-cost development platforms, improved navigation systems may be tested with relative ease at reduced cost. Incorporating a downward-facing camera with this system may ultimately be utilized to improve vehicle autonomy in denied-GPS environments.


Few existing commercial solutions allow for direct implementation of high-level estimation and control algorithms. A product support package developed by students at Embry Riddle Aeronautical University has been available for the Ardupilot Mega 2.0 since November of 2012, but the Ardupilot Mega hardware is outdated and incapable of handling complex computationally-intensive algorithms.


The PixHawk Development team of ETH Zurich offers a state-of-the-art PixHawk autopilot system; however, until recently no solution existed to seamlessly integrate high-level control systems directly with the PixHawk hardware.


Although a readily available solution to this problem has not existed until now, the architecture of the open-source PX4 autopilot system allows for implementation of such a solution with relative ease. With this software, controls engineers need not possess a thorough understanding of the underlying software architecture. This eliminates the need to write embedded C/C++ and machine code, allowing engineers to take algorithms straight from a high-level block diagram in Simulink directly to the hardware. The process is a simple and repeatable method for testing complex estimation and control algorithms at a much reduced cost. 


The PixHawk platform also supports advanced computer vision systems for optical navigation purposes, such as the low-cost PX4FLOW optical flow module.



Preliminary Design Concept:


A miniature quad copter is selected for this particular application due to the relative ease with which it may be assembled and modeled, as well as the simplicity of its design and maneuverability. The basic airframe is designed to enclose and protect all essential electronics. The airframe is 3D printed from PLA plastic filament. It is small enough to navigate tight spaces and yet light enough as to not easily become damaged in a collision.


Finalized Design:


The system includes the PX4 autopilot controller along with the PX4FLOW vision system and a 1000mAh battery capable of supplying nearly ten minutes of power. The collective mass of these components on the fully assembled vehicle is approximately 250 grams, giving the vehicle nearly a 2:1 thrust to weight ratio.


System Dynamics and Control:


A quadcopter is inherently unstable, thus the vehicle attitude and rate of rotation must be controlled with a feedback control system. To design a proper controller, all vehicle dynamics are modeled using Simulink. For simplicity, the system dynamics are first isolated to separate axes and independently modeled. The plant P0 is represented by the transfer function from the normalized roll command to the angular roll acceleration where α is the maximum torque, Jxx is the inertia and β is the mechanical motor constant. P1 and P2 are both integrators modeling angular roll velocity and angular roll position. Sensor dynamics H0 and H1 are treated as a unity gain.


Inner-Loop Rate Controller:


Outer-Loop Attitude Controller:


A more complex model is implemented using the Simulink 6-DoF Quaternion Fixed-mass Equations of Motion aerospace block. This allows for ease of simulation of all non-linear system dynamics. A brushless motor model is used to resolve the rotor velocity, which is then related to the thrust of each rotor. The forces and moments are resolved in the body-frame where Newtonian physics describe the acceleration, velocity and position of the vehicle. A quaternion rotation algorithm then resolves the vehicle dynamics in the flat-earth reference frame.

Non-linear Model:


Complete Attitude Control System:


Optical Navigation:

One of the greatest obstacles to implementing an optical navigation system is the system state estimation of the vehicle position. The PX4 optical flow sensor estimates body-frame velocity and ground distance.  These estimates are fairly accurate; however, optical navigation requires Earth-frame position and velocity states.

Integrated Optical Flow Velocity Estimates:


Improved Earth-frame position estimates are provided by a ten-state Kalman filter. These estimates are processed by the guidance and navigation system which issues reference commands to the outer-loop position controller.

Kalman Filter Position Estimates:


Experimental Optical Navigation System:



The objectives of this project have been met by the successful design and testing of a low-cost image-assisted quadcopter. The applications for such a small and maneuverable vehicle are considerable. In addition, the software architecture now exists to utilize the PixHawk autopilot platform for rapid development and testing of complex experimental estimation and control algorithms using Simulink. Further effort is necessary to develop the optical navigation system to a usable state. Current models function well in computer simulations, but imprecise models of sensor dynamics and measurement uncertainty must be enhanced to match the true system characteristics.


Download Complete Thesis:


Super Simple Mini H-Quad FPV V3.0

photo 1

Bill of Materials:

[Qty. 1] Super Simple Mini H-Quad FPV V3 Frame

[Qty. 1] CC3D Flight Controller

[Qty. 2] APC 5545E Electric Prop {or} 5030 Prop

[Qty. 2] APC 5545EP Electric Prop {or} 5030R Prop

[Qty. 1] 36mm Power Distribution Board

[Qty. 1] 1800mAh 3S 40C LiPo

[Qty. 1] XT60 Connector Pair

[Qty. 12] M2x12mm Bolt

[Qty. 4] Tiger MN-1806 2300KV Motors

[Qty. 4] Afro 12A SimonK ESC

[Qty. 4] M3x6mm+6mm Nylon Spacer

[Qty. 4] M3x8mm Nylon Screw

[Qty. 4] M3 Nylon Nut

[Qty.~] Cable Ties

[Qty.~] 16AWG Red Wire

[Qty.~] 16AWG Black Wire

[Qty. 1] Sony Super HAD CCD 660TVL Camera


For further assembly tips and photos, please see my build log for the Super Simple Mini H-Quad.

Super Simple Mini Spider Hexacopter


Bill of Materials:

[Qty. 1] Super Simple Mini Spider Hexacopter Frame

[Qty. 1] CC3D Flight Controller

[Qty. 2] APC 5545E Electric Prop {or} 5030 Prop

[Qty. 2] APC 5545EP Electric Prop {or} 5030R Prop

[Qty. 1] 36mm Power Distribution Board

[Qty. 1] 1800mAh 3S 40C LiPo

[Qty. 1] XT60 Connector Pair

[Qty. 12] M2x12mm Bolt

[Qty. 3] RCX 1804R Brushless Motor {or} [Qty. 3] RCX 1804 Brushless Motor (6 Total)

[Qty. 3] RCX 1804 Brushless Motor

[Qty. 6] RCX 10A SimonK ESC

[Qty. 8] M3x5mm+6mm Nylon Spacer {or} [Qty. 8] M3x8mm Nylon Screw

[Qty. 8] M3x5mm Nylon Screw

[Qty. 8] M3 Nylon Nut

[Qty.~] Cable Ties

[Qty.~] 18AWG Red Wire

[Qty.~] 18AWG Black Wire


This frame ships as two frame halves. The frame halves should be carefully assembled by applying thick CA glue to both faces of each side of the joints before joining. If necessary, add more CA glue into the joints once compressed to insure minimal air gaps within the joints. After applying adequate CA glue and ensuring minimal air gaps, CA accelerator may be used to help rapidly cure the joint. The roll bar may be attached using four zip ties.

For further assembly tips and photos, please see my build log for the Super Simple Mini H-Quad.

PX4 Development Kit for Simulink

Through my research at the Marshall Space Flight Center and continued development as part of my undergraduate honors thesis, I have chosen to publish my PX4 Development Kit for Simulink. This toolkit includes a configurable dynamic model for a wide range of multicopter configurations, as well as a more complex position control system using a Kalman filter for navigation estimates with velocity updates provided by a downward facing on-board camera. The PX4 provides greatly improved processing power in a conveniently sized and inexpensive ARM based 10-DoF flight controller. Please contact me if you have something that you would like to see added or corrected. Click on the picture below to view and download the guide. Beneath the guide you will find download links for the latest version of the toolkit.


Requires MATLAB 2014a with Embedded Coder

This project is a work in progress. Files and documentation are subject to frequent changes.

Now available as a product support package from MathWorks
PX4 Simulink Development Kit Download
8/03/2014 - v0.60b
- Simulink now automatically handles rate transitions
- updated model

7/22/2014 - v0.51b
- updated to latest firmware and toolchain
- reduced size of firmware archive
- improved pwm arming sequence

7/18/2014 - v0.50b
- fixed startup script for use with PX4FMU (No IO shield)
- verified full compatibility with PX4FMU and Pixhawk

7/15/2014 - v0.40a
- added GPS support
- updated startup script

7/03/2014 - v0.30a
- updated to latest firmware
- inline parameters to fix boot failure
- improved sensor noise characteristics 
- updated simulation GUI with scale slider
- replaced experimental navigation system with simple PID ACS

4/24/2014 - v0.22a
- updated to latest firmware

4/18/2014 - v0.21a
- updated to latest firmware
- new customizable startup script for PX4FMU, PX4IO & Pixhawk
- further memory optimization
- added Pixhawk RGB LED support
- cleaned up wrapper code

4/02/2014 - v0.20a
- updated to latest firmware
- updated makefiles for PX4FMU v1 and Pixhawk v2
- new startup script with mavlink output to QGC
- memory optimization
- added timestamp to debug outputs
- fixed missing 25Hz loop

2/01/2014 - v0.11a
- added brushless motor transfer function
- added script to generate brushless motor transfer function
- added LiPo battery model
- simulation code optimization
- modified solver
- improved altitude control system

1/20/2014 - v0.10a
- initial release

Super Simple Mini H-Quad V2.0

Flight Video:

Bill of Materials:

[Qty. 1] Super Simple Mini H-Quad V2.0 Frame

[Qty. 1] CC3D Flight Controller

[Qty. 2] APC 5545E Electric Prop

[Qty. 2] APC 5545EP Electric Prop

[Qty. 4] MT-1306 10 3100KV Tiger Motor

[Qty. 1] USB Programmer

[Qty. 4] Turnigy Plush 6A ESC

[Qty. 1] 1000mAh 25~50C 2S Nano Tech LiPo

[Qty. 8] M2x12mm Bolt

[Qty. 4] M3x8mm Nylon Screw

[Qty. 4] M3 Nylon Nut

[Qty. 4] 5.6mm x 14mm M3 Nylon Spacer

[Qty. 4] Zip Ties

[Qty. 1] 16AWG Red Wire

[Qty. 1] 16AWG Black Wire


Each frame is 3D printed with plastic. The frames are printed with a semi-hollow infill. This core provides great strength without compromising the weight of the frame. At less than 80 grams the frame is light and extremely strong. Before assembling the quadcopter, clear any obstructions or loose plastic pieces from the holes of the frame.


Glue four M3 nuts into the nut traps on the frame using a small drop of super glue (CA glue). Be sure not to fill the holes of the frame or apply glue to the threads of the nuts. Mounting holes are available for all standard fight controllers, including 45x45mm (KK2, Crius, Megapirates, etc..), 61x35mm (Ardupilot Mega), and 30.5×30.5mm (CC3D, PX4, etc…).


Use two M2x12mm bolts to secure the motors to each arm. The motor mounting slots support hole spacing from 12 to 15mm in diameter for motors such as the MT-1306 Tiger Motors or the cross mount of the Turnigy 1811 motors.


Standard 6A Turnigy Plush ESCs are recommended; however, the stock firmware is not well suited for multirotors. Replacing the firmware with BLHeli will improve the performance of the aircraft, but it is not entirely necessary. To replace the firmware, begin by removing the plastic heat shrink and sticker.


Using the USB programmer, connect the programming cable to the appropriate solder pads on the ESC. Pay close attention to the color of the wires and make sure they match the photo below on both the ESC and programmer side. Use BLHeli-Setup to flash BLHeli Multicopter (multi) firmware for the Turnigy Plush 6A ESCs. From the setup tool the ESC can be configured for a ppm min throttle of 1000 and a ppm max throttle of 2000. The remaining settings should be left at their default values. The min and max throttle can be calibrated from the radio, but the stick commands and tones to reach the calibration mode are rather complicated. I recommend setting the ppm min and max throttle for each ESC from the setup tool before removing the programming cable.


Align the four ESCs to the frame and cut the red and black power cables to the appropriate lengths so that they can join at the center of the frame. Be careful not to cut the cables too short! Cut two battery cables from the 16AWG wire and solder all four ground wires together with the battery cable. Do the same for the red power wires and add any lighting or accessory power cables to the harness before soldering the two halves together and covering them with heat shrink or electrical tape.


To keep the wires and cables clean, the header pins can be removed from the flight controller; however, this may result in damage to the flight controller if not performed properly. Do not remove the header pins unless you are experienced with doing so.


Once again, align the ESCs with the frame to determine the proper length of the signal wires. If the flight controller has no header pins, then the cables can be cut and soldered directly to the board, otherwise the cables need not be cut to length and they can simply be plugged into the respective ports.


The radio receiver can be secured to the bottom side of the flight controller using double-sided foam tape. It may be necessary to use a micro receiver or remove the plastic case from larger receivers. For this build I chose to use a FrSky V8FR receiver.


A ground and power cable from the CC3D must be shared with the receiver in order to provide the receiver with power. The cable included with the CC3D can be used to connect the receiver channels to the flight controller, or jumper cables can be soldered directly between the receiver and flight controller as depicted below.


At this point the 3/4″ Velcro battery strap should be looped through the slots at the bottom of the frame and cut to wrap securely around the battery.


Using four nylon threaded spacers and four M3x8mm nylon bolts, attach the flight controller to the four mounting locations. Carefully situate the wiring harness above the battery strap and beneath the bottom of the flight controller.


Line up the ESCs on each arm and cut the motor wires to the appropriate length. The motor wires may be coated with resin, so be sure to use solder paste with a capable soldering iron to prepare the tips of each wire. Be sure to cross the wires of the ESCs so that motors 1 and 3 rotate clockwise while motors 2 and 4 rotate counter-clockwise.


With the frame complete check all connections and be sure that there is no continuity between the positive and negative terminals of your battery connector. Plug the flight controller into a computer to configure the settings and calibrate the sensors. Default setting will work fine with the CC3D, but I suggest that the rate P be reduced, rate I increased and attitude P increased depending on your style of flying. If all of the polarities and cables are checked, plug in the battery and test the rotation of the motors without props attached. If all is well, attach the props and you are all ready to fly!


OpenPilot Settings:

High value ==> more agile, low value ==> less aggressive
Attitude Responsiveness = 120 deg/s
Rate Responsiveness = 240 deg/s
Rate Yaw Responsiveness = 400 deg/s
Rate P = 25
Rate I = 40
Rate Yaw P = 35
Rate Yaw I = 35 
Attitude P = 30
Attitude Yaw P = 20

CC3D Carbon V4

This frame was designed for AP and FPV with the idea of reducing as many vibrations to the camera as possible. The carbon tubes and rubber dampers are common parts for XAircraft frames that can be purchased at a low cost. The V shape allows cameras to be mounted above the loading pipes without the need for extended landing gear hanging beneath the frame. It opens up the space between the front arms to allow a prop-free view from the camera.

Bill of materials:

[Qty. 4] MT-2208-18 1100KV Motors

[Qty. 4] 10A Turnigy Plush ESCs

[Qty. 1] M3x8mm Bolts (20)

[Qty. 1] 18AWG Red wire

[Qty. 1] 18AWG Black Wire

[Qty. 1] 2200mAh 3S 45-50C Nano Tech LiPo

[Qty. 2] 8×4.5 Carbon Props

[Qty. 4] 300x10mm Carbon Tube (2)

[Qty. 1] 10mm Plug (4)

[Qty. 3] Rubber Dampin Rings (4)

[Qty. 1] OpenPilot CC3D

[Qty. 1] 400mW 5.8GHz Video TX

[Qty. 1] V8FR-II Receiver



(Custom frame components available here)

All parts can be assembled by applying CA glue to the inside of the carbon tubes. Applying CA accelerator to the plastic parts will help reduce bonding time.








Cut two 138mm tubes and two 122mm tubes.






Set the video transmitter heat sink into the slot and secure the receiver to the top of it using sip ties.


Secure the CC3D using four M2x8mm self tapping screws.



Software configuration:

Choose custom mix and apply the following mixer settings in the OpenPilot GCS.




DJI F450 Naza + GPS FPV/AP Multicopter

My previous Xaircraft X4 build never really served the purpose for which I had intended it to be used for; an AP/FPV platform with a reliable autopilot fail safe. The problem with my X4 was that the Avroto motors were quite large and created lots of resonating vibration throughout the frame. This created lots of jello, or rolling shutter, in my GoPro’s video. My previous choice of flight controller worked alright, but it required lots of adjustments and was not a reliable autopilot fail safe.

To correct the resonating vibrations, I decided to start with smaller 9″ props, higher KV motors and a 4S battery. My hope was to increase the RPM and frequency that the motors operate at, reducing low frequency resonating vibrations to the flight controller and GoPro. I also added a vibration dampening gel pad beneath the gopro. With the 4S 3300mAh Nano Techs I get just over 14 minutes of flight time. The T-Motors hardly exceed ambient temperature after a 14 minute flight in 80F weather, whereas the original NTMs reached over 180F within a few minutes.

Bill of Materials:

[Qty. 4] T-Motor MT2216 900KV**

[Qty. 1] DJI Naza GPS

[Qty. 1] DJI F450 Flame Wheel

[Qty. 4] Hobbyking 20A ESC

[Qty. 3] 4S 3300mAh Nano-Tech LiPo

[Qty. 2] 3.5mm Bullet Connectors

[Qty. 1] XT60 Connectors

[Qty. 4] Graupner E-Props 9×5 R/L

[Qty. 1] Align PU Adhesive Gel


** Originally I had purchased NTM 28 motors from Hobbyking. Upon their arrival, the lack of quality control was clear (damaged bearings and a bent adapter). The motors reached extremely high temperatures under Hobbyking’s specified ratings and frequently bind when armed. One of the motors failed in flight after binding at 90ft in the air. I DO NOT recommend NTM motors and I have chosen to use the T-Motors instead.

I began by soldering bullet connectors to the motor side of each speed controller and removing the heat shrink.

This is the programming adapter I used to flash the speed controllers. The adapter connects to a USBasp programming card.

The adapter aligns with the six programming pads of the 20A ESCs. Flashing the ESCs follows the same process as outlined here.

After flashing the ESCs I shortened the power leads for fitting the ESCs beneath the arms of the F450 frame and covered them with PVC heat shrink. I soldered each ESC, the battery connector and the DJI VU cable to the lower frame plate.

The naza is mounted at the center of the plate with the motor outputs facing forward. The ESCs are strapped to each arm with two cable ties.

Finally, the remaining equipment is mounted to the frame.

After flashing my Turnigy 9X transmitter with ER9X, I configured the following mixes for my controls:

I wrote the following ER9X model with mixes that can be downloaded here.

Within the Naza assistant I began by changing the basic settings such as the GPS antenna placement and motor mixer. With SimonK ESCs I set my idle speed to low.

I chose to use a standard receiver setup with intelligent cut off. The ER9X mixer settings should be tested to ensure that the three position switch changes between manual, attitude and GPS mode.

I first set the X1 (dual gain) switch to off and input the following settings. After toggling the X1 switch on, the gains should increase to the second set of values. This allows more control over the aircraft for FPV at low gains, and highly stable flight for AP at high gains. The X2 switch is set to enable course lock, I have chosen to use this instead of home lock, given the lack of an additional three position switch on my transmitter.

V6 FPV Multicopter

Bill of Materials

[Qty. 3] 3/8″ Basswood Square Rods

[Qty. 1] 1/32″ Birch Plywood Sheet

[Qty. 1] M2x8 Screws

[Qty. 1] Cable Ties

[Qty. 1] 20AWG Red Wire

[Qty. 1] 20AWG Black Wire

[Qty. 6] 2900kv Brushless Outrunner

[Qty. 6] Plush 6A ESC

[Qty. 1] 26AWG Servo Wire

[Qty. 1] Servo Terminals

[Qty. 1] Male to Male Servo Leads

[Qty. 1] KK2 Flight Controller

[Qty. 1] 2200mAh 2S Nano-Tech Lipo


To construct the frame I began by cutting two 13″ arms from the 3/8″ basswood rods. The arms sweep out 14.5 degrees from the center placing the rear two motors about 7.25″ apart and the front two motors about 13.5″ apart. The cross arms are approximately 11″ long and they have been notched to rest across each other. It is best to cut and align the outer arms to a template before measuring up and cutting the inner cross arms.

The center plate was cut to about 2.5″ x 5.5″ and slotted to mount the battery and radio gear. Before mounting the motors and ESCs I removed the servo wire of each ESC and replaced it with a longer wire. All three of the connections were soldered to the first ESC, but the reamaining ESCs only have a signal wire. I also soldered the supplied bullet connectors to each ESC and motor. The motor mounts are fixed to the frame with two M2x8 screws. The correct rotation for the motors is described in the KK2 motor layout.

The power wires for the front two motor ESCs are daisy chained to the middle motor ESCs to clean up the wiring. In order to support the current of both ESCs I replaced the power wires of the middle motor ESCs with 20AWG wire.

As shown below, only on the first motor ESC are all three servo wires routed back to the flight controller. The remaining ESCs have only a single signal cable routed back to the flight controller. Since the stock leads aren’t long enough, it is much easier to only solder an extended signal wire where necessary.

The center of the flight controller is positioned just behind the middle motors so that the center of the frame is aligned across the sensors (mounted at the top of the board).

I mounted a Pico-Wide FPV Camera beneath the front plate of the frame. The fatshark 5.8GHz 100mW video transmitter is secured on top of the 8-channel 2.4GHz receiver.

Finally, the 2200mAh 2S LiPo was secured beneath the rear of the center plate using a Velcro strap. The props are mounted with the supplied prop savers as they are the easiest and most well balanced method of mounting the props. Flight time with the 2200mAh LiPo is approximately 13 minutes.

I also modified the V6 mixing for better yaw control. The default settings cause the aircraft to sweep very wide as it yaws. Imagine a point at which the arms intersect to the rear of the frame; with default settings it is as if the aircraft yaws about this point. By modifying the rudder mix the yaw control is improved, but it remains quite slow.

CH1 Rudder: 100

CH2 Rudder: 71

CH3 Rudder: 42

CH4 Rudder: -42

CH5 Rudder: -71

CH6 Rudder: -100


My current PID settings are as follows (These may still need some adjustment):

Aileron & Elevator

P Gain: 60     P Limit: 10

I Gain: 30     I Limit: 10


P Gain: 150     P Limit: 20

I Gain: 50     I Limit: 10


After spending an hour adjusting the auto-level settings, I arrived at the conclusion that the control algorithms of the KK 2 are not designed for true “auto-leveling” so much as they are for drift compensation. The algorithms are not calculating the precise angle of the controller, but they are instead compensating for acceleration due to gyro drift. This results in a huge amount of lag compared to that achieved through true auto-leveling with an AHRS algorithm. I eventually installed a MWC Crius MultiWii flight controller with a custom V6 mix. The flight performance far exceeds that of the KK2 in both auto-leveling and yaw authority. A tutorial for writing custom motor mixes for MultiWii can be found here. I also added some LEDs so that it looks like a Cylon Raider 😉


Micro FPV Multicopter

After giving FPV a go for the first time with my X4 Drone, I found it rather difficult to fly on such a large and heavy platform. I was too overly cautious of crashing. Therefore, I decided to build a durable micro to practice FPV. I began with the intention of making a hexacopter frame, but after damaging two motors I decided to make it into a quad instead. Here I will document the build of the hexacopter up until it became a quad. At this price, I would suggest ordering at least one or two extras of each component.

Parts List:

[Qty. 6] 2900kv Brushless Outrunner

[Qty. 6] 6A Brushless ESC

[Qty. 1] 6x 5030/R Props 

[Qty. 2] 2S 1000mAh Nanotech LiPo

[Qty. 1] Pico 5V Wide Angle Camera

[Qty. 1] Camera Cable


I built the frame from a thin sheet of aluminum and some basswood. The arms are made of two 1/4″ x 3/16″ pieces of bass wood separated by several small 1/8″ pieces. This allowed me to place gaps between the arms for the bolts without having to drill out the small holes. This is a schematic of the frame, it can be scaled to fit various size components, but it is designed to be used with the parts listed above:

The aluminum plates and legs were cut and drilled using these templates:

The original model used the standard Fatshark CCD killer camera, but I decided to use the pico camera instead.

After reflashing the 6A ESCs with SimonK firmware, I covered them in black heat shrink and directly soldered them to the motor wires. The motors are all bolted to the frame and the wires secured with small cable ties.

The power distribution includes an additional lead for powering the video TX.

Finally, I assembled the top plate with all of the electronics and a MWC Crius SE flight controller with MultiWii 2.0.

I used the camera with my 100mW Fatshark video transmitter, it should be compatible with any other NTSC FPV setup as well. The pico camera is extremely small, easily hot glued into place and removable if necessary. The weight of the camera is hardly even measurable and it seems to have quite good light sensitivity, even in very low light. I must mention that the props I ordered are very well balanced, perfect for this micro, however, they must be installed carefully as to not damage the motor. To install the props I removed the lower mounting bracket of the motor to expose the base of the shaft near the c clip. Placing the prop around the tip of the shaft I secured the motor in a vice and applied pressure until the prop was completely secured. The key is to remove the lower mounting bracket and ensure that the base of the shaft near the c clip is flush against the wall of the vice, otherwise the force will push the shaft through the bearing and damage the motor. If this happens then the motor will not function properly and must be replaced. Another option is to use the prop adapter supplied with the motors and some 3 bladed props such as the 5x3x3 or 5x3x3R. However, these props and prop adapters are horribly balanced, I haven’t even attempted balancing them yet.

After damaging two of my motors, I decided to make my hexacopter into a quadcopter. I redesigned the frame to resemble my X4 drone. It uses thin aluminum plates and some 3/16″ by 3/8″ bass wood for the arms.

With a 1000mAh LiPo I get about 7 minutes of flight time with fpv gear. The motors supply more than enough thrust to recover from fast drops and the flight controller required absolutely no PID tuning. It is extremely agile, stable and responsive. With such little weight it takes many crashes without any damage to the frame, motors or props.