KL05Z8 Very Low Power mode not working as expected

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

KL05Z8 Very Low Power mode not working as expected

807 Views
srdjanstokic
Contributor II

Hello,

I'm trying to put my board which has a KL05Z8 MCU into VLPS mode. When I do this I get around 200uA of current, which is too high. According to the datasheet, this number should be closer to 2-3uA. The MCU is set to use fast internal 4MHz in BLPI mode, core clock is set to 1MHz, and bus speed to 0.5MHz.

When I run the identical code on the KL05 FRDM board which has a KL05Z32 MCU on it, I'm correctly getting 2.9 uA.

According to datasheets these two chips should be identical, and only their flash/ram size should be different.

On the board there is only the MCU connected to 3.3V and a reset line which goes to 3.3V through a 100K resistor which means that the measured current is certainly going in the MCU itself, there are no other components around it.

What could be the reason for this excess power consumption? Is is possible that there is a problem with MCU itself? I made 20 boards and so far they all seem to exhibit similar behaviour, although the numbers for the current are slightly different.

Tags (2)
0 Kudos
6 Replies

631 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi

If the debugger tool connects with the board? If yes, please remove the debugger tool.

And I recommend customer to replace the reset pin 100K ohm pull up resistor with 10K ohm resistor.


Wish it helps.

Have a great day,
Ma Hui
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

631 Views
srdjanstokic
Contributor II

bmwhui‌ I tried this and it didn't help. In normal run mode the consumption is around 1-2mA which is according to spec, when I run it in VLPR mode power goes down to 300uA, which is slightly higher that it should. Then I try to put it in VLPS and the current goes down to 200uA but not lower. I'm banging my head over this for more than a week, and cannot find a solution.

Here is the code I'm using to put the device to VLPS. This code works perfectly on KL0532 but not on KL0508. on KL0532 I get 1.7uA when I execute this code, on Kl0508 I'm stuck to 200uA.

        SIM_SCGC5 |= (SIM_SCGC5_PORTA_MASK | SIM_SCGC5_PORTB_MASK); // Enable PORTA and PORTB clocks

        SMC_PMPROT = SMC_PMPROT_AVLP_MASK | 

                                       SMC_PMPROT_ALLS_MASK | 

                                       SMC_PMPROT_AVLLS_MASK;  /* Setup Power mode protection register */
        
        __asm ("CPSID i"); // Disable interrupts
        
        PORTA_PCR0 = PORT_PCR_MUX(1);    // Set PA0 and PA2 SWD pins to GPIO
        PORTA_PCR2 = PORT_PCR_MUX(1);

        PORTA_PCR1 = PORT_PCR_MUX(1);   // Set PA1 reset pin to GPIO
        GPIOA_PDDR = 0x7;
        GPIOA_PDOR = 0x0;

 
    /* SCB_SCR: SLEEPDEEP=1 */
    SCB_SCR |= SCB_SCR_SLEEPDEEP_MASK;
    SMC_PMPROT = SMC_PMPROT_AVLP_MASK;
    /* SMC_PMCTRL: STOPM=0 */
    SMC_PMCTRL &= (uint8_t)~(uint8_t)(SMC_PMCTRL_STOPM(0x07));
    SMC_PMCTRL |=  SMC_PMCTRL_STOPM(0x2);
    (void)(SMC_PMCTRL == 0U);        /* Dummy read of SMC_PMCTRL to ensure the register is written before enterring low power mode */
    /* SCB_SCR: SLEEPONEXIT=0 */
    SCB_SCR &= (uint32_t)~(uint32_t)(SCB_SCR_SLEEPONEXIT_MASK);
    __asm("WFI");

0 Kudos

631 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi

Have you tried to let KL05Z08 chip enter into VLPS mode directly from RUN mode?

What's the power consumption (RUN -> VLPS)?

I check you attached code, which should works.

Could you let us know how many boards with KL05Z08 chip enter into VLPS mode with 200uA power consumption?

And could you provide the KL05Z08 chip part number and chip surface print info?

I need to check with Kinetis product team about this issue.

Thank you for the attention.

Have a great day,
Ma Hui
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

631 Views
srdjanstokic
Contributor II

All 20 boards exhibit same behavior.

The marking on the chip is : M05R3V AEF GC and the register value is Rev id =1  Dieid =08.

I wasn't sure how to figure out the mask number from this information. I hope this helps.

Thank you very much for your help.

0 Kudos

631 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi

Our Kinetis L product team need customer schematics for further analysis.

Could you provide your board schematics?

If customer could try to config the unused pin as GPIO function, and set output 0; then check again the power consumption.

And if customer could share more info about the application, what kind of ended product?

Thank you for the attention.

Have a great day,
Ma Hui
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

630 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi

I am checking with Kinetis product team about this issues.

Thank you for the patience.

Have a great day,
Ma Hui
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos