Recommended books/resources


Hello, You guys are doing great. I really appreciate that. Kindly can you guys recommend books/resources to understand algorithms used in ODrive firmware such as FOC, PID and other algorithms/techniques?

Thank you

Getting Started With ODrive

I like Electric Motors and Drives by Hughes and Drury for general electric machine stuff and it covers FOC (though I’ve not read this section). It doesn’t seem to explicitly cover PID although there are millions of tutorials online on PID control.


Regarding PID control, Brian Douglas does a load of beautifully explained YouTube lectures on control and he’s naturally covered PID. It’s not in the context of motor control but it’s directly transferable.

Finally if you want something a bit more intense then there’s a CalTech textbook on control. Chapter 11 covers PID


This website has a nice intuituion-based explanation of FOC:

This paper has a nice explanation of different commutation methods and some of the math behind FOC. The discussion of this stuff starts on page 86 in the pdf, or page 69 as labelled. The rest of the paper is super awesome too, but less related.


Hello,urdman.Thanks for your reply for the “recommended books/resources”.
If you have got the book “The Fundamentals of Control Theory”.Would mind to share the pdf of the book for us to study.Thank you very much!


Thank you guys for your feedback. I will have a look at them :slightly_smiling_face:


For the basics, I recommend “Motors for Makers” by Matthew Scarpino. You don’t have to be an engineer to read it, but even if you are you’ll learn something.


Thank you @Wetmelon, does this book discuss about field oriented control?


I found this summary quite useful. It covers everything from the basics of magnetism concepts up to FOC of BLDC motors and is written for a general engineering audience.


Thank you @Richard_Parsons. Thats quite a nice summary. I have watched teaching old motors new tricks series also by Dave Wilson from TI. He explains them in very good way.


This book is literally $1, not $200+ like some textbooks. Just buy it.

Edit: to be fair to OP, the author does mention getting it for free from a friend as an option since he’s released it under a creative commons license. I still can’t believe someone here that will spend hundreds of dollars on motors and controllers wouldn’t support an author of a great book for $1.


Okay,Thanks for you to share the link .I’m going to buy the book now.


We were discussing this in the Discord chat yesterday. Here’s some more good resources:

This paper talks about optimizing motor sizing and lots of other stuff:

This is a good descriptor of motors, simplified to 1 pole pair:

How to read the torque of the motor?

I have read some resource files about FOC, but don’t understand the deriving of Kp and Ki clearly.
In the FOC controller, we applied the PI regulator to calculate the inputs for Inverse Park Transform. So the most important thing what we should do is to calculate the value of Kp and Ki.
There is a PPT try to describe the thesis of how to get the Kp and ki in a simple way.
If anybody also has the resource for the way to derive the Kp and Ki, share the link for learning, thanks very much.


My favorite resources are in order of terse to verbose:

Basic intro:

Good summary reference of the main equations:

Very in-depth exposition of all of the relevant theory:

A lot of theorical questions about motor control