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.

MSP430FR5969: Current consumption when using LPM3,4

Part Number: MSP430FR5969

Hi experts,

Please let me confirm the concept of power consumption of MSP430FR5969.
In "Table 6-1. Operating Modes", it says 0.4uA at LMP3. Is it correct that this indicates only the current consumption of the CPU and does not include the current of the clock, other peripherals, the leakage current of GPIOs, etc.?

I used the following source code to measure the current consumption at LPM3 with Energy Trace. (Measured in Free Run after entering LPM3).

#include <msp430.h>

int main(void)
{
  WDTCTL = WDTPW | WDTHOLD;       // Stop WDT

  // Configure GPIO
  P1OUT = 0;                      // Energy Trace
  P2OUT = 0;                      // Energy Trace
  P3OUT = 0;                      // Energy Trace
  P4OUT = 0;                      // Energy Trace
  PJOUT = 0;                      // Energy Trace

  P1DIR |= BIT0 + BIT1 + BIT2 + BIT3 + BIT4 + BIT5 + BIT6 + BIT7;
  P2DIR |= BIT0 + BIT1 + BIT2 + BIT3 + BIT4 + BIT5 + BIT6 + BIT7;       // Energy Trace
  P3DIR |= BIT0 + BIT1 + BIT2 + BIT3 + BIT4 + BIT5 + BIT6 + BIT7;       // Energy Trace
  P4DIR |= BIT0 + BIT1 + BIT2 + BIT3 + BIT4 + BIT5 + BIT6 + BIT7;       // Energy Trace
  PJDIR |= BIT0 + BIT1 + BIT2 + BIT3 + BIT4 + BIT5 + BIT6 + BIT7;       // Energy Trace

  PM5CTL0 &= ~LOCKLPM5;           // Disable the GPIO power-on default high-impedance mode to activate previously configured port settings

  while(1)
  {
//     __bis_SR_register(LPM4_bits | GIE);
     __bis_SR_register(LPM3_bits | GIE);
  }
}

The result is about 0.042mA, but the calculation does not match even if I take into account the current consumption of VLO, which is the default source of ACLK. Also, the current value is too large even if the value in "5.7 Low-Power Mode (LPM2, LPM3, LPM4) Supply Currents (Into VCC) Excluding External Current" is taken into account.Could you tell me how to make the current consumption during measurement with LPM3 closer to the value in the datasheet?

When I used the same method to measure LPM4, the current consumption was 0.0003mA, which was as expected.

Sorry for the poor question, but I would appreciate it if you could tell me.

Best regards,
O.H

  • The notes below the Table in data sheet (SLAS704G) Sec 5.7 gives the test conditions for the measurements. Except where mentioned, peripherals are assumed to be disabled (your case). Note (1) in particular says that there are no bus conflicts on the pins. The (power) cost of the peripherals is given in data sheet Sec 5.10.

    What platform are you using? If it's a Launchpad, you probably need to remove the RXD/TXD jumpers from the "bridge" header block to avoid bus conflicts.

    TI supplies two Example programs for LPM3: msp430fr59xx_lpm3_02.c and _03.c. Example _03.c expects a 32kHz crystal, and _02.c doesn't:

    http://dev.ti.com/tirex/explore/node?node=ANl15q.WAlqtoc2gvgQ-8A__IOGqZri__LATEST

    http://dev.ti.com/tirex/explore/node?node=ANQMYjJK8nvSJKAR7Y5eew__IOGqZri__LATEST

  • Hi Bruce,

    Thank you for your advice.

    Based on the sample code you gave me, I measured the current at LPM3 and was able to get close to 0.0006mA.It seems that the key point this time was the ACLK source selection (CSCTL2.SELA).By default, SELA= LFXTCLK, but when I switched to SELA= VLOCLK, I was able to measure a current value close to the datasheet.

    The question arose here, if I am not using LFXT, I think it will switch to LFMODCLK, and since LFMODCLK = MODOSC/128, I think it will consume MODOSC current. However, the current consumption of MODOSC is TYP=25uA, which is different from the previous measurement result of 0.046mA.

    If you know the reason for this, could you please let me know?
    (Should I consider this as an error within the expected range...?)

    Bruce McKenney47378 said:
    What platform are you using? If it's a Launchpad, you probably need to remove the RXD/TXD jumpers from the "bridge" header block to avoid bus conflicts.

    Could you please tell me what you mean by "bus conflicts" here?
    I am using LaunchPad, does it mean UART conflict on the emulator side?

    Best regards,
    O.H

  • Yes, by "bus conflict" I just meant that two ends of the wire are simultaneously driving the wire (at different levels). The ezFET always drives its side of the RXD jumper, so forgetting this is a common mistake [myself included]. More generally, on a custom board you need to audit the examples to make sure their "wholesale" GPIO configuration doesn't set up conflicts with hard-wired devices on the board.

    I haven't (consciously) tried the LFMODCLK power, but yes I would expect it to draw MODOSC's current. I don't know where the other 21uA is coming from; usually these exercises progress by "knocking down" one obstacle so one can see the next one.

    It is possible to calibrate the VLO in software, i.e. measure its rate based on a known clock (DCO, e.g.) then use that to compute the operative VLOCLK rate. Appnote SLAA693A applies to the FR2 series, but I don't see any obvious reason it couldn't be applied to an FR59 device. (In some devices VLO changes frequency in LPM3/4. I don't see that Note in data sheet (SLAS704G) Table 5-7 but you may want to watch out for it anyway.)

    https://www.ti.com/lit/an/slaa693a/slaa693a.pdf

  • Hi Bruce,

    Sorry for the late reply.

    I'll do some more research on the remaining 21uA.

    Bruce McKenney47378 said:
    It is possible to calibrate the VLO in software, i.e. measure its rate based on a known clock (DCO, e.g.) then use that to compute the operative VLOCLK rate. Appnote SLAA693A applies to the FR2 series, but I don't see any obvious reason it couldn't be applied to an FR59 device. (In some devices VLO changes frequency in LPM3/4. I don't see that Note in data sheet (SLAS704G) Table 5-7 but you may want to watch out for it anyway.)

    I think it didn't apply to the FR59's RTC_B because the only clock source that can be selected is crystal.

    Best regards,
    O.H

**Attention** This is a public forum