MPC5746C hangs (no boot, no UART) at 115°C ambient Part: MPC5746C (Power Architecture Z4, SDK: NXP MPC57xx platform SDK) During thermal chamber testing at 115°C ambient, our MPC5746C-based board becomes completely unresponsive on boot — no UART console output at all, and this happens on every boot attempt at that temperature. The part appears to fully recover after cooling: reflashing/rebooting at room temperature restores normal operation with no persistent damage. Interestingly, we can still successfully reprogram flash via PEMicro JTAG debug probe while the board is at 115°C — we've confirmed this by flashing a build with an incremented version string at temperature and reading back the new version after cooling down. So the debug-probe flash path works at 115°C; only the application boot path hangs/bad state. From manual it states MCU can with hold upto 125°C. Could you please help us to root cause the issue and how fix this issue. Re: MPC5746C hangs (no boot, no UART) at 115°C ambient Hello,
From manual it states MCU can with hold upto 125°C.
Yes, that is not an issue.
Could you please help us to root cause the issue and how fix this issue.
Since this is your custom board and issue disappear after cooling I suspect:
1. Clock startup issue (highest probability)
At 115°C:
External crystal (FXOSC) startup time increases.
Oscillator gain margin decreases.
Load capacitors shift value with temperature.
PCB leakage increases.
The debugger can still access the part because debug logic uses its own infrastructure and does not depend on the application reaching main().
FXOSC status bits CMU clock-monitor faults FIRC-only boot experiment Run entirely from FIRC and disable external crystal temporarily
The fact that JTAG programming continues to work at 115°C is the strongest clue that the core infrastructure remains alive and the failure is occurring very early in the application boot path rather than in the flash array itself
best regards,
Peter Re: MPC5746C hangs (no boot, no UART) at 115°C ambient Thank you for the insight @petervlna. Following up on this, my colleague @mnargund and me investigated further, we were able to get the MPC5746C booting successfully at 115°C. Here is a summary of what we found. Root Cause: During pre-initialization, we configured the system to bring up FIRC, FXOSC, and PLL, and then switched the system clock from FIRC to PLL. Following this, we triggered a mode transition to DRUN mode (even though the system was already in DRUN mode by default, a transition to the same mode is required for the new configuration to take effect, as mentioned in the manual), and polled MC_ME_GS.MTRANS to wait for the transition to complete. However, even after MC_ME_GS.MTRANS cleared, the code faulted with an IVOR1 exception, maybe indicating the transition had not fully stabilized by the time execution continued. At elevated temperatures (115°C), the transition appears to take longer than at room temperature, causing the system to be in an inconsistent state when the next instructions were executed. Workaround applied: We inserted an explicit software delay after the MC_ME_GS.MTRANS poll and before proceeding with the rest of initialization. With a 500 ms delay, the boot is consistently successful at 115°C. We also tested a 100 ms delay, which also works reliably in our setup. Is there a maximum recommended software delay that can safely be inserted at this point in initialization? Is there a recommended practice to ensure reliable clock stabilization before proceeding, across the full operating temperature range up to 125°C?
記事全体を表示