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.

MSP430F2618 with MSP-FET430UIF Fatal Error : Device could not be found

Other Parts Discussed in Thread: MSP430F2618, MSP430F5438

Hello,

Recently, I have tried flashing the MSP430F2618 on a board we have developped, but the debugger (MSP-FET430UIF) can't seem to recognise the device anymore.

For starters, this is not the first time I have attempted this, and it has worked very well before when using Code Composer Studio 5. However, this time it was different : I needed to port uC/OS-II to the MSP430 we are using, and in order to do so I needed to base my work on a port that was made for the MSP430F5438 under IAR Workbench (this is an official port by Micrium).

So I have installed IAR Workbench for MSP430 along side my CCSv5 installation, and worked on the port. The only event of note is that IAR Workbench actually updated the firmware of my debugger, to which I agreed to. I flashed it once to the MSP430F2618 last Friday, and it seemed to work (the app was supposed to switch on and off several LEDs with a certain timing, which seemed pretty much right). Content of the result, I went home as it was getting pretty late and decided I'll conduct more serious tests on Monday morning. 

Now, lo and behold, the debugger cannot seem to find the device anymore. I have been struggling all this Monday with this problem. This is the error I am getting under IAR Workbench whenever I try to flash the microcontroller :

Mon Dec 15, 2014 16:46:41: Using license: Evaluation license - IAR Embedded Workbench for Texas Instruments MSP430, Evaluation Version 6.20

Mon Dec 15, 2014 16:46:42: Firmware version 3.4.3.4
Mon Dec 15, 2014 16:46:42: Interface dll version 3.4.3.4
Mon Dec 15, 2014 16:46:43: Unknown device : (OpenDevice) , Device=MSP430F2618, PwLength=0x0
Mon Dec 15, 2014 16:46:45: Fatal error: Could not find device (or device not supported) Session aborted!

I tried to do the same with Code Composer Studio with another project. Same problem, the device is not recognised by the debugger.
I have tried it under IAR with another basic project, same thing : problem doesn't seem to come from the project I was working on either.

I installed IAR on another computer and tried to do the same : still the same thing.
I tried to flash another dummy project from another computer on which IAR was NOT installed : no dice.
I then tried to flash another board with another MSP430F2618 : nope.

So the problem doesn't seem to come from the MSP430 itself (since other MSP430s are having the issue), nor from the board (already flashed this device before), nor from my PC installation (tried from several PCs), nor the IDEs (I have the same thing with MSP430Flasher.exe, IAR, and CCS5).

The only theory I have is that the JTAG security lock fuse has been blown up by the MSP-FET430UIF, and that now the device cannot be recognised at all. But this seems absurd, as this is not something I've explicitely configured. This would also mean that all the MSP430s I have tried to program after that have also been locked, which would be catastrophic for the project we are currently working on. On thing that debunks that theory is that I had a colleague try to flash (with CCS5, IAR not installed) one of the boards after I had failed doing so with that same board : he managed to flash it ONCE, and then nothing. The program he loaded is "stuck" on the MSP, you can actually see it running and being reset while the debugger tries to reset the device prior to flashing (until a certain timeout, after we which we got our dreaded error code).

So if anyone knows what we did wrong or has encountered a similar problem before, I am all ears.

Best regards,

Louis Masson

PS:
I would just like to add to this by saying that I have tried to recognise an MSP430F5438 on an Olimex board with the same MSP-FET430UIF I have used previously through . It was indeed recognised, but I haven't attempted to flash it. Unfortunately I don't have a second debugger I can do tests with. Could the debugger be the source of the problem ? Could its firmware update have made it incompatible with the MSP430F2618 somehow ?

  • Sometimes, firmware updates remove support for older silicon revisions, especially if these have been experimental silicon (XMS430 instead of MSP430) or known to be broken beyond repair (happened for the odder 54xxA)
    But there are other possible reasons too: the JTAG connection might be faulty (too long, bad connection, device inserted badly into the socket), especially if using SBW, which is very timing critical and sensitive to parasitic capacitances.
    And in rare cases, a bad firmware flashed into the chip can prevent it from being accessed by JTAG.
    It's also possible that you accidentally blew the JTAG fuse. in this case, the JTAG access to the device is permanently broken. The only way to upload a new firmware will be the serial BS. Debugging is impossible then.
  • Hello Jens-Michael,

    Thank you for your swift reply and your suggestions.

    I have looked into the JTAG connection by switching cables and sockets. It didn't change much, and the fact that I have been able to connect the JTAG to an MSP430F5438 successfully seems to indicate that the problem comes from elsewhere.

    I have also tried to communicate with (not flash) another MSP430F2618 on an Olimex board. The MSP was succesfully recognised. I won't try to attempt flashing it, for fear of replicating the issue on the other devices that aren't recognised anymore.

    In the case of a bad firmware being flashed into the chip preventing it to be accessed by JTAG, is there a possible remedy I could explore ?

    If it's a bad firmware as you also suggested, I'll try to access the BSL of the MSP430 in order to erase the flash memory. Maybe it'll help. 

    I will try to downgrade the firmware of the debugger, I'll see if that changes anything.

    Finally, I have ordered another debugger in the hopes that it will help us identify the problem.

    Best regards,
    Louis

  • Well, the 5438 connection might have been 4-wire JTAG which isn't as sensitive as SBW.
    With the older FET430PIF (parallel port) I also sometimes have a problem flashing devices, and power-cycling the target usually helps. Not always at the first attempt.
    Usually, a 'bad' firmware resets the MSP before the JTAG can properly attach, breaking the connection.
    If the device runs its firmware (not resetting), try attaching to running target (to not reset it) and check whether this works.
    If you accidentally burnt the fuse, then there is no way back and using the serial BSL is the only way to access the MSP (on 5x family, the 'fuse' is a software one and it can be restored, but on 1x to 4x family, it is physically gone, irreversibly disabling JTAG).
    It's also possible that you have a bad soldering on the board. Happened to me too once or twice. In one case, JTAG worked at first, but as soon as the chip was drawing some current by the running code, JTAG didn't work anymore. A rare case, but happened.

**Attention** This is a public forum