I am a student who is still very new to developing sensorless FOC software. What I'm trying to do now is to open-loop control a BLDC motor using SPWM (to get theBEMF values required for the close loop.)
I installed the necessary hardware for this and wrote the software for an STM32F407. The code produces a 10kHz carrier (PWM frequency) and 28Hz reference frequency (240RPM*14pole/120) with 3 phases and 120 degree phase difference between them. I used 3 channels and connected the main pwm channel modulated to the Hin part of the IR2110 and the CHxN to the Lin part (I applied this for 3 separate IR2110s.) On the oscilloscope, I saw the 10kHz carrier I wanted and the 120 degree sines with 28Hz reference.
The motor needs to be rotated by hand at the beginning. Apart from that, the motor continues to rotate at the speed I want. Another problem is that my motor draws currents like 4 amperes and this is a bit too much for me (while rotating.) The motor I have is a 12V BLDC drone motor. If you want, I can share the code I wrote and the hardware I prepared with you.