EVPR: Electric Variable Pitch Rotor

An electrically actuated variable pitch rotor with a wireless interface

Similar projects worth following
The Electric Variable Pitch Rotor (EVPR) is a variable pitch rotor that is electrically actuated. The design is self contained, eliminating the need for heavy mechanical linkages or costly slip rings. An on-board controller, the ESP32, receives commands via wireless data and controls the blade pitch via servos placed inside of the rotor hub.

The primary power source for the on-board electronics will be a 3-phase axial flux generator, rectified to DC. The frequency of the alternator will be used to measure the rotor speed (RPM).

The EVPR could enable new multi-rotor vehicle designs, enhance current multi-rotor designs and potentially even be applied to small conventional aircraft.

The design files are open-source under the GPLv3 License.


Multi-rotor vehicles are opening up new possibilities everyday. While much of what's promised regarding agriculture, shipping, flying cars, etc. is years, or even decades away, if just some of their capabilities can be achieved, the world will be a different place. Variable pitch rotors can make the promises of multi-rotors come to fruition.

Fixed pitch rotors are typically optimized for a single condition, namely hovering. This means that for other conditions, the design is less than optimal. Variable pitch rotors change the pitch of the blades as required and provide better overall efficiency.

Variable Pitch Examples

Most multi-rotor vehicles use fixed pitch rotors, but there are a few exceptions. The Stingray 500 and the MIT ACL Variable Pitch Quadrotor are two such examples. The maneuvering capabilities of these two vehicles are simply amazing.

EVPR: Electric Variable Pitch Rotor

The EVPR is a self contained mechanism. Servos inside the hub are used to actuate the blade pitch. Power for the servos is provided by an axial flux generator built into the hub. Control is provided via wireless signals. Once completed, the project will be demonstrated on #Goliath - A Gas Powered Quadcopter.


The heart of the EVPR will be the ESP32. The chip will receive the data signal wirelessly from the flight controller and be used to command the servos via pulse with modulation (PWM) signals.

A simple test was conducted to ensure that data could be transmitted to the spinning rotor. The test was successful and the same wireless system should work for controlling servos for a variable-pitch rotor.

Power Source

The power for the on-board electronics is provided via an axial flux generator. Permanent magnets will be fixed to the vehicle frame. The coils will be built into the rotor hub and provide 3-phase alternating current. The current will be rectified to provide a DC power source for the on-board electronics and servos. A great example of a DIY axial flux generator is shown below.

An example of an axial flux generator is shown in the below video. The axial flux generator for the EVPR will be based off of that design.

Power Required

A simple power budget was compiled for the major components to get a rough estimate of the power required.

Item mA Voltage Count Watts
Servos 900 6.0 2 10.8
ESP32 260 3.3 1 0.9

Total 11.7

The axial flux generator example shown in the video was outputting 45W at about 2000 RPM. The EVPR rotors will be operated nominally between 3000 and 4000 RPM, so the design will need to be scaled down to keep too much power from being generated.

For a complete system deployed on a vehicle, the total powered required for a quadcopter would be about 50W. For Goliath, the gas engine is capable of providing 22kW (30 Hp). So the percentag of power used for the rotors would be 0.23%. Even if the power budget quadruples, it still only be 1% of the total power available.


The primary structure of the hub consists of two aluminum plates with the mechanical components sandwiched in-between. Each blades has a steel shaft which is held in place with an Acetal bushing. The blades are actuated using the servos.

  • 1 × ESP32 Controller
  • 2 × Tower Pro MG996R Servo, Metal Gear
  • 6 × Hex Bolt Grade 8 Steel, 1/4"-20 Thread Size, 3" Long, Partially Threaded
  • 8 × Socket Head Screws 10-32 Thread Size, 1-3/8" Long
  • 1 × Acetal Bushings 1.0" OD, 0.5" ID, 2" long

