cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F412 not work at cold start, work after manual reset (potential LSE issue)

Leo_Ye
Visitor

Hello,

The problem is that we have made 50 customized boards using STM32F412RET6TR, 2 of them has the same issue. It does not run the code (forzen) at cold start up, but will work after a manual reset or power unstable.

One Device was fixed by replacing the MCU, another was remaining for investigating the issue.

Initially, I thought it is the problem of start up reset was released to early, so an RC mod was added to the reset line, but it does not work. Probe on the reset signal and VDD was normal. And later debug shows that the program hit the Reset_Handler and failed in SystemClock_Config section.

Here's some log:

  1. #77, find the program can hit reset_handler, and go to error handler, Use several way to debug and make sure error happens in Systemclock_config.
  2. Adding Delay 50ms/several seconds at start up not help, later found that LSE_STARTUP_TIMEOUT is 5000ms, so the LSE will not recover over time
  3. By removing the LSE in systemclock_config, it will pass systemclock_config and get into next step
  4. Try to probe the 32kHz Crystal OSC32 OUT, and some other tests, then #77 always get into fault_handler, manual reset will not make it working. So LSE is completely broken
  5. By removing the LSE init and RTC_init, the program worked. so the fault happen in LSE
  6. According 2 and 4, the broken part is LSE
  7. Replace the 32Hz Crystal and 18pF cap, ECU still failed.
  8. Try use LSI/HSE as rtc clock source, work
  9. Conclusion: LSE is partially broken initially or has a marginal design, it is completely broken? now

Attached crystal layout and both cap are 18pF, Crystal is 728-1073-2-ND

Can you help me with this issue?

11 REPLIES 11

I assume you don't have the oscilloscope probe connected, as per @Ozone 's post.

Was PWR enabled and PWR_CR.DBP set when you tried the backup domain reset?

Other than this, I have no other suggestions, sorry.

> Besides, I also measured VCAP_1 voltage is around 1.1V in when chip in error handler, 1.3V when normal running.

That may perhaps be consequence of the program possibly not reaching the point where PWR_CR.VOS is set.

JW

 

Hi Jan,

Oscilloscope was not connected, PWR was enabled and PWR_CR.DBP set was set.

Thanks for your explanation and help.

Regards,

Leo