I would like to ask a question about zero crossing event in a trapezoidal commutation on a brush-less DC motor. Here is a waveform that shows that the zero crossing event occurs every 180 electrical degrees in a sinusoidal commutation:

But what about trapezoidal commutation. Here is the waveform that I found about the trapezoidal commutation:

So as you see, the zero crossing occurs 30 electrical degrees after the previous commutation and 30 electrical degrees before the next commutation. In a motor with one pole pair, we would have 30 electrical degrees = 30 mechanical degrees, so we would have this waveform: zero crossing You see that the zero crossing in phase A occurs when the magnet faces the phase C, or in other words, after 30 electrical degrees from the last commutation. My question in why does the zero crossing happen at that moment, why not after 60 electrical degrees, or 15 electrical degrees? Is it related to some law's of induction? What are those law and how do this law's appear in this motor? Can someone explain to me this with some pics?

  • $\begingroup$ About zero crossing on a bushless motor, please explain. Thank you, $\endgroup$
    – user8935
    Jan 23, 2015 at 10:38

2 Answers 2


Each of the three Hall Effect sensor signals is out of phase with the others by 120°. The same is true for the BEMF signals. The Hall Effect signals and the BEMF signals are 30° out of phase with each other.

From this Microchip App note:

Hall sensor signals are out of phase by 120 degrees to each other. At every 60 degrees, one of the Hall sensors makes a transition.

The BEMF generated in the windings are also at 120 degrees out of phase to each other, but they are asynchronous with the Hall sensor signals. In every energizing sequence, two phases are connected across the power supply and the third winding is left open. the BEMF voltage is monitored on the winding that is left open. With this, the BEMF voltage in windings increases when it is connected to power supply and reduces when it is connected to the return path. The transition takes place when the winding is left open in the sequence. The combination of all 3 zero cross over points are used to generate energizing sequence. The phase difference between the hall sensor and the BEMF signal is 30 degrees.

Waveform of Hall sensor versus BEMF voltages

Oscilloscope waveform of BEMF and Hall sensor signals

So if you commutate 30° after sensing a zero crossing, you are actually commutating at the same time you would be if you detected a change in the Hall Effect sensors.

The reason the Hall Effect signals and the BEMF are out of phase is because they are measuring two different things. The Hall Effect sensors are measuring rotor position. The BEMF signals are measuring stator sequence energization. It is from that energization that we can extrapolate rotor position and determine correct commutation timing.

From this Atmel App note:

The optimum drive sequence is to drive PWM at 30° after zero crossing to be in phase with the rotor position as shown by the figure below. Driving earlier or later to this 30° will increase the current comsumption [sic] of the motor.

Thirty degree phase angle

So why 30°? 30° is the amount of time it takes for the interaction between the stator magnetic field and the rotor magnetic field to begin to weaken to the point that stator's electrical field needs to be altered in order to strengthen the interaction between the two magnetic fields.

You can actually play with this timing to some degree by doing things like rotating the Hall Effect sensors in order to achieve certain results and/or meet certain requirements. I go into this practice more in my answer to this question: Why Have Non-Zero Timing on a BLDC?.


First, some background to make sure we are clear on the basics:

1 mechanical degree = 1/360th of a full mechanical rotation

1 electrical degree = 1/360th of a full AC cycle

Zero crossing = the point where the voltage equals 0

zero crossing waveform explanation
Image from https://upload.wikimedia.org/wikipedia/commons/0/03/Zero_crossing.svg

Now, in an electric motor with 2 poles, a full AC cycle is needed to make 1 full mechanical rotation. So 1 electrical degree = 1 mechanical degree, and the zero crossing occurs twice, i.e once every 180 degrees.

"Sensored" Mode

You say that in sensored mode, the hall sensor tells you to commutate once every 60 degrees, so your zero crossing occurs once per 60 degrees, and the full AC cycle once per 120 mechanical degrees, which means you make 3 full AC cycles per 1 mechanical rotation.

That means your "sensored" motor has 6 poles (3 pole pairs).

Sensorless Mode

I found while searching that the zero crossing happens 30 electrical degrees after the previous commutation

Where did you find this? Looking at the linked chart above, shouldn't the commutation occur every 180 electrical degrees always? And the zero crossing should always be in the middle between 2 commutations, which means it is always going to happen 90 electrical degrees after (or before) a commutation.

If you meant 30 mechanical degrees, then we can say the commutation happens every 60 mechanical degrees (also the zero crossing happens every 60 mechanical degrees). This means a full AC cycle takes 120 mechanical degrees, so 3 full AC cycles per 1 mechanical rotation, which agrees with the information from the "sensored" mode.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.