View all 7 components

  • Prototype Mechanical Components Assembled

    Peter McCloud05/05/2017 at 02:52 0 comments

      The shafts have been completed and added to the prototype completing the mechanical portion of the rotor hub.

      The method for interfacing the servo to the shaft is a little more concrete now.A lever was added to the shaft that will be used to rotate the shaft. The lever is a 3/16" piano wire 2" long. A 3/16" hole was drilled through the end of the shaft on the interior side of the shaft instead of the outside of the shaft.

      There are a few benefits to having the lever on the interior side:

      1. The hole for the lever doesn't decrease the strength of the shaft.
      2. The lever is now protected inside the hub and less susceptible to damage.
      3. If the servo or linkage fails, the lever is captive between the two plates, limiting the travel of the blades if such a failure was to occur. This could mean the difference between losing the vehicle or not.

      Drilling the 3/16" hole through the hardened steel shaft was an educational experience. Typical drill bits won't do much more than scratch the surface. I was about to buy some specialty bits when the intertubes provided some very useful information. Turns out that masonry bits with a carbide tip work well at cutting hardened steel. Just go slow and use cutting fluid. Since I had some masonry bits on hand it saved me some money as well as time. The process I ended up using was using a countersink to mark the location. A 5/32" masonry bit to drill the pilot hole and a 3/16" standard metal bit to clean up the hole to the proper diameter.

      With the mechanical portion of the hub complete, the next step will be integrating the servos. The mechanical portion of the assembly weighs 2.0 lbs, an encouraging number.

  • First Bushing Complete

    Peter McCloud04/29/2017 at 18:05 0 comments

    The first bushing has been completed and mounted on the prototype. The bushings are machined from Acetal.

    The bushing was cut from tubular stock. In theory starting the tubular stock might have made making the part easier, but the ID had to be bored slightly larger anyways and machining the grooves in the side was kind of pain. If I stick with Acetal bushings in the future, I may switch to rectangular stock and make through holes for the bolts.

  • First Hardware Pieces Completed

    Peter McCloud04/18/2017 at 03:54 0 comments

    The first EVPR prototype is starting to take shape. Over the weekend the first set of aluminum plates and polypropylene spacers made. The plates were cut from 0.125" thick 6061-T6 plate. The spacers were cut from a 12" long piece of stock. Below are some pics with the plates and spacers bolt together. For now a short set of bolts are used just to hold the hardware together. Eventually the whole assembly will be attached to the pulleys with longer bolts.

    One of the servos was placed between the plates to ensure the spacers were cut correctly. An attachment method for the servos still needs to be determined.

  • Bearings

    Peter McCloud04/13/2017 at 15:32 0 comments

    The design of the hub is progressing and the CAD is taking shape. Below is a closeup of the rotor hub.

    The bearings will be made from acetal bushing stock cut to length. Typically, spherical ball bearings are used, but the loads for #Goliath - A Gas Powered Quadcopter are relatively low compared to full scale helicopter rotors and spherical bearings are pricey. A potential problem using the acetal could be a short life. In case that happens, a secondary design with spherical bearings is also being created as time allows.

    Below is a screenshot of the secondary design. It's gives an idea of how the spherical bearings would replace the acetal bushing. The bearings would be embedded in the blade and pivot around the two bolts. It could be possible to keep the two design paths similar so that if a switch needs to be made, it should be a minimal disruption to the process.

    The first batch of hardware should be here by the weekend, so the first prototype should start taking shape soon.

  • Wireless Data Proof of Concept

    Peter McCloud03/26/2017 at 15:55 0 comments

    The EVPR will use wireless data transmission to control the servos embedded inside of the rotor hub. An ESP32 will be at the heart of the on-board electronics, receiving the data signal and controlling the servos.

    To test whether the wireless data concept will work on a spinning rotor, a Sparkfun ESP32 Thing Dev Board was placed on a fixed-pitch rotor with a battery for power. A test was run to confirm whether an LED on the board could be turned on and off remotely over WiFi.

    Below are shots of the dev board setup before and after being placed on the fixed-pitch rotor. Since the built-in LED on the board would be hidden inside the rotor hub, an extra LED(rectangular blue) was connected and placed in a location that would be visible externally.

    The test was successful (video below), demonstrating that the wireless system should work for controlling servos for the EVPR.

  • Blade Torque and Servo Sizing

    Peter McCloud03/22/2017 at 04:38 0 comments

    One of the driving parameters for a variable pitch rotor is the torque required to actuate the blades. The servo size required directly translates to the torque required to maintain the blade position. As part of the #Inexpensive Composite Propellers/Rotors project, I recently covered the RC series of airfoils which are specifically designed for rotorcraft. This airfoils were specifically designed to have low pitching moments.

    How low? The two plots below show the moment coefficients for the rc5-10, designed for inboard rotor section and the rc6-08, designed for rotor tips. For the region of interest the moments coefficients are within +/- 0.005. Comparing this to the NACA 2412, which was the airfoil used previously, the pitching moment is 5-10 times greater in magnitude for comparable angles of attack.

    The shape of the blades for the EVPR will be identical the 3rd generation rotors currently being built for #Inexpensive Composite Propellers/Rotors minus the hub.

    The overall blade torque required at maximum thrust was calculated. The per blade torque requirement ends up being 1.52 N-m or 1.12 ft-lbs. However the hobby servo world works in kg-cm, so the requirement is 15.5 kg-cm. However, the travel required to go from zero thrust to full thrust for the rotor blades is much less than the full travel for a servo. The gearing ratio is TBD, but a factor of 2-3 is likely, so the servo torque needs to be greater than 5-8 kg-cm.

    The initial servo chosen was the Tower Pro MG996R. They were chosen because they were what I have on hand, but they have sufficient torque (10 kg-cm) and they are fairly light (55 g)

  • Project Inspiration

    Peter McCloud03/21/2017 at 03:26 0 comments

    Variable pitch rotors have been in the back of mind ever since starting #Goliath - A Gas Powered Quadcopter. The default control scheme was always vanes underneath the rotors, but variable pitch would be a more elegant solution.

    The inspiration for this project started after coming across Solid-State Rotor: A Demonstration, an AIAA paper by Onur Bilgen and Thomas E. Alberts. The paper is behind an AIAA pay wall, but the the gist of the paper is that they built solid-state rotors using piezo-electric materials that could change the rotor shape. The electronics for the materials were embedded inside the rotor hub. Power was provided via a generator built into the hub.

    This project differs from the prior work in a few ways. The actuation is provided via servo instead of piezo-electric actuators. It'd be really cool to go completely solid-state, but the actuators are pretty expensive and they'd make the rotor cost more than $1000. It's also for bigger rotors, and this project will be open source.

