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.

Code Composer Studio BUG: Flag "Allow read/write/erase access to BSL memory" does not function



I have had to repost this problem as one of the moderators moved it from THIS CORRECT forum to the MSP430 forum: IT IS A FAULT WITH CCS STUDIO not the HARDWARE!

To repeat the problem use CCS V5.3 software (fully updated), target processor MSP430F5435A, SpyBiWire MSP-FET430UIF(V1.4a with V3 DLL).

I can confirm that the hardware and debugger are FULLY WORKING and can write to the BSL memory using a third party tool: it is just CCS Studio V5.3 which fails to write to 0x1000h (BSL memory) as the switch which should enable it doesnt send the correct commands to the debugger....

*** Again THIS IS A SOFTWARE BUG IN CCS V5.3 ***

The following switch does not enable erase/write access to the BSL memory; thus the CCS tools are UNABLE to update the BSL in FLASH BSL parts.

Properties>Debug>MSP430 Properties> Allow Read/Write/Erase access to BSL memory

Technically you can always read this memory so it is somewhat of a misnoma but does not allow any write acess from load memory or interactively with the memory editor.  The only way of updating the FLASH BSL (especially when the FACTORY fail to load it!) is with third party tools!

  • Tim,

    Can you tell me how you are trying to program the BSL memory on your MSP device in CCS? Is it part of a project, or are you using a project-less launch? The more precise, the better.

    Also, are you getting any errors, or are you just seeing that the BSL memory is not getting programmed?

    Sorry for all the questions. From my testing on a F5229 device using CCS5.3, I was able to read, write and erase the BSL memory without any problems. But as you pointed out, the usability is not as straight forward as it could be with where the BSL option is. Also to note, if you need to erase BSL memory first, you might need to modify the default erase option to "Erase main and information memory"

    Thanks.

    Ricky

  • Hi RIcky,

    I have been trying as part of a project in CCSstudio V5.3.  I started with the Custom flash-based BSL source (SLAA450).  Unfortunately, this doesnt build "out of the box" it is in the SLAA450.zip in the directory "CCS_v4.2.0_BSL-5438A".  I definately set the "Allow read/write/erase access to BSL memory" tick box under the Debug/MSP430 properties.  I have also tried using the debugger "load memory" tool to write the pre-built hex image into the BSL area...again just get the "BSL memory area protected" error...

    In terms of memory area erasure; it already was erased (contains 0xffff), becuase the factory appear to have not loaded the default BSL.  If I could not read the memory I would get back 0x3FFF (but dont).  I have finally managed to load the pre-build BSL image using the MSP430flasher utility with the -b option; however am still currently unable to create / debug a custom BSL.

    I would suggest someone at TI, update their example code to the current version of the compiler - it isn't really for your customers to have to hack around at the section's definitions and re-optimise the code so that it will fit in the BSL area!  If you have a version of the "default BSL" which compiles under CCS V5.3 please supply it or add it to the SLAA450 distribution!

  • Tim,

    From my testing, writing to BSL memory should work if you are loading the program as part of a debug project step, assuming the "unlock BSL" option is set in the project settings. Modifying BSL memory either via the Memory view, or by 'load memory' tool seems to bypass the "unlock BSL" option and therefore does not work. I'm not sure if this is expected behaviour or not.

    Can you try generating the DebugServer logs when loading your program as part of your project? http://processors.wiki.ti.com/index.php/Troubleshooting_CCSv5#CCS_Diagnostic_Logs

    As for the example code (SLAA450) not working out of the box, I can't really comment on this, as I'm not directly involved in this. But I'll see if I can find the right contacts to look into this further for you.

    Thanks,

    Ricky