3 Replies Latest reply on May 14, 2018 7:27 AM by e.pratt_1639216

    PSoC4 BLE Current consumption goes higher in DeepSleep Mode

    carlsmith.sms_1616011

      Hi I am Anthony. Current I am working on a project in which I used CYBLE_014008_00 Module. When in active mode, I measured the current and it shows 17mA. But when I put MCU into deepsleep mode, the current consumption inucreases to 23mA.

      That's very strange. I'd already put all LED pins into ALG_HIZ drive mode and make these GPIO sleep.I also set the DebugSelect option to GPIO mode and stop ECO clk before go to Deep Sleep mode.

      What should be the problem? Please help me. It's very urgent.

      the Code I have written for the deepsleep function,

                          MOTOR_EN_Write(0); //Motor driver GPIO_out

                          MOTOR_IN1_Write(0); //Motor driver GPIO_out

                          MOTOR_IN2_Write(0); //Motor driver GPIO_out

                         

                          isr_Timeout_Disable(); // Timer Counter module Interrupt

                          UART_FP_Stop();// UART Module to communicate with fingerprint module

                          FP_PWR_Write(0);//GPIO_out to Fingerprint module power

                          COUNTER_Sleep();//Timer Counter

                         

                         

                         

                          Pin_LEDR_SetDriveMode(Pin_LEDR_DM_ALG_HIZ);

                          Pin_LEDG_SetDriveMode(Pin_LEDG_DM_ALG_HIZ);

                          Pin_LEDB_SetDriveMode(Pin_LEDR_DM_ALG_HIZ);

                          MOTOR_EN_SetDriveMode(MOTOR_EN_DM_ALG_HIZ);

                          MOTOR_IN1_SetDriveMode(MOTOR_IN1_DM_ALG_HIZ);

                          MOTOR_IN1_SetDriveMode(MOTOR_IN1_DM_ALG_HIZ);

                         

                          Pin_LEDR_Sleep();

                          Pin_LEDG_Sleep();

                          Pin_LEDB_Sleep();

                          MOTOR_EN_Sleep();

                          MOTOR_IN1_Sleep();

                          MOTOR_IN2_Sleep();

                         

                         

                         

                          CySysClkEcoStop();  // Stop ECO First

                          CySysPmDeepSleep();