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.

MSP-FET: Bug or feature: VCC_TOOL is switched off if VCC_TARGET is supplied.

Part Number: MSP-FET
Other Parts Discussed in Thread: MSP430FR4133, , TPS782

I am using the MSP-FET to flash a MSP430FR4133 using SBW and MSPFlasher.

The target uses a battery and a TPS782 3V3 regulator to supply the FR4133.

Since it must be possible to flash the target without the need of supplying its
own power, I am using VCC_TOOL (MSP-FET output, Pin 2). In order to
prevent remote powering effects (in case someone attaches the MSP-FET to a
battery driven target), both supplies (battery and VCC_TOOL) are connected
via Shottky diodes to the input of the LDO.

Judging from the various documents, my understanding was that VCC_TARGET
(MSP-FET input, Pin 4) is used to tell the MSP-FET about the voltage actually
used on the target so it can adjust the levels of its data signals accordingly.

Since VCC_TOOL runs through the diode and the LDO, the voltage seen by the
target's CPU is 200-300 mV lower that VCC_TOOL. Therefore I thought it was
correct to feed this lower voltage back to the MSP-FET via VCC_TARGET so it
can adjust its levels accordingly.

However, I noticed that as soon as the MSP-FET sees an input voltage at
VCC_TARGET, it switches off VCC_TOOL.   

When I cut off VCC_TARGET, VCC_TOOL remains perfectly stable, powers the
target and it can be programmed. When leaving VCC_TARGET connected, as
soon as I start the programming cycle with MSPFlasher, I see a short peak
of VCC_TOOL climbing up to approx. 3 Volts and then decaying slowly  
(probably due to the targets 100 uF capacitors).
 
So is this the correct and/or expected behaviour of the MSP-FET? Does  it
intentionally cut off VCC_TOOL when it sees some VCC_TARGET because
it thinks the target has its own power?

  • Hello tom,

    Your assessment is correct here. The MSPFET is built to detect if a voltage is present to the device before programming, and if so it does not provide power. My suggestion for your situation is to make sure the devices are always in the same power state (with or without battery connected) when programming.
  • Jace H said:
    Your assessment is correct here. The MSPFET is built to detect if a voltage is present to the device before programming, and if so it
     does not provide power.



    OK, thanks for clarifying. I think this should be documented somewhere. I could
    only find references that VCC_TARGET is used to adjust the levels of the signals.

    Or, even better, would be a way to switch this feature off so VCC_TARGET can be
    used to adopt levels correctly even if the device is powered from the MSP-FET
    and the resulting Vcc is lower than VCC_TOOL (as in my case).



     My suggestion for your situation is to make sure the devices are always in the same power state (with or without battery connected) when programming.

    I don't quite understand what you mean here. I do not change the way of how
    the device is powered during programming.

    But If I do not use the battery, I'll have to power it from the MSP-FET (via
    VCC_TOOL). For this to work, I have to remove VCC_TARGET as we have seen.
    I have tried this and it works -- probably because the MSP-FET supplies 3V
    and approx. 200 - 300 mV will get lost by the diode and the LDO. The
    remaining 2.7 V are close enough to the probably 3V the MSP-FET expects as
    signal levels. If I had a LDO with, let's say, 2.2 V, things would be
    different since in this case Vcc would be 2.2 V but the MSP-FET would drive
    the target with 3 V.     

  • Hello Tom,

    I think I misunderstood your description above. To clarify my second statement, I was not suggesting that you changed power source or configuration mid programming. What I was suggesting is that from board to board ensure you have the same power configuration and valid MSP-FET connections. That was all.
  • I think I misunderstood your description above. To clarify my second statement, I was not suggesting that you changed power source or configuration mid programming.


    Ah, this was probably due to my wording "both supplies (battery and
    VCC_TOOL) are connected via Shottky diodes to the input of the LDO."
    Sorry about that...

    But to come back to the initial problem: There is currently no way
    for the MSP-FET to sense the target's effective voltage to adjust
    the signal levels if the target itself is powered via VCC_TOOL, right?

    I probably will have to hack MSP-FET's fw for this (should be in
    MSP_FetCore.h, I think)...
  • Tom,

    You can adjust target voltage before programming, but you can only do that after the MSP-FET has sensed which power configuration to use. Also, the MSP-FET must be the sole power provider for this feature. If your application is always battery powered when trying to program, then I suggest only connecting to pin 4, VCC Target, of the MSP-FET.

  • Yes, I know. But I was thinking of using different levels for the logic
    signal than the level of VCC_TOOL (coming from MSP-FET and
    supplying the target).

**Attention** This is a public forum