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.

MSP430FR5969: Forcing a BOR from BSL

Part Number: MSP430FR5969

I have been using a UART connection through eUSCI A0 to bootload firmware to the MSP430. Currently I have no issues with mass erasing the memory and writing the firmware, but I have been unable to reset the board after programming via the BSL. I have been trying to force a BOR from the BSL by writing 0xA504 to PMMCTL0 (0x000120), which should set the PMMSWBOR bit, triggering a BOR. However, when sending the RX Data Block command to write to the register, I am not receiving the expected response and the board does not reset, remaining in bootload mode.

Message: 80 06 00 10 20 01 00 04 A5 1F 43

Response: 00 80 02 00 3B 01 41 D4

I am receiving the core response of 0x01, meaning that the memory write check failed. What could be keeping me from writing to this register to trigger a BOR?

Thank you,

Lauren

  • Hello Lauren,

    Thanks for your detailed post. What you're doing makes complete sense, but I suspect what's happening behind the scenes is that the 0xA504 word is getting programmed byte-by-byte and when the upper byte gets written first and then read back, the memory write check fails (since the password write is 0xA5 but the read is always 0x96 according to Table 2-2 in the user's guide) and the second byte intended to trigger the BOR never gets written.

    Could you please try splitting up the write to PMMCTL0 into two messages, the first for the upper byte and the second for the lower byte?

    1. For the upper byte in PMMCTL0, send over the 0xA5 password byte to address 0x0121 to unlock the PMM registers.
    2. Then, for the lower byte in PMMCTL0, send over 0x04 setting the PMMSWBOR bit to address 0x0120 which should trigger the BOR.

    Please let me know if this doesn't work.

    Regards,

    James

  • After splitting the write into two commands the BOR occurs as expected!

    Thank you so much for the help,

    Lauren

  • Excellent. Thanks for letting us know.

    Regards,

    James

**Attention** This is a public forum