The ESP32 data sheet talks about "Motor PWM" vs "LED PWM". The "LED PWM" seems to be a quite straightforward feed-forward circuit, while the "Motor PWM" also has "three fault detection signals, three event-capture signals, and three sync signals".
I'm looking for some explanation what all those extra inputs for "Motor PWM" are for — which problems do they solve? And then also some example circuitry for how to use them.
It appears to me that I can use the "LED PWM" just find to drive a DC motor via an amplifier suitable for switching inductive loads?
Best Answer
What you wish to know is covered in reasonable detail here in Espressif's ~= 1500 page "Programming guide".
See below for section covering the - MCWPCM = Motor PWM Control unit.
The overall 'Programming Guide' is a must see for any ESP32 users.
Guide Downloads
Latest stable version PDF - 1497 pages !!! :-). June 26 2019
___________________________________
MCPWM - Motor PWM:
Espressif's Programming guide - MCWPCM unit - 20+ pages (depending on your screen size :-) ).
They say:
MCPWM Overview
"ESP32 has two MCPWM units which can be used to control different types of motors. Each unit has three pairs of PWM outputs.
A detailed block diagram of the MCPWM unit is shown below. Each A/B pair may be clocked by any one of the three timers Timer 0, 1 and 2. The same timer may be used to clock more than one pair of PWM outputs. Each unit is also able to collect inputs such as SYNC SIGNALS, detect FAULT SIGNALS like motor overcurrent or overvoltage, as well as obtain feedback with CAPTURE SIGNALS on e.g. a rotor position.
Contents
transformer