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.

Flash Bootstrap Loader Vs Flash Monitor

Other Parts Discussed in Thread: MSP430F5438

MCU: MSP430F5438
IDE: IAR Workbench

I have been reading two TI documents:

  1. A Flash Monitor for MSP430 (SLAA341)
  2. MSP430 Programming via Bootstrap (FLAU319A)

Can someone help clarify the major differences (advantages, disadvantages)?

  • The bootstrap loader (BSL) is included in most MSPs in different versions. It allows uploading a new firmware through serial (or USB) connection wihtout JTAG.

    The flash monitor is an example of how to do application-driven field update of your firmware or other data.

    Both have similarities as their uses overlap. BSL has the advantage of being available even on an empty device, while the flash monitor shows you how to deal with external flash access in your application, maybe getting a firmware update through normal applicaiton communication.

    So the BSL doucment describes how to interface with an existing pre-installed BSL from outside, while the flash monitor rather concentrates on the MSP side.

    I think there is another document about programming your own BSL, sicne the BSL can be user programmed (independently of normal applicaiton flash) in some newer MSPs.

  • Hi,

      Jens-Michael Gross did a great job already, I only have a couple points to add:

    The Flash monitor Application Report is focused on older MSP430 devices, ones which have a build in ROM based Bootstrap loader.  For these devices, sometimes a different method of flash updating (different pins, protocol, etc) is desired.  In this case, the ROM BSL can not be changed, and a new "BSL" type application must be placed in Flash.  SLAA341 was written with this scenario in mind.

    For newer 5xx devices, things have changed:  The TI supplied BSL is now in a protected area of BSL flash.  This area can be erased, and reprogrammed (on all 5xx devices except the 5438 (non-A) family).  This fact makes SLAA341 somewhat irrelevant for these devices, as any desired changes can simply be made and programmed into a custom BSL in the BSL flash.

    For information on writing a custom BSL, please look in the document SLAA450

**Attention** This is a public forum