Guys,
I am looking at the BSL documentations, and I am confused. I want to get my MSP430 5438 into BSL mode then how do I do it through a UART?
It's not clear what your problem/question is.
You'll need to manually handle the RST and TEST pins of an MSP to enter BSL mode, or your already installed firmware calls it directly.
If writing your own BSL application (PC-side), you can do so by manipulating the DSR/DTR and RTC/CTS lines manually, abusing them as I/O pins and connecting them (after proper level-shifting) to the RST and TEST pins.
Teh BSL code of the 54xx (and all other MSPs I know of) does NOT use the internal UART hardware, it uses the port1 I/O pins instead, as this is mostly hardware-independent and also allows smaller code and does not rely on any assumption about current clock settings.
If you want it differently, you'll need to write your own BSL for the MSP, which is only possible on some MSPs (namely the 54xxA series, but not the 54xx, and few others)
_____________________________________Before posting bug reports or ask for help, do at least quick scan over this article. It applies to any kind of problem reporting. On any forum. And/or look here.If you cannot discuss your problem in the public, feel free to start a private conversation: click on my name and then 'start conversation'. But please do so only if you really cannot do it in a public thread, as I usually read all threads. And I prefer to answer where others can profit from it (or contribute to it) too.
I read SLAU265i
How do I do the sequencing through the Serial port? When I double click on BSL_Scripter it just closes. Am i doing something wrong?
Thanks
Harsh
I think BSL scripter somehow needs to know WHAT to flash to the MSP. So I guess it needs either a configuration file or other parameters (e.g. the file to flash or the script to use or whatever) passed or it does not know what to do and exits.
If BSL-Scripter is a console application, it is likely that the attached console window closes (windows default behaviour) before you can see the error message....I just checked the ZIP file and indeed, BSL-scripter is a console application. The readme file that is in the same folder tells you:
The Application can be invoked from the command line as followsBSL_Scripter.exe <filename>
so nothing with 'double-click on BSL_Scripter' :)
Thanks a lot !!
It solved one question.
Another Question:- How do I erase the TI BSL from the memory location? Can I do this through JTAG?
This is for 5438 A
Harsh Patel Another Question:- How do I erase the TI BSL from the memory location? Can I do this through JTAG? This is for 5438 A
As a workaround, you can write a program that is put to normal code flash and when it starts it will update the BSL area from the included code.
I just built my own BSL (or rather flash update) code which works with double-buffered data transmitted during normal operation (e.g. using existing RF communication) and is as fool-proof as the BSL (even if transfer or flashing failed, the device will recover, either back to old firmware or successful update). So I didn't care for the BSL area.
Thanks Jens-Michael Gross !! A lot!
I have a few more questions. Hopefully you will be able to answer it!
1. If my code size is suppose 60 KB is it safe to assume that it will reside in the first sector of the flash bank?
2. I am planning to implement a Bootloader in the Main code memory. So I am thinking to implement my bootloader in first sector of Flash and remaining three sectors to be Application code. Is it ok ?
3. My Bootloader would initialize I2c port. If I want to use that I2c port in my application how do I use it? Because my bootloader and application code would be two separate .out files?
Harsh Patel1. If my code size is suppose 60 KB is it safe to assume that it will reside in the first sector of the flash bank?
Harsh Patel2. I am planning to implement a Bootloader in the Main code memory. So I am thinking to implement my bootloader in first sector of Flash and remaining three sectors to be Application code. Is it ok ?
Harsh Patel3. My Bootloader would initialize I2c port. If I want to use that I2c port in my application how do I use it? Because my bootloader and application code would be two separate .out files