1 Reply Latest reply on Oct 17, 2017 1:37 AM by hima

    Bootloadable application fails to enumerate USBUART via a hub controller

    user_267067546

       

      I am using the sample code for Bootloader/Bootloadable -- a code that I know works Ok when the PSoC is connected directly to the computer. 

       

      However, when it is connected via an intermediate USB hub (Genesys Logic GL852G -- http://minipcsale.ru/images/Minix-Neo-X8-h/GL852G.pdf ) the following happens:

       

      When I power up the system (both the PSoC and the hub) the Bootloader Host can see the USB HID and I can upload the application fine.

       

      However, when the application is passed control, the USB fails to enumerate.  Instead, the code keeps waiting on the while loop in this piece of code:

       

       

      USBUART_Start(...);

      while(0 == USBUART_GetConfiguration()) {

      }

      USBUART_CDC_Init();

       

      The Bootloader Host application will still list the USB HID. 

       

      At that point, if I disconnect from the USB cable from the port and reconnect, the application will enumerate a COM correctly (and the USB HID will go away).

       

      Any ideas why this happens?

       

      How can I get the USB_UART to enumerate in this condition? Will a change to the bootloadable code do it?

       

      Thanks!

      --

      Dario