Posts

Showing posts from June, 2023

ESC protocols overview with implementation on STM32

Image
 What is ESC protocol? When our flight controller calculates new values for each of the motors they need to be sent to ESC microcontroller which can then process these values and control MOSFETs. How exactly signals are received and then send to motors is ESC's software secret, which is another really interesting and complicated topic. For now, let's know that we can not control the motors or even MOSFETs from our FC, we need to send new values between two microcontrollers. And here is our topic: how to exchange this information efficiently and correctly?   Analog way The oldest and probably the most recognizable protocol is PWM signal, taken from servo controlling. All the analog protocols are based on this signal. Period and duty cycle changes, but the idea remains the same: the FC sends a signal, and the ESC measures the time of the high and low signal, and this measured value is treated as a new set for the motor. The main features of this approach are: simplicity of imp