It didn't. Every piece of documentation I could find said that it did, but it would never respond. Forums were full of people complaining about this problem for years with no response from ST. No datasheet or marketing update, no errata. You just get a useless chip and it's your problem now. They also never responded to any of my direct emails or messages.
Every time I've tried an ST part, it's been hell and I eventually gave up and used an Atmel part instead. Every time.
That only gets you proper support for a couple vendors (Nordic, ST), everything else is a nightmare. Even with better-supported vendors, there are whole swaths of things that aren't properly supported and you need to directly call code from underlying vendor SDK to make things work. That bodge makes the whole project non-portable. Even some simple things like ADC DMA on ST F1 series..
Sometimes stuff is missing. But that's implemented and upstreamed quickly.
For SWD you can one of the ST-Link clones or the free open implementations of it.
Porting stuff to another microcontroller would be easy as we are not using too proprietary features... as long the uC has SPI/I2C and a bunch of timers the embedded developers will be happy. Thanks to Zephyr.
Maybe some basic stuff like usart, i2c works fine. But the the deeper you dig into the specialties the more you will have problems.
And STM32s and expensive? Maybe if you buy them from Digikey or Mouser. With the right distributor they are dirt cheap.
They still are.
No vendor until now was able to push out microcontrollers with a solid Wifi integration. Sometimes you can find weird 2-chip-solutions.
I still wonder why ST doesn't bring one. That device would be a multi-billion-business.
This is more about the application running on that device.
Is it any different from the ADC on other MCUs?
I also work a lot with ESP32s. Their ADCs (non-linearity, and with the integrated calibration you loose resolution) don't make too much fun.