Hello
I am using LPC54606 controller for project in custom board.
I am using LPC Link2 to program it using SWD.
Occasionally I have observed that even though programming is successful, the flash doesn't seems to be programed with required binary.
How do I ensure that programming has actually happened? Because I see no error message while programming using LPC Link2 in MCUexpresso but the binary in flash in not the intended.
When I try programming via USB ISP, I don't see the issue.
How do I ensure right binary is programed using LPC Link2?
The length of the JTAG/SWD wiring could be a problem as well.
Most Flash tools allow to config the bitrate in the setup, you could try to reduce it.
With just LPC Link-2 (no external power) if use the "Debug as MCUexpresso IDE Linkserver" it is able to program correctly.
But if I use GUI Flash Tool there are programming failure even when powered externally.
I would still strongly suggest powering your board with an external power supply. It really is marginal when powering through LPC-Link2. The GUI flash programmer and the debugger both use identical methods to program the device - in fact it is the same executable in both methods, so it should not make any difference which programming method you use.
@frank_m suggestion about JTAG length maybe true, but I don't know of any convenient method to change the bitrate with MCUXpresso - I vaguely recall somebody mentioning that it was self-adaptive, but I could be mis-remembering.
I could see programming failures when done by GUI Programmer(with & without external power)
>... but I don't know of any convenient method to change the bitrate with MCUXpresso ...
Me neither. My favourite toolchain (Crossworks) made project-specific debug adapter settings easy, including JTAG/SWD baudrates.
I find already the debugging interface cumbersome, especially the way to start a debug. I know, it's Eclipse standard. No big fan of Eclipse at all.
Taking a look at the MCUXpresso project debug settings, there is something :
Might be worth a try.
I'm havinf no problems with my LPCXpressor board ...
I agree, the power supply is the first suspect here.
Besides of stability and current limit, the buffer caps might be insufficient (too few, too far placed from the MCU, wrong types).
I'd suggest checking your power supply - especially when programming with LPC-Link2.
The target is powered by LPC Link2.
Use an external power supply. While plc-link2 can supply enough power to run the device it often cannot to flash it, which takes significantly more power - as I think you have found out.
With just LPC Link-2 (no external power) if use the "Debug as MCUexpresso IDE Linkserver" it is able to program correctly.
But if I use GUI Flash Tool there are programming failure even when powered externally.
Bit rates might differ between both tools.