hello all
We met a very strange problem. After burning the software with pemicro's burner and powering the ECU normally, the ECU would go into infinite reset state, but we connected the ECU with a debugger (like jlink) (no extra action) and then disconnected the ECU from Jlink. Then power up the ECU, the ECU shall return to normal. May I ask what causes this?
we have HSE firmware integrated in this software. regarding to Jlink connection, we just colict the connect, and wait for successful connection information and then disconnect it. finally, the infinite reset shall be disappeared
Hi @Yiming2
it's not really clear what happened. If the same image is successfully loaded by different programmers, there should be no difference. Could you provide log from Pemicro? Is there anything unusual?
Regards,
Lukas
Hi @Yiming2
if you use option F, did you program dcf_client_utest_misc to UTEST?
See S32K3xx_DCF_clients.xlsx attached inside S3232K3 RM.
I guess that this could be the reason for such weird behavior.
Regards,
Lukas
hello @lukaszadrapa
thanks for your information. But regarding the your reply in other topics,HSE PLL configuration - NXP Community "This configuration of HSE_CLK_MODE in DCF record (and also configuration of FXOSC) has no effect unless PLL_ENABLE in IVT is enabled. SBAF will ignore it and FIRC will be used at boot time. And PLL_ENABLE has effect only when BOOT_SEQ is 1 (i.e. secure boot enabled)."
We didn't enable the PLL_ENABLE and BOOT_SEQ, so it would be no effect for this case, am I correct?
Yes, I know. But there's still some confusion, I'm still checking this internally but I do not have final confirmation yet.
But I would try that anyway - there's no any downside, it can only help. Please give this a try and let me know if it makes a difference. Thank you.
Regards,
Lukas
One more idea - it could be caused by reset escalation. Try to set registers FRET and DRET in MC_RGM module to zero. This will disable reset escalation which could lead to infinite reset until next POR.
Then, even if more resets are triggered for some reason, the device should still run and you can check the reason. If it works a few seconds, it could be caused by watchdog. Debuggers usually disable the watchdog automatically to be able to debug the code. You can simply check FES and DES registers in MC_RGM to see the source of last reset.
Regards,
Lukas
Yes, it's necessary to wait for HSE_STATUS_INIT_OK before triggering HSE services.
And yes, I agree that the start-up flow diagram is not accurate here. It does not consider the installation via default NVM location. Thanks for pointing this out, I will report it.
Regards,
Lukas