Product Guides

STM32F103 Alternatives Compared: GD32, CH32, APM32, CKS32 and HK32 Cross-Reference

The STM32F103 is probably the most widely designed-in 32-bit microcontroller of the last decade. That popularity became a problem whenever supply tightened: lead times stretched, allocation bit, and spot pricing moved sharply. The practical response for most teams was to qualify a Chinese alternative. This guide compares the main options and, more importantly, sets out what you must check before you substitute.

Why the STM32F103 is everywhere

ST's F103 line pairs an Arm Cortex-M3 core with a mature peripheral set, huge amounts of published code, and the cheapest possible development path. Once a design is qualified around it, nobody wants to re-spin the board — which is exactly why a footprint-compatible alternative is so valuable when supply or price moves.

The mainstream alternatives

PartManufacturerPositionLink
STM32F103CBT6STMicroelectronicsThe original reference deviceSTM32F103CBT6
GD32F103C8T6GigaDeviceThe most widely adopted alternative; generally higher maximum clockGD32F103C8T6
APM32F103C8T6GeehyBroadly follows the F103 peripheral layoutAPM32F103C8T6
CH32F103C8T6WCHCortex-M3 option in the same classCH32F103C8T6
CKS32F103C8T6CETCCost-focused alternativeCKS32F103C8T6
HK32F103C8T6HKMicroAlternative for mainstream F103 socketsHK32F103C8T6
CH32V103C8T6WCHRISC-V core, compatible footprint, not a firmware drop-inCH32V103C8T6
AT32F403ACGT7ArteryHigher performance option when you can re-qualifyAT32F403ACGT7

What to verify before you substitute

A matching pinout does not guarantee a working swap. Work through this list on the bench, not on faith.

  • Boot configuration. Confirm BOOT0 and BOOT1 handling. Some parts need a defined pull-down on BOOT0 to start from Flash reliably, and a floating boot pin is a classic intermittent-failure cause.
  • Reset circuitry. Check whether the reset pin needs an external RC network or pull-up that the original design did not include.
  • Flash timing and wait states. If the alternative runs at a higher maximum clock, confirm your Flash latency and clock-tree settings are still valid.
  • ADC accuracy. Reference behaviour, sampling time and effective resolution differ. Re-calibrate anything measurement-critical.
  • USB. Device-mode USB is particularly sensitive to clock accuracy and pull-up arrangements. Test enumeration and data transfer, not just that it powers up.
  • Unique ID and option bytes. Any code reading a device ID, or storing configuration in option bytes, needs review.
  • Power and decoupling. Compare current consumption and recommended decoupling; a faster core can draw more at peak.

Higher pin counts we also stock

If your design needs more pins than the 48-pin C8T6, the same substitution exercise applies to the larger packages. We regularly supply the GD32F103RCT6 and GD32F103VET6 alongside the original STM32F103VET6 and STM32F103CBT6. See the full microcontroller range.

How we support the switch

Send us the exact part you are replacing, the package, your quantity and whether you need a sample first. We can quote the original device and the alternatives side by side, with date codes and availability, so you can make the call on real numbers.

Frequently asked questions

Are GD32, CH32 and APM32 parts pin-to-pin replacements for the STM32F103?

For most mainstream packages the pinouts of GD32F103, CH32F103, APM32F103, CKS32F103 and HK32F103 devices broadly follow the STM32F103 layout. Even so, you must verify the specific package you use, and you should never assume electrical or firmware compatibility from the pinout alone. Always prototype and test.

Will my STM32 firmware run unchanged on a Chinese alternative?

Often it will, but not always. Register-level code usually ports with little or no change. Code that depends on Flash timing, the unique device ID, option bytes, ADC behaviour or USB timing may need adjustments. Budget time for validation rather than assuming a drop-in swap.

Which alternative is closest to the STM32F103C8T6?

The GD32F103C8T6 from GigaDevice is the most widely used alternative and typically runs at a higher maximum clock. The APM32F103C8T6 from Geehy, the CH32F103C8T6 from WCH and the CKS32F103C8T6 from CETC are also commonly evaluated for the same socket.

What about RISC-V options?

The CH32V103C8T6 from WCH is a RISC-V device in a compatible footprint. It is not a firmware drop-in, but it is a useful option if you are writing new code and want to move away from Arm licensing.

About us & trademarks: JTDZ Tech (Shenzhen Jingteng Electronics Technology Co., Ltd.) is an independent distributor of electronic components. We are not an authorised distributor or representative of the manufacturers named in this article. Manufacturer and part names are used for indicative purposes only, to help identify the components discussed; all trademarks remain the property of their respective owners. Always verify specifications against the official datasheet before design-in or purchase.

Recommended next steps

If you are sourcing any of the parts mentioned in this guide, we can help you confirm stock, pricing, and lead times quickly.

💬 Prices vary with order quantity & market conditions. The listed price is for reference only. Contact us for a real-time quote — we offer competitive pricing for volume orders and hard-to-find parts.
MOSFET Gate Drivers, LDOs and DC-DC Controllers: A Selection and Sourcing Guide
Crystal Oscillators: How to Choose Frequency, Tolerance, Load Capacitance and Package