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.

MSP430 Flasher error: unknown device

Other Parts Discussed in Thread: MSP430F5529, UNIFLASH

Hi,

I'm trying to flash MSP430F5529 from commands line via JTAG and at the end I've got Exit 16 and Error: unknown device.

Do I use wrong arguments or it's flasher bug? (by the way, CCS6 flashing works just fine).

Full log:

C:\ti\MSP430Flasher_1.3.1>MSP430Flasher.exe -n MSP430F5529 -m JTAG -w "firmware.hex" -v -g -z [VCC]
* -----/|-------------------------------------------------------------------- *
*     / |__                                                                   *
*    /_   /   MSP430 Flasher v1.3.1                                           *
*      | /                                                                    *
* -----|/-------------------------------------------------------------------- *
* Evaluating triggers...done
* Checking for available FET debuggers:
* Found USB FET @ COM13. <- Selected
* Initializing interface @ COM13...done
* Checking firmware compatibility:
* The firmware of your FET is outdated.
- Would you like to update it? (Y/N): y
* *********************************************************
* *********************************************************
* *
* *  Initializing Update Bootloader.
* *  Erasing firmware memory section.
* *  Programming new firmware:

* *  Exit Update Bootlader and reboot firmware.
* *********************************************************
* *********************************************************
* *
* *  Initializing Update Bootloader.
* *  Erasing firmware memory section.
* *  Programming new firmware:
* *  |||||||||||||||||||||||||||||||||||||||||||||||||| 100%
* *  Exit Update Bootlader and reboot firmware.

* *  Update was successfully finished.
* *
* *********************************************************
* *********************************************************
* FET firmware is up to date.
* Reading FW version...done
* Reading HW version...done
* Setting VCC to 3000 mV...done
* Configuring...done
* Accessing device...
# Exit: 16
# ERROR: Unknown device
* ----------------------------------------------------------------------------
* ERROR on close: No error
* ----------------------------------------------------------------------------
*/

C:\ti\MSP430Flasher_1.3.1>


Regards,

