5 Replies Latest reply on Nov 18, 2019 6:04 PM by LinglingG_46

    Constant LPCOMP wakeup from Hibernate

    EuGe_296116

      I have a project where I need to wake up from Hibernate if the device is connected to USB.  I have VBUS routed to a pin feeding a Low Power Comparator component with internal Vref.  This is a similar setup to example CE218129 - PSoC 6 MCU Wake up from Hibernate using a Low-Power Comparator.

      In my code, I start the comparator and set the appropriate LPCOMP as a wakeup source:

       

      LPCompVBUS_Start();
      Cy_SysPm_SetHibernateWakeupSource((LPCompVBUS_CHANNEL == CY_LPCOMP_CHANNEL_0) ? CY_SYSPM_LPCOMP0_HIGH : CY_SYSPM_LPCOMP1_HIGH);
      

       

      I've confirmed by reading the LPCOMP_STATUS register that the output value of the comparator correctly follows the state of the connection to USB.  However, when I call Cy_SysPm_Hibernate(), the system does go into Hibernate but always immediately wakes up regardless of the comparator output

       

      How can I figure out what's going on here?

       

      Thanks.