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.

MSP430FR6922: Intermittent High-Power Consumption During LPM3

Part Number: MSP430FR6922
Other Parts Discussed in Thread: MSP-FET, ENERGYTRACE
Hi Support,
I'm having an issue with high power consumption during LPM3.
My application is for a battery-powered, wireless sensor using the MSP430FR6922. The application flow is that the sensor wakes up, reads sensor data, and returns to sleep every few seconds. When I first program the board (custom PCB) the current consumption is ~0.6uA during LPM3 (as expected). If I allow the application to run overnight, in the morning the current draw is sometimes much higher -- 330uA. The application continues to run and function correctly outside of the increased power consumption. Re-flashing the MSP430 does not reset the low power consumption.
When using the J2 Configuration from the image below (VCC TARGET) it appears to me that the sensor is entering LPM3. However, when the debugger is detached (and the application continues to run), the current consumption is still 330uA.
Notes: I am using FRAM to store data that is persistent through LPM3. Timer1/VLO wakes the sensor after a specified interval. The application writes to FRAM during the ISR of the timer.
Any advice would be greatly appreciated.
Thanks,
Brian
  • Apologies. I made a typo in the initial post. The configuration for the debug in J1 (VCC TARGET), not J2. Power is being applied externally, not from the MSP-FET programmer.

    But my main question still applies. Sorry for the confusion.

    Thanks,
    Brian

  • Does your current measurement cover just the MSP430 or does it include the other devices attached to it?

    Something to watch out for is the clock request system. If one of the MSP430 peripherals is using/requesting SMCLK, then instead of LPM3 you will get LPM1.

  • Hi David,

    Yes, the custom hardware includes other devices in addition to the MSP430. I'm less inclined to think that there is leakage on these devices since I know that the hardware is capable of achieving down to ~0.6uA with the same I/O configuration. (I put the I/O into the same configuration every time the device goes to sleep; theoretically, everything should be disabled except the MSP430.)

    Yes, I am also using the SMCLK for a few peripherals: SPI, I2C. Do I need to disable each peripheral and the timer specifically? Or is disabling peripherals and timers handled in this call automatically?

    __bis_SR_register(LPM3_bits | GIE);

    Getting stuck in LPM1 makes sense to me. I was a bit confused because the EnergyTrace output seemed to indicate that the 430 was in LPM3 and the SMCLK was disabled. I will investigate this a little more.

    Thanks,
    Brian

  • Setting a low power mode does not turn off peripherals. That would kind of undo the clock request system.

    Serial ports usually power down when not actively clocking serial data.

    Be careful about those other devices. It is not uncommon for the clamping diodes on CMOS I/O pins to provide power to a device when Vcc is disconnected. Making sure that any such pins driven by the MSP430 are in a low state would be required.

  • Knowing nothing about you application 330 uA sound like you need to find a 10k resistor somewhere. Assuming you use 3.3V.

  • Brian,

    Where you able to resolve this issue? 

    Regards,

    Evan

  • Hi Evan,

    Sorry, I've been a bit busy and haven't had much time to dedicate to this issue but I'm still working on this same issue. The nets seem to be pulled high or low correctly. I also tried disabling the clock request system (clearing xCLKREGEN) and SMCLK (setting SMCLKOFF) before LPM3 but this is still unsuccessful.

    Thanks,
    Brian

  • Hi Brian,

    Can you clarify what you mean by "debugger detached" in your original post? If the EEM (debug) module on the MSP430 is engaged in any way it will consume current.

    Regards,

    Evan

  • Hi Evan,

    I have been using the debugger to check if the MSP430 thinks it is in LPM3. Then I disconnect the debugging header and re-measure the current.

    Thanks,
    Brian

  • Hi Brian,

    Thanks for the response. I have a couple questions about your test setup:

    • You are measuring the current using multimeter not the EnergyTrace GUI, correct? 
    • The device initially draws ~0.6uA but after an extend period (i.e. overnight) the device draws 330uA, correct?
      • During the above scenario is the debugger ever connected to the device? If so can you try monitoring the power overnight without the debugger ever connected?

    To proceed I think it'd be a good idea figure out if the debugging hardware is contributing to the power draw. I suspect it is not, but it will help to eliminate.

    Regards,

    Evan

  • Hi Evan,

    • I am using an Otti to measure the current -- Otii Arc (qoitech.com). I double-checked the current draw with a multimeter and the current in the Otii seems to match
    • Your understanding of the issue is correct. The debugger is not connected overnight.

    I may have a lead on the issue. I want to confirm this and then I can reach out with more information.

    Thanks,
    Brian

  • Hi Evan,

    This is resolved now. There was a mixup with the boards. The confusion was that there were actually 2 different PCBs with different components populated, rather than one PCB with a change in power draw overnight. Sorry for the confusion. Thanks for all the help.

    Thanks,
    Brian

  • No problem, glad it is resolved.

    Evan

**Attention** This is a public forum