4 Replies Latest reply on Nov 1, 2016 2:58 AM by kristoffer.andersen

    USBFS Component and Hibernate

    kristoffer.andersen

      Hi,

         

      I have an issue with the USBFS component on a PSoC5LP, consuming significant more power after being started and stopped again!

         

      If I run the code: (From the power mgmt. hibernate sample code)

         
      int main() {     // Set all pins to analog HiZ here      for(;;)     {         /* Make a delay for visibility */         CyDelay(1000u);          /* Prepare system clocks for the Hibernate mode */         CyPmSaveClocks();          /* Switch to the Hibernate Mode */         CyPmHibernate();          /* Restore clocks' configuration */         CyPmRestoreClocks();     } }
         

      I get a nice low consumption of ~ 1µA. But if I start and then stop the USBFS component, before hibernate I get a power consumption of ~4.5mA:

         
      int main() {     // Set all pins to analog HiZ here      USBFS_Start(0, USBUART_DWR_VDDD_OPERATION);     USBFS_Stop();      for(;;)     {         /* Make a delay for visibility */         CyDelay(1000u);          /* Prepare system clocks for the Hibernate mode */         CyPmSaveClocks();          /* Switch to the Hibernate Mode */         CyPmHibernate();          /* Restore clocks' configuration */         CyPmRestoreClocks();     } }
         

      Does anyone know what USBFS_Start() activates, that USBFS_Stop() does not disable?
      I want to use the USB port, disable it and achieve the low power consumption at ~1µA.

         

      Thanks in advance,

         

      Kristoffer