View all 7 project logs

Enjoy this project?



Yusuf Khan wrote 05/08/2017 at 20:22 point

Hi. This is a fascinating project, and congrats on becoming a finalist.

I was curious about 2 things. Why not slip rings for transferring power and control signals?
Also, I see the torque required has been calculated, but what about the servo's angular velocity and acceleration . What's the formula for rotor rotational speed to servo pitch speed?

I may be using the wrong lingo...

  Are you sure? yes | no

Peter McCloud wrote 05/08/2017 at 20:48 point

Yusef, thanks for the compliments.

I haven't been able to find any off the shelf slip rings that can handle 3000-4000 rpm. There are some aerospace grade models that can be custom ordered, but they cost thousands of USD.

I haven't documented the servo details yet as I'm still working that out. Ideally I want 20 deg of blade pitch rotation for the full servo travel. The servos I'm using right now will travel the full range in 0.9s

  Are you sure? yes | no

EngineerAllen wrote 05/01/2017 at 09:49 point

im going to be using variable pitch props on a future version of my asymmetric uav

having large rotors around CoM to generate 100% of vertical thrust eliminates the issue my current design has with asymmetric propulsion on pitch axis control.

since smaller variable pitch rotors can then control pitch axis without surrounding CoM.

it also maximises efficiency 

