Mind spinning possibilities: Hall effect sensor bandwidth in BLDC motors

Other Parts Discussed in Post: DRV5013

Here in TI’s motor team, we are constantly deluged by requests for motor drivers that can spin a motor faster and smoother. In the brushless-DC motor realm, this is pushed to the limit with stringent requirements of speed, torque ripple and jitter performance.

In sensored BLDC motors particularly, magnetic sensors are used in order to know the position of the rotor at all times so that the motor windings can be driven in the most efficient way without causing any mis-commutation errors. Traditionally, Hall effect sensors are employed to provide this critical feedback.

TI just announced a new family of Hall effect sensors.

Read this other recent post from the engineer who developed the TI Hall sensor.

So as motors spin faster and faster, at what point do we need to consider the bandwidth and response time of the Hall effect sensor itself? Obviously, if there is too much delay caused by the Hall effect sensor, then the motor controller may not be able to respond adequately.

The intent of this post is simply to clear up a common confusion regarding Hall effect sensor bandwidth when used in a sensored three-phase BLDC motor application: how fast is fast enough for the Hall effect sensor?

To answer this question, we need to take a quick look at how a sensored BLDC motor is constructed.

The stator is constructed of motor windings that create the stator poles when energized. These windings are what are actually driven when current is applied to the motor. The rotor is composed of alternating poles of a permanent magnet. The number of poles on (north and south) is typically between 6 and 10. Motors with a higher rated speed tend to have a lower pole count. Generally there are not the same number of poles on the stator and rotor.

Three Hall effect sensors are positioned such that they sense the magnetic field generated by the permanent magnets on the rotor. As the motor spins, the magnetic field alternates between north and south. In one rotation, any Hall effect sensor will see every pole on the rotor.

With this information we can calculate the magnetic field is switching at the following rate:


Now this result may not surprise you as much as it does me. 250 Hz is slow. If we consider using the DRV5013 Hall effect sensor for the motor position feedback, we have an available bandwidth of over 20 kHz. I don’t know about you, but 80X seems like plenty of margin to me.

For mechanical systems (i.e. motors), it turns out that it is very difficult to get a magnet spinning fast enough to start to cause Hall effect sensor bandwidth concerns.

If we take the previous hypothetical motor as an example, the motor would have to spin at 120,000 RPM in order to result in a magnetic field switching frequency of just 10 kHz. At this speed, I can entertain the proposition that a 2X bandwidth margin may be insufficient.

Let’s take a look at output delay time instead of bandwidth as a figure of merit. In our imaginary motor system spinning at 3,000 RPM, the magnetic field is north for 2 ms and south for 2 ms. Again, using the DRV5013 as the sensor, the output delay time is typically 13 µs. We can calculate the angle delay caused by the hall sensor output delay as:

f(Hz): The result of the previous calculation above

tdelay: output delay time of the hall sensor

In this example, we have:

This is less than one-quarter of a degree of the motor rotation.

To conclude, I return to my original question: how fast is fast enough for the Hall effect sensor?  For most motors, and other mechanical systems, a bandwidth of 20 kHz for the Hall effect sensor is more than fast enough. The angle delay induced by the hall sensor is very low in the example given.

What about your motors? Do you feel like your design pushes the limit for a 20 kHz bandwidth Hall effect sensor? Would your calculated angle delay cause problems for your system? We would love to hear from you in the comments section below.

You can get a sample of the DRV5013 Hall sensor, here.

You might also be interested in this video on the Hall sensors.

Two reference designs to help you get started are here and here.


  • Hi Anthony,

    That’s the problem with those encoders: they need to be aligned just right.

    The use (or not) of position feedback like an encoder or hall sensor depends entirely on what it is you plan on spinning. I’ve seen those hobby motors used to build a quadcopter running sensorless InstaSPIN. On the other hand, laser printers use a polygon BLDC motor that is sensored and still needs to spin at 10’s of krpm.

    For a quadcopter, controlling the propeller position is not that critical, but it is very important in a printer, where any tiny variation in the motor speed may cause a page to be incorrectly printed.

    Just make sure that hobby motor is properly secured in a vice. They can really get spinning.

    Thanks for commenting!


  • Yep, it's really cool to spin motors fast; the fastest I've played with is an Emoteq BH02301 (single stack NEMA23 BLDC) at 20,000 RPM.  Unfortunately, the plastic encoder wheel was misaligned a bit and melted, and it's tough to find affordable 20,000 RPM encoders...

    Pittman and Emoteq both make motors in the 50,000 - 100,000 RPM ranges, but they're too much for my budget (unless one pops up for a reasonable price on eBay).

    What is on my wish list (maybe in the fall) is to get a 3 phase hobby motor (e.g. from Hobby King; cheap but no halls) and see how fast I can spin it with insta-SPIN FOC.

  • Hi Ardian,

    These are very cool motors! I was browsing through the catalog and found the EC size 5 Ø0.5 in, which I think is along the lines of what you were referring to. The motor has a nominal speed of 70 krpm and a maximum speed (unloaded) of 90 krpm.

    If you look at the motor specifications, it lists that there is only 1 pole pair (2 poles total) on the rotor. Higher speed motors will tend to have this lower pole count. So if I run through my equations (hopefully correctly), at 70 krpm the magnetic field switching frequency is still only 1.17 kHz and the angle delay (assuming a DRV5013) would be 5.46°.

    Thanks for reading!


  • Some maxon motors have 100000 rpm rated maximum speed though.