STMicro STM32 microcontrollers are very popular, and it’s a well-known fact there are some fakes on the market. What I did not know is that many don’t even pass the blinky test.
I learned this in Greaseweazle Github repository, a “tools and USB interface for accessing a floppy drive at the raw flux level”, where keirf explains how to detect STM32 fakes, notable clones of STM32F103C8 found in Bluepill board.
The photo above shows a real STM32F103C8T6 microcontroller, and all should have the similar top marking and only one circular depression on the bottom left to indicate pin 1.
keirf goes on to show two boards that are sold as STM32F103C8T6 Bluepill boards, and it’s fairly straightforward to point out the differences by just looking at the chips. The ugly part is that both fail the blinky sample.
Furthermore “KC6” would indicate a low-density part with fewer features.
The second fake STM32 chip is slightly harder to spot because the marking is STM32F103C8T6, but when looking side-by-side, we’ll notice two circular depressions on the chip, and a smaller font.
keirf notes that are some physical differences on genuine chips too, so the only way to make sure it to test features, and that one could not be programmed at 921600 baud, only at 115200 baud, and it was impossible to start firmware from System Bootloader among other issues documented in Github.
Finally, there are some Bluepill boards with CS32 clone of STM32 that we reported on a little over a year ago.
I’m not sure I’d call this one a “Fake” as it identifies itself as a clone, and mostly works as expected. Last year, people reported that debugging with the official STMicro tools would not work, and that’s one way to detect clones.
[Update: There are even more STM32 fakes: APM32F103, BLM32F103, MM32F103, etc… See Andre’s comment for details]
Thanks to Zoobab for the tip.