Is it possible to reprogram USB-Serial devices after disabling the manufacturing interface?
Yes, it is possible to reprogram the USB-Serial device even after the manufacturing interface has been disabled.
To reprogram the USB-Serial device, the UBS-Serial Configuration Utility must be able to recognize the device when connected.
If the serial communication block (SCB) in the device is configured as SPI or I2C, then the device binds to the Cypress vendor driver, CYUSB3.sys. In this case, the device will be listed in the USB-Serial Configuration Utility even if the manufacturing interface has been disabled. You can reprogram the device from the configuration utility.
If all the SCBs of the USB-Serial device are configured as communication device class (CDC) UART and the manufacturing interface is disabled, then the device will not appear in the USB-Serial Configuration Utility. However, you can enable the manufacturing mode using the executable Cyrecovercdcdevice.exe, which is part of the USB-Serial SDK. It is available in the location "<install directory>\Cypress\USB-Serial SDK\bin”.
To reprogram the device, do the following:
Navigate to the folder where the executable is, and run the “cyrecovercdcdevice.exe” with the following command:
C:\Program Files (x86)\Cypress\USB-Serial SDK\bin>cyrecovercdcdevice.exe #comport_number
Note: The comport_number corresponds to USB serial COM ports which the device has enumerated as.
For example, if the USB Serial device is bound to COM8, the command should be
C:\Program Files (x86)\Cypress\USB-Serial SDK\bin>cyrecovercdcdevice.exe 8
After you run this command, the manufacturing interface will be enabled temporarily. The device will appear in the USB-Serial Configuration Utility, and hence you can reprogram the USB-Serial device.