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.

ti-txt format in BSL ?

Other Parts Discussed in Thread: MSP430G2553, MSP430F5438

Hi, I am programming the MSP430G2553 via BSL. I am referring slau319i.pdf and slau319i.zip file. Inside slau319i.zip am referring BSL Replicator.c (slau319i\BSL_Files\Deprecated\BSL Replicator). To download code into target device(2553) ,am copying ti-txt file(led blink) into codearray(some buffer which holds the data to be flashed) .

1.ti-txt file has got '@' symbol. So how do i place this in an array?? 

here is code: 

@c000
21 83 B2 40 80 5A 20 01 D2 D3 22 00 D2 E3 21 00
B1 40 10 27 00 00 91 83 00 00 81 93 00 00 F6 27
FA 3F 31 40 00 04 B0 12 3A C0 0C 43 B0 12 00 C0
B0 12 3E C0 32 D0 10 00 FD 3F 1C 43 30 41 03 43
FF 3F
@ffe0
34 C0
@ffe4
34 C0 34 C0
@ffea
34 C0 34 C0 34 C0 34 C0 34 C0 34 C0 34 C0 34 C0
34 C0 34 C0 22 C0
q

2.I placed hex equivalent value of '@' after that i tried to write, but getting NACK after sending the checksum data. So how can i send the data to the target board??any example?

  • You must replace loading from txt file function with loading from your constant array.
  • Am doing the same. When i use command to Mass erase and RX password it works fine but when i try to use commands RX data block or TX BSL version its giving checksum error???
  • I was thinking on loading file on PC side. Sending data from PC by BSL to target device must be in address segments / blocks (stream of hex bytes / words). So first you send 0C00h block (66 bytes). After received answer, send next 0FFE0h block (2 bytes), and so on.
  • instead of PC am using MSP430F5438. So am using one array buffer. That array buffer holds the ti-txt hex data. Am able to read data from target(i have read from address 0xc0,got some data) but unable to write on target!!!
  • There is Building a Downloadable MSP430 Application section inside BSL Replicator.pdf where is explained building BSL firmware with included firmware file for target device, using FileMaker.exe.


    There is also Blink_LED.s43 example with explained block formatting.

         PUBLIC CodeArray
         RSEG CODE
    CodeArray
         DW     0x0002       ; Number of Sections

         DW     0xFC00       ; Start address of section
         DW     0x0018       ; Number of words in section
         DW     0x4031, 0x0280, 0x12B0, 0xFC12, 0x12B0, 0xFC2C, 0x4030, 0xFC10
         DW     0x3FFF, 0x40B2, 0x5A80, 0x0120, 0xD3D2, 0x0022, 0xE3D2, 0x0021
         DW     0x403F, 0xC350, 0x533F, 0x930F, 0x23FD, 0x3FF8, 0x4030, 0xFC0C

         DW     0xFFFE       ; Start address of section
         DW     0x0001       ; Number of words in section
         DW     0xFC00
         end

  • soli am referring same code and trying to modify replicator.c
    In my case i have led_blink.txt. am copying whole hex data from that .txt file to some array.
    after that am sending it to the target.
    Did u get my question? Am not able to write(send) data to the target(getting checksum NACK)
  • There are 4 sections with starting address c000, ffe0, ffe4 and ffea.

    I simply transferred the starting address then the data in that section. Thats it.

**Attention** This is a public forum