A method of initiating re-enumeration of a USB device without manual
intervention is provided. The method involves a sequence emulating
detachment and re-attachment of a device to the host while the device
remains attached to the host. As the device remains attached to the host
throughout the sequence, the host OS is manipulated to receive a
plurality of preset device states in order for it to perceive a device
change and to eventually initiate device enumeration. The sequence, which
involves a series of command exchanges between the device and the host,
may be initiated by a software application residing in the host upon an
event requiring device enumeration.