so im interested to see how yours works out

especially with the control system side

  Are you sure? yes | no

Peter McCloud wrote 05/01/2017 at 14:59 point

Cool, glad to hear others are interested in it. I'm trying to keep in mind scalability as the design proceeds. How big are your smaller rotors?

  Are you sure? yes | no

EngineerAllen wrote 05/04/2017 at 08:53 point


  Are you sure? yes | no

Daren Schwenke wrote 04/03/2017 at 19:12 point

This idea scares me.  You are introducing multiple single points of failure into a system where you already have no room for any.  I would look at using near field communication instead if you insist on going wireless for your control surfaces.  There is just too much traffic in the 2.4 Ghz band to make any system 100% reliable.  First time this powers up at a Makerfaire, you'll soon learn the entire band becomes a really small place.

  Are you sure? yes | no

Yann Guidon / YGDES wrote 04/03/2017 at 20:26 point

My head spun a few times when I read that too... People just put 2.4GHz gizmos everywhere !

If you inject power through HF fields, ike contactless smartcards do, you can also modulate them to transmit data.

  Are you sure? yes | no

Daren Schwenke wrote 04/03/2017 at 22:04 point

In this case, he could just modulate it directly with the inverse of the PWM signal the servo requires anyway.  A couple of analog bits would do it then.

  Are you sure? yes | no

Peter McCloud wrote 04/03/2017 at 20:59 point

Daren, I'm not sure where "multiple" single points of failure are being added. I understand that the wireless data adds one extra single point failure. If the 2.4 GHz band is being relied upon to provide primary control remotely, via the transmitter, it doesn't seem too much of a stretch to use it for intra-vehicle communication.

I went with Wifi to start with because it's cheap and easy to implement as it's already part of the ESP32. I think your right that the NFC might be a better choice, though it would require 4 TX/RX pairs. The nice thing is that once the hardware and firmware are in place, it should be easy to implement other wireless technologies. Having two different ones would probably be best for redudency.

  Are you sure? yes | no

Daren Schwenke wrote 04/03/2017 at 21:39 point

Each rotor will rely on it's own connection.  4 rotors.  4 single points of failure. 

The law enforcement way of bringing down drones is to flood them with wifi/false GPS signals.  In the case of your drone, that would also result in compromising flight stability and a pretty much instant uncontrolled plummet to the ground.

  Are you sure? yes | no

daigakusei wrote 03/21/2017 at 11:10 point

Hi Peter,

is the power generator not a little bit over engeniering. The generation of electric power in the hub reduce the rotation for the rotor. Every change of magnetic field in the coils produce an reverse force on the magnet. 

Why not an Qi power induction like the loader for mobilephones. 

The sender coil axial around the axis and receiver coild in hub parallel.

The AC of the system whouldn't interferenc with the rotation of the hub.

P.S.: Excuse my bad english its not my native language.

  Are you sure? yes | no

Peter McCloud wrote 03/21/2017 at 18:53 point

I had steered away from wireless power induction because I thought it'd be less efficient. Looking at Qi after you mentioned it, that may not be the case. I'll have to look into that more.

One advantage to a generator based system is that it could potentially be more fault tolerant. If the vehicle suffers a power loss the rotor could still operate and a backup flight control system could attempt to autorotate by feathering the rotors.

  Are you sure? yes | no

Benjamin Hab wrote 04/08/2017 at 20:59 point

When talking about wireless power: I am not entirely sure if this would work, but how about tying the pwm line of the servos to V+ and using a pwm signal on the Qi? At least for analog servos that sounds like a feasible idea to me. 
Anyway, is there any particular reason not to take the rotor head of a big model helicopter? It is at least proven to work and would greatly enhance your yaw dynamics (I havent understood by now, how they are supposed to work with variable pitch anyway?)...
Best wishes,

P.S.: Your projects are really impressing!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates