SxxP versus SxxS versus LSW-675
SxxP
The SxxP version is a sensorless, square wave/6 steps motor controller and has a secondary board that includes another microcontroller (STM8S003F3) as seen on the next picture. The main microcontroller is the 16 MHz, 8 bits, 32kbytes flash program memory, STM8S105C6T6 and don't have processing power to do FOC.
To be sensorless, it may look at BEMF zero crossing and for that 1 phase must not be energized during 1 step - because of this, the motor phases can't be driven with a sinewave/SVM.
I think the secondary board implements the sensorless algorithm.
SxxS
The SxxS version is sensored, sinewave/SVM motor controller and unlike SxxP, doesn't have a secondary board. The main microcontroller is the 16 MHz, 8 bits, 32kbytes flash program memory, STM8S105C6T6 and don't have processing power to do FOC.
Because it is sensored, it can drive the motor phases with sinewave/SVM.
LSW-675
The LSW-675 is a sensorless, FOC/sinewave/SVM motor controller. The main microcontroller is the 48 MHz, 32 bits, 32kbytes flash program memory, STM32FEBKC6T6 (similar to STM32F103?) and have processing power to implement FOC.
The 32kbytes flash program memory seems to little to implement FOC however, I found that ST have a FOC library that uses only ~16kbytes of flash memory:
Performances of FOC with STM32F103
Configuration: 1 shunt/sensorless at 10 kHz FOC sampling time
• Motor control code size is 16.2 Kbytes
• Motor control RAM usage is <2.5 Kbytes
• FOC total execution time is 26.1 μs (ADC ISR + TIM1 update ISR)
• FOC introduced CPU load is 30%