BLDC motor six-step commutation: Hall sensors, inverter and back-EMF
A brushless DC (BLDC) motor replaces the brushes and commutator with electronics. A controller reads the rotor position, usually from three Hall sensors, and every 60 electrical degrees switches which two of the three stator phases carry current, so the stator field always stays ahead of the permanent-magnet rotor. This is called six-step or trapezoidal commutation.
Why a BLDC motor needs electronic commutation
In a brushed motor the commutator keeps the armature field about 90° ahead of the field of the magnets. In a BLDC motor the roles are swapped: the permanent magnets are on the rotor, and the windings are fixed in the stator. There are no brushes to hand over the current, so something else must decide which winding gets current at each instant.
That something is the controller and its power stage. It needs to know where the rotor is, because the torque is only high when the stator field is roughly perpendicular to the rotor field. If the stator field were fixed, the rotor would just align with it and stop. The controller therefore steps the stator field around the motor in discrete jumps, just ahead of the magnets, and the rotor follows.
The same idea can be summarised in one sentence: a BLDC motor is a brushed DC motor turned inside out, with the commutator done in electronics.
The three-phase inverter and six steps
A three-phase bridge has six switches, a high-side and a low-side one for each of the phases U, V and W. In six-step operation only two switches conduct at any time: one high-side switch connects one phase to the positive DC bus, and one low-side switch connects a second phase to the negative bus. The third phase is left open, or floating.
Current therefore flows through two windings in series, and the combined magnetic field of those two windings points in one fixed direction. When the rotor has turned by 60 electrical degrees, the controller moves on to the next pair. After six steps the field has turned through 360 electrical degrees, one electrical revolution. The sequence, with the phase that receives positive current listed first, is:
- Step 1: U positive, V negative, W open
- Step 2: U positive, W negative, V open
- Step 3: V positive, W negative, U open
- Step 4: V positive, U negative, W open
- Step 5: W positive, U negative, V open
- Step 6: W positive, V negative, U open
Each step is chosen by one of six Hall codes. The codes 000 and 111 never occur in a healthy motor, so they can be used to detect a wiring or sensor fault. The exact Hall-to-step mapping depends on where the sensors are mounted relative to the windings, so it is taken from the motor datasheet. Reversing the direction means using the mirror sequence, and the speed is controlled by chopping the conducting switches with PWM, which sets the average voltage.
Hall sensors and sensorless commutation
Three Hall-effect sensors, usually spaced 120 electrical degrees apart, sit next to the rotor magnets or on a small magnet ring on the shaft. Each outputs a logic 1 or 0 depending on whether a north or a south pole is passing, so together they form a 3-bit code that changes every 60 electrical degrees. That is exactly the resolution six-step control needs.
Hall sensors give reliable position information even at standstill, which makes starting under load easy. Their drawbacks are cost, extra wires (five for the sensors and three for the phases), sensitivity to temperature and placement errors, and one more component that can fail.
Trapezoidal back-EMF and torque ripple
The motor is wound and its magnets are shaped so that the back-EMF in each phase is trapezoidal: it rises, stays flat for about 120 electrical degrees, falls, and stays flat negative for another 120 degrees. During each six-step interval, the two conducting phases both sit on a flat part of their back-EMF, so a constant current gives an almost constant torque:
T = Kt × I
where Kt is the torque constant. Each commutation, however, moves the current abruptly from one phase to another. Winding inductance slows the change of current, so the torque dips briefly at every step. This commutation ripple, at six times the electrical frequency, is the main disadvantage of the method and is why smooth, quiet drives use sinusoidal control instead.
Speed relates to electrical frequency as f_e = rpm × p / 60, where p is the number of pole pairs. A motor with 4 pole pairs at 4,000 rpm has an electrical frequency of about 267 Hz and goes through 1,600 commutation steps per second.
Sensorless commutation. The Hall sensors can be dropped by watching the floating phase. While the other two phases conduct, the voltage on the open phase equals its own back-EMF, which swings through zero as the rotor magnet passes. The controller detects this zero crossing against the motor's neutral point (or a virtual neutral built from resistors), waits about 30 electrical degrees, and then commutates.
This works well from medium speed upwards and is common in fans, pumps and drone motors. It fails at very low speed because back-EMF is proportional to speed and is too small to measure, so the motor must be started open-loop: forced to align at a known position and then ramped in speed until the back-EMF becomes large enough to take over. Sensorless drives therefore struggle with high starting torque and with holding at zero speed.
BLDC compared with a brushed DC motor
- Maintenance: BLDC has no brushes to wear, so life is limited by bearings; a brushed motor needs brush service.
- Efficiency and heat: BLDC has no brush friction and no brush voltage drop; the windings are on the stator, where heat flows straight to the housing.
- Speed range: without a commutator limit, BLDC motors reach much higher speed.
- Noise: no brush arcing or electrical noise from sparking.
- Cost and complexity: BLDC needs a three-phase inverter and position sensing, while a brushed motor can run from a battery or a single transistor.
- Torque behaviour: both give torque almost proportional to current and speed almost proportional to voltage, so the characteristic line looks the same.
Worked example. Take a 24 V motor with Kt = Ke = 0.05 N·m/A and a winding resistance of 0.28 Ω. At 50% PWM duty the average voltage is 12 V. With a load that needs 5 A, the back-EMF is 12 − 5 × 0.28 = 10.6 V, so the speed is 10.6 / 0.05 = 212 rad/s, which is about 2,020 rpm. Doubling the duty to 100% gives 24 − 1.4 = 22.6 V and about 4,300 rpm for the same current.
How the simulator models a BLDC motor
Curvo Studio's brushless DC motor simulator is a compact educational model. PWM is represented by its average applied voltage, which is the DC bus voltage multiplied by the duty cycle. Kt and Ke are treated as numerically equal in SI units. From the load, the simulator finds the phase current needed for the torque (plus a small no-load current), subtracts the resistive drop from the applied voltage to get the back-EMF, and divides by Kt to get the speed. The current is limited to the smaller of 4.5 times rated current and the stall current, and when the load needs more than that the motor is flagged as stalled.
The 3D model has an eight-pole permanent-magnet rotor by default (four pole pairs), fixed U, V and W stator windings and a board of three Hall sensors. A live line over the 3D model shows the current Hall code and which phases are conducting and which is open, and the phases are highlighted in sequence as the rotor turns. The simulator does not model the sensorless back-EMF method, the commutation torque ripple or inverter switching in detail.
Try it in the BLDC motor simulator
Open the brushless DC motor simulator and try these experiments.
- Watch the live line over the 3D model: the Hall code changes every 60 electrical degrees and the conducting pair moves with it, one phase always open.
- Set the PWM duty cycle to 100%, then 50%, and read the Rotor speed. It scales with the average voltage.
- Change the DC bus voltage to see the same effect from the other direction.
- Raise the Mechanical load slider to see the Phase current and Torque rise and the speed sag slightly. Overload it until the motor stalls.
- Switch the Commutation sequence between ABC and ACB and the rotor reverses.
- Check the Electrical frequency readout and compare it with speed × pole pairs / 60. Change the Pole pairs in the nameplate and see the 3D rotor change.
- Turn on the Magnetic field layer in the cutaway view to see the stator field jump ahead of the rotor magnets.
Try it in the simulator
Frequently asked questions
- What is six-step commutation?
- Six-step commutation is a BLDC drive method in which only two of the three phases carry current at a time. The controller moves to the next of six phase pairs every 60 electrical degrees, so the stator field turns in six jumps per electrical revolution and keeps pulling the rotor forward.
- Why does a BLDC motor need Hall sensors?
- The controller needs to know the rotor position to choose the right pair of phases. Three Hall sensors give a 3-bit code that changes every 60 electrical degrees, which is exactly the information six-step control needs, even at standstill.
- Can a BLDC motor run without Hall sensors?
- Yes. Sensorless drives detect the zero crossing of the back-EMF on the floating phase and commutate about 30 electrical degrees later. This does not work at standstill or very low speed, so the motor is started open-loop and handed over once the back-EMF is large enough.
- Why is a BLDC motor called a brushless DC motor if it uses three phases?
- It is supplied from a DC source, and its speed and torque characteristics resemble those of a brushed DC motor. The inverter creates the three-phase waveforms internally, so from the outside it behaves like a DC motor with electronic commutation.
- What is the difference between a BLDC motor and a PMSM?
- Both have permanent magnets on the rotor and three stator phases. A BLDC motor has trapezoidal back-EMF and is driven with six-step current blocks, while a PMSM has sinusoidal back-EMF and is driven with sinusoidal currents, usually with field-oriented control, for smoother torque.
- How do you change the speed of a BLDC motor?
- Change the average voltage applied to the winding, usually by PWM duty cycle on the inverter switches. Speed is roughly proportional to that voltage minus the resistive drop, just like a brushed DC motor.