How can I calculate the location of Hall effect sensors for a BLDC motor according to the number of stator slots and the number of rotor poles?

What mathematical relationship is there to calculate?

enter image description here

enter image description here

  • \$\begingroup\$ Do you have a winding diagram for your motor? Or do you know how many magnets are on the rotor and how many stator teeth? \$\endgroup\$
    – user57037
    Dec 8, 2022 at 3:35
  • \$\begingroup\$ @mkeith I don't have the winding diagram, but the motor has 24 slots and 32 poles \$\endgroup\$ Dec 8, 2022 at 4:41

1 Answer 1


I am not a motor designer, but I have experimented with installing sensors on motors before, but only two or three times. I am not sure if there is a formula but there are some rules.

  1. Sensors must be placed 120 electrical degrees apart from each other. Since you have 32 magnets, that is 16 pole pairs, so you have 16 electrical cycles for every full mechanical rotation of the rotor. So an electrical cycle is 360 / 16 = 22.5 degrees of mechanical rotation. So 120 electrical degrees = 7.5 mechanical degrees.

  2. If it is not convenient to place the sensors at 7.5 degree intervals, they can instead be placed at 7.5 + N * 22.5, where N is an integer.

  3. The first sensor should be placed so that it transitions from low to high at the positive zero crossing of the back EMF measured from phase A to B.

Based on rule 1 and 2, all of these spacings (in mechanical degrees) would be OK:
0, 7.5, 15
0, 30, 60
0, 52.5, 105
0, 75, 150
0, 97.5, 195
0, 120, 240

Since your motor has 24 slots, you have 360/24 = 15 degree spacing between slots, I think 0, 30, 60 degrees will be a good choice. You can place the sensors in the gaps between teeth. Try to center the sensors in the gaps. If the sensors are not spaced accurately, the controller will have a hard time and the motor may not run smooth.

The hardest part is figuring out where to put the first sensor. You want to place it so it toggles from low to high just as the back EMF measured from A to B crosses zero in the positive direction. This diagram may help:

enter image description here

Diagram may be subject to copyright. I claim fair use. I found it here: https://www.researchgate.net/figure/Hall-signal-and-Back-emf_fig1_313807594 on 7 DEC 2022.

Without knowing which winding is which on your stator I can't tell you where the first sensor should go, exactly. You may have to try several different gaps until you find the one that lines up best with the back EMF. Here is a picture showing one possible place to locate the sensors.

enter image description here

Good luck! Have fun experimenting.

  • \$\begingroup\$ Thank you for your answer, I also thought that the distance between each sensor should be 1 slot, is there a special reason that you have drawn the location of the sensors in that position? \$\endgroup\$ Dec 8, 2022 at 9:52
  • \$\begingroup\$ Just to keep them in order. You can move Hall 3 in between Hall 1 and Hall 2, but then they won't be in order physically. The order of excitation is Hall 1, Hall 2, Hall 3 (or the opposite when running backwardss). For your motor you can always move any sensor by 3 slots and it will send out an identical signal because 3 slots is 2 full electrical rotations. \$\endgroup\$
    – user57037
    Dec 8, 2022 at 17:28
  • \$\begingroup\$ I think it is 22.5 + N * 7.5, rather than 7.5 + N * 22.5. \$\endgroup\$
    – user334936
    Mar 12 at 17:45

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.