Because the controller must direct the rotor rotation, the controller needs some means of determining the rotor's orientation/position (relative to the stator coils.) Some designs use Hall effect sensors or a rotary encoder to directly measure the rotor's position. Others measure the back EMF in the undriven coils to infer the rotor position, eliminating the need for separate Hall effect sensors, and therefore are often called "sensorless" controllers. Like an AC motor, the voltage on the undriven coils is sinusoidal, but over an entire commutation the output appears trapezoidal because of the DC output of the controller.
The controller contains 3 bi-directional drivers to drive high-current DC power, which are controlled by a logic circuit. Simple controllers employ comparators to determine when the output phase should be advanced, while more advanced controllers employ a microcontroller to manage acceleration, control speed and fine-tune efficiency. Controllers that sense rotor position based on back-EMF have extra challenges in initiating motion because no back-EMF is produced when the rotor is stationary. This is usually accomplished by beginning rotation from an arbitrary phase, and then skipping to the correct phase if it is found to be wrong. This can cause the motor to run briefly backwards, adding even more complexity to the startup sequence.