A system for enhancing universal serial bus (USB) applications comprises an upstream processor, a downstream processor and a main controller. The upstream processor accepts standard USB signals from a USB host and independently provides responses required by USB specification within the required time frame. The upstream processor also contains storage for descriptors for a device associated with this upstream processor. The main controller obtains the descriptors by commanding the downstream processor, and passes them to the upstream processor. The downstream processor connectable to USB-compliant devices accepts the USB signals from the USB-compliant devices and provides responses required by USB specification within the required time frame. The main controller interconnects the upstream and downstream processors, and provides timing independence between upstream and downstream timing. The main controller also commands the downstream processor to obtain device descriptors independent of the USB host.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A USB switching device for connecting a plurality of USB peripheral devices to a plurality of USB hosts, comprising: a storage device; one or more communications paths for electrically connecting said USB peripheral devices with said USB hosts; wherein the switching device acts as a USB host when it detects an attachment of a peripheral device by sending USB enumerations commands programmed in the switching device to the peripheral device and receiving response data from the peripheral device, so that the peripheral device is enumerated by the switching device as a standard USB device, wherein the response data are stored in the storage device by the switching device; wherein the switching device in a computer driven procedure with at least one USB host and peripheral devices connected to the switching device, transfers the USB enumerations commands comprising a setup token and associated setup data generated by the USB host to an actual peripheral device connected to the switching device and transfers the response data from the actual peripheral device to the USB host if the switching device determines that the response to the setup token for the actual peripheral device was not previously stored in the storage device.
2. A method for connecting a plurality of USB devices to a plurality of USB hosts, comprising the steps of: sending USB enumerations commands programmed in a USB switching device to a peripheral device by the switching device when the switching device detects an attachment of the peripheral device to the switching device; receiving response data from the peripheral device by the switching device, so that the peripheral device is enumerated by the switching device as a standard USB device, storing the response data in a storage device by the switching device; wherein the switching device in a computer driven procedure with at least one ore USB host and peripheral devices connected to the switching device, performs the following: transfers the USB enumerations commands comprising a setup token and associated setup data generated by the USB host to an actual peripheral device connected to the switching device; and transfers the response data from the actual peripheral device to the USB host if the switching device determines that the response to the setup token for the actual peripheral device was not previously stored in the storage device.
3. A non-transitory computer readable medium comprising computer executable code for connecting a plurality of USB devices to a plurality of USB hosts, the computer executable code comprising instructions for: sending USB enumerations commands programmed in a USB switching device to a peripheral device by the switching device when the switching device detects an attachment of the peripheral device to the switching device; receiving response data from the peripheral device by the switching device, so that the peripheral device is enumerated by the switching device as a standard USB device, storing the response data in a storage device by the switching device; wherein the switching device in a computer driven procedure with at least one ore USB host and peripheral devices connected to the switching device, performs the following: transfers the USB enumerations commands comprising a setup token and associated setup data generated by the USB host to an actual peripheral device connected to the switching device; and transfers the response data from the actual peripheral device to the USB host if the switching device determines that the response to the setup token for the actual peripheral device was not previously stored in the storage device.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
October 9, 2013
April 14, 2015
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.