I have ARM cortex-M/cortex-A software/hardware development team. My work involves many Linux drivers, BSPs and tuning for ARM hardware.

Recently, one of my friend has started BLDC motor manufacturing business. I would like to make control boards for his motors.

I am from software background, have limited prior knowledge to motors and motor controls, having looked into some Texas Instruments DSPs solutions, and planing to use them. But information for motors and motor control online are very scattered.(youtube, wiki). I would like to learn them systematically. What's a good place/way for me.

  • \$\begingroup\$ What's your electrical theory background? You should have at least some study wrt electric machines. If you're confortable in this discipline I'd recommend some specific application notes from NXP regarding Kinetis V microcontrollers which aim BLDC applications. nxp.com/products/microcontrollers-and-processors/arm-processors/… \$\endgroup\$
    – PDuarte
    Feb 27, 2016 at 16:18
  • \$\begingroup\$ STM offers kits for BLDC motor control and libaries. \$\endgroup\$ Feb 27, 2016 at 16:28
  • \$\begingroup\$ is there any online course? I do have first year university electrical engineering basics, and good electric magnetism physics knowledge. \$\endgroup\$
    – c2h2
    Feb 27, 2016 at 16:41
  • 1
    \$\begingroup\$ I'm not sure how deep are your plans to understand BLDC, but systematically I'd start with "Rotating magnetic fields" than "Synchronous machines". That would give you a more solid base for controlling a BLDC. Easy material to google. \$\endgroup\$
    – PDuarte
    Feb 27, 2016 at 17:22

1 Answer 1


Texas Instruments have its InstaSPIN solution. It enables you to control BLDC motors without hall sensors using current measurements and other stuff using their hardware kit (LaunchPad with the BoosterPack on top of it).

I was involved in a project using it and although it works perfectly, it took our firmware developer a LOT of time figuring out how to use it. The examples and help topics didn't help much. However the examples work fine.

You can get a motor running in no time (using the examples). It does come with a GUI and you can extract motor parameters directly with the kit, set acceleration rate and target speed, press a button and watch it spinning.


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