How to get CrossLoad to work with MSP-FET with a MSP430F54xx MCU

Comments

10 comments

  • Avatar
    Paul Curtis

    Hi,

    First of all, can you get your target programmed using CrossStudio?  Yes or no?  If no, then we should concentrate on that.  Are you trying on Linux or Windows?

    Note that you need to tell CrossLoad what type of JTAG interface you have (JTAG, SBW or JTAG/SBW) , it doesn't even try to work it out automatically, and that's the same for CrossStudio.  You need to set up the target properties, use -listprops to see what is available:

    crossload -target msp430_dll -listprops

    CrossStudio tells you if you need to update (change) the firmware in the FET430UIF, so try in CrossStudio first.

    0
    Comment actions Permalink
  • Avatar
    John Howe

    Hi Paul,


    CrossStudio works fine. I'm using the Windows version.

    Under Targets window in CS, I use "TI MSP-FET430UIF" (JTAG)

     

    Output of, "crossload -target msp430_dll -listprops":

    "msp430_dll" Properties:

      Name:        Port Name
      Description: Provide a target-specific parameter, e.g. USB, COM3.
      Value      : USB

      Name:        Target Driver DLL Path
      Description: Specifies the path to use to load the MSP430 target driver DLL.
      Value      : $(PackagesDir)/targets/msp430/MSP430$(HostDLL)

      Name:        Is USB Device
      Description: The device is connected by USB.
      Value      : Yes

      Name:        Spy-Bi-Wire/JTAG Supported
      Description: Spy-Bi-Wire/JTAG is supported.
      Value      : Yes

      Name:        Use Spy-Bi-Wire
      Description: Connect using Spy-Bi-Wire if available for target.
      Value      : No

      Name:        Vcc (mV)
      Description: Set the desired supply voltage (specified in millivolts).
      Value      : 3300

      Name:        Release JTAG
      Description: Release the JTAG signals when "Reset" or "Start Without Debugging" are used and on "Stop Debugging".
      Value      : No

      Name:        Enable Info SegmentA Erase/Write
      Description: Info SegmentA can be erased/written.
      Value      : No

      Name:        Implement Software Breakpoints.
      Description: Implement (and use) software breakpoints.
      Value      : No

      Name:        Erase All
      Description: Erase all erasable memory rather than individual segments when downloading.
      Value      : Yes

    0
    Comment actions Permalink
  • Avatar
    Paul Curtis

    Hmm, I just tried CrossLoad and it worked just fine programming a 5418:

    crossload -target msp430_dll Executable_1.srec -filetype srec
    Erasing completed in 93.0 milliseconds (2559.1 bytes/sec)
    Programming completed in 78.0 milliseconds (3051.3 bytes/sec)
    Verifying completed in 31.0 milliseconds (7677.4 bytes/sec)

    This is on XP; so, can you tell me which Windows you're using? It should not make a difference

    0
    Comment actions Permalink
  • Avatar
    Paul Curtis

    ...just to say, CrossStudio and CrossLoad are built frlom the same sources so if one works the other should.

    The "can't identify target" indicates that the connection isn't working.  The "no error" means that there isn't any error in any of the API calls made, it's just that either the board isn't powered or the target can't be identified.  I assume you're running CrossLoad from the same place as CrossStudio on the same PC?

    0
    Comment actions Permalink
  • Avatar
    John Howe

    I'm using XP.

    I used this exact command:

    crossload -target msp430_dll Executable_1.srec -filetype srec

    Same error. The red LED came on on the MST-FET then went off after executing the command and I got the error again.

    Hmmm.... Is it possible I don't have the right MSP DLL or it's possibly finding the wrong one? Does crossload depend on an external DLL to access the MSP-FET or is this MSP-FET functioality statically linked into the crossload command? This works fine in CS though.

     

    Thanks,

    John

     

    0
    Comment actions Permalink
  • Avatar
    Paul Curtis

    You can see the DLL that will be used, if none is supplied on the command line, as the default value of the Target Driver DLL Path, which from your dump above is:

      Value      : $(PackagesDir)/targets/msp430/MSP430$(HostDLL)

    $PackagesDir is where packages are installed, and $HostDLL is the extension used by the host OS for DLLs/dylibs.  It should point to the same position as the DLL used in CrossStudio. You can check the properties of the FET430UIF (JTAG)  target interface to make sure...  Check the target DLL driver path in CrossStudio is the value above--if not, you've found the difference if you've pointed to another one.

    0
    Comment actions Permalink
  • Avatar
    Paul Curtis

    ...and you are using JTAG in CrossStudio?  Now SBW?

    0
    Comment actions Permalink
  • Avatar
    John Howe

    Yes, I'm using JTAG. Same as under Targets window in CrossStudio, I use "TI MSP-FET430UIF" (JTAG).

    0
    Comment actions Permalink
  • Avatar
    John Howe

    I've added jpeg to show you my confugration settings for the MSP-FET (JTAG).

    0
    Comment actions Permalink
  • Avatar
    Paul Curtis

    I tried on a completely fresh PC, and it works a treat for me here.  One thing, can you use the absolute path to CrossLoad rather than having CrossLoad in your PATH environment variable?  That is, use something like c:/program files/rowley associates limited/CrossWorks for MSP430/bin/crossload.exe <parameters>?  I believe we may have an issue with path names taken from argv[0].

    0
    Comment actions Permalink

Please sign in to leave a comment.