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.

MSP432E401Y: Using the MSP432E401 ROM bootloader

Part Number: MSP432E401Y

Hello-

I'm working on an application with the MSP432E401 where I would like to use the ROM bootloader to do a firmware update over SPI (SSI0).  I have correctly configured the BOOTCFG register so that when I hold PA3 low and reset the device it reboots into the ROM bootloader.  However, I can't seem to talk to the bootloader at all.  I am sending the COMMAND_PING (from SLAU746A) command (0x03, 0x20, 0x20) to try to get a response out of the target and nothing is coming back.  I have sent this command over SPI via SSI0 and also over UART via UART0 and neither of these seem to produce any response.  Is there something I'm missing?  There doesn't seem to be much documentation on the ROM bootloader other than what is at the very beginning of SLAU746A.  Is there a better place that I can go for ROM bootloader documentation?  Thank you.

-Joe

  • Hello Joe,

    Have you ensured if the COMMAND_PING is in the right format and being sent to the MSP432E4 peripherals correctly?

    To ensure that the COMMAND_PING is being sent correctly, you could erase the Flash of MSP432E4 and reset the device. This ensures that the ROM Bootloader is invoked. You could then send the COMMAND_PING and check the response. This will hopefully help in identifying where the issue could be.

    Thanks,
    Sai
  • Hello Sai-

    According to SLAU746A, COMMAND_PING is simply 0x03 followed by 0x20 followed by 0x20. That is what I'm sending... I think that should be correct? I have my serial lines connected to PA0 and PA1 which should be the ROM bootloader uart. I have erased my flash memory and reset so I should be in bootloader mode. Is there a particular Baud rate I should be using when sending data via UART?

    I do not have a BSL rocket device. Do I need the BSL rocket device to use the ROM bootloader? I would like to be able to do a firmware update from an embedded linux system without needing to have a rocket between the two. Thanks.

    -Joe
  • I got it figured out. I had two issues:

    1) My MOSI/MISO lines were flipped!
    2) After sending out the COMMAND_PING, it takes quite a few cycles (10 or more) of just clocking out 0x00 before the 0xCC ACK comes back.

    So it seems to be working now. Thanks!

    -Joe

**Attention** This is a public forum