EVM430-FR6047: BSL-ROCKET to load code

Part Number: EVM430-FR6047
Other Parts Discussed in Thread: MSP-FET

Tool/software:

hi,

we are using the BSL-ROCKET with the EVM430-FR6047 and the BSL-scripter software

this is my hookup:

and here is the EVM

i am using the JTAG connector to scope the TX, RX,RST, and TEST signals.

kindly confirm setup.

i am giving calling the following script to perform a mass erase:

LOG
MODE FRxx UART 9600 COM10
DELAY 100
VERBOSE
MASS_ERASE

i receive the following:

---------------------------------------------------------
BSL Scripter 3.4.0.1

PC software for BSL programming
2024-Jul-31 13:05:50
---------------------------------------------------------
Input file script is : C:/Users/ephra/Dropbox/Desktop/MSP430-BSL/progevm-UART-me.txt

LOG
MODE FRxx UART 9600 COM10
DELAY 100
Delay 100 ms
VERBOSE
Verbose mode is now on!
MASS_ERASE
[80] [01] [00] [15] [64] [a3]
[ACK_ERROR_MESSAGE]Unknown ACK value!

kindly elaborate on the issues with the TI tools.

Br. 

Ephraim

thanks,

  • Hi Ephraim,

    You are using BSL-ROCKET the hardware board as the programmer, right?

    If so, use these 6 pins( VCC, GND, test, reset, TXD and RXD on the BSL-ROCKET) for BSL connection. 

    You can find all the connections in the yellow box. And remember to turn the switch to ezFET.

    Best regards,

    Cash Hao

  • Hi Cash ,good to hear from you again.

    Kindly tell me which RX/TX pin I should use. As well as which pins for VCC and GND.

    Thanks

    Br

    Ephraim

  • Hi Ephraim,

    Nice to meet you again.

    Best

    regards,

    Cash Hao

  • Hi Cash,

    it is not working for me, have a look

    i am waiting your reply, should we continue with your email?

    thanks,

    Br.

  • Hi,

    The hardware connection looks good from my side. 

    I checked with Gary Gao. He said he replied you in the other thread about this BSL issue. 

    It should related to the BSL scripter showing an error but actually the message is send successfully. 

    Best regards,

    Cash Hao

  • hi Cash,

    yes, Gary was very helpful, now i understand the message is wrong. can this be corrected?

    thanks,

  • Well, let us figure out why the message is wrong first. Gary Gao also suggest to capture the signal on the UART pins. Have you done it?

    Best regards,

    Cash Hao

  • hi Cash,

    yes i did, i only saw tx signal from scripter no response from the MSP.

    i just tried a complete script and it appears to work partially, kindly tell me what the command to jump to the code is, this is what i am using

    SET_PC 0x6000
    [80] [04] [00] [17] [00] [60] [00] [60] [c5]

    thanks,

  • Hi Cash,

    I want to update you on my recent progress.

    I performed a mass erase, followed by entering the password, which was verified correctly. I then upgraded the communication speed to 115,200 bps, and that change was successful. Following that, I programmed a very large program into the device.

    After programming, I used the reboot command, specifically the reboot reset command. Initially, my software prints to the UART were not visible. However, after recycling the power (turning the power off and on), I could see my new program running correctly.

    I then changed the program and repeated the process to ensure everything works consistently.

    My question is about the necessity of the power cycle. Does it have to be done, or is an external hardware reset sufficient for the changes to take effect?

    Thank you for your assistance.

    Best regards,
    Ephraim

  • Hi Ephraim,

    External hardware reset is enough for it. No need to send reboot command.

    Best regards,

    Cash Hao

  • Hi Cash,

    Kindly direct me to the c code that is used to read the TI-TXT file and programs the BSL. 

    Thanks

    Ephraim

  • Hi Ephraim,

    What C code you are referring here? I am not understanding your question.

    Best regards,

    Cash Hao

  • Hi Cash,

    i understand the scripter comes with the original code in C. kindly point me to the snippet that reads the txt file, and programs to the MSP Flash.

    thanks,

    Br.

    Ephraim

  • Hi Ephraim,

    Do you want to use BSL scripter to read out memory information from MCU and saved as .txt file?

    Best regards,

    Cash Hao

  • If so, you can refer to this script.  

    Below is how to read out the MCU memory from address 0xff80 with length 0x80.

    script_FRxx_uart_read.txt
    //
    //Script example FRxx UART BSL
    //
    //Device : MSP430FR6989
    //Comm Bridge: MSP-BSL Rocket
    //
    //Download blink application through
    //UART BSL in FRAM device
    //
    LOG
    MODE FRxx UART 9600 COM32
    
    //MASS_ERASE
    //gives wrong password to do mass erase
    //RX_PASSWORD pass32_wrong.txt
    //
    //add delay after giving wrong password
    //because the device does not give
    //any response after wrong password applied
    //
    //DELAY 2000
    RX_PASSWORD password_FR5949.txt
    
    //TX_DATA_BLOCK 0x4000 0x7F  data_read_4000.txt
    TX_DATA_BLOCK 0xff80 0x80  data_read_ff80.txt
    //RX_DATA_BLOCK blinkLED_FR6989.txt
    //CRC_CHECK 0x4400 0x0020
    //SET_PC 0x4400

    TX_DATA_BLOCK 0xff80 0x80  data_read_ff80.txt

    Best regards,

    Cash Hao

  • hi Cash,

    sorry for the miss communication.

    the BSL-Scripter, comes with a source folder of C++ code. i am looking for the section of code that preforms the following command:

    RX_DATA_BLOCK FR6047_USSSWLib_AQSMRT_V2.0.0.txt
    Read Txt File : C:\Users\ephra\Dropbox\Desktop\MSP430-BSL\FR6047_USSSWLib_AQSMRT_V2.0.0.txt
    [80] [04] [01] [10] [00] [60] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [13] [0f]
    <80> <02> <00> <3b> <00> <60> <c4>
    [80] [04] [01] [10] [00] [61] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [af] [a0]
    <80> <02> <00> <3b> <00> <60> <c4>
    [80] [04] [01] [10] [00] [62] [00] [00] [00] [00] [00] [00] [00] [00] [00] [00]
    [00] [00] [00] [00] [00] [00] [00] [00] [00] [0 etc....

    thanks, 

    Br. 

    Ephraim

  • Hi Ephraim,

    Oh, understand. Sorry I do not know how the BSL scripter work. 

    Best regards,

    Cash Hao

  • Hi Cash,

    kindly assist with finding the source code for this action.

    Thanks,

    Br.

    Ephraim

  • Hi,

    It could be something in BaseCommands.cpp. But I do not familiar with C++ coding. Nothing more I can help here.

    Best regards,

    Cash Hao 

  • hi Cash,

    thank you so much for your assistance.

    Br.

    Ephraim

  • hi Cash

    I verified proper operation of the BSL/Rocket with UART on the EVM430.

    I am now trying to use the i2c on the Rocket and connect with the BSL on our board with FR50431.

    assuming my connections are correct here is my script:

    LOG
    MODE FRxx I2C 400000 COM10
    VERBOSE
    DELAY 500
    MASS_ERASE
    DELAY 500
    RX_PASSWORD
    DELAY 500
    RX_DATA_BLOCK MSP430_FR6047-UART_BSL.txt
    //RX_DATA_BLOCK FR6047_USSSWLib_AQSMRT_V2.0.0.txt

    here is the output:


    LOG
    MODE FRxx I2C 400000 COM10
    VERBOSE
    Verbose mode is now on!
    DELAY 500
    Delay 500 ms
    MASS_ERASE
    [80] [01] [00] [15] [64] [a3]
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    DELAY 500
    Delay 500 ms
    RX_PASSWORD
    [80] [21] [00] [11] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff]
    [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff]
    [ff] [ff] [ff] [ff] [9e] [e6]
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    DELAY 500
    Delay 500 ms
    RX_DATA_BLOCK MSP430_FR6047-UART_BSL.txt
    Read Txt File : C:\Users\ephra\Dropbox\PROJECTS\AQUASMART\SYSTEM\MSP430-BSL\MSP430_FR6047-UART_BSL.txt
    [80] [20] [00] [10] [00] [40] [00] [81] [00] [00] [2c] [b1] [13] [6e] [00] [0c]
    [43] [b1] [13] [00] [00] [1c] [43] [b1] [13] [68] [00] [32] [d0] [10] [00] [fd]
    [3f] [03] [43] [75] [6b]
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    [80] [14] [00] [10] [80] [ff] [00] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff]
    [ff] [ff] [ff] [ff] [ff] [ff] [ff] [79] [15]
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    [80] [ca] [00] [10] [ac] [ff] [00] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [00] [40] [b2] [40] [80] [5a] [5c]
    [01] [d2] [d3] [04] [02] [d2] [c3] [02] [02] [92] [d3] [e0] [05] [b2] [d0] [80]
    [00] [e0] [05] [b2] [42] [e6] [05] [b2] [40] [00] [d6] [e8] [05] [f2] [d0] [0c]
    [00] [0a] [02] [f2] [f0] [f3] [00] [0c] [02] [92] [c3] [30] [01] [92] [c3] [e0]
    [05] [06] [3c] [a2] [b3] [fc] [05] [fd] [27] [4f] [4f] [82] [4f] [ee] [05] [92]
    [b3] [fc] [05] [fd] [27] [1f] [42] [ec] [05] [4f] [4f] [7f] [90] [1b] [00] [f1]
    [23] [d2] [e3] [02] [02] [32] [c2] [03] [43] [3f] [40] [00] [10] [4f] [13] [ef]
    [3f] [03] [43] [03] [43] [ff] [3f] [03] [43] [1c] [43] [10] [01] [87] [4c]
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    Time elapsed of writing 242 bytes : 3.245 seconds
    Speed of writing data :0.07282(kB/s)
    //RX_DATA_BLOCK FR6047_USSSWLib_AQSMRT_V2.0.0.txt

    kindly advise.

    Thanks,

    Br.

    Ephraim

  • Hi Ephraim,

    Any issues about this process with I2C?

    Best regards,

    Cash Hao

  • hi Cash 

    is the script above correct, it is failing every command

    thanks,

    Br.

    Ephraim

  • hi Cash,

    i am now receiving this: 


    C:\Users\ephra\Dropbox\PROJECTS\AQUASMART\SYSTEM\MSP430-BSL>C:\TI\BSL-Scripter\bsl-scripter.exe progclipon-I2C.txt
    ---------------------------------------------------------
    BSL Scripter 3.4.0.1

    PC software for BSL programming
    2024-Aug-12 10:57:55
    ---------------------------------------------------------
    Input file script is : C:/Users/ephra/Dropbox/PROJECTS/AQUASMART/SYSTEM/MSP430-BSL/progclipon-I2C.txt

    LOG
    MODE FRxx I2C 400000 COM10
    open: Access is denied

    tried rerunning and unplugging.

    thanks,

    Br. 

    Ephraim

  • hi Cash,

    the last email was in haste i had the FTDI connected to the same port as the Rocket.

    as originally said i am not receiving message from the BSL.

    thanks,

    Br.

    Ephraim

  • Hi Cash,

    i am confirming and updating. here is is the pinout between BSL / MSP/ JTAG 

    to update i do not see the TEST/RESET signal as required to enter the BSL.

    thanks,

    Br.

    Ephraim

  • Hi Ephraim,

    So, you are connecting the TEST/RESET pin. But you do not observe any signal on those pins? These pins should be used as BSL invoke function. If you do not see anything on those pin, then the MCU might not enter BSL mode. 

    Have you also encounter this issue when you test on the UART BSL on FR6047 board? Or you only observe this issue on FR50431 with I2C BSL.

    Best regards,

    Cash Hao

  • hi Cash,

    i did a software download with MSP-FET430UIF. with the esc key stroke i enter the BSL, note i preformed this operation on the EVM430, and then used the scripter to load a program. 

    i do see below some feedback from the BSL but in error


    LOG
    MODE FRxx I2C 100000 COM10
    VERBOSE
    Verbose mode is now on!
    DELAY 500
    Delay 500 ms
    MASS_ERASE
    [80] [01] [00] [15] [64] [a3]
    <00>
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    DELAY 500
    Delay 500 ms
    RX_PASSWORD
    [80] [21] [00] [11] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff]
    [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff]
    [ff] [ff] [ff] [ff] [9e] [e6]
    <00>
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    DELAY 500
    Delay 500 ms
    RX_DATA_BLOCK MSP430_FR6047-UART_BSL.txt
    Read Txt File : C:\Users\ephra\Dropbox\PROJECTS\AQUASMART\SYSTEM\MSP430-BSL\MSP430_FR6047-UART_BSL.txt
    [80] [20] [00] [10] [00] [40] [00] [81] [00] [00] [2c] [b1] [13] [6e] [00] [0c]
    [43] [b1] [13] [00] [00] [1c] [43] [b1] [13] [68] [00] [32] [d0] [10] [00] [fd]
    [3f] [03] [43] [75] [6b]
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    [80] [14] [00] [10] [80] [ff] [00] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff] [ff]
    [ff] [ff] [ff] [ff] [ff] [ff] [ff] [79] [15]
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    [80] [ca] [00] [10] [ac] [ff] [00] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14] [40] [14]
    [40] [14] [40] [14] [40] [14] [40] [14] [40] [00] [40] [b2] [40] [80] [5a] [5c]
    [01] [d2] [d3] [04] [02] [d2] [c3] [02] [02] [92] [d3] [e0] [05] [b2] [d0] [80]
    [00] [e0] [05] [b2] [42] [e6] [05] [b2] [40] [00] [d6] [e8] [05] [f2] [d0] [0c]
    [00] [0a] [02] [f2] [f0] [f3] [00] [0c] [02] [92] [c3] [30] [01] [92] [c3] [e0]
    [05] [06] [3c] [a2] [b3] [fc] [05] [fd] [27] [4f] [4f] [82] [4f] [ee] [05] [92]
    [b3] [fc] [05] [fd] [27] [1f] [42] [ec] [05] [4f] [4f] [7f] [90] [1b] [00] [f1]
    [23] [d2] [e3] [02] [02] [32] [c2] [03] [43] [3f] [40] [00] [10] [4f] [13] [ef]
    [3f] [03] [43] [03] [43] [ff] [3f] [03] [43] [1c] [43] [10] [01] [87] [4c]
    [ACK_ERROR_MESSAGE]Unknown ACK value!
    Time elapsed of writing 242 bytes : 3.183 seconds
    Speed of writing data :0.07426(kB/s)
    //RX_DATA_BLOCK FR6047_USSSWLib_AQSMRT_V2.0.0.txt

    your input please.

    thanks

    Br.

    Ephraim
      

  • Hi Ephraim,

    The MSP-FET430UIF does not have BSL download function. You can only use MSP-FET or BSL-ROCKET to send BSL commend to MSP430 MCU. 

    Best regards,

    Cash Hao

  • hi Cash,

    I did not clarify my scenario well.

    The MSP-FET430UIF to download software, this software is UART echo software, when hitting the ESC key, it jumps to the BSL, so I can test programming using the rocket.

    After going into the BSL from within software. Once verifying with a terminal that the program is running on the MSP i hit the ESC key. Only using pin 1 and pin 9 of the Rocket, I attempt to MASS ERASE, PASSWORD, and program, but it is failing. Note: this test was done with the EVM430 board, and it worked.

    thanks,

    Br.

    Ephraim

  • Hi Ephraim,

    I do not think only use pin 1 and pin 9 will work. I think you still need to connect RST and TEST. These two pins are used to invoke BSL. Then you can communicate through I2C or UART depends on the device. 

    Best regards,

    Cash Hao

**Attention** This is a public forum