Because of the Thanksgiving holiday in the U.S., TI E2E™ design support forum responses may be delayed from November 25 through December 2. Thank you for your patience.

MSPM0G3507: Flashed code does not work after power cycle

Part Number: MSPM0G3507
Other Parts Discussed in Thread: , UNIFLASH

Tool/software:

Hi TI-Experts,

I'm using CCS Theia with the Onboard XDS110 debug probe of the LP-MSPM0G3507 to flash my custom PCB with MSPM0G3507 (LQFP-48(PT) (Package)).

My code works totally fine while I keep my XDS110 connected.

I press "pause" or "stop debugging" and everything still works.

I disconnect NRST, SWDIO and SWDCLK wires and the PCB still works as desired.

But once I disconnect the 3.3V/GND wires and reconnect them or try to provide the 3.3V/GND from another power supply the PCB/MSPM0 doesn't work like before.

All pins seem to be floating and none of the programmed features are still available.

The only thing I can do to make everything work again is to start/run a degug session via CCS theia, CCS or flash the code via UNIFLASH.

But once I power cycle.. nothing works anymore.

NRST-Pin has HIGH-Level as it should.

3.3V is stable and there.

GND is also there.

It seems like I miss something that should be super obvious.. but I absolutely have no clue, what to do.

Do I have to change anything about my flash/load/debug process/properties to make the target device work without being freshly programmed and still connected to the XDS110?!

Hopefully anyone of you can give me the missing piece of advice!

If there are any missing pieces of information - please feel free to ask!

I hope I gave you the full information that you need to help me.

Thanks a lot in advance!

Regards

Matze

  • Have you tried a reset after switching the power leads?

    Have you removed the jumpers to isolate the 3 V and 5 V rail from the USB circuitry?

  • Hi Keith!

    Thanks a lot for your prompt response!

    Have you tried a reset after switching the power leads?

    Yes, I used a jumper wire to directly pull down the NRST-PIN to GND and also used the NRST-PIN on the XDS110-part of the launchpad.

    Have you removed the jumpers to isolate the 3 V and 5 V rail from the USB circuitry?

    Do you mean the jumpers on the J101  that connects the XDS110 to the MSPM0G3507 64-Pin on the launchpad?

    The jumpers are disconnected because these are the pin headers that I use to connect my jumper wires to flash my MSPM0G3507 48-Pin on my custom PCB. And when I try to power the custom PCB from the external power supply I disconnect my 3.3V- and GND-jumper wires.

    I guess that's what you mean by isolating from USB circuitry?

    Matze

  • Sorry, I thought you were using a launchpad

  • Do you have any voltages applied to the chip *before* you apply 3.3V?

    These can power the chip via the ESD diodes.

  • Just found out from some other support forum questions, that the default BSL invoke Pin PA18 has an external PullUp on my PCB because I'm gonna use this Pin for UART. This high-level invokes my BSL and the controller does not boot to regular firmware as expected.

    Tying this pin to LOW makes the controller boot to regular firmware.

    This works for now but when I want to use UART I can not keep PA18 tied to LOW.

    I will have to go into BSL NVM Configuration and deactivate BSL GPIO invokation or map it to any other pin..