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.
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!
-----------------------------------------------------------------------------------------------------------------------
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");
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!
-----------------------------------------------------------------------------------------------------------------------
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.
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!
-----------------------------------------------------------------------------------------------------------------------
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!
-----------------------------------------------------------------------------------------------------------------------