Alexey

  • Hi Alexey,

    this sounds to me like a problem with the JTAG connection between the USB FET and the target device. Have you tried to check whether the connection complies the recommended one? http://processors.wiki.ti.com/index.php/JTAG_(MSP430)

  • Yes, TI docs were used as input for design.

    However, I don't get any problems if I use CCS6, UniFlash or Elprotronic Pro430 Lite.

    /alexey

  • Alexey,

    are you using 4 wire JTAG or 2 wire JTAG (SBW)? What happen if you remove the "-m JTAG" parameter (default should be AUTO).

  • I have 4 wire JTAG. If I remove -m JTAG and use auto mode I don't see errors.

    C:\ti\MSP430Flasher_1.3.1>MSP430Flasher.exe -n MSP430F5529 -w "firmware.txt" -v -g -z [VCC]
    * -----/|-------------------------------------------------------------------- *
    *     / |__                                                                   *
    *    /_   /   MSP430 Flasher v1.3.1                                           *
    *      | /                                                                    *
    * -----|/-------------------------------------------------------------------- *
    * Evaluating triggers...done
    * Checking for available FET debuggers:
    * Found USB FET @ COM13. <- Selected
    * Initializing interface @ COM13...done
    * Checking firmware compatibility:
    * FET firmware is up to date.
    * Reading FW version...done
    * Reading HW version...done
    * Setting VCC to 3000 mV...done
    * Accessing device...done
    * Reading device information...done
    * Loading file into device...done
    * Verifying transfer...done
    *
    * ----------------------------------------------------------------------------
    * Arguments   : -n MSP430F5529 -w firmware.txt -v -g -z [VCC]
    * Warning: Some default options were used due to incomplete argument list.
    * ----------------------------------------------------------------------------
    * Driver      : loaded
    * Dll Version : 30401000
    * FwVersion   : 30401000
    * Interface   : TIUSB
    * HwVersion   : U 1.40
    * JTAG Mode   : AUTO
    * Device      : MSP430F5529
    * EEM         : Level 7, ClockCntrl 2
    * Prog.File   : firmware.txt (ERASE_ALL, verified = TRUE)
    * BSL Unlock  : FALSE
    * InfoA Access: FALSE
    * VCC ON      : 3000 mV
    * ----------------------------------------------------------------------------
    * Starting target code execution...done
    * Disconnecting from device...done
    *
    * ----------------------------------------------------------------------------
    * Driver      : closed (No error)
    * ----------------------------------------------------------------------------
    */

    Minor glitch: if FW argument has extension with capital letters, it will fail.

    C:\ti\MSP430Flasher_1.3.1>MSP430Flasher.exe -n MSP430F5529 -w "firmware.TXT" -v -g -z [VCC]
    * -----/|-------------------------------------------------------------------- *
    *     / |__                                                                   *
    *    /_   /   MSP430 Flasher v1.3.1                                           *
    *      | /                                                                    *
    * -----|/-------------------------------------------------------------------- *
    * Evaluating triggers...
    * file extension unknown -- w

    /alexey

  • Alexey,

    thanks for the feedback. I will try to forward it to the team who manages this tool.

  • I have wasted hours on the same problem.  Clearly hasn't been fixed.


    I have always been impressed with TI support.  EXCEPT for the software support for MSP430 programming.  Programming of MSP430 devices seems flakey, error-prone and ill-supported.

    Please, please,  please work on the software!

  • For anybody who might come across this thread while struggling with the same problem:
    In terms of support for different connection protocols, there are two categories of MSP430 devices:
    1. Older MSPs from the 1xx/2xx/4xx families which ONLY support 4-wire JTAG
    2. Newer MSPs which support the 2-wire Spy-Bi-Wire protocol as well as 4-wire JTAG (the entire 5xx/6xx family including FRxx devices as well as some newer 2xx parts) These MSPs are by default configured for 2-wire Spy-Bi-Wire. Using this protocol, a special “entry sequence” has to be sent to the device to configure two additional shared pins for 4-wire JTAG support.
    The F5529 falls in category number 2, Thus, using –m JTAG is wrong since MSP430 Flasher will attempt to establish a 4-wire JTAG connection without sending the entry sequence mentioned above.
    As documented in the MSP430 Flasher manual, one solution would be to use –m SBW4. This will attempt a 4-wire JTAG connection with SBW entry sequence. The by far better solution is to always just use the default –m AUTO (removing the –m switch completely has the same effect).
    The –m switch is really only required in certain corner cases. It will most likely be removed from future releases of MSP430 Flasher.
  • Thanks for the quick reply Robert.

    I note that the subtleties of the -m switch are undocumented in the help produced by "MSP430Flasher -h", which is otherwise quite complete.

    Basically what you're saying is all these chips support "TI-JTAG" which is slightly different.  TI really should take more care with misappropriation of common terms.

    Also, MSP430TM Programming Via the JTAG Interface (SLAU320Q) doesn't document this "entry sequence" as far as I can see.  It does document "MSP430 JTAG Restrictions" but fails to mention this difference with the internationally defined standard.

    David

  • Hi David,


    The -h description will certainly be improved in this case to reflect the content of the MSP430 Flasher manual.

    SLAU320 rev. Q however does mention that "The JTAG pins are shared with port functions on certain devices" in the MSP430 JTAG Restrictions. Section 1.3.1.1 (Enable JTAG Access) further details this and specifically explains the SBW entry sequences.

    Best regards,
    Robert

  • Hi Robert,

    Thanks again - glad to hear the documentation will be improved.

    To me Section 1.3.1.1 (Enable JTAG Access) is unclear for devices without a TEST pin (I did read it and failed to appreciate the subtlety).

    Noting that pins are shared is a far cry from the correct statement that a custom entry sequence is required to enable JTAG.

    TI is being deliberately deceptive here - there are JTAG references all over the MSP430 data sheets and web site.  However, MSP430 devices are not JTAG-compliant in a number of important ways.  Most importantly, JTAG is not even available without a custom entry sequence. TI fails to clearly spell out the differences.

    David

  • David,

    We're certainly not trying to deceive anyone and we take feedback like yours seriously.

    Devices without a TEST pin support MSP430 4-wire JTAG by default, hence the steps described in SLAU320q section 1.3.1.1 are not required.

    A new revision of SLAU320 will go online soon where the wording in this section is improved accordingly. Furthermore it will highlight the necessity of an entry sequence for enabling MSP430 4-wire JTAG on devices with a TEST pin.

    Best regards,

    Robert

**Attention** This is a public forum