Part Number: MSPM0-SDK
Other Parts Discussed in Thread: LP-MSPM0G3507, MSPM0G3507
I am using the LP-MSPM0G3507 LaunchPad and am currently working on a bootloader implementation for this microcontroller.
I want to use CAN as the BSL communication interface, so I imported the TI SDK example project bsl_can_flash_interface without making any changes to the source code.
In the CCS flash programming settings, I enabled:
- Erase MAIN memory & Erase NONMAIN memory
Before programming the CAN plug-in, I performed a Factory Reset.
The Factory Reset completed successfully and CCS displayed the following message:
CS_DAP_0: Command Sent
CS_DAP_0: Start hardware Reset using NRST
CS_DAP_0: Initiating BOOTRST Board Reset
CS_DAP_0: Reset line asserted
CS_DAP_0: Reset line de-asserted
CS_DAP_0: Board Reset Complete
CS_DAP_0: Reset done
CS_DAP_0: SEC_AP Disconnect
CS_DAP_0: SEC_AP Reconnect
CS_DAP_0: Command execution completed.
Factory Reset executed.
Please terminate debug session, power-cycle and restart debug session.
I then terminated the debug session, power-cycled the board, and tried to flash the bsl_can_flash_interface project.
However, while programming the CAN plug-in, I received the following errors:
Error: (Error -1001 @ 0x0)
Requested operation is not supported on this device.
Trouble Halting Target CPU:
(Error -2064 @ 0x0)
Unable to read device status.
Error:
Connection to MSPM0 core failed.
Possible root causes:
1) Debug access within NONMAIN was disabled or enabled with password.
2) Peripheral mis-configuration (e.g. improper watchdog or clock).
I initially suspected that the device might have become locked due to NONMAIN configuration.
To verify this, I programmed a simple LED-blinking application onto the same MSPM0G3507.
The LED-blinking application was programmed successfully, which indicates that the device is not locked and that the XDS110/debug connection is working correctly.
Therefore, the current situation is:
Factory Reset → Successful
LED-blinking application programming → Successful
bsl_can_flash_interface programming → Failed
Since the normal LED application can be programmed successfully, the issue appears to be specific to programming the bsl_can_flash_interface project, rather than the MSPM0G3507 being locked or the XDS110 connection being completely unavailable.
I would like to understand why the bsl_can_flash_interface example fails to program even after performing a Factory Reset and enabling both MAIN and NONMAIN erase.

