Let's discuss: Are you still choosing STM32 for small batch projects now, or has everyone switched to domestic alternatives?

Recently, the company has been reviewing the material selection strategy for next year, and the leadership’s stance is to go domestic whenever possible. I’ve reviewed my current projects, which are mostly low-volume (hundreds to thousands of units) with modest performance requirements (Cortex-M0+/M4 level is sufficient).

Current options under consideration:

  • STM32G0/G4 series: Mature ecosystem, but 30-50% more expensive than domestic alternatives. Lead times have improved, but geopolitical risks remain a concern.

  • GD32F3/F4 series: Pin-to-pin compatible with STM32, but USB and CAN compatibility has caused issues before. Some peripheral registers differ.

  • CH32V307 (QinHeng Micro): RISC-V architecture with great pricing, but the ecosystem is quite weak—debugger setup took a long time.

  • APM32 (Geega Semiconductor): Reportedly good compatibility with STM32, but few people around me are using it, so I’m hesitant.

  • N32 (Nationalchip): Security and encryption are selling points, but we don’t need them, and the price is mid-range.

I’d love to hear everyone’s practical experiences:

  1. For low-volume projects (without considering the extreme cost savings of mass production), which brand do you currently prefer?

  2. During the process of domestic substitution, what are the pitfalls that aren’t mentioned in the documentation?

  3. If customers insist on STM32, how do you convince them to switch to a domestic alternative?

Thanks in advance, everyone!

I barely use ST anymore for small production runs unless the client insists. The GD32F470 series has been in use for over a year and the performance is solid, but there are a few hidden gotchas:

  1. Flash wait cycles differ from ST, which can easily trigger a HardFault when overclocking—requires manually adjusting the Flash latency

  2. The ADC sampling rate is advertised as 1 MSPS, but the effective resolution is about 1-2 bits lower than ST; be careful with high-precision acquisition

  3. The worst issue is that certain batches of chips have an I2C bug with incorrect ACK signal timing, causing incompatibility with some sensors. For small production runs, you can test the waters with GD32, but be sure to allocate enough debugging time.

I’ve used the CH32V307—here’s my honest experience:

  • The price is genuinely cheap; you get M3-level performance for just a few dollars

  • But the RISC-V debugging ecosystem is painful—WCH-Link frequently fails to connect, and OpenOCD support is incomplete

  • Their library functions have a completely different style from HAL, which increases the learning curve

  • On the plus side, the USB peripherals are well designed, making USB Device development hassle-free

In summary: suitable for students to tinker with or cost-sensitive consumer electronics, but not recommended for industrial products—you’ll be at a loss if issues arise.

From an FAE perspective, a few remarks. The main gap with domestic MCUs currently lies in “hidden quality” issues: with ST’s chips, if you design according to the datasheet, 99% of the time there won’t be problems; with domestic chips, maybe 95% is fine, but those 5% corner cases can drive you to debugging despair. For example, the RTC of a certain domestic brand drifts at low temperatures; and some company’s PLL is prone to losing lock during voltage drops. These issues aren’t mentioned in the datasheets and only surface when used in large volumes.

For small-volume projects, domestic MCUs can be chosen, but definitely:

  1. Perform full high-low temperature, EMC, and ESD pre-compliance testing

  2. Establish direct contact with the manufacturer’s FAE (e.g., add them on WeChat) so you can ask questions directly when issues arise

  3. Maintain hardware compatibility design for STM32 (e.g., provide reserved solder pads for different crystal load capacitances)

Honestly, for small batches like a few hundred or a couple of thousand boards, sticking with STM32 is usually a no-brainer. Management always looks at the 30% BOM savings, but they completely ignore the NRE (Non-Recurring Engineering) costs.

To answer your questions:

  1. My go-to: Still STM32G0/G4. If you save $1 per chip on a 1,000-piece run, you save $1,000. But if your firmware guy spends two weeks fighting a weird USB interrupt bug on a GD32, you’ve already lost money on his salary alone.
  2. The hidden traps: “Pin-to-pin compatible” is the biggest lie in the industry. It rarely means “firmware compatible.” With domestic chips, the core and standard GPIOs usually work fine, but analog peripherals (like ADC noise levels) and complex comms (CAN/USB) will absolutely bite you. Flash wait states and clock tree configurations are also subtly different.
  3. Handling clients: If a client specifically asks for ST, I don’t try to convince them otherwise. I just explicitly list the ST chip price and lead time in the quote. If they are willing to pay the premium, let them! If they complain about the price, then you offer the domestic alternative as a cost-down option. Let it be their choice.

It’s a tough call. In the West, we used to call these ‘knock-offs,’ but now companies like GigaDevice and Geehy are serious competitors. However, for a small batch, you have to be careful.

  1. My Choice: I usually go for a Dual-Footprint design. I design the PCB to be compatible with both STM32 and a Chinese equivalent (like GD32). For the first small batch, I use STM32 to ensure the firmware is 100% solid. Once the project scales, we swap to the Chinese chip to save costs.
  2. The Pitfalls: The HAL/Libraries. Don’t trust the ‘Standard Peripheral Library’ from Chinese vendors to be 100% bug-free. We’ve found several cases where the I2C implementation in the Chinese silicon has slightly different flag behaviors that can hang your code if you just copy-paste from ST.
  3. Convincing Clients: I show them a Lead-Time Comparison. If I can show the client that STM32 is ‘16 weeks’ and the Chinese alternative is ‘In Stock,’ they usually stop caring about the brand name immediately. Cash flow is king.