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.
Today we utilize BSL-Scripter on our PC's to load application in the manufacturing process.
We would like to implement BSL-Scripter on our other products and in turn provide capability to upgrade via one of our products.
Got a better understanding of the protocol by following "slau550aa MSP430 FRAM Devices Bootloader (BSL)" datasheet.
But, would like to know how long does BSL take to execute Mass Erase command.
Hi Shyam,
Mass erase times differ by device. For the mass erase time for the MSP430FR6047, you may need to look into the datasets for the parts to find the mass erase time.
As seen in SLAU319AE, mass erase times for our flash devices bootloader can vary greatly, from 17.2 ms to 206.4 ms.
MSP430 Flash Devices Bootloader (BSL) User's Guide (Rev. AE) (ti.com)
You may also want to refer to some of our examples from our MSP BSL webpage (linked below) under the "Embedded Programming Solutions" Section.
MSPBSL Driver or library | TI.com
This has some examples to work off of. There is also more helpful information in the document that you mentioned, The MSP430 FRAM Devices Bootloader User Guide (linked below).
MSP430 FRAM Devices Bootloader (BSL) User's Guide (Rev. AA) (ti.com)
I don't think that mass erase time exist in any FRAM device datasheet. It is in flash devices datasheet, because of flash memory erase / write timing.
There is no FR6xx BSL respond for mass erase (slau550), so only solution is to wait some constant time. In slau320 for mass erase by mailbox boot code, for covering all FRAM device (largest FRAM size incuded), delay is 200 + 60 ms.
word EraseFRAMViaBootCode_430Xv2(word mailBoxMode, word data1, word data2){
...
// restart device
ClrTST();
SetRST();
MsDelay(200);
if(INTERFACE == SPYBIWIRE_IF)
{
EntrySequences_RstHigh_SBW();
}
else
{
EntrySequences_RstHigh_JTAG();
}
ResetTAP();
// wait until erase is done
MsDelay(60);
**Attention** This is a public forum