This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSPM0L1306: UART programming not working on a brand new device

Part Number: MSPM0L1306
Other Parts Discussed in Thread: UNIFLASH

Tool/software:

Hello TI Experts,

I bought a LP-MSPM0L1306 to evaluate this MCU family. After loading the out-of-box experience example by using CCS Theya and played with the board, I decided to test the serial programming.

I have done plenty of (failed) tests using uniflash with an external USB to UART adapter (PA22/PA23 pins connected to TX/RX) and, following the guides (as an alternative), the serial provided by the XDS110 but it didn't work. It was stopping at first step of the process, giving error -9 and never prompting for the boot (when it works it prints "INFO] CORTEX_M0P: BSL Connected").

I decided to give a try to the Factory Reset Tool (https://dev.ti.com/gallery/view/TIMSPGC/MSPM0_Factory_Reset_Tool/ver/1.0.2/) and as soon as I did a factory reset I was able to program the microcontroller using the external USB to UART adapter.

Is it possible that the BSL (bootloader) MCU was configured, in the factory, not to accept serial programming?

Should I cope with this on a brand new MCU?

Regards,
Emanuele

  • For a brand new MCU. It will enter low power mode if you do no action to them through BSL in 10s. Maybe it is because of this reason.

  • Hello Eason,

    I connected a brand new LP-MSPM0L1306 to the UART device and the USB micro to an USB HUB.

    I saw strange behavior, at first I was not able at all to invoke the bootloader (the TI demo application blink a led). Consider that I'm using the S1 button + the NRST button. I normally keep pushed the S1 button and I press for more than one second the NRST button.

    I have dumped the BSL/BCR configuration (using ccs theia + debugger on board) and compared with the one I have done the factory reset. These configuration areas are binary the same.

    During my first connection the XDS110 firmware on the board the firmware was updated.

    After I have done these operations AND I have unplugged the board from USB AND I have closed CCS theia I was able to put the board in BSL mode and program it using uart.

    Currently the board act randomly, sometimes it enter the boot mode, sometimes not. This seems true for both the boards.

    I have also removed BSL/SWCLK/SWDIO?NRST jumper and the behavior is still random.

    By the way I can confirm that the 10 second sleep timeout act as you reported.

    Is there something that I miss?

    Regards.

  • To make MCU enter BSL mode:

    1. Make device empty and connect it though BSL in 10s

    2. Only press S1(PA18), not reset Pin before MCU power up. After MCU power up, then release PA18. It should enter BSL mode.

    Can you try again?

  • I have tested the invoke pin by wiring it to 3V3 and following your procedure.

    All good!

    Likely the switch contact is not enough "stable" (maybe just some glitches/spikes and hw debounce filter is missing).

    Thanks and sorry