0 Replies Latest reply on Nov 25, 2017 4:58 PM by inanity407_2949331

    FX3: Catching all setup requests in callback


      Hi everyone!


      As you know, there are tree possible states of device, following USB specification:

      1. Default state

      2. Addressed state

      3. Configured state


      I have some problems with passing USB compliance tests, as proper device behavior for some Host requests depends on the device state (Default/Addressed/Configured).

      So I need to identify each state. I can indentify Default state using CY_U3P_USB_EVENT_RESET. Also I can indentify Configured state by CY_U3P_USB_SC_SET_CONFIGURATION standard request or CY_U3P_USB_EVENT_SETCONF event.


      But I can't catch CY_U3P_USB_SC_SET_ADDRESS standard request in setup callback to identify Addressed state!


      I have registered my callback with parameter fastEnum = false, expecting to catch all requests.

      CyU3PUsbRegisterSetupCallback (CyFxMscApplnUSBSetupCB, CyFalse);


      Any way I can catch many requests, but never CY_U3P_USB_SC_SET_ADDRESS.

      What am I doing or understand wrong? Are there any way to catch all standard setup requests or get device state?


      Thanks much!!