3 Replies Latest reply on Dec 8, 2016 10:23 AM by maheshb_81

    PsoC 4100 is not properly waking from Hibernate with GPIO Interupt

      Problem: GPIO interrupt source is not initiating a software reset, as specified, from Hibernate. What are the possible reasons? EZ-BLE 4100


      I have configured a GPIO the same as in the Hibernate_PSoc4_Example and do not see my device entering the Reset Vector when the input is switched to ground. Prior to entering Hibernation I stop all my other interrupt ISRs, disable resources and outputs driving loads. Next I perform the following sequence:




      The GPIO input (SW) is set as a digital input, initialized High with a pullup. Its interrupt is set to falling edge, transparent, dedicated and buffered. The isr_SW is configured to DERIVED.


      In the debugger the code waits at (seen when I pause the debugger):


      CyExitCriticalSection(interruptState); in void CySysPmHibernate(void) of cyPm.c


      Resuming in the debugger and commutating SW to ground the code vectors to the ButtonPressInt instead of resetting to the top of main() as expected.


      In standalone mode, the system just hangs. Any cause for not resetting that I'm overlooking?