USB behaviour for USB HID bootloader and application | Cypress Semiconductor
USB behaviour for USB HID bootloader and application
In our application we will a high number of PSoC 3 devices on a USB-tree and want to use the USB bootloader.
Now I wonder how the process of the bootloader starting first and later the application looks from a USB perspective.
Is the device enumerated twice and the application uses a different vendorID/deviceID than the bootloader?
Alternatively I could define two configurations both in the bootloader and in the application
and let the driver of my application switch the configuration (or do that at the end of the bootloader host).
That would be much cleaner in my opinion and avoid the double enumeration.
I probably need to modify the bootloader host code (use libusb or similar), because my device will not be a HID class for my application. I could also allow to trigger a new bootloading by switching the configuration back to "bootloader" and make my appliction code trigger for config changes and entering the bootloader when this happens.
The question is, whether I can avoid that the device reset (that is done at the end of the bootloader when starting the application) will reset the USB component such that this is is visible to the